OpenContrail 4.x components

OpenContrail 4.x components

The tables in this section describe the OpenContrail 4.x services and their distribution across the OpenStack-based MCP cluster nodes.

The OpenContrail services run as the analytics, analyticsdb, and controller fat Docker containers managed by docker-compose with the exception of contrail-vrouter-agent running on the compute nodes as a non-containerized service.

The config and control services, OpenContrail controller containers

Service name

Service description

contrail-api

Exposes a REST-based interface for the OpenContrail API.

contrail-config-nodemgr

Collects data of the OpenContrail configuration processes and sends it to the OpenContrail collector.

contrail-control

Communicates with the cluster gateways using BGP and with the vRouter agents using XMPP as well as redistributes appropriate networking information.

contrail-control-nodemgr

Collects the OpenContrail controller process data and sends this information to the OpenContrail collector.

contrail-device-manager

Manages physical networking devices using netconf or ovsdb. In multi-node deployments, it works in the active/backup mode.

contrail-discovery

Deprecated. Acts as a registry for all OpenContrail services.

contrail-dns

Using the contrail-named service, provides the DNS service to the VMs spawned on different compute nodes. Each vRouter node connects to two OpenContrail controller containers that run the contrail-dns process.

contrail-named

This is the customized Berkeley Internet Name Domain (BIND) daemon of OpenContrail that manages DNS zones for the contrail-dns service.

contrail-schema

Listens to configuration changes done by a user and generates corresponding system configuration objects. In multi-node deployments, it works in the active/backup mode.

contrail-svc-monitor

Listens to configuration changes of service-template and service-instance as well as spawns and monitors virtual machines for the firewall, analyzer services and so on. In multi-node deployments, it works in the active/backup mode.

contrail-webui

Consists of the webserver and jobserver services. Provides the OpenContrail web UI.

ifmap-server

Deprecated. The contrail-control, contrail-schema, contrail-svc-monitor services connect to the Interface for Metadata Access Points (IF-MAP) server using this service during configuration changes.

The analytics services, OpenContrail analytics containers

Service name

Service description

contrail-alarm-gen

Evaluates and manages the alarms rules.

contrail-analytics-api

Provides a REST API to interact with the Cassandra analytics database.

contrail-analytics-nodemgr

Collects all OpenContrail analytics process data and sends this information to the OpenContrail collector.

contrail-collector

Collects and analyzes data from all OpenContrail services.

contrail-query-engine

Handles the queries to access data from the Cassandra database.

contrail-snmp-collector

Receives the authorization and configuration of the physical routers from the contrail-config-nodemgr service, polls the physical routers using the Simple Network Management Protocol (SNMP) protocol, and uploads the data to the OpenContrail collector.

contrail-topology

Reads the SNMP information from the physical router user-visible entities (UVEs), creates a neighbor list, and writes the neighbor information to the physical router UVEs. The OpenContrail web UI uses the neighbor list to display the physical topology.

The database services, OpenContrail controller and analytics containers

Service name

Service description

cassandra

On the OpenContrail network nodes and OpenContrail pods, maintains the configuration data of the OpenContrail cluster. On the OpenContrail analytics containers, stores the contrail-collector service data.

contrail-database

Manages the Cassandra database information.

contrail-database-nodemgr

Collects data of the contrail-database process and sends it to the OpenContrail collector.

kafka

Handles the messaging bus and generates alarms across the OpenContrail analytics containers.

redis

Stores the physical router UVE storage and serves as a messaging bus for event notifications.

zookeeper

Holds the active/backup status for the contrail-device-manager, contrail-svc-monitor, and the contrail-schema-transformer services. This service is also used for mapping of the OpenContrail resources names to UUIDs.

The vrouter services, OpenStack compute nodes

Service name

Service description

contrail-vrouter-agent

Connects to the OpenContrail controller container and the OpenContrail DNS system using the Extensible Messaging and Presence Protocol (XMPP).

contrail-vrouter-nodemgr

Collects the supervisor vrouter data and sends it to the OpenContrail collector.

The OpenContrail plugin services, OpenStack controller nodes

Service name

Service description

neutron-server

The Neutron server that includes the OpenContrail plugin.