Cloudbreak POC – Setup and Installation LAB

Infrastructure – OpenStack

Before getting into the weeds of setting up clusters with Cloudbreak we need few things put in place.
The RedHat OpenStack 8 platform was installed using automated installer called OSP Director [TripleO].
It consists of one controller and one compute. Carved NFS storage capacity for this POC is 1TB.
Final command used for creating overcloud was:
openstack overcloud deploy \
–templates \
-e /home/stack/templates/openstack-tripleo-heat-templates/overcloud-resource-registry-puppet.yaml \
-e /home/stack/templates/network-isolation.yaml \
-e /home/stack/templates/network-environment.yaml \
-e /home/stack/templates/storage-environment-v2.yaml \
–control-scale 1 \
–compute-scale 1 \
–ceph-storage-scale 0 \
–block-storage-scale 0 \
–swift-storage-scale 0 \
–control-flavor control \
–compute-flavor compute \
–neutron-tunnel-types vlan \
–neutron-network-type vlan \
–neutron-flat-networks datacentre,physnet-tenant \
–neutron-bridge-mappings datacentre:br-ex,physnet-tenant:br-tenant \
–neutron-network-vlan-ranges datacentre:1612:1612,physnet-tenant:1701:1720 \
–neutron-disable-tunneling \
–timeout 300 \
–log overcloud.log \
–verbose && sudo openstack-service stop && sudo openstack-service start

 

From above few things are important in our lab setup:
  • initial overcloud [cloud deployed by using OSP director] uses local storage for instances,
  • ovs network overlay is vlan [Cisco does not supprt VXLAN as of yet],
  • there are two flat networks defined in UCSM, one for tenant[physnet-tenant], and other, public [datacentre]
  • vlan range must be satisfied for both nets

 

After first step I have further modified configuration as I switched to Keystone version 3.
 I am using AD for authenticating my users.
Also to scale  better for testing I reconfigured storage to use NetApp NFS share 1TB in side.

 

On controller as root I have created a file that points to NFS share:
cat >> /etc/cinder/cinder-nfs.conf << EOF
10.237.4.100:/OSP
EOFchgrp cinder /etc/cinder/cinder-nfs.conf

 

Update overcloud with NFS changes.
You must use all your previous yaml files plus new additions if you want configuration to remain as before:
openstack overcloud deploy \
–templates \
-e /home/stack/templates/openstack-tripleo-heat-templates/overcloud-resource-registry-puppet.yaml \
-e /home/stack/templates/network-isolation.yaml \
-e /home/stack/templates/network-environment.yaml \
-e /home/stack/templates/storage-environment-v2.yaml \
-e /home/stack/templates/cinder-netapp-config-v2.yaml \
–log overcloud.log \
–verbose && sudo openstack-service stop && sudo openstack-service start

 

I have also created a project called cloudbreak, and gave myself admin and _member_ privileges.
Also, very important is to give yourself and admin users, heat_stack_owner. If not HEAT template creation will fail!!
2c8a8197-134e-4d50-816c-0ba629d627cc

 

CloudBreak Prep

Cloudbreak has two main components: the Cloudbreak Application and the Cloudbreak Deployer.

 

In order to install Cloudbreak on the latest RedHat OpenStack Platform we have to install Cloudbreak Deployer first. There are two ways of accomplishing this. First is to install a VM and install docker image, or use prebuilt cloud image. The prebuilt cloud image is available for OpenStack, MS Azure, AWS, or GCP [Google Cloud Platform].

 

To download the latest Cloudbreak Deployer and Cloudbreak app image, execute bellow from internet facing system:
cd

 

Import CloudBreak Images into OSP8. Here’s handy script to do it:
for name in cloudbreak-deployer-130-2016-06-14.img cloudbreak-2016-05-26-11-18.img; do
NAME1="${name##*/}";
NAME="${NAME1%.img}";
glance image-create --name ${NAME} --file "${name}" --disk-format qcow2 --container-format bare --progress
done
...
[=============================>] 100%

+------------------+--------------------------------------------------------------------+
| Property         | Value                                                              |
+------------------+--------------------------------------------------------------------+
| checksum         | e51f799c726eaf8ed738b8a17865f8cf                                   |
| container_format | bare                                                               |
| created_at       | 2016-09-26T18:09:17Z                                               |
| direct_url       | file:///var/lib/glance/images/4ee2d3fc-07ad-42c3-9bfe-fc6dc9626ea8 |
| disk_format      | qcow2                                                              |
| id               | 4ee2d3fc-07ad-42c3-9bfe-fc6dc9626ea8                               |
| min_disk         | 0                                                                  |
| min_ram          | 0                                                                  |
| name             | cloudbreak-deployer-130-2016-06-14                                 |
| owner            | 860191bfe5784d9c93ac34356f497785                                   |
| protected        | False                                                              |
| size             | 5813370880                                                         |
| status           | active                                                             |
| tags             | []                                                                 |
| updated_at       | 2016-09-26T18:12:01Z                                               |
| virtual_size     | None                                                               |
| visibility       | public                                                            |
+------------------+--------------------------------------------------------------------+

[=============================>] 100%

+------------------+--------------------------------------------------------------------+
| Property         | Value                                                              |
+------------------+--------------------------------------------------------------------+
| checksum         | d3d7b84114d2b129a83979558e6ba4a9                                   |
| container_format | bare                                                               |
| created_at       | 2016-09-26T18:12:03Z                                               |
| direct_url       | file:///var/lib/glance/images/c6930048-c99f-48e8-a08e-c39610ad9e31 |
| disk_format      | qcow2                                                              |
| id               | c6930048-c99f-48e8-a08e-c39610ad9e31                               |
| min_disk         | 0                                                                  |
| min_ram          | 0                                                                  |
| name             | cloudbreak-2016-05-26-11-18                                        |
| owner            | 860191bfe5784d9c93ac34356f497785                                   |
| protected        | False                                                              |
| size             | 2938961920                                                         |
| status           | active                                                             |
| tags             | []                                                                 |
| updated_at       | 2016-09-26T18:13:27Z                                               |
| virtual_size     | None                                                               |
| visibility       | public                                                            |
+------------------+--------------------------------------------------------------------+

stack@osp8director-xx:[xx@HIGHVAIL/HIGHVAIL/cloudbreak (v3)]~/images>

 

These are uploaded images. Minimum disk space is set to 40GB, and RAM to 8192MB.
ccb1ccb7-a998-4566-8a49-7a9ba90dedad
Two new flavours are created to support Cloudbreak deployer and later cluster setup.
VM flavors
50a8e811-8d6f-4f68-8c53-838ab9077378

 

Creating security groups:
 

nova secgroup-create ICMP_rules “Rules for ICMP Traffic”
nova secgroup-create SSH_rules “Rules for SSH Traffic”
nova secgroup-create Web_rules “Rules for Web Traffic”
nova secgroup-create openstack-Cloudbreak_Rules “Rules for Cloudbreak”
nova secgroup-add-rule ICMP_rules icmp -1 -1 0.0.0.0/0
nova secgroup-add-rule SSH_rules tcp 22 22 0.0.0.0/0
nova secgroup-add-rule Web_rules tcp 443 443 0.0.0.0/0
nova secgroup-add-rule Web_rules tcp 80 80 0.0.0.0/0
nova secgroup-add-rule openstack-Cloudbreak_Rules tcp 3000 3001 0.0.0.0/0
nova secgroup-add-rule openstack-Cloudbreak_Rules tcp 8080 8080 0.0.0.0/0
nova secgroup-add-rule openstack-Cloudbreak_Rules tcp 8089 8089 0.0.0.0/0

 

This is an additional security group with required ports for Cloudbreak.
65bc7153-9bc2-459b-b305-b287a6180a12

 

Modify the images to:
cloudbreak-deployer-130-2016-06-14
ee02816f-15d9-48f8-962f-5582aed48cb8
cloudbreak-2016-05-26-11-18
9ffc502a-3952-4cb8-a255-7d57eb97c22f

 

Create Cloudbreak Deployer VM:
bc19e98b-d9df-4283-92c1-e3b4d22e8ea4

Access And Security
0473054f-fd14-414d-ba23-b7dd8261333e

Network
a21b9dbd-7395-489d-9295-b25de668c217

Running VM:

867483ef-16e1-4702-b556-2724387bed68

 

# linux details
bb5cd41a-4cf2-4b8b-9b7f-05c433e4f44f

 

# run as cloudbreak user from /var/lib/cloudbreak-deployment
b8f27599-e68b-45ca-9e9f-c614a65fd9f4

 

# Initialize your Profile
screenshot

 

/var/lib/cloudbreak-deployment/Profile
export PUBLIC_IP=10.236.13.39

Start Cloudbreak

# Start Cloudbreak Deployer
[cloudbreak@cbd cloudbreak-deployment]$ cbd start
generating docker-compose.yml
generating uaa.yml
Recreating cbreak_haveged_1…
Recreating cbreak_uluwatu_1…
Recreating cbreak_consul_1…
Recreating cbreak_cloudbreak_1…
Recreating cbreak_registrator_1…
Recreating cbreak_periscope_1…
Recreating cbreak_sultans_1…
Recreating cbreak_logsink_1…
Recreating cbreak_logspout_1…
Recreating cbreak_identity_1…
Uluwatu (Cloudbreak UI) url:
  http://10.236.13.39:3000
login email:
  admin@example.com
password:
  xxx

 

# cbd sub-commands
Available commands:
aws                      Amazon Webservice namespace
azure                    Azure namespace
bash-complete            Generates bash autocomplete function: eval “$(cbd bash-complete)”
delete                   Deletes yaml files, and all dbs
doctor                   Deployer doctor: Checks your environment, and reports a diagnose.
env                      Environment namespace
generate                 Generates docker-compose.yml and uaa.yml
help                     Shows help information for a command
init                     Creates Profile if missing
kill                     Kills and removes all cloudbreak related container
login                    Shows Uluwatu (Cloudbreak UI) login url and credentials
logs                     Follow all logs in color. Separate service names by space to filter, e.g. “cbd logs cloudbreak uluwatu”
migrate                  Executes the db migration
ps                       docker-compose: List containers
pull                     Pulls service images
pull-parallel            Pulls service images parallel
regenerate               Backups and generates new docker-compose.yml and uaa.yml
start                    Starts Cloudbreak Deployer containers
start-wait               Starts Cloudbreak Deployer containers, and waits until API is available
startdb                  Starts the DB containers
update                   Binary selfupdater. Either latest github release (default), or specific branch from CircleCI
util                     Util namespace
version                  Displays the version of Cloudbreak Deployer

 

Generate a new SSH key
ssh-keygen -t rsa -b 4096 -C “nrokic@highvail.com”

 

Login to the browser:
c2bdbc4a-b1e1-4633-ac82-741b5d75345d

 

Next post will focus on building a cluster.

One thought on “Cloudbreak POC – Setup and Installation LAB

Leave a Reply

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