Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?


Installing a Contrail Cluster using Contrail Command and instances.yml


Contrail Networking supports deploying Contrail cluster using Contrail Command and the instances.yml file. A YAML file provides a concise format for specifying the instance settings.

We recommend installing Contrail Command and deploying your Contrail cluster from Contrail Command in most Contrail Networking deployments. See How to Install Contrail Command and Provision Your Contrail Cluster. You should only use the procedure in this document if you have a strong reason to not use the recommended procedure.

System Requirements

  • A VM or physical server with:

    • 4 vCPUs

    • 32 GB RAM

    • 100 GB disk

  • Internet access to and from the physical server, hereafter referred to as the Contrail Command server

  • (Recommended) x86 server with CentOS 7.6 as the base OS to install Contrail Command

For a list of supported platforms for all Contrail Networking releases, see Contrail Networking Supported Platforms List  .


Contrail Release 5.1 does not support Contrail Insights deployment from command line with Contrail Cluster instances.yml file.

Before you begin

docker-py Python module is superseded by docker Python module. You must remove docker-py and docker Python packages from all the nodes where you want to install the Contrail Command UI.

pip uninstall docker-py docker


Perform the following steps to deploy a Contrail Cluster using Contrail Command and the instances.yml file.

  1. Install Docker to pull contrail-command-deployer container. This package is necessary to automate the deployment of Contrail Command software.


    yum-config-manager --add-repo

    yum install -y docker-ce-18.03.1.ce

    systemctl start docker

  2. Download the contrail-command-deployer Docker container image from To download these containers and for access to, refer to the Access to Contrail Registry topic on the Contrail software download page. Allow Docker to connect to the private secure registry.

    docker login --username <container_registry_username> --password <container_registry_password>

    Pull contrail-command-deployer container from the private secure registry.

    docker pull<container_tag>

    Example, for container_tag: 5.1.0-0.38, use the following command:

    docker pull

  3. Edit the input configuration instances.yml file. See Sample instances.yml File for a sample instances.yml file.
  4. Start the contrail_command_deployer container to deploy the Contrail Command (UI) server and provision Contrail Cluster using the instances.yml file provided.

    docker run -td --net host -e action=provision_cluster -v <ABSOLUTE_PATH_TO_COMMAND_SERVERS_FILE>:/command_servers.yml -v < ABSOLUTE_PATH_TO_INSTANCES_FILE>:/instances.yml --privileged --name contrail_command_deployer<container_tag>

    The contrail_command and contrail_psql Contrail Command containers will be deployed. Contrail Cluster is also provisioned using the given instances.yml file.

  5. (Optional) Track the progress of 4.

    docker logs -f contrail_command_deployer

  6. Once the playbook execution completes, log in to Contrail Command using https://Contrail-Command-Server-IP-Address:9091. Use the same user name and password that was entered in 3. Default username is admin and password is contrail123.Note

    We strongly recommend creating a unique username and password for Contrail Command. See Installing Contrail Command for additional information on creating username and password combinations.


Enable subscription on all the RedHat nodes.

Sample instances.yml File