VMmanager 6: Administrator guide

VMmanager structure

VMmanager has three docker containers:

  • vm_box — the main container with the services for the platform, such as the user authorization service or the web server;
  • graphite — the container with the VM and cluster node usage statistics;
  • mysql — the container for the database management system MySQL;
  • vm_ipmgr_1 — IPmanager service container;
  • plugin — plugins container;
  • registrator — the container for dynamic creation of new containers for nginx;
  • consul — the container for Consul service detection system. Read more about Consul in the official documentation;
  • grafana — grafana monitoring visualization container;
  • vm_dns_proxy_1 — PowerDNS integration plugin container;
  • alert — container for platform notifications settings service;
  • scheduler — container for VMs backup schedule.

Container management


To view the list of running containers connect to the server with VMmanager via SSH and enter:

docker ps

To go to the container, enter:

docker exec -it containerID bash
 Details

containerID — the number of the running container. It will be displayed in the terminal when you enter the command docker ps

Services of the vm_box containers


Services

The main services of the vm_box container: 

  • supervisord — the service management system. It restarts the services automatically when they fail. For more information please refer to the official documentation
  • consul — the service discovery system. Learn more in the official documentation;
  • nginx — the webserver for displaying the web interface; 
  • novnc — this service supports VNC of virtual machines; 
  • vm6 — this service supports the operation of VMmanager;
  • ip — manages IP addresses of virtual machines;
  • msgsender — sends emails to VMmanager users. E.g., after the virtual machine is successfully created or the operating system is reinstalled;
  • notifier — monitors running events and shows pop-up notifications when their statuses are changed;
  • auth — service for user registration and authorization in VMmanager. It processes profile settings and SSH-keys; 
  • taskmgr — tasks processing service that collects, keeps, and outputs information in the Tasks section;
  • monitor — collects and displays the current status of the virtual machine and cluster nodes;
  • gostat — VM usage statistics processing service. It receives information from the graphite container and displays it in Virtual machines → VM card → Statistics;
  • collector — collects VMmanager usage and error statistics and sends them to the metrics server;
  • alert-wrapper — this service monitors notifications and transmits them to the notice_center service;
  • grafana_proxy — this is the service for proxying platform requests to grafana;
  • notice_center — this service sends notifications to the platform interface.

To display a full list of running services:

  1. Go to the container vm_box: 

    docker exec -it vm_box_ID bash
  2. Open the list of active services: 

    ps ax

Logs

The log files of all VMmanager services are kept in the vm_box container in the directory /var/log. The name of the log file matches the service name. E.g., the name of the log file of the taskmgr service is taskmgr.log.