Menu Close

Single-node and multi-node installation of OpenStack using the PackStack utility

Hardware requirements

The OpenStack cloud enviroment will run at top of the operating system CentOS 7.9. Also it is necessary to provide at least 16GB of RAM.

Installation for single-node deployment

echo "" >> /etc/hosts
systemctl stop firewalld NetworkManager
systemctl disable firewalld NetworkManager
setenforce 0
yum update

vi /etc/selinux/config 
# Change state to „disabled“.

shutdown -r now
yum install centos-release-openstack-train
yum upgrade
yum install -y openstack-packstack
packstack --allinone --os-neutron-l2-agent=openvswitch --os-neutron-ml2-mechanism-drivers=openvswitch --os-neutron-ml2-tenant-network-types=vxlan --os-neutron-ml2-type-drivers=vxlan,flat --provision-demo=n --os-neutron-ovs-bridge-mappings=extnet:br-ex --os-neutron-ovs-bridge-interfaces=br-ex:ens192
# Switch --os-neutron-ovs-bridge-interfaces=br-ex:ens192 determines physical interface that will be connected to virtual bridge OVS interface

Installation for multi-node deployment

On host (compute node) we can repeat the same steps until command “shutdown -r now”. Next we will generate “answer file” using the command:

packstack --gen-answer-file=/root/answer.txt

In that file we will modify value for parameter CONFIG_COMPUTE_HOSTS to an IP address of host we want to install OS on.

Also we have to modify value for parameter CONFIG_NEUTRON_OVN_TUNNEL where we specify the interface through which the communication will take place. In addition It is recommended to define CIDR subnets in CONFIG_NEUTRON_OVN_TUNNEL_SUBNETS section.


It is possible to enter ovs_tunnel instead of ovn_tunnel. The difference is not clear yet but it caused the installation end with an error.

When we have already installed some of hosts, we need to specify them in EXCLUDE_SERVERS section and therefore we can run the installation using the command:

packstack --answer-file=/path/to/answer/file/ 

User manual

There are two options how to configure OpenStack cloud enviroment. One of them is by using a CLI, the other one is by using OpenStack web GUI. To login into web GUI, we need to obtain a password for an admin account by using the command in root directory:

cat keystonerc_admin

Adding a new network and a router with floating IP

# creating a new network
openstack network create external_network --external  --provider-network-type flat --provider-physical-network extnet --share

# creating a subnet for the netork
openstack subnet create ext-sub --subnet-range --gateway --no-dhcp --allocation-pool start=,end= --network external_network

# creating of a router
openstack router create router1

# assigning of the external gateway to the router
openstack router set router1 --external-gateway external_network --enable-snat

# allocation of a floating IP for the certain project
openstack floating ip create external_network --project admin

How to import new image

Recording to official documentation it is possible to import images in various formats ( raw, qcow2, vmdk etc.) For us worked the most format qcow2, other formats caused different issues during deployment of instance.

Rate this post

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.