Contrail_Cluster_Deployment - kratna888/Contrail_Command GitHub Wiki
#Welcome to Contrail Cloud Deployment Guide !
Resource Request
Contrail Controller - 8 vcpu , 64G memory , 300 G storage
Openstack Controller - 4 vCPU , 32G Memory , 100G Storage
CSN : 4 vCPU , 16G Memory , 100G Storage
Compute nodes - depends on the workloads
Acronyms
CC - Contrail-Command
prerequisites
Ping Test for all Nodes shall pass.
There are various roles in a Cluster Deployment:
a) Contrail-Controller Node
b) OpenStack Node
c) Contrail Services Node
d) Compute Node
All Servers used in the cluster (as Contrail-Controller Node, Openstack Node, Compute Node, CSN Node) should be able to ping each other via mgmt interface as well as data interface.
Cluster Deployment Steps
Sample Cluster Topology
- Non-HA ( Only one Contrail Controller and Only One OpenStack Controller )
- Single Compute
- Single Contrail Services Node
Step1: Add Physical Servers
Adding servers can be done by two ways
- Add server one by one
- Upload a csv file which contains the each server details. This CSV file shall conforms to the format Contrail-Command.
To add servers one by one , Contrail-Command expects few mandatory parameters a) Hostname b) mgmt IP c) mgmt Interface d) MAC address
For large deployments, use bulk import option using CSV file. Download the CSV file from CC. Click on Bulk Import (CSV) , to download the template.
NOTE: the demo topology above only has 1 Compute node, 5c10s12. If you are deploying additional Compute nodes, you need to include them in the csv file.
A sample CSV file would look like the following :
Workload Type,HostName,Management IP,Disk Partition,Network Interface,MAC address,IPMI Driver,IPMI Address,IPMI UserName,IPMI Password,Memory mb,CPU's,CPU Arch,Local gb,Capabilities,Number of Network Interfaces,Interface Name,Interface MAC Address,Interface IP,Enable PXE,Interface Name,Interface MAC Address,Interface IP,Enable PXE
physical,5c10s9,10.87.74.69,,enp4s0f0,,,,,,,,,,,2,enp4s0f0,,10.87.74.69,,ens2f0,,10.1.0.2,
physical,5c10s7-node1,10.87.74.65,,eno1,,,,,,,,,,,2,eno1,,10.87.74.65,,ens2f1,,10.1.0.3,
physical,5c10s7-node3,10.87.74.67,,eno1,,,,,,,,,,,2,eno1,,10.87.74.67,,ens2f1,,10.1.0.67,
physical,5c10s12,10.87.74.71,,eno1,,,,,,,,,,,2,eno1,,10.87.74.71,,ens1f0,,10.1.0.66,
Step2: Create Cluster
If you are using an internal registry
Container Register = 10.84.5.81:5000
insecure = check this box
Contrail Version = ocata-5.0-214
If you are using an external registry - hub.juniper.net
Container Register = hub.juniper.net
insecure = UNcheck this box
Contrail Version = ocata-5.0-214
Default vRouter Gateway = Provide the default Gateway for the compute nodes ( If any one of the compute has a different default GW than the one provided here, provide that GW in Compute node screen)
Encap Priority = VXLAN, MPLSoUDP, MPLSoGRE
Click on Advanced Options
CONTROL_NODES = This is the data interface of the contrail-controller
Step 3: Select the contrail-control node
Step 4: Select the orchestration node; check the advanced option
Internal VIP - VIP for the data network
External ( mgmt ) VIP - VIP for mgmt interface
Click on Advance Options if you need customize your deployment. For instance, if ironic is not needed and if you are not going to use Life Cycle Management in CC. Then you need not deploy Ironic . In CC , it is handle by a key-value pair .
Kolla Globals :
Ironic_enable = Yes
Compute node kernel version should be - kernel-3.10.0-862.3.2.el7.x86_64; Else kernel upgrade is required. as part of Kolla Globals provide a key-value pair
upgrade_kernel = yes
Then, select the OpenStack( Orchestration) node
Step 5: Select the Compute Nodes . For each Compute Node, provide the GW if it is different from the GW that was provided as part of the global parameters.
Step 6: Select the Contrail Service Node
Step 7: Verify the Summary of your cluster configuration and click provision .