Tripleo UnderCloud On CentOS 7

  Tripleo(Openstack on Openstack) UnderCloud

I have covered Openstack installation using Packstack on my last blog http://ranjeetbadhe.com/part1-openstack-installation. In this blog, I will demonstrate the installation of Undercloud Openstack.  This installation can be done on a bare metal machine or on a VM, depends on your convenience and the resources you have at your disposal. I am going to cover the deployment of 2 nodes 1 Controller and 1 Compute node. This implementation is similar to Redhat Director. Implementing on Centos has no subscription hassles and is pretty straightforward.  Overcloud provides the Openstack services Horizon, Neutron, Cinder, Glance,  Ceilometer Services, Nova, Heat, and Keystone.

In my test bed, I have Virtual machines spinning on ESXi. You can choose any other virtualization means for spinning the VM.Here is the configuration that I am using for my Director.

1_director_hardware

 

 

 

 

 

 

My testbed details are as follows

  • 3 Network interface cards defined Two Interfaces Provisioning & NAT and one for direct Internet access.
  • Provisioning Network: 192.168.126.0/24
  • NAT Network: 192.168.122.0/24
  •  eno16777728: 172.19.19.121  (Internet Access for Fetching Patches/updates)
  •  eno33554952: 192.168.126.1
  •  eno50332184: 192.168.122.90

To Begin with, lets us do the basic configuration

Setup the hostname, update the system, add user ‘stack” and reboot the system.

[root@undercloud ~]# cat /etc/hostname
undercloud.telus.com

[root@undercloud ~]# cat /etc/hosts
192.168.126.1 undercloud.telus.com undercloud

[root@undercloud ~]#useradd stack
[root@undercloud ~]# echo “enter_password_here” | passwd –stdin stack
[root@undercloud ~]# echo “stack ALL=(ALL) NOPASSWD: ALL” | sudo tee /etc/sudoers.d/stack
[root@undercloud ~]# chmod 0440 /etc/sudoers.d/stack

[root@undercloud ~]# yum update -y && reboot

Now lets us configure the repositories. This is the most important part as incorrect repo config cannot fetch the required packages leading to frustration. I suggest you to browse through all the repositories available on Centos website so that you can set the right URL to fectch the packages.

[root@undercloud ~]# cd /etc/yum.repos.d/

[root@undercloud yum.repos.d]# ls
CentOS-Base.repo CentOS-Media.repo delorean-deps.repo puppet-cassandra-2.1.1-1.0fc5e65git.el7.noarch.rpm
CentOS-CR.repo CentOS-Sources.repo delorean.repo RPM-GPG-KEY-EPEL-7
CentOS-Debuginfo.repo CentOS-Vault.repo epel.repo
CentOS-fasttrack.repo delorean-current.repo epel-testing.repo

[root@undercloud ~]#sudo curl -L -o /etc/yum.repos.d/delorean.repo https://trunk.rdoproject.org/centos7-master/current-passed-ci/delorean.repo

(undercloud) [stack@undercloud ~]$sudo curl -L -o /etc/yum.repos.d/delorean-deps.repohttps://trunk.rdoproject.org/centos7/delorean-deps.repo

2_Yum_Repo

3_Yum_Repo

(undercloud) [stack@undercloud ~]$sudo yum install deltarpm

(undercloud) [stack@undercloud ~]$sudo yum install wget

(undercloud) [stack@undercloud ~]$ sudo yum install puppet-cassandra

(undercloud) [stack@undercloud ~]$ sudo rpm -ivh  puppet-cassandra-2.1.1-1.0fc5e65git.el7.noarch.rpm

(undercloud) [stack@undercloud ~]$sudo yum install epel-release -y

(undercloud) [stack@undercloud ~]$sudo wget http://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-7

(undercloud) [stack@undercloud ~]$sudo rpm –import RPM-GPG-KEY-EPEL-7

(undercloud) [stack@undercloud ~]$sudo yum install python-tripleoclient -y

(undercloud) [stack@undercloud ~]$sudo yum install epel-release -y
(undercloud) [stack@undercloud ~]$ sudo yum install python-tripleoclient -y

(undercloud) [stack@undercloud ~]$ vi undercloud.conf

[DEFAULT]
local_ip = 192.168.126.1/24
undercloud_public_vip = 192.168.126.2
undercloud_admin_vip = 192.168.126.3
local_interface = eno33554952
masquerade_network = 192.168.126.0/24
dhcp_start = 192.168.126.100
dhcp_end = 192.168.126.150
network_cidr = 192.168.126.0/24
network_gateway = 192.168.126.1
inspection_iprange = 192.168.126.160,192.168.126.199
generate_service_certificate = true
certificate_generation_ca = local

We are now ready to start an Undercloud installation

(undercloud) [stack@undercloud ~]$openstack undercloud install

After installation you will see the message like the one below…….

2018-04-14 14:26:53,433 INFO: Mistral workbooks configured successfully
2018-04-14 14:29:11,936 INFO: Configuring an hourly cron trigger for tripleo-ui logging
2018-04-14 14:29:16,063 INFO:
#############################################################################
Undercloud install complete.

The file containing this installation’s passwords is at
/home/stack/undercloud-passwords.conf.

There is also a stackrc file at /home/stack/stackrc.

These files are needed to interact with the OpenStack services, and should be
secured.

#######################################################################

Verify the Openstack service list

[stack@undercloud ~]$ source stackrc
(undercloud) [stack@undercloud ~]$ openstack service list
+———————————-+——————+————————-+
| ID | Name | Type |
+———————————-+——————+————————-+
| 12183fd366b64af6866917dfbf090f8b | nova | compute |
| 23974285f176485c88e50dd1ab3996bd | keystone | identity |
| 2c5d0ba4bb004569ab73cd28e8f4e96b | zaqar-websocket | messaging-websocket |
| 4057b3aac921485c80d9a8c7cf91f8f2 | mistral | workflowv2 |
| 5176499275bf410a8d5d791b3b7935a4 | heat-cfn | cloudformation |
| 710b97a07a33400ba67b46631e124d6e | glance | image |
| 71b5997d13f64518b48c369ccada4bbb | heat | orchestration |
| 76110b760e924054997795e2cc84264a | ironic | baremetal |
| 7a1b9f5e9407498992f615f72942f658 | ironic-inspector | baremetal-introspection |
| 9b69b15190a5423b814adc5ff2c824d6 | zaqar | messaging |
| d35af7dc14cc4d4f87edc8db0dbee384 | swift | object-store |
| e4fdd68ab3404961975e18bcb2f03232 | neutron | network |
| f874c9ac81af480c8033154a64d369fd | placement | placement |
+———————————-+——————+————————-+

Its time now to deploy Overcloud servers using the Undercloud infrastructure, which consists of downloading the images,creating overcloud-stackenv.json, setting roles. I will provide configuration guidelines needed to spin VM’s on ESXi platform. Stay tuned. Please share your feedback.

Check out the next Overcloud part at: http://ranjeetbadhe.com/tripleo-overcloud/

One thought on “Tripleo UnderCloud On CentOS 7

  1. Thanks Ranjeet for posting this. I was looking for Hands-on practice on Director implementation, unfortunately getting Red Hat subscriptions/ repository access is not hasslelefree
    I am currently working on the steps that you have posted here and will get back to you if I face any challenge.

Leave a Reply

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