Contrail Cloud Overview
Juniper Networks® Contrail Cloud provides cloud service providers with a bundled solution to build cloud platform infrastructures. Contrail Cloud simplifies your network by integrating multiple software components into a bundle with pre-configured files that you can install on multiple devices using a single installation procedure. The bundle includes:
Red Hat OpenStack
Red Hat Ceph Storage
Juniper Networks Contrail Networking
Juniper Networks Contrail Insights (formerly known as AppFormix)
Pre-configured YAML files to simplify the initial configuration procedure, and Ansible scripts to deploy configurations made in the YAML files.
A Contrail Cloud environment includes servers that function as non-blocking compute nodes, storage nodes, and a variety of management nodes that are used to manage components for the compute and storage nodes and these nodes are interconnected to one another and connect to the fabric to connect to the larger network.
The following sections define the key compont of Contrail Cloud and how to deploy it. For a detailed understanding of Contrail Cloud beyond the scope of the basic deployment, see the Contrail Cloud Reference Architecture Guide.
Contrail Cloud Node Types
Table 1 describes the types of nodes used in Contrail Cloud. Understanding the different node types will help you configure the YAML files for deployment.
Node Type |
Definition |
---|---|
jump host (also known as the Contrail Cloud host) |
Physical hypervisor from which all Contrail Cloud deployment scripts are run. |
undercloud |
Provisions and manages all nodes in the overcloud (controller, compute, and storage nodes). The undercloud runs as a virtual machine (VM) on the jump host. |
RHV Manager |
Controller for the control host hypervisors that resides as a VM on the jump host. It is the core component of Red Hat's server virtualization platform and manages the control hosts and their resources. |
overcloud |
Includes the resources for the control plane, baremetal storage nodes, and baremetal compute nodes as deployed by the undercloud. Considered the production OpenStack Cloud. |
control host |
Baremetal (physical) server on which one or more control VMs run on. The servers host all OpenStack, Contrail Networking, and Contrail Insights control functions. |
control VMs |
VMs that run on one or more control hosts. The control VMs include:
The K8s control hosts include:
|
compute nodes |
Baremetal servers on which tenant VMs run. The three types of compute nodes are:
|
storage nodes |
Baremetal servers loaded with storage drives for running Ceph storage software (optional). |
Contrail Cloud Directory Structure
Table 2 describes the file directory structure and YAML file parameters used in Contrail Cloud.
Contrail Cloud is installed on the jump host and resides in the /var/lib/contrail_cloud/ directory.
Directory |
Description |
---|---|
|
Contains the configuration management automation for Contrail Cloud. |
|
Holds the Contrail Insights license and any user-defined Contrail Insights plugins. Note:
Appformix was renamed to Contrail Insights, however the directory
name is still called |
|
Stores the overcloudrc (overcloud) and stackrc (undercloud) credential files. |
|
Holds the SSL certificates for Contrail and OpenStack. |
|
Contains all the configuration files for deploying Contrail Cloud. The configuration files are in the YAML file format. |
|
Contains information about the Contrail Cloud environment and holds the state across Ansible invocations to allow the playbooks to remember important deployment information. |
|
Contains detailed information about the hardware that is used and the hardware configuration. You can use this information when planning your overall Contrail Cloud deployment and to verify that NICs are assigned properly, along with VLANs and bonds. |
|
Contains sample snippets of the various YAML configuration files that you can reference for deployment. Each snippet details a specific use case configuration. This directory also contains information about the various knobs and configuration options available and is separated by features and scaling use cases. |
|
Contains various required and optional scripts used with Contrail Cloud, including pre-deployment verification scripts, deployment scripts, introspection and post-deployment verification tools. |
|
Holds the temporary files required by Contrail Cloud. |
Contrail Cloud Configuration Files
Table 3 describes the configuration files you use in your Contrail Cloud deployment. All configuration files are in the YAML file format and use the Jinja2 template. The files reside in the /var/lib/contrail_cloud/config directory. For specific configuration examples, see the /var/lib/contrail_cloud/samples directory on the jump host.
YAML configuration files |
Description |
---|---|
site.yml |
Contains information about the specific undercloud and overcloud instance. |
inventory.yml |
Configuration file for baremetal (physical) server configuration, such as IPMI and UEFI hardware standards. |
overcloud_nics.yml |
Use to configure network options for the overcloud nodes. |
control-host-nodes.yml |
Use to configure the network layout for the control host server(s). |
k8s-host-nodes.yml |
Use to configure the network layout for the Kubernetes host nodes. |
compute-nodes.yml |
Use to assign naming and role mapping for all compute nodes. |
storage-nodes.yml |
Defines the role mapping of the storage nodes. |
vault-data.yml |
Encrypted file that holds all sensitive user data, such as passwords, product keys and user data. |
Contrail Cloud also provides default values for all Contrail Cloud playbooks. The default values reside in the default.yml directory (/var/lib/contrail_cloud/ansible/playbooks/default.yml). If you are an advanced user, you can use this file to look for values you may want to override in your config/site.yml configuration file.
Never modify the default.yml file directly. Always apply the customized values from your config/site.yml configuration file.
Navigating Contrail Cloud
Table 4 describes how to navigate Contrail Cloud using the CLI and Web UI.
Service |
From |
Cloud Endpoint |
Description |
---|---|---|---|
SSH |
your computer |
jumphost as contrail user |
The default password is |
SSH |
jumphost as contrail user |
undercloud as stack user |
SSH keys provide password-less access. |
SSH |
jumphost as contrail user |
control hosts as contrail user |
SSH keys provide password-less access. |
SSH |
jumphost as contrail user |
K8s hosts as contrail user |
SSH keys provide password-less access. |
SSH |
jumphost as contrail user |
RHV Manager as contrail user |
SSH keys provide password-less access. |
SSH |
undercloud as stack user |
overcloud hosts as heat-admin |
SSH keys provide password-less access. |
RHV Manager Web UI |
your computer |
https://<jumphost> as admin user |
The default password is |
kubectl |
— |
k8s hosts as root user |
Used to manage Kubernetes and pods from k8s hosts. |
crictl |
k8s hosts |
k8s hosts as root user |
Used to manage images and containers from k8s hosts. (see Debugging Kubernetes nodes with crictl) |
undercloud OpenStack CLI |
— |
undercloud as stack user |
source /home/stack/stackrcUsed for RHOSP director OpenStack services. |
overcloud OpenStack CLI |
— |
undercloud as stack user |
source /home/stack/overcloudrcUsed for RHOSP overcloud OpenStack services. |
overcloud Contrail Web UI |
your computer |
https://<contrail VIP>:8443 with admin user |
Web browser access to the Contrail UI.The default
password is |
overcloud Contrail Command Web UI |
your computer |
https://<contrail VIP>:9443 with admin user |
Web browser access to the Contrail UI. The default
password is Note:
Not deployed by default. |
overcloud Horizon Web UI |
your computer |
https://<overcloud VIP> with admin user |
Web browser access to the Openstack Horizon UI.The default password is |
overcloud HAProxy stats |
your computer |
https://<control plane>:1993 with admin user |
HAProxy traffic stats exposed on each OpenStack control node’s control plane interface. The password is autogenerated. See |
Contrail Insights Web UI |
your computer |
https://<appformix vip>:9000 with admin user |
Web browser access to the Contrail Insights UI.The default password is |