Перейти к содержанию

Ошибка отображения метрик сервера

Описание ошибки

После обновления метрики сервера некорректно отображаются в web-интерфейсе SpaceVM.

Пример ошибки

image


Таблица ошибок и их решения

Как выявить ошибку Тип ошибки Действия по диагностике
1 Вывод ошибки в терминале в процессе обновления Ошибка процесса обновления Проверить корректность шагов обновления.
2 Нулевое значение нагрузки ЦП и ОЗУ в web-интерфейсе Ошибка конфигурации статистики Проверить корректность конфигурации статистики в CLI контроллера.
3 Нулевое значение нагрузки ЦП и ОЗУ в web-интерфейсе Сбой SSL-сертификатов Не отображаются метрики и на контроллере настроена репликация БД.
4 Сервер недоступен для переноса ВМ, находится в состоянии ошибки Сервер находится в Cервисном режиме или состоянии ошибки Сервер в ошибке или в сервисном режиме, в стандартный режим не переводится.
5 Сервер недоступен для переноса ВМ Сбой в работе prometheus Проверить наличие динамического изменения данных в web-интерфейсе Prometheus.
6 Сервер находится в состоянии ошибки Автовосстановление сервера Сервер в ошибке или в сервисном режиме, через web-интерфейс в стандартный режим не переводится. Перезапуск сервисов контроллера не дал результата.

Ошибка процесса обновления

Диагностика: Проверить корректность выполнения шагов при обновлении до версии 6.5.9 согласно инструкции.

Решение:

Выполнить на контроллере команды:

services restart prometheus 
node nodes-cli "services restart node-statistics"

Ошибка конфигурации статистики

Диагностика: На контроллере проверить конфигурацию статистики с помощью команды:

system statistics config

В конфигурации должны корректно отображаться параметры узлов: job_name с UUID узла, ip-адрес, путь на валидный ssl-сертификат.

Пример правильной конфигурации

image

Решение:

Если в выводе конфигурации отсутствуют нужные узлы или секции:

  1. Перенастроить конфигурацию экспортеров Prometheus согласно БД контроллера с помощью команды:

    system statistics reload 
    

  2. Убедиться, что конфигурация изменилась и соответствует параметрам узлов:

    system statistics config 
    


Сбой SSL-сертификатов

Диагностика: Не отображаются метрики и на контроллере настроена репликация.

Решение:

  1. Убедиться, что процесс репликации активен и изменения в БД синхронизированы на обоих контроллерах с помощью команды:

    controller status
    

    Подробнее с параметрами вывода команды можно ознакомиться в статье
    О репликации контроллера
    .

  2. Выполнить команды в shell обоих контроллеров: сначала на master, затем на slave:

    MD5=$(md5sum $(which veil-controller) | awk '{print $1}'); [ "$MD5" == "6da8f4bde5c1de88db5211dfba454a50" ] && sed -i -e "s|import grpc_key_generation;|import grpc_key_generation as gr; exec('def grpc_key_generation(*a,**k):\\\\\\\\\\\n try:\\\\\\\\\\\n gr(*a,**k)\\\\\\\\\\\n except:\\\\\\\\\\\n pass');|" -e 's|{ext}";|{ext}" 2>/dev/null|' -e "s|'\${_rip_name}', '\${TMP_DIR}'|&, ssh='_'|g" -e '1225 s|controller|systemctl start nginx; controller|' $(which veil-controller) || echo "No required script version"
    

  3. После применения скрипта проверить хеш-сумму исполняемого файла с помощью команды:

    md5sum $(which veil-controller)
    

    Правильный хеш после применения скрипта: 47422aed5e5b23577e13e97360c94404 /usr/local/sbin/veil-controller.

  4. После проверки в CLI контроллера с ролью master выполнить команду:

    controller role master
    


Сервер находится в Cервисном режиме или состоянии ошибки

Диагностика: Проверить состояние узла в web-интерфейсе. Узел в стандартный режим не переводится.

Решение:

  1. Перезапустить супервизор на узле и контроллере с помощью команд CLI:

    services restart node-engine  
    services restart controller-engine
    

  2. После перезапуска подождать 5 минут.

Сервер должен самостоятельно выйти из состояния ошибки. Затем его можно перевести в Стандартный режим через web-интерфейс.


Сбой в работе Prometheus

Диагностика: В Web-интерфейсе Prometheus проверить, что метрики сервера
(ip-адрес сервера:9100/metrics) отображаются динамически. При обновлении страницы данные должны меняться.

Решение:

  1. Если метрики не меняются, необходимо проверить статус службы prometheus на сервере.

  2. Если метрики обновляются, необходимо проверить статус службы prometheus на контроллере:

    • Перейти в shell контроллера.
    • Проверить статус службы prometheus с помощью команды:

      systemctl status prometheus
      

    • Вывести логи службы prometheus с помощью команды:

      journalctl -u prometheus | tail -n 20
      

    • При наличии ошибок Loading on-disk chunks failed остановить работу службы prometheus.

    • Перенастроить конфигурации в CLI контроллера:

      system statistics clear
      

    • Запустить prometheus.


Автовосстановление сервера

Диагностика: Проверить состояние узла в web-интерфейсе. Узел в стандартный режим не переводится. Перезапуск сервисов контроллера не дал результат.

Решение:

  1. Выполнить команду для каждого проблемного узла в CLI контроллера:
    node reinstall <uuid узла>
    
  2. Перезапустить супервизор контроллера с помощью команды:
    services restart controller-engine
    services restart controller-web-api
    

Выполнение команды запускает повторную генерацию ssl-сертификатов и возвращает узел в активное состояние.

В некоторых случаях выполнение задачи возвращает ответ TASK FAILED, но процесс не прерывается. В этом случае необходимо подождать несколько минут и обновить информацию в разделе Серверы.