Contrail cloud management processes can be divided into different logical roles like configuration, database management, control, analytics, and so forth. Each role consists of a bundle of services doing specific functions. This article provides a brief overview of each service.
This article will describe the different Contrail services that run on each type of node.
Here are some of the different Contrail services that run on each type of node. Contrail vRouter Contrail Control Contrail Analytics Contrail Config Contrail Web UI Contrail Database Contrail Support Services
Vrouter agent introspect page:
http:// <ip-address-of-vrouter> :8085/
Analytics report on any vrouter:
http:// <analytics-node-ip> :8081/analytics/uves/vrouter/ <vrouter-name> ?flat
supervisor-vrouter: Monitors all other vrouter process and restarts them if they are stopped
contrail-vrouter-agent: Vrouter agent connects to the contrail controller and contrail dns through xmpp channel.
contrail-vrouter-nodemgr: Collects vrouter process status, process info and reports it to contrail collector
Logs :
Crash logs for the vrouter-agent are stored in /var/crashes
/var/crashes
/var/log/contrail/contrail-vrouter-agent.log for troubleshooting vrouter agent issues
/var/log/contrail/vrouter-nodemgr-stderr.log and /var/log/contrail/contrail-vrouter-nodemgr-stdout.log for node manager related issues.
Back to top .
Analytics report for any control node:
http:// <controller-ip> :8081/analytics/uves/control-node/oblocknode04?flat
Controller introspect page:
http:// <controller-ip> :8083/
contrail-control: Accepts XMPP connections from vrouter nodes. If the deployment has more than one controller, each vrouter node connects to two Contrail controller nodes running contrail-control process. The controller selection process is handled by the discovery process. Controller also connects to ifmap server on port 8443 to receive config updates.
contrail-dns: Provides DNS service to the VMs spawned on different compute nodes. It uses Bind. If the deployment has more than one controller, each vrouter node connects to two Contrail controller nodes running contrail-dns process. The controller selection process is handled by discovery process.
Logs:
Contrail-control logs:/var/log/contrail/contrail-control.log, /var/log/contrail/contrail-control-stdout.log
Contrail-dns logs: /var/log/contrail/contrail-dns.log, /var/log/contrail/contrail-dns-stdout.log
Contrail-named logs: /var/log/contrail/contrail-named.log, /var/log/contrail/contrail-named-stdout.log
Back to top
Analytics Introspect port:
http:// <controller IP> :8089/
Contrail Query Engine introspect port:
http://10.85.23.9:8091/
Query Contrail API server:
http:// <controller-ip> :8081/analytics
Use the above link to fetch data from the analytics database: UVE info, virtual networks info ( http://localhost:8081/analytics/uves/virtual-networks ).
Note : You should install the JSON plugin in the browser, else the output will not be formatted correctly.
contrail-analytics-api: Provides rest interface to interact with the analytics database (Cassandra database).
contrail-analytics-nodemgr: Collects all Contrail analytics process info, status and reports to Contrail collector.
contrail-collector: Collects the running state of different process sent by other nodes.
contrail-query-engine: Handles the queries to access data from Cassandra database.
contrail-snmp-collector: The SNMP collector module receives the authorizations and configurations of the physical routers from the contrail-config module, polls all of the physical routers, using SNMP protocol, then uploads the data to the Contrail analytics collectors. The SNMP information is stored in the physical Router UVEs (User Visible Entities, used by analytics to store information).
contrail-topology:The Contrail topology module reads SNMP information from the physical Router UVEs from the analytics API, computes the neighbor list, and writes the neighbor information into the physical Router UVEs. This neighbor list is used by the Contrail WebUI to display the physical topology.
Note : More on physical router (prouter) data collection can be found here: Underlay Overlay Mapping in Contrail .
/var/log/contrail/contrail-analytics-api.log, /var/log/contrail/contrail-analytics-api-stdout.log
/etc/contrail/contrail-analytics-api.conf
service supervisor-analytics restart
Contrail Collector logs: /var/log/contrail/contrail-collector.log, /var/log/contrail/contrail-collector-stdout.log Note : Enabling SYS_DEBUG as the log_level in /etc/contrail/contrail-collector.conf can provide detailed log. Restart service for the changes to take effect ( service supervisor-analytics restart) .
/var/log/contrail/contrail-collector.log, /var/log/contrail/contrail-collector-stdout.log
/etc/contrail/contrail-collector.conf
service supervisor-analytics restart)
/var/log/redis/redis-server.log
etc/redis/redis.conf
Contrail Query Engine logs: /var/log/contrail/contrail-query-engine.log, /var/log/contrail/contrail-query-engine-stdout.log Note : Enabling SYS_DEBUG as the log_level in / etc/contrail/contrail-query-engine.conf can provide detailed log. Restart service for the changes to take effect ( service supervisor-analytics restart ).
/var/log/contrail/contrail-query-engine.log, /var/log/contrail/contrail-query-engine-stdout.log
etc/contrail/contrail-query-engine.conf
/var/log/contrail/contrail-snmp-collector.log, /var/log/contrail/contrail-snmp-collector-stdout.log
/etc/contrail/contrail-snmp-collector.conf
Contrail topology logs: /var/log/contrail/contrail-topology.log, /var/log/contrail/contrail-topology-stdout.log
/var/log/contrail/contrail-topology.log, /var/log/contrail/contrail-topology-stdout.log
/var/log/contrail/contrail-analytics-nodemgr-stderr.log, /var/log/contrail/contrail-analytics-nodemgr-stdout.log
contrail-api: Provides northbound REST interface for orchestration program to configure the system. API server interacts with ifmap server to update the config; it also reads and writes information into Cassandra database for any new network object creation or update.
contrail-config-nodemgr: Collects all Contrail config process info, status and reports to Contrail collector.
contrail-device-manager: The device manager daemon monitors configuration events from the API server, creating any necessary configurations for all physical routers it is managing, and programs those physical routers. The physical routers are configured to be part of any of the virtual networks configured in the Contrail cluster, facilitating communication between the physical routers and the Contrail control nodes. Contrail policy configurations can be used to control this communication. If more than one instance is running, the service has only one active instance and the other instances are backup.
http:// <controller-ip> :5998/services
contrail-schema: The Contrail schema process does the low level configuration. For example, when a user creates a virtual network, the schema transformer receives the notification through the rabbitmq bus. It will contact the contrail-api server to fetch the details. It will then create a routing instance, a route target for that virtual network so the user does not have to create it manually. Contrail-schema itself does not create the objects; instead, it interacts with the contrail-api server to have these objects created. The api-server writes them to the Cassandra database. If more than one instance is running, the service has only one active instance and other instances are backup.
rabbitmq
contrail-svc-monitor: Service monitor brings up and monitors any service instance that are spawned. If more than one instance is running, the service has only one active instance and other instances are backup.
Contrail discovery logs: /var/log/contrail/contrail-discovery-0-stdout.log, /var/log/contrail/discovery.log
Contrail device manager logs:/var/log/contrail/contrail-device-manager.log, /var/log/contrail/contrail-device-manager-stdout.log , /var/log/contrail/device-manager-zk.log
Note : Enabling SYS_DEBUG as the log_level in /etc/contrail/contrail-device-manager.conf will increase debugging level. It would need a restart of services (service supervisor-config restart).
/etc/contrail/contrail-device-manager.conf
Contrail config node manager logs: /var/log/contrail/contrail-config-nodemgr-stderr.log, /var/log/contrail/contrail-config-nodemgr-stdout.log
supervisor-webui: Monitors all other Contrail web UI process and restarts them if they are stopped.
contrail-webui: Provides the WebUI service to end user. The WebUI is accessible at http:// <webUI node IP> :8080 or https:// <webUI IP> :8143
contrail-webui-middleware: It handles jobs from the WebUI service and contacts other contrail services to execute them.
Contrail WebUI logs: /var/log/contrail/contrail-webui-stdout.log
Contrail WebUI middleware logs: /var/log/contrail/contrail-webui-middleware-stdout.log
contrail-database: Contrail uses Cassandra DB as its system DB. The config, system logs, process and module messages and flow level data are stored in different keyspaces within Cassandra. Cassandra listens on port 9160.
Database logs: /var/log/cassandra/system.log - for the general cassandra process, repair- <keyspace> .log- individual logs from nodetool repair logs, gc- <timestamp-in-epoch> .log - garbage collection logs. CLI commands like nodetool status, nodetool netstats, nodetool tpstats can be used to display different statistics.
Contrail database nodemanager logs: /var/log/contrail/contrail-database-nodemgr-stderr.log, /var/log/contrail/contrail-database-nodemgr-stdout.log
2) rabbitmq-server: The message bus that different Contrail process subscribe to. Default rabbitmq port is 5672.
Rabbitmq logs are located at /var/log/rabbitmq/ . Back to top
/var/log/rabbitmq/