Saturday, June 25, 2016

Redhat OpenStack (Mitaka) using OpenStack packstack installation all in a Box on CentOS7 running on VMWare WorkStation 12



CentOS 7 minimal install
Configure OpenStack on a Single node
OpenStack Mitaka

The Setup which was used



  • CentOS 7 minial install
  • Configure Openstack on a Single node
  • OpenStack Mitaka


1) AMD based windows 7 is the installation on the workstation with SVM virtaulation enabled in the workstation BIOS

2) VMWare workstation 12

3) The Virtuak Machine used for OpenSatck installation had in the Processor settings as the option Selected
"Virtualize Intel VT-x/EPT or AMD-V/RV

4) The Virtual Machine has CentoS7 Minimal installed
[root@centos7 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@centos7 ~]#
[root@centos7 ~]#
[root@centos7 ~]# uname -a
Linux centos7.example.com 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 23 17:05:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@centos7 ~]#

5) The CentOS virtual Machine has 4 Virtual processors installed and number of cores per prcoessor as 1 
This may bary as per the hardware configuration of your workstation/server.



[root@centos7 ~]# cat /proc/cpuinfo  | grep -i core
model name      : AMD PRO A10-8700B R6, 10 Compute Cores 4C+6G
core id         : 0
cpu cores       : 1
model name      : AMD PRO A10-8700B R6, 10 Compute Cores 4C+6G
core id         : 0
cpu cores       : 1
model name      : AMD PRO A10-8700B R6, 10 Compute Cores 4C+6G
core id         : 0
cpu cores       : 1
model name      : AMD PRO A10-8700B R6, 10 Compute Cores 4C+6G
core id         : 0
cpu cores       : 1
[root@centos7 ~]#


Steps of Installation

A) Update the CentOS Installation

yum update -y

B) Setup the NTP services 

NTP server being used are the ones which we get in the default installation of CentOS7 Minimal 

Edit the /etc/ntp.conf and put the NTP server there in the virtual machine running CentOS


C) Install few more utilities 

yum -y install net-tools rsync wget bind-utils 


D) Adding the RDO (RedHat OpenStack Mitaka Repo)

sudo yum install -y https://www.rdoproject.org/repos/rdo-release.rpm

The Above gives access to the repositories for RedHat OpenStack which we will be installing

After the repo is installed verify using yum repolist that the repository is listed

yum repolist


[root@centos7 ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net
repo id                                                 repo name                                                     status
base/7/x86_64                               CentOS-7 - Base                                              9,007
extras/7/x86_64                        CentOS-7 - Extras                                            310
openstack-mitaka/x86_64    OpenStack Mitaka Repository                            1,181
updates/7/x86_64                   CentOS-7 - Updates                                   1,974
repolist: 12,472
[root@centos7 ~]#


E) Install the openstack-packstack 

yum install openstack-packstack 

These are the RPMs which finally get installed

Installed:
  openstack-packstack.noarch 0:8.0.0-1.el7

Dependency Installed:
  PyYAML.x86_64 0:3.10-11.el7           jbigkit-libs.x86_64 0:2.0-11.el7                      libjpeg-turbo.x86_64 0:1.2.90-5.el7             libtiff.x86_64 0:4.0.3-14.el7
  libwebp.x86_64 0:0.3.0-3.el7          libyaml.x86_64 0:0.1.4-11.el7_0                       openstack-packstack-puppet.noarch 0:8.0.0-1.el7 openstack-puppet-modules.noarch 1:8.0.4-1.el7
  pyOpenSSL.noarch 0:0.15.1-1.el7       python-docutils.noarch 0:0.11-0.2.20130715svn7687.el7 python-enum34.noarch 0:1.0.4-1.el7              python-idna.noarch 0:2.0-1.el7
  python-ipaddress.noarch 0:1.0.7-4.el7 python-netaddr.noarch 0:0.7.18-1.el7                  python-pillow.x86_64 0:2.0.0-19.gitd1c6db8.el7  python-ply.noarch 0:3.4-10.el7
  python-pycparser.noarch 0:2.14-1.el7  python-six.noarch 0:1.9.0-2.el7                       python2-cffi.x86_64 0:1.5.2-1.el7               python2-cryptography.x86_64 0:1.2.1-3.el7
  python2-pyasn1.noarch 0:0.1.9-6.el7.1 python2-setuptools.noarch 0:22.0.5-1.el7              ruby.x86_64 0:2.0.0.598-25.el7_1                ruby-irb.noarch 0:2.0.0.598-25.el7_1
  ruby-libs.x86_64 0:2.0.0.598-25.el7_1 rubygem-bigdecimal.x86_64 0:1.2.0-25.el7_1            rubygem-io-console.x86_64 0:0.4.2-25.el7_1      rubygem-json.x86_64 0:1.7.7-25.el7_1
  rubygem-psych.x86_64 0:2.0.0-25.el7_1 rubygem-rdoc.noarch 0:4.0.0-25.el7_1                  rubygems.noarch 0:2.0.14-25.el7_1

Complete!

F) See the packstack help 

[root@centos7 ~]# packstack --help | grep -i answer
  --gen-answer-file=GEN_ANSWER_FILE
                        Generate a template of an answer file.
  --answer-file=ANSWER_FILE
                        answerfile will also be generated and should be used
  -o, --options         Print details on options available in answer file(rst
                        Packstack a second time with the same answer file and
[root@centos7 ~]#



G) We will generate an answer file

An Answer file is a good place to save your answers in the installation of OpenStack in case you want to install it again or can also use the answer file for similar other installation of OpenStack.


[root@centos7 ~]# packstack --gen-answer-file=/root/mitaka.openstack.answers.txt
Packstack changed given value  to required value /root/.ssh/id_rsa.pub
[root@centos7 ~]#


H) Edit the Answers file as needed

The values which had been changed as those from the values appearing in the answers files had been as 

[root@centos7 ~]# diff mitaka.openstack.answers.txt mitaka.openstack.answers.txt.1

< CONFIG_NTP_SERVERS=0.centos.pool.ntp.org
< CONFIG_NAGIOS_INSTALL=n
< CONFIG_KEYSTONE_ADMIN_PW=<Put a strong password here>
< CONFIG_HORIZON_SSL=y
< CONFIG_PROVISION_DEMO=n


++++++++++++

I) In case there are issues with the rabbitmq not starting and you get the error like below in the installation try this

ERROR

PuppetError: Error appeared during Puppet run: 192.168.100.128_amqp.pp
Error: Could not start Service[rabbitmq-server]: Execution of '/usr/bin/systemctl start rabbitmq-server' returned 1: Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
You will find full trace in log /var/tmp/packstack/20160624-093650-Zlsy68/manifests/192.168.100.128_amqp.pp.log

FIX:

[root@centos7 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.100.128 centos7 centos7.example.com
[root@centos7 ~]#
[root@centos7 ~]#
[root@centos7 ~]# cat /etc/hostname
centos7.example.com
[root@centos7 ~]#
[root@centos7 ~]# hostnamectl set-hostname centos7.example.com
[root@centos7 ~]#

+++++++++++++

J) packstack installation using the answers file 

packstack --answer-file=/root/mitaka.openstack.answers.txt

The installation begins and completes showing these 

Applying 192.168.100.128_ceilometer.pp
192.168.100.128_ceilometer.pp:                       [ DONE ]
Applying 192.168.100.128_aodh.pp
192.168.100.128_aodh.pp:                             [ DONE ]
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]

 **** Installation completed successfully ******

Additional information:
 * File /root/keystonerc_admin has been created on OpenStack client host 192.168.100.128. To use the command line tools you need to source the file.
 * NOTE : A certificate was generated to be used for ssl, You should change the ssl certificate configured in /etc/httpd/conf.d/ssl.conf on 192.168.100.128 to u        se a CA signed cert.
 * To access the OpenStack Dashboard browse to https://192.168.100.128/dashboard.
Please, find your login credentials stored in the keystonerc_admin in your home directory.
 * The installation log file is available at: /var/tmp/packstack/20160624-094448-lY1juB/openstack-setup.log
 * The generated manifests are available at: /var/tmp/packstack/20160624-094448-lY1juB/manifests
[root@centos7 ~]#


These may take sometime varying on the internet speed also configuration of the machine.

K) Login to the OpenStack UI using https://192.168.100.128/dashboard using the admin user and the password you may get in the /root/keystone* file which generates in the installation.


1 comment: