OpenStack is a Cloud Software that manage large pool of compute (hypervisors), storage ( block & swift ) and network resources of a data center. It provides a Dashboard where admins can create and manage Projects (Tenants ) and give appropriate access to the project members , further on Project members can create VMs (Virtual Machine).
In this article we will install latest version of OpenStack ‘
Liberty’ on
CentOS 7 using
rdo repositories. As per my setup i am using followings on my
CentOS 7 Machine
- Hostname = openstack.example.com
- IP address = 192.168.1.3
- netmask = 255.255.255.0
- Gateway = 192.168.1.1
- DNS = 192.168.1.254
Step:1 Set the hostname.
[root@localhost ~]# hostnamectl set-hostname "openstack.example.com"
Step:2 Set the Selinux in Permissive Mode
[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
Step:3 Disable firewalld & NetworkManager Service
[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.
Step:4 Enable rdo repository for liberty packages.
Use below 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
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
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 leave NTP parameter as it is.
Step:6 Start OpenStack installation using answer file.
[root@openstack ~]# packstack --answer-file /root/answer.txt
Once the installation is completed , we will get below message.
After the installation a new interface “br-ex” will be created and assign the IP addess 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="09:02:27:8E:EB:16"
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 above files please change the IP details, Hardware address and Device name as per your setup.
When we restart the network service , it will add “enp0s3” as a port in br-ex OVS bridge.
[root@openstack network-scripts]# systemctl restart network
Please take a reboot and check whether settings are persistent or not.
Step:7 Now Access OpenStack Dashboard.
When the installation is completed a dashboard link was provided on the screen , in My Case it is “https://192.168.1.3/dashboard”