7.6.2 Мониторинг облачных сервисов

Для выполнения JSON-запросов прежде всего необходимо получить аутентификационный токен. Для этого следует выполнить команду:

curl -v -H 'Content-Type: application/json' -d '{"auth":{"identity":{"methods":["password"],"password":{"user":{"name":"admin","domain":{"name":"default"},"password":"<password>"}}}}}' http://manage.tionix.loc:35357/v3/auth/tokens

Токен содержится в заголовке ответа X-Subject-Token. Используя этот токен, могут быть выполнены другие запросы, осуществляющие проверку облачных сервисов.

С помощью полученного токена осуществляется проверка работоспособности следующих служб OpenStack:

  • Nova (Compute Service);
  • агенты Neutron (Network Service);
  • Cinder (Block storage Service).

7.6.2.1 Проверка сервисов Nova

curl -H ‘X-Auth-Token: <token>’ http://<IP-адрес_облачного_контроллера>:8774/v2.1/os-services

Ответом будет список сервисов, неисправными являются те, у которых параметр state == down, в то время как параметр status == enabled.

7.6.2.2 Проверка состояния агентов Neutron

curl -H ‘X-Auth-Token: <token>’ http://<IP-адрес_облачного_контроллера>:9696/v2.0/agents

Ответом будет список агентов, неисправными являются те, у которых параметр alive == false, в то время как параметр admin_state_up == true.

7.6.2.3 Проверка сервисов Cinder

curl -H ‘X-Auth-Token: <token>’ http://<IP-адрес_облачного_контроллера>:8776/v3/<projectid>/os-services

Ответом будет список сервисов.

Неисправными считаются те сервисы, у которых параметр state == down, в то время как параметр status == enabled.

Идентификатор проекта projectid может быть получен при помощи запроса:

curl -H ‘X-Auth-Token: <token>’ http://<IP-адрес_облачного_контроллера>:35357/v3/projects