Проверка статуса сервисов

Общая информация

Чтобы убедиться в работоспособности Закрома.Хранение, необходимо проверить, что все требуемые сервисы запущены и функционируют корректно. Сервисы Закрома.Хранение запускаются с помощью юнитов systemd на каждом узле, в соответствии с его ролью. Для проверки статуса сервиса на каждом узле кластера используйте команду systemctl

Основные сервисы Закрома.Хранение

В зависимости от типа установки (Single Node, Base Cluster, Multicluster) на узлах могут быть развернуты следующие сервисы:

  • zakroma-storage.service — основной сервис управления хранилищем (Core, Worker, Composer).
  • zakroma-storage-gateway.service — сервис шлюза для обработки входящих HTTP(S) запросов.
  • zakroma-ds-agent.service — агент слоя хранения данных (ZDS).

Вспомогательные сервисы

  • nginx.service — веб-сервер для панели администратора и реверс-прокси для сервисов Gateway, Storage.
  • postgresql.service (или postgresql-<версия>.service) — база данных для метаданных.
  • keycloak.service (опционально) — сервис аутентификации и авторизации.
  • kafka.service (опционально) — менеджер очередей сообщений.

Проверка статуса сервисов

Проверка статуса одного сервиса

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

1sudo systemctl status <имя_сервиса>

Примеры:

1# Проверка статуса zakroma-storage 2sudo systemctl status zakroma-storage.service 3 4# Проверка статуса zakroma-storage-gateway 5sudo systemctl status zakroma-storage-gateway.service 6 7# Проверка статуса zakroma-ds-agent 8sudo systemctl status zakroma-ds-agent.service

Проверка статуса всех сервисов Zakroma

Для проверки статуса всех сервисов Zakroma на узле используйте следующую команду:

1for svc in $(systemctl list-units --no-pager | grep zakroma | awk '{print $1}'); do 2 systemctl status $svc --no-pager 3done

Проверка статуса всех сервисов (включая вспомогательные)

Для комплексной проверки всех сервисов системы:

1sudo systemctl status zakroma-storage.service zakroma-storage-gateway.service zakroma-ds-agent.service nginx.service postgresql.service keycloak.service

Если установлены опциональные сервисы:

1# Проверка Kafka (если установлен) 2sudo systemctl status kafka.service

Интерпретация статуса

Важно: Все сервисы Закрома.Хранение должны находиться в статусе active (running) для нормальной работы системы.

Дополнительные проверки

Проверка логов при проблемах

Если сервис находится в состоянии failed или inactive, проверьте логи используя journalctl либо, в директории /var/log/zakroma/ выберите log-файл с соответствующим сервисом:

1# Логи сервиса zakroma-storage 2sudo journalctl -u zakroma-storage.service -n 50 3 4# Логи сервиса zakroma-storage-gateway 5sudo journalctl -u zakroma-storage-gateway.service -n 50 6 7# Логи сервиса zakroma-ds-agent 8sudo journalctl -u zakroma-ds-agent.service -n 50

Проверка автозапуска

Убедитесь, что сервисы настроены на автозапуск при загрузке системы:

1# Проверка автозапуска 2systemctl is-enabled zakroma-storage.service 3systemctl is-enabled zakroma-storage-gateway.service 4systemctl is-enabled zakroma-ds-agent.service

Если сервис не включен в автозапуск, включите его либо, запустите заново процесс установки с помощью ansible:

1sudo systemctl enable <имя_сервиса>

Проверка статуса zakroma-ds-agent(ZDS) через HTTP API

Для более детальной проверки работоспособности сервиса zakroma-ds-agent(ZDS) можно использовать HTTP API. Это позволит получить информацию о статусе узла, его волюмов и других узлов кластера.

Команда для проверки:

Команды выполняются с узла, на котором запущен сервис zakroma-ds-agent

1curl -u <логин>:<пароль> http://localhost:<порт>/inner/status | jq | grep status -A3 -B3

Где:

  • <логин>:<пароль> — учетные данные, заданные при конфигурации через Ansible (по умолчанию zakromaadmin:zakromaadmin).
  • <порт> — порт, заданный при конфигурации через Ansible (по умолчанию 8088).

Пример команды:

1curl -u zakromaadmin:zakromaadmin http://localhost:8088/inner/status | jq

Пример вывода:

1{ 2 "nodeName": "rutherford-5.lt-01.zakroma.local", 3 "status": "RUNNING", 4 "clusterStatus": "RW", 5 "version": "1.6.2", 6 "volumes": [ 7 { 8 "index": 1, 9 "path": "/mnt/lvm1/zds/vol1", 10 "status": "RUNNING", 11 "diskInfo": { 12 "Total": 9906393088, 13 "Free": 9846362112 14 } 15 }, 16 { 17 "index": 2, 18 "path": "/mnt/lvm2/zds/vol2", 19 "status": "RUNNING", 20 "diskInfo": { 21 "Total": 9906393088, 22 "Free": 9826013184 23 } 24 } 25 ], 26 "nodes": [ 27 { 28 "name": "rutherford-3.lt-01.zakroma.local", 29 "status": "RUNNING", 30 "version": "1.6.2", 31 "volumeCount": 2 32 }, 33 { 34 "name": "rutherford-4.lt-01.zakroma.local", 35 "status": "RUNNING", 36 "version": "1.6.2", 37 "volumeCount": 2 38 } 39 ] 40}

Интерпретация результатов:

  • status: "RUNNING" — узел работает корректно.
  • clusterStatus: "RW" — кластер доступен для чтения и записи.
  • Для каждого volume в массиве volumes поле status должно быть "RUNNING".
  • Для всех узлов в массиве nodes поле status должно быть "RUNNING".

Если статус узла или volume отличается от "RUNNING", это указывает на проблему, требующую диагностики.

Проверка работоспособности панели администратора

Для проверки доступности админ-панели можно использовать команду curl или открыть её в браузере.

Проверка с помощью curl:

1curl -k -I https://zakroma-admin.<домен>

Домен верхнего уровня - zakroma-admin - может отличаться от нашего примера, так как имя может быть задано произвольно при установке, по умолчанию zakroma-admin

<домен> — доменное имя, заданное при конфигурации через Ansible (например, zakroma.local).

Пример команды:

1# Для базового кластера или Single Node 2curl -k -I https://zakroma-admin.zakroma.local 3 4# Для мультикластерной конфигурации 5curl -k -I https://zakroma-admin.cluster-1.zakroma.local

Ожидаемый результат:

При успешной проверке команда вернет HTTP статус 200 OK или 302 Found (редирект):

1deploy/examples » curl -I https://zakroma-admin.zakroma.local 2HTTP/2 200 3date: Wed, 26 Nov 2025 21:56:46 GMT 4content-type: text/html 5content-length: 3538 6last-modified: Tue, 07 Oct 2025 09:41:01 GMT 7etag: "68e4e02d-dd2" 8accept-ranges: bytes 9strict-transport-security: max-age=15724800; includeSubDomains 10...

Проверка в браузере:

  1. Откройте браузер и перейдите по адресу админ-панели:

    • Для базового кластера или Single Node: https://zakroma-admin.<домен>
    • Для мультикластерной конфигурации: https://zakroma-admin.<имя_кластера>.<домен>
  2. При первом подключении браузер может предупредить о самоподписанном сертификате — это нормально для тестовых окружений. Примите сертификат и продолжите.

  3. Если админ-панель доступна, вы увидите страницу входа в систему.

Интерпретация результатов:

  • HTTP статус 200 OK — админ-панель доступна и работает корректно.
  • HTTP статус 503 Service Unavailable — проблема с подключением к сервису zakroma-storage-gateway. Проверьте статус сервисов на узлах, с соответствующей ролью.
  • Connection refused или timeout — проблема с nginx или сетевой доступностью до узла. Проверьте статус nginx.service и настройки файрвола, а также проверьте корректность установки сервиса в соответствии с документацией.
  • 404 Not Found — неправильно настроен виртуальный хост в nginx. Проверьте конфигурацию nginx, в соответствии с документацией.

Решение проблемы с ошибкой авторизации:

Если при попытке авторизации в админ-панели вы видите ошибку: “Ошибка авторизации: возможно некорректный сертификат SSL”, это может происходить в тестовых инсталляциях, где браузер не может проверить валидность сертификата сервиса gateway.

Для решения этой проблемы:

  1. Перейдите на URL сервиса gateway (например, https://zakroma-gateway.<домен>).
  2. Примите предупреждение браузера о том, что используется самоподписанный сертификат.
  3. После принятия сертификата вернитесь на страницу админ-панели и выполните логин еще раз.

После принятия сертификата сервиса zakroma-gateway браузер будет доверять сертификату, и вы сможете авторизоваться в панели администратора.

Устранение проблем

Если сервис не запускается или работает некорректно, выполните следующие проверки:

  1. Проверьте выполнение пререквизитов при установке сервиса

    Убедитесь, что все требования к окружению выполнены согласно документации по подготовке окружения для вашей версии установки. См. раздел “Подготовка окружения к установке” в документации по установке (например, Подготовка окружения к установке 4.2.3).

  2. Проверьте корректность заполнения значений переменных в групповых переменных Ansible

    Убедитесь, что все переменные в файлах group_vars для соответствующих групп хостов заполнены корректно и соответствуют вашей конфигурации. Проверьте:

    • Правильность путей к файлам (лицензия, сертификаты)
    • Корректность адресов и портов сервисов
    • Правильность учетных данных для подключения к базам данных и другим сервисам
    • Соответствие версий компонентов и наличие вашей ОС в списке совместимости.
  3. Если проблема остается

    Если после выполнения указанных проверок проблема не решена, обратитесь в поддержку Закрома, используя шаблон обращения в поддержку.

См. также