Поиск и устранение неисправностей
Правила диагностики: сначала следует проверить состояние Docker-контейнеров и состояние серверной части (backend health), далее логи серверной части. Большинство ошибок конфигурации устройств содержит тело ответа RESTCONF в поле response_body.
|
Для быстрой диагностики системы выполнить команды:
docker ps -a --filter 'name=tcm-'
docker logs --tail=120 tcm-backend
curl http://127.0.0.1:8000/health
sudo ./termidesk-cm.sh status
sudo ./termidesk-cm.sh logs backend
Перечень возможных неисправностей и способы их устранения представлены в таблице (см. таблицу Перечень возможных неисправностей и способы их устранения).
| Проблема | Возможная причина | Рекомендуемые действия |
|---|---|---|
|
Сбой при запуске серверной части |
Частые причины: PostgreSQL недоступен, указан неверный |
PostgreSQL недоступен |
Ошибка инициализации или аварийное завершение |
Проверить значения полей |
Веб-интерфейс открывается, но API недоступен |
Указан неверный адрес в поле |
Проверить значение |
Вывод ошибки |
В веб-браузере остался старый токен |
Выйти из системы или очистить локальное хранилище |
Не удается добавить устройство |
Недоступен интерфейс RESTCONF/metrics или неверные учетные данные |
Проверить HTTPS-доступ к устройству, логин и пароль, параметр |
Отсутствуют syslog-события |
Устройство не отправляет syslog-события или порт |
Проверить сетевой экран (Firewall) В разделе веб-интерфейса «Устройства» убедиться, что активирована кнопка «Syslog». Посмотреть системный вывод командой Выполнить проверку сетевой связности по порту |
Пропускная способность (throughput) равен |
Для расчета скоростb (rate) нужен предыдущий снимок счетчиков |
Дождаться второго опроса или нажать обновление еще раз |
Резервная копия устройства: |
Недоступен SSH по порту |
Проверить сетевую доступность портов |
RESTCONF |
На целевом устройстве нет VRF, указанного в переносимой конфигурации |
В шаблоне выбрать VRF из списка целевого устройства. Список берется из |
RESTCONF |
|
Убедиться, что шаблон собрал |
RESTCONF |
Конфигурация ссылается на Профиль, отсутствующий на целевом устройстве |
Проверить сбор пользовательских профилей при создании шаблона. Профили по умолчанию не должны переименовываться |
RESTCONF |
В одном |
В форме применения шаблона изменить один эндпоинт или отключить лишний Реальный сервер чекбоксом «Исп.» |
Lua-скрипт не загружается |
Валидатор нашел ошибки уровня |
Открыть блок валидации, устранить ошибки, проверить SFTP по порту |
OpenBao не отвечает |
Контейнер не запущен, неверный URL-адрес или токен |
Выполнить команды |
«Ingress Controller» не виден в меню веб-интерфейса |
Раздел скрыт как экспериментальный |
Перейти в раздел «Система» – «Экспериментальные разделы» и включить параметр «Показывать раздел «Ingress Controller» в главном меню» |
В Ingress discovery не видны ресурсы |
Неверный API URL-адрес кластера, токен, УЦ, ingressClass или пространство имен (namespace) |
Проверить корректность настройки прав доступа сервисного аккаунта (ServiceAccount), параметров TLS-верификации (verify_tls), фильтрации по пространствам имен (namespace filter) и используемого класса ингресса (ingress class), а также результаты отображение статуса диагностики «Проверить» в карточке кластера |
Ручная проверка RESTCONF
Для проверки RESTCONF выполнить команды:
curl -kvv -X GET -H "Content-Type: application/yang-data+json" --user tdadmin:tdadmin https://<device_ip>/xtern/data/termidesk-system:system
curl -kvv -X GET -H "Content-Type: application/yang-data+json" --user tdadmin:tdadmin https://<device_ip>/xtern/data/termidesk-vrf:vrf
Проверка PostgreSQL
Для проверки PostgreSQL выполнить команды:
docker exec -it tcm-postgres psql -U tcm -d tcm -c '\dt'
docker exec -it tcm-postgres psql -U tcm -d tcm -c 'select id, management_ip, hostname, version from devices;'
docker exec -it tcm-postgres psql -U tcm -d tcm -c 'select count(*) from events;'
Проверка зависимостей серверной части
Для проверки зависимостей серверной части выполнить команды:
docker logs --tail=100 tcm-frontend
docker run --rm -it -w /app -v "$PWD/frontend:/app" node:22-slim sh -lc 'ls -la node_modules/.bin |grep vite && npm run dev -- --host 0.0.0.0 --port 5173'