Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

To install OpenStack on Ubuntu with DevStack, use a fresh, minimal Ubuntu system, log in with a non-root account that has passwordless sudo, clone the DevStack repository, create a private local.conf, and run ./stack.sh. DevStack then installs and configures a development cloud, including identity, image, compute, networking, storage, and dashboard services.

This is a development and testing deployment, not a production installation. The scripts can change packages, sudo configuration, services, firewall behavior, and network interfaces, so run them on a disposable virtual machine or a dedicated host whose existing workload and data do not matter.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What DevStack installs—and why the host matters

DevStack is a collection of scripts that builds an OpenStack environment from upstream repositories. The current documentation describes it as an opinionated developer installation, while the current stack.sh source shows that it can install and configure combinations of Cinder, Glance, Horizon, Keystone, Nova, Neutron, and Swift.

The convenience comes with a substantial trade-off: DevStack is designed to take control of the machine it runs on. It installs operating-system packages, changes service configuration, creates users and permissions needed by OpenStack, and configures networking. A workstation containing important files, a production server, or a VM that must remain reachable through an existing network configuration is a poor target.

#1 Best Overall
Sale
Compressed Air Duster,130000RPM Super Power Cordless Air Duster,Rechargeable Brushless Blower,3 Gear Adjustable Blower with LED Light,Dust Remover for Computer/House/Outdoor/Car
  • Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
  • With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
  • Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
  • Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
  • Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.
  • Use a disposable VM, a fresh cloud VM, or a dedicated lab server.
  • Take a snapshot before starting if the VM platform supports snapshots.
  • Keep console access available because networking changes can interrupt SSH.
  • Do not reuse production credentials in local.conf.

The official DevStack documentation and the script itself are the authoritative places to check branch-specific behavior before every deployment.

Choose a supported Ubuntu release and DevStack branch

DevStack support follows the branch you check out. The current documentation says DevStack attempts to support the two latest Ubuntu LTS releases, but the exact set moves as new Ubuntu releases and OpenStack branches appear. The master script also checks a changing list of supported distributions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Do not assume that every Ubuntu LTS works with every DevStack branch. Before cloning, decide whether you need the current development branch or a named OpenStack release, then read that branch’s documentation and distribution checks. If you deploy from a cloud image, select a minimal Ubuntu image rather than an image preloaded with another cloud stack.

The script can be forced to continue on an untested distribution with FORCE=yes. That option bypasses a safety check; it does not add compatibility, and it should be treated as an explicit risk decision rather than a normal installation step.

Prepare the Ubuntu host

Start with a fresh minimal installation

The single-machine guide calls for a fresh Linux installation and points readers toward Ubuntu minimal media because DevStack downloads and installs its own dependencies. Remove or disable unrelated automation that could overwrite package, service, or network configuration while the installation is running.

Resource needs depend on the services enabled, whether you run guest instances, and whether the layout is single-node or multi-node. The official material does not publish one universal CPU, memory, and disk minimum for every DevStack configuration. Plan capacity for the base services plus the images, volumes, and instances you intend to create, and leave headroom for package caches and logs.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create a non-root sudo-enabled account

Run stack.sh as a normal user, never as root. Cloud images often provide a suitable login account. If yours does not, create a dedicated stack account from an administrative session:

sudo adduser --disabled-password --gecos '' stack
sudo usermod -aG sudo stack
echo stack ALL=(ALL) NOPASSWD:ALL | sudo tee /etc/sudoers.d/stack
sudo chmod 0440 /etc/sudoers.d/stack
sudo -iu stack

The account needs a real home directory because the repository, configuration file, logs, and generated credentials are kept there. Passwordless sudo is convenient for a lab installation, but limit this account to the disposable host and remove the host when the experiment is over.

Update the system and install Git

From the fresh Ubuntu host, update package indexes and install Git before cloning DevStack:

Rank #2
EVEO® Screen Cleaner Spray Kit (Streak-Free) TV Screen Cleaner for Smart TV, Lcd, LEd, Oled | Computer Screen Cleaner Spray and Wipe Microfiber Cloth - TV, Monitor, Laptop, iPad, Car - 6.7oz 1 Pack
  • Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
  • Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
  • Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
  • Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
  • Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
sudo apt update
sudo apt install -y git

DevStack installs additional dependencies during stack.sh. Installing a large collection of OpenStack packages manually beforehand can create version conflicts and makes it harder to understand a failed deployment.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Clone DevStack as the stack user

Switch to the non-root account, clone the upstream repository, and enter the checkout:

git clone https://opendev.org/openstack/devstack
cd devstack

Keep the repository in the stack user’s home directory. The scripts expect to find configuration files relative to the repository root, and running the clone as another user can leave ownership and permission problems that later appear as confusing installation failures.

If you need a specific OpenStack release, check out the corresponding branch after cloning and read its documentation before proceeding. Branch names, supported Ubuntu releases, enabled services, and configuration defaults can change; commands that work on one branch are not a guarantee for another.

Create the required local.conf

Put the file in the repository root

Create a file named local.conf directly inside the devstack directory. The minimum documented starting configuration is:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD

These four settings provide the administrator, database, message-queue, and service credentials needed by the basic installation. Replace secret with a strong, unique lab password before running the script. The values are examples, not credentials to copy into a shared environment.

Protect credentials and preserve the exact syntax

Keep local.conf readable only by the stack user. It contains credentials in plain text and may be copied into logs or backups if you handle the directory carelessly. Verify that the file is actually named local.conf, not local.conf.txt, and that the first line is exactly [[local|localrc]]. INI-style spelling and punctuation matter.

Do not add random options copied from an unrelated release. DevStack configuration variables are branch-sensitive. Start with the four documented values, then add only settings described by the documentation for the branch you selected. If you enable extra services, allow for additional package downloads, disk use, memory consumption, and validation work.

Run stack.sh

From the repository root and while logged in as the non-root sudo-enabled user, start the installation:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
BladeHawks RGB Gaming Mouse Pad Extra Large Extended 31.5x12 Inch-Black | LED mouse pad with 14 lighting modes, covers keyboard & mouse, anti-slip rubber base, waterproof surface, USB powered
  • 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
  • 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
  • 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
  • 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
  • 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.
./stack.sh

The script installs operating-system dependencies, clones OpenStack projects, configures services, creates databases and message-queue settings, prepares networking, and writes logs. Let it run without closing the terminal. A failure near the end can leave a partially configured host, so record the final error and the command output before attempting another run.

An older official quick-start page estimates 15–20 minutes, largely depending on Internet speed. That figure comes from the Ussuri-era documentation and is not a current guarantee. Downloads, disk performance, CPU, enabled services, package mirrors, and cloud-provider networking can make a current deployment substantially faster or slower.

What a successful run produces

At completion, the terminal prints connection details and the location of the generated credentials file. The exact text varies by branch and enabled services. Do not infer success merely because the command returned to a shell: use the validation steps below and inspect the service and endpoint lists.

Validate the new OpenStack cloud

Load the generated credentials

DevStack writes an openrc file containing the environment variables used by the OpenStack client. From the DevStack directory, source it in the current shell:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
source openrc

Sourcing affects only the current shell. If you open a new terminal, source the file again before running client commands. Treat the file as sensitive because it contains authentication details.

Check services and endpoints

Use the OpenStack command-line client to confirm that the control plane registered its services and endpoints:

openstack service list
openstack endpoint list

A base installation commonly exposes the following components:

Component Role
Keystone Identity and authentication
Glance Image storage and discovery
Nova Compute and virtual-machine management
Placement Resource inventory used by compute scheduling
Cinder Block storage volumes
Neutron Networking
Horizon Web dashboard

Some deployments also enable Swift or other projects. The list is determined by the branch and configuration, so validate what your installation enabled rather than expecting every service in the table on every host.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Inspect images, networks, and volumes

Before launching a guest, confirm that the basic resource catalogs respond:

Rank #4
Sale
Vaydeer Wrist Rest for Keyboard and Mouse, Computer Ergonomic Wrist Support Pad, Soft Memory Foam Arm Cushion for Desk, Palm Hand Office Laptop Typing
  • 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
  • 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
  • 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
  • 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
  • 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
openstack image list
openstack network list
openstack volume list

Empty lists are not automatically errors: a new cloud may not contain an image, user-created network, or volume yet. A command that cannot authenticate or reach an endpoint indicates a control-plane or credential problem and should be resolved before creating a server.

Open Horizon

The installer prints the dashboard URL when Horizon is enabled. Open that address from a machine that can reach the DevStack host and sign in with the administrator credentials from local.conf. If the dashboard is reachable only from the VM’s private address, use the VM console or an appropriate lab-only access path rather than exposing administrative services to the public Internet.

Launch a small test instance only after prerequisites exist

A test server requires an image, a flavor, and a reachable network. Names and defaults vary by release and configuration, so first discover the available resources with openstack image list, openstack flavor list, and openstack network list. Then use the identifiers returned by those commands with the server-create command documented for your branch. Validate console access, DHCP, security-group behavior, and outbound connectivity separately; a running control plane does not prove that guest networking is correct.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why DevStack can change or break networking

Neutron must connect virtual machines to physical or virtual interfaces, and DevStack configures the supporting bridges, namespaces, routes, and services. Those changes can conflict with a cloud provider’s network manager, an existing bridge, VPN software, firewall rules, or a manually configured static address.

Symptoms can include a dropped SSH session, a host that no longer answers on its old address, a dashboard reachable only from the console, or instances that boot without external connectivity. These are reasons to use a disposable target, not reasons to run the installer repeatedly on a valuable machine.

Reduce the impact before installation

  • Record the VM’s console URL, private address, and cloud-provider recovery procedure.
  • Keep a second administrative path available if possible.
  • Snapshot the VM or preserve a rebuildable image.
  • Stop unrelated network-management automation during the installation.
  • Plan how you will delete and recreate the VM instead of trying to restore a production network by hand.

If the host becomes unreachable, use the hypervisor or cloud console to inspect logs and recover. Rebuilding the disposable VM is often safer than attempting to reverse every package, bridge, namespace, and firewall change made by a partial DevStack run.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Use the official single-VM cloud-init route

When you are starting from a cloud VM rather than an existing Ubuntu server, the official single-VM guide provides a cloud-init approach. Its flow creates the stack user, installs Git, clones DevStack, writes a minimal configuration, and launches stack.sh automatically.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Cloud-init is useful for repeatable lab creation because the VM can be rebuilt from the same initialization data. It does not change DevStack’s risk profile: the VM is still modified extensively, and the cloud provider’s networking may still be affected. Confirm that the selected Ubuntu image and the DevStack branch in the guide are compatible before booting the VM.

For a first installation, watch the instance console and cloud-init logs until the script finishes. Do not assume that a VM reaching an “active” state means OpenStack completed; cloud-init can finish its own setup while stack.sh is still downloading projects or configuring services.

Best Value
Sale
Under Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
  • 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
  • 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
  • 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
  • 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
  • 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.

Troubleshoot the most common failures

The distribution is rejected

Read the branch documentation and the distribution checks in stack.sh. If the Ubuntu release is outside the branch’s supported set, use a supported release or a matching branch. FORCE=yes can bypass the check, but it leaves compatibility unverified and should be reserved for deliberate experiments with a recovery plan.

stack.sh reports that it is running as root

Exit the root shell and switch to the dedicated account with sudo -iu stack. Ensure that the repository and local.conf belong to that account. Running some commands as root and others as stack can create ownership problems in the home directory and in generated files.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The configuration is ignored

Confirm that you are in the repository root, that the filename is exactly local.conf, and that the file begins with [[local|localrc]]. Check for accidental Windows line endings or a copied code-fence marker. Keep the four password variables spelled exactly as shown, and make sure shell expansion has not replaced $ADMIN_PASSWORD before DevStack reads the file.

Authentication fails after installation

Source openrc again in the same terminal where you run the client. If authentication still fails, compare the credentials in local.conf with the generated environment and inspect the final stack.sh output. Do not publish the file or paste its passwords into a support forum.

A service or endpoint is missing

Use openstack service list and openstack endpoint list to determine whether the problem is registration or reachability. Service combinations depend on the branch and enabled configuration, so a component omitted from your deployment may simply not have been selected. Review the relevant service logs and the exact failure near the end of stack.sh before changing configuration.

The host loses network access

Use out-of-band console access and the recovery procedure for the VM or dedicated server. Check whether the host’s original interface, address, bridge, or route was replaced by the networking configuration. If the machine is disposable, rebuild it from the clean image and adjust the DevStack network configuration for the lab rather than layering a second installation over a damaged one.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The installation is extremely slow or runs out of space

Downloads and package compilation are sensitive to Internet bandwidth, mirror availability, disk speed, and enabled services. Confirm available disk space and memory, reduce optional services, and use a faster or larger disposable VM. The historical 15–20-minute estimate should not be used as a timeout threshold for a current deployment.

Understand the development boundary

DevStack is optimized for quickly producing an environment in which OpenStack code and integrations can be exercised. Its scripts are opinionated, change the host, and are commonly rerun on disposable machines. That makes it valuable for learning, development, CI experiments, and testing a particular OpenStack branch.

It is not a production hardening or lifecycle-management system. A production design needs deliberate choices for high availability, persistent storage, network segmentation, secrets management, upgrades, monitoring, backups, and recovery. Do not promote a DevStack host into production simply because Horizon opens and a test instance boots.

Safe day-to-day workflow after installation

  1. Keep the DevStack directory and local.conf private to the lab account.
  2. Source openrc before each new shell session used for OpenStack commands.
  3. Check service and endpoint lists after changing configuration or rebooting the host.
  4. Record the branch, Ubuntu release, enabled services, and VM image used for each experiment.
  5. Use small test images and instances until networking, storage, and quotas are understood.
  6. Snapshot or export useful test data, then destroy and recreate the VM when the host becomes inconsistent.

Following this workflow keeps the installation reproducible and limits the damage caused by the host-wide changes that make DevStack convenient for development.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.