Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?


Deploying Contrail Cluster using the Contrail Command UI

This example topic describes how to use the Contrail Command User interface (UI) to deploy a Contrail Cluster starting with Contrail Release 5.0.1.


  • Contrail Controller — 8 vCPU, 64G memory, 300G storage

  • OpenStack Controller — 4 vCPU , 32G memory, 100G storage

  • Contrail Server Node (CSN) — 4 vCPU, 16G memory, 100G storage

  • Compute nodes— Dependent on the workloads


Contrail Cluster is an OpenStack orchestration coupled with the Contrail Networking plugin.


Consider a sample cluster topology, with a non-HA environment of one Contrail Controller and one OpenStack Controller, one compute node and one CSN, as displayed in Figure 1.

Figure 1: Sample Contrail Cluster TopologySample Contrail Cluster Topology


Deploying a Contrail Cluster

Step-by-Step Procedure

To deploy a Contrail Cluster using Contrail Command, perform the following steps.

  1. Add physical servers. You can add a server in the following two ways:

    • One by one

    • CSV file bulk import


    Create server login credentials before adding the servers.

    • One by one: You can add each server one by one. To add servers one by one, the following mandatory parameters should be entered.

      Hostname, Management IP address and the Management Interface.

    • CSV file bulk import: You can upload a CSV file which contains the details of each server. This CSV file must conform to the Contrail Command format. You can download the CSV template from Contrail Command and reuse the template as per your requirements. To download a sample CSV file, navigate to Infrastructure > Servers > Add Servers in the Contrail Command UI.

      Use the Bulk Import option for large deployments. Bulk Import option requires a CSV file input. For large deployments, use the Bulk Import (csv) option. Click Bulk Import (csv), to download the template. A sample CSV file is shown here:


      The demo topology above has only one compute node. If you are deploying additional compute nodes, you must include them in the CSV file.

    Figure 2: Add ServerAdd Server
  2. Create a cluster.

    If Container registry = . This registry is secure. Unselect the Insecure box. Also, Contrail version = contrail_container_tag for your release of Contrail as listed in README Access for Contrail.

    Default vRouter Gateway = Default gateway for the compute nodes. If any one of the compute nodes has a different default gateway than the one provided here, enter that gateway in 5 and 6 for service nodes.

    Set the order of Encapsulation Priority for the EVPN supported methods - MPLS over UDP, MPLS over GRE And VxLAN.

    Select Show Advanced Options. Add the following configuration parameters:

    • CONTROLLER_NODES = List of comma separated mgmt interface IP addresses of the Contrail controller

    • CONTROL_NODES = List of comma seperated data interface IP addresses of the Contrail controller

    • TSN_NODES = List of comma seperated data interface IP addresses of the Contrail service nodes

    • CONTRAIL_CONTAINER_TAG = contrail_container_tag-ocata or container_tag-queens

    Figure 3: Create ClusterCreate Cluster
  3. Select the contrail-control node.

    Figure 4: Select Control NodesSelect Control Nodes
  4. Select the orchestration node.

    Select Show Advanced option to customize your deployment and then select Orchestration Nodes.

    In order to run Openstack services on the control data network, set the following parameters:

    • Control & Data Network Virtual IP address: It is an internal VIP. e.g. -

    • Management Network Virtual IP address: It is an external VIP. e.g. -

    • keepalived_virtual_router_id: It is to be added as a key value pair. It can be set to any value between 0-255

    Add the following under custom configuration for VM based setup:


    Minimum 8 indent spaces are required for lines following the nova.conf.

    In Contrail Command, key-value pairs handle parameters that be enabled or disabled in Kolla Global.

    Set the following in Kolla Globals:

    If Ironic is not needed and if you are not going to use Life Cycle Management in Contrail Command then you need not deploy Ironic.

    Swift can be enabled for Image management uses case, this parameter is disabled by default.

    Compute node kernel version = kernel-3.10.0-862.3.2.el7.x86_64; Else kernel upgrade is required.

    To configure kolla password add keystone_admin_password<password> key-value pair in the kolla passwords section. This password will be used for logging onto the contrail command UI after the provisioning completes.

    Figure 5: Select Orchestrator NodesSelect Orchestrator Nodes

    Select the Openstack (orchestration) node.

  5. Select the Compute Nodes. For each compute node, enter the gateway, if it is different from what was added in the global parameters in 2. Then set the mode.

    As of now, only Kernel mode is supported

    Figure 6: Select Compute NodesSelect Compute Nodes
  6. Select the Contrail Service Node.

    Figure 7: Select Contrail Service NodesSelect Contrail Service Nodes
  7. Verify the summary of your cluster configuration and click Provision.

    Figure 8: Verify SummaryVerify SummaryVerify Summary