Do you know the process behind Single Node OpenStack (Liberty) Installation on CentOS 7? I presume not. That is the only reason why you are here. Okay then. I don’t want to drag this thing anymore. So, let’s dive right into the main topic then.
What is OpenStack?
Well, OpenStack is a free and open-source software platform meant for cloud computing. It manages a large pool of processing, storage (block & swift) and network resources of a data centre and commonly considered as IaaS. It is used in both public and private clouds.
It also provides a dashboard where admins can design and manage Projects (Tenants) and give proper access to the other project members. With a strong ecosystem of support, users can choose from diverse OpenStack-powered products ranging with the support from DIY to fully managed by experts.
Installation Guide of Single Node OpenStack (Liberty) on CentOS 7:
In this article, we will install the latest version of OpenStack ‘Liberty’ on CentOS 7 using the rdo repositories. According to per my setup guide, I am using the following values on my CentOS 7 Machine.
- Hostname = openstack.example.com
- DNS = 192.168.1.254
- IP address = 192.168.1.3
- netmask = 255.255.255.0
- Gateway = 192.168.1.1
Step – 1:
First of all, set the hostname using hostnamectl commands as mentioned below.
[root@localhost ~]# hostnamectl set-hostname "openstack.example.com" [root@localhost ~]#
Step – 2:
Now, set the SELinux in permissive mode by using the following commands.
[root@localhost ~]# setenforce 0
Edit the SELinux config file ( /etc/sysconfig/selinux ) and set “SELINUX=permissive”
[root@localhost ~]# grep permissive /etc/sysconfig/selinux SELINUX=permissive [root@localhost ~]#
Step – 3:
Disable both the Firewall and Network Manager Service at once.
[root@openstack ~]# systemctl stop firewalld [root@openstack ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@openstack ~]# [root@openstack ~]# systemctl stop NetworkManager [root@openstack ~]# systemctl disable NetworkManager Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service. Removed symlink /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service. Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service. [root@openstack ~]#
Step – 4:
As we have already taken all the precautions, now enable the rdo repository for liberty packages.
Use the following commands to update the system and enable rdo repository.
[root@openstack ~]# yum update -y [root@openstack ~]# yum install -y https://www.rdoproject.org/repos/rdo-release.rpm
Step – 5:
Install OpenStack PackStack Package
[root@openstack ~]# yum install -y openstack-packstack
Step – 6:
Generate the answer file using below command.
[root@openstack ~]# packstack --gen-answer-file=/root/answer.txt Packstack changed given value to required value /root/.ssh/id_rsa.pub
Step – 7:
Edit the answer file “/root/answer.txt”, set the following parameters and leave rest of parameters as it is.
# NTP Server CONFIG_NTP_SERVERS=<NTP_Server_IP> # Disable Demo Version CONFIG_PROVISION_DEMO=n # Set KeyStone Admin Password or Admin user Password CONFIG_KEYSTONE_ADMIN_PW=<password> # Config Horizon over SSL CONFIG_HORIZON_SSL=y # Disable Nagios CONFIG_NAGIOS_INSTALL=n
Note: In case, if you don’t have NTP server in your setup, then you can neglect the NTP parameter and leave it as it is.
Step – 8:
Start OpenStack installation using the answer file.
[root@openstack ~]# packstack --answer-file /root/answer.txt
Once the installation setup is completed, you get to see the following message.
After the installation, a new interface namely, “br-ex” will be created and then assign the IP address of eth0 or enp0s3 to br-ex.
[root@openstack ~]# cd /etc/sysconfig/network-scripts/ [root@openstack network-scripts]# cp ifcfg-enp0s3 ifcfg-br-ex [root@openstack network-scripts]# vi ifcfg-enp0s3 DEVICE=enp0s3 HWADDR="08:00:27:8E:EA:56" TYPE=OVSPort DEVICETYPE=ovs OVS_BRIDGE=br-ex ONBOOT=yes [root@openstack network-scripts]# vi ifcfg-br-ex DEVICE=br-ex DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=192.168.1.3 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=192.168.1.254 ONBOOT=yes
In the above files, replace the IP details, Hardware address and Device name as per your setup.
So, when you restart the network service, it will add “enp0s3” as a port in br-ex OVS bridge.
[root@openstack network-scripts]# systemctl restart network [root@openstack network-scripts]#
After this, just do a reboot and check whether all the settings are perfect or not.
Step – 9:
Access the OpenStack Dashboard now.
After the installation is completed, a dashboard link was shown on the screen. During the testing, it’s “https://192.168.1.3/dashboard” for me. Open that link.
So, as the Installation Process is completed, now use the username as “admin” and password that you’ve set for the keystone admin user in the answer file.
Voila…!! That’s it.
It’s better to share fun&knowledge rather than saving it for yourself. So, stay tuned to us for more.