Deploying Contrail Command and Contrail All-In-One Cluster
Contrail Release 5.1 (or higher) supports deploying Contrail Command and All-In-One (AIO) Contrail Cluster using a single docker command without providing any configuration files.
You can provide the required deployment parameters with the docker command.
Contrail Command and Contrail Cluster are deployed on the same Deployer node.
Contrail Release 5.1 does not support AppFormix deployment with single line deployer.
Assumptions
The default SSH username is root and the default SSH password is c0ntrail123.
The password is the same across all Contrail services (UI Database, Keystone, Client and OpenStack Keystone). The default password is contrail123.
OpenStack is deployed with the default SKU, that is, queens.
System Requirements
A VM or physical server with:
16 vCPUs
64 GB RAM
300 GB storage out of which 256 GB is allocated to /root directory
Internet access to and from the VM or physical server, which is the Deployer node.
(Recommended) x86 server with CentOS 7.6 as the base OS.
For a list of supported platforms, see Supported Platforms Contrail 5.1.
Email contrail-registry@juniper.net for Contrail container registry credentials.
Access Release Build tags for contrail-command-deployer located at README Access to Contrail Registry .
Run the following commands to deploy Contrail Command and All-In-One (AIO) Contrail Cluster:
- Install docker on the Deployer node.
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce-18.03.1.ce
systemctl start dockerFor details, refer to https://docs.docker.com/install/linux/docker-ce/centos/.
- Login to docker private secure registry.Note
Email contrail-registry@juniper.net for Contrail container registry credentials.
docker login hub.juniper.net
Login using your docker registry credentials.
- Provide deployer container image.
Access Release Build tags for contrail-command-deployer located at README Access to Contrail Registry .
export TAG=<BUILD_NO>
export CCD_IMAGE=hub.juniper.net/contrail/contrail-command-deployer:$TAGFor example:
export TAG=5.1.0-0.38
- Deploy
Contrail Command and Contrail Cluster.
Use any of the two methods:
Contrail Cluster deployment uses the default management IPv4 interface if the Deployer node has multiple network interfaces.
Method 1—Provide all the required parameters during the
docker run
command.docker run -td --net host --privileged --name contrail_command_deployer $CCD_IMAGE deploy_cem container_registry=hub.juniper.net/contrail container_tag=$TAG contrail_container_tag=$TAG-queens ntpserver=<NTP_IP> vrouter_gateway=<VROUTER_GATEWAY_IP>
Method 2—Provide all the required parameters in a
configuration file
as key values.NoteThe file must be mounted during the
docker run
command.Create a configuration file.
ntpserver: <NTP_IP>
vrouter_gateway: <VROUTER_GATEWAY_IP>
container_tag: <COMMAND_BUILD_TAG>
contrail_container_tag: <CONTRAIL_BUILD_TAG>
container_registry: hub.juniper.net/contrail
export MIN_CONFIG_FILE=<ABSOLUTE_PATH_OF_MIN_CONFIG_FILE>
docker run -td --net host -v $MIN_CONFIG_FILE:/cluster_config.yml --privileged --name contrail_command_deployer $CCD_IMAGE
You can track the progress of Contrail
Command installation by
running :
docker logs -f contrail_command_deployer
After Contrail Command is deployed, run the following command to check the Contrail Cluster provision logs.
docker exec -it contrail_command tailf /var/log/ansible.log
You can access the Contrail Command UI from any browser at https://<COMMAND_IP>:8079.
Flush the iptables rules on the Deployer node if firewall is blocking port access.
iptables -F
Supported parameters
You can explicitly specify the nodes (physical server or VM) to deploy Contrail Command and Contrail Cluster.
Mandatory parameters:
# NTP server IP address
ntpserver: <NTP_IP>
# vRouter gateway IP address of contrail cluster
vrouter_gateway: <VROUTER_GATEWAY_IP>
# contrail container registry credentials
# Note: These are Optional if both contrail command and contrail cluster are installed on Deployer node
registry_username: <REGISTRY_USERNAME>
registry_password: <REGISTRY_PASSWORD>Optional parameters:
# contrail command IP address
# Default: Management IP address of deployer node
command_ip: <COMMAND_IP>
# contrail cluster (All-In-One) IP address
# Default: Management IP address of deployer node
cluster_ip: <ALL_IN_ONE_IP>
# contrail command login password
# Default: "contrail123"
service_password: <COMMAND_PASSWORD>
# contrail command container tag
# Default: "latest"
container_tag: <COMMAND_BUILD_TAG>
# contrail cluster container tag
# Default: "latest"
contrail_container_tag: <CONTRAIL_BUILD_TAG>
# contrail container registry info
# Default: "hub.juniper.net/contrail"
container_registry: <CONTAINER_REGISTRY>You can add more parameters based on your requirements.