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

Техническая поддержка

Чтобы помочь нашим специалистам быстрее решить вашу проблему, предлагаем просмотреть описанные ниже шаги:

Web

В случае ошибки задачи в Web-интерфейсе перейдите в журнал задач, выберите нужную задачу и сделайте скрин ошибки. Если в ошибке вы видите сообщение Некоторые дочерние задачи были завершены с ошибкой., то значит, что это мультизадача и надо выбрать дочернюю задачу внизу окна мультизадачи и там сделать дополнительно скрин ошибки. Наиболее полезной информацией является поле Ответ от узлов, где указаны id узлов и их ответ. От части узлов в рамках задачи может прийти положительный ответ, а от других нет, тогда эта задача перейдет в статус PARTIAL.

Пример сообщения об ошибке

image

Пример сообщения об ошибке мультизадачи

image

Пример сообщения об ошибке дочерней задачи мультизадачи

image

В случае ошибки в Web-интерфейсе Internal Server Error перейдите в cli контроллера и скопируйте результат вывода команд log controller_web и log controller_async (желательно только часть, где фигурирует сообщение об ошибке).

CLI

Скопируйте ошибку в cli или сделайте скрин вывода ошибки вместе с введённой командой. Скопируйте результат вывода команды log cli (желательно только часть, где фигурирует сообщение об ошибке).

Выгрузка событий

При наличии доступа к Web-интерфейсу ECP VeiL создайте архив из вкладки Журнал-События по кнопке Действия - Выгрузить события с наиболее подходящими фильтрами. image

Фильтрация журналов

Чем точнее фильтры будут использованы при создании архива, тем быстрее служба технической поддержки сможет разобраться и отреагировать.

Поддержка

Обратитесь с этой информацией в чаты технической поддержки или в службу технической поддержки.

VeiL Bugzilla

Для удобства можно создать баг в VeiL Bugzilla или посмотреть там известные баги.

Диагностика при потере связи контроллера с узлами

  • Проверить, пингуется ли узел с контроллера по адресу интерфейса управления.

  • Если узел пингуется, зайти c контроллера через node ssh [management_ip] и проверить статус сервиса супервизора узла через services list.

  • Если сервис супервизора узла активен, посмотреть его журналы через log node. Супервизор циклически проверяет статус связи с контроллером и логирует о неудачных попытках. Если узел не может подключиться к контроллеру, хотя пингует его, возможно, стоит рестартовать супервизор контроллера через services restart controller-engine.

  • Удостоверьтесь через node config, что поля node_id, controller_ip, controller_id актуальные.

  • Если сервис супервизора узла неактивен, запустить его через services start node-engine.

  • Если узел не пингуется, то можно через Web-интерфейс контроллера проверить статус электропитания узла через IPMI. При необходимости включить или перезагрузить.

  • Если узел не пингуется, то через IPMI сервера проверить состояние линка физического интерфейса, используемого для управления. Интерфейс можно посмотреть через net show ports -v, у нужного интерфейса будет строка used by: veil-default. Если он в DOWN, то поднять его через net conf ports set-up -i [имя интерфейса].

Диагностика при потере связи по ssh контроллера с узлами

  • На контроллере в /var/lib/ecp-veil/.users/veil-controller/.ssh/ лежат файлы приватного ключаid_rsa и публичного ключа id_rsa.pub (генерируются у каждого контроллера свой при установке и проверяются при каждом обновлении), которые используются для взаимодействия контроллер - узел.

  • При добавлении узла к контроллеру публичный ключ контроллера копируется в /root/.ssh/authorized_keys и в /var/lib/ecp-veil/.users/veil-node/.ssh/authorized_keys.

  • Для взаимодействия узел-узел ключ не используется. Для некоторых задач между узлами, например, живая миграция, каждый раз генерируется временный ssh ключ, который удаляется после завершения задачи.

  • В случае ошибки доступа контроллера к узлу (например, при ошибке Permission Denied во время загрузки образа на пул данных этого узла) можно сходить на этот узел по ssh и скопировать содержимое файла /var/lib/ecp-veil/.users/veil-controller/.ssh/id_rsa.pub в /var/lib/ecp-veil/.users/veil-node/.ssh/authorized_keys.

  • Передобавить ssh ключи контроллера на узел можно через команду CLI node repair_ssh (с версии 5.0.5).

Диагностика при ошибках grpc

  • На контроллере в каталоге /var/lib/ecp-veil/controller/local_data/ лежат файлы grpc сертификатов {node_id}.crt для каждого узла, которые используются для взаимодействия контроллер - узел.

  • При добавлении узла к контроллеру генерируется grpc сертификат и копируется в /var/lib/ecp-veil/node/local_data/node.crt и в /var/lib/ecp-veil/node/local_data/node.key.

  • Соответственно, контроллер при grpc запросе ищет у себя в каталоге /var/lib/ecp-veil/controller/local_data/ файл с id узла, читает его и с содержимым делает запрос. Сервис node-engine на узле при старте ищет в /var/lib/ecp-veil/node/local_data/ файл node.key и принимает только запросы c верным сертификатом.

  • Если на контроллере по какой-то причине отсутствует нужный сертификат для конкретного узла, то можно скопировать его с узла на контроллер (или удалить на узле, тогда запросы будут идти нешифрованными).

Действия при ошибках сервиса статистики

  • Возможна ситуация ошибки хранилища статистики prometheus. Быстрым способом починки является очистка хранилища, перенастройка и перезапуск сервиса. Ниже показана последовательность из 3 действий:

  • system statistics clear (Очистка БД prometheus. Необходимо выполнить в случае ошибки БД, делает rm -rf /var/log/prometheus/metrics2/*)

  • system statistics reload (Перенастройка конфигурации экспортеров prometheus согласно БД контроллера.)

  • service restart prometheus (Перезагрузка сервиса prometheus.)

  • Также рекомендуется проверить состояние сервиса статистики (services status prometheus) и ошибки сервиса в syslog (ошибки, связанные с prometheus). На контроллере можно проверить работу сервиса статистики, перейдя через браузер по адресу http://{controller_ip}:9090/. Список подключенных экспортеров узлов с их статусами к контроллеру можно увидеть по адресу http://{controller_ip}:9090/classic/targets. На узле можно проверить работу сервисов сбора статистики узла и ВМ, перейдя через браузер по адресам http://{node_ip}:9100/ (статистика узла) и http://{node_ip}:9177/ (статистика ВМ).

  • Можно включить grafana в CLI контроллера через grafana start и перейти в браузер по адресу http://{controller_ip}:3000/ (admin/admin).

Действия при ошибках установки

  • Процесс установки в целом состоит из 2 частей: до и после первой перезагрузки.

  • До первой перезагрузки идёт базовая установка пакетов: как Veil пакетов, так и зависимостей. Генерируется сервис, который запустит после 1 перезагрузки скрипт подготовки системы к работе.

  • После 1 перезагрузки запускается этот скрипт. Он циклично (до 10 раз) проверяет системы к готовности и поэтапно донастраивает её, пока не сочтет, что всё готово. Процесс подготовки можно отслеживать через команду CLI log first_boot.

  • В конце скрипта подготовки запускается скрипт инициализации сети: создаются коммутаторы veil-default и veil-blackhole, внутренний интерфейс veil-mgmt, адрес, выданный физическому интерфейсу в первой части установки снимается и назначается на veil-mgmt, veil-mgmt подключается к veil-default, первый физический интерфейс в состоянии UP тоже подключается к veil-default. Процесс инициализации сети можно отслеживать через команду CLI log net_init.

  • Если установка не завершается, стоит посмотреть вывод команд CLI log first_boot, log net_init, log first_tests.

  • Если установка не завершается, можно повторно запустить скрипт подготовки системы к работе через команду CLI system init.

Пример (система автонастройки началась и не завершилась. Возможно, сервер был перезагружен в процессе подготовки или были какие-то причины, не дающие завершиться процессу). image

  • Если видно по log first_boot, что процесс не завершился, то стоит запустить команду system autotest, и посмотреть, будут ли там ошибки.

  • Если не инициализировалась сеть, то можно после завершения установки переинициализировать её через команду CLI net init.

  • Если в выводе команды ip a нет veil-mgmt, veil-default, то можно после завершения установки переинициализировать сеть через команду CLI net init.

Действия при ошибках 1 части установки

image

Необходимо получить лог инсталлятора.

После возникновения ошибки:

  • Проверьте дату и время на хосте (должны быть актуальные)

  • перейдите в виртуальную консоль 4 (Ctrl-Alt-4 на виртуальной IPMI клавиатуре или физической, если установка с физического терминала), там сделайте скрин экрана и создайте баг в https://veil.mashtab.org/bugzilla/ или отправьте в ЛК.

  • перейдите в виртуальную консоль 2 (Ctrl-Alt-2 на виртуальной IPMI клавиатуре или физической, если установка с физического терминала), там создайте какой-нибудь каталог типа /flash, подключите к серверу флэш-накопитель, отформатированный в fat32 или ext¾ и примонтируйте его в этот каталог. После этого скопируйте на неё /var/log/syslog с сервера и создайте баг в https://veil.mashtab.org/bugzilla/ или отправьте в ЛК.

Для монтирование флэш-накопителя и переноса журналов на него необходимо:

  • опознать букву устройства флэш-накопителя при помощи команды blkid, либо подсмотреть в 4 консоли полученную флэшкой букву при её подключении, также нужно обратить внимание, находится ли файловая система на флэш-накопителе в разделе или прямо на устройстве (если есть раздел, а устройство имеет букву, скажем, sdc, то раздел будет sdc1)

  • создать в удобном месте каталог для монтирования, скажем, ~/usb mkdir ~/usb

  • примонтировать раздел (если он есть) или сам флэш-накопитель в этот каталог: mount /dev/sdc1 ~/usb или mount /dev/sdc ~/usb

  • если всё правильно, теперь можно проверить место на флэш-накопителе через df -h

  • далее скопируйте всё из /var/log и отмонтируйте флэшку

Проверка целостности установочного медиа (флэш-накопителя, например)

  • Загрузиться в режиме VeiL Live
  • Дождаться приглашения командной строки.
  • Увидеть, где примонтировано загрузочное устройство (команда mount, например /run/live/medium)
  • Перейти в этот каталог (cd /run/live/medium)
  • Запустить команду md5sum -c md5sum.txt
  • Так как накопительной статистики по ошибкам здесь нет, можно скрыть вывод по файлам без ошибок: md5sum -c md5sum.txt | grep -v ': OK'
Back to top