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.