Contrail Cloud Overview
Juniper Networks® Contrail® Cloud is an integrated Telco cloud platform built to run high-performance Network Functions Virtualization with always-on reliability, allowing service providers to deliver innovative services with greater agility. Contrail Cloud features Red Hat® OpenStack and Red Hat Ceph combined with Juniper Networks Contrail Networking™, thereby bridging dynamic cloud orchestration with highly scalable connectivity. Contrail Cloud leverages AppFormix, which has a built-in automation capability powered by machine learning, to monitor the cloud infrastructure and VNFs in the most optimal manner, to remediate any potential failures to ensure adherence to service-level agreements (SLAs).
The following sections define key components of Contrail Cloud and your Contrail Cloud deployment. This will give you a basic understanding of the structure and interrelations of the different Contrail Cloud components, and help you understand what happens during the deployment process. For a detailed understanding of Contrail Cloud beyond the scope of the basic deployment instructions, see Contrail Cloud Reference Architecture Guide.
Contrail Cloud Node Types
Understanding the different node types that are used in Contrail Cloud will help you configure the YAML files for deployment.
OpenStack Controller
Contrail Controller
Contrail Analytics
Contrail Analytics Database
Contrail TSN (optional)
AppFormix Controller
Kernel
DPDK
SR-IOV
Contrail Cloud Directory Structure
Contrail Cloud is installed on the jump host and located in /var/lib/contrail_cloud/
. The following is the Contrail
Cloud file directory structure:
The
appformix
directory holds your AppFormix license and any user-defined AppFormix plugins.The
auth
directory is for the overcloudrc (overcloud) and stackrc (undercloud) credential files.The
certs
directory holds your SSL certificates for Contrail and OpenStackThe
config
directory has all the configuration files for deploying Contrail Cloud. The configuration files are in the YAML file format.The
docs
directory contains a copy of the Contrail Cloud Deployment Guide. This guide includes the essential steps for deploying Contrail Cloud.The
facts.d
directory contains information about the Contrail Cloud environment and holds the state across Ansible runs to allow the playbooks to remember important deployment information.The
introspection
directory is for files containing detailed information about the hardware that is used and how the hardware is configured. This information is useful when planning your overall Contrail Cloud deployment. This information can also be used to verify that NICs are assigned properly, along with VLANs and bonds.The
samples
directory contains sample snippets of the various YAML configuration files which can be referenced for deployment. Each snippet details a specific use case configuration. This directory contains information about the various knobs and configuration options available, and is separated by features and scaling use cases.The
scripts
directory contains various required and optional scripts that are used with Contrail Cloud, including pre-deployment verification scripts, deployment scripts, introspection and post-deployment verification tools.The
tmp
directory holds the temporary files that are required by Contrail Cloud.
Configuration Files
This section briefly defines each of the configuration files
that are used in your Contrail Cloud deployment. For specific configuration
examples, see /var/lib/contrail_cloud/samples
on the jump host. All configuration files are in the YAML file format
using the Jinja2 template. All deployment configuration files are
located in the /var/lib/contrail_cloud/config
directory. The following configuration files are used in your Contrail
Cloud deployment:
Contrail Cloud also provides default values for all Contrail
Cloud playbooks. The default values can be found in /var/lib/contrail_cloud/ansible/playbooks/default.yml
. Advanced users may review this file to look for values they wish
to override in their config/site.yml
.
Never modify the default.yml
file directly. Always apply the values from the default.yml
into your config/site.yml
.