Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
Expand All close
Expand All close
list Table of Contents
{ "lCode": "en_US", "lName": "English", "folder": "en_US" }
English
 

Deploying Contrail Command and Contrail All-In-One Cluster

Release: Contrail Networking 5.1
{}
Change Release
date_range 24-Jun-19

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.

Note

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.

Note
  • 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:

  1. 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 docker

    For details, refer to https://docs.docker.com/install/linux/docker-ce/centos/.

  2. 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.

  3. 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:$TAG

    For example:

    export TAG=5.1.0-0.38
  4. 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.

      Note

      The 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.


Note

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.

footer-navigation