Часто встречающиеся проблемы и пути их устранения#

Контроль доступа к внешним ресурсам#

Невозможно подключиться к управляемой БД, при этом в журнале управляемой БД не обнаруживаются попытки установки подключения от сервиса#

Решение:

Для контроля доступа модулей Kintsugi к внешним по отношению к service mesh ресурсам (в том числе управляемым БД) сконфигурируйте сетевые политики с помощью Service Entry (Istio).

Примечание

По умолчанию любой трафик к внешним ресурсам запрещен.

Для создания разрешающего правила укажите в конфигурации Service Entry:

  • IP-адрес/доменное имя хоста;

  • протокол;

  • порт.

Пример конфигурации:

kind: ServiceEntry
apiVersion: networking.istio.io/v1alpha3
metadata:
  name: kintsugi-example
spec:
  hosts:
    - <host_name> # доменное имя хоста
    - <ip_address> # IP-адрес хоста
  ports:
    - name: <port_label> # метка порта
      number: <port> # порт хоста
      protocol: <protocol> # протокол
  location: MESH_EXTERNAL
  exportTo:
    - '.'

Приведенная конфигурация создает разрешающее правило для TCP-трафика на порт port для хостов поддомена host_name и хоста с IP-адресом ip_address. Для успешного результата подставьте вместо параметров в скобках <...> параметры целевой системы.

Детальное описание конфигурации политик Service Entry можно найти на странице официальной документации Istio.

Проблемы, возникающие при работе в среде Kubernetes/Platform V DropApp (K8S) или Red Hat OpenShift#

Не запускается/запускается с ошибкой пода#

Решение:

  1. Проверьте статус Pod в Kubernetes/Platform V DropApp/Red Hat OpenShift:

    • Если статус ContainerCreating, то:

      1. Подождите, пока узел станет доступным.

      2. Если статус узла не меняется, обратитесь к администратору кластера.

    • Если статус crashloopbackoff, то:

      1. Проверьте логи Pod на наличие ошибок приложения.

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

    • Если статус imagepullbackoff, то:

      1. Проверьте правильность адреса до образа в реестре Docker.

      2. Посмотрите, создан ли secret скачивания образов из разрешенного реестра Docker.

  2. Проверьте, что все контейнеры перешли в статус готовности.

  3. Посмотрите код состояния запросов на readiness и liveness.

Проблемы, возникающие при работе с метриками мониторинга наблюдаемых БД при использовании пулеров соединений типа PgBouncer и ему подобных#

Прекращают отображаться все метрики мониторинга после успешного подключения и сбора метрик наблюдаемой БД#

Причина:

Возможно использование пулеров соединений при работе с БД.

Решение:

При добавлении объектов мониторинга используйте порт для прямого подключения к наблюдаемым БД (без использования пулеров соединений типа PgBouncer и ему подобных).

Проблемы, возникающие при работе Kintsugi с хранилищем timeseries-данных#

Пользователь не видит значений метрик мониторинга#

Решение:

Проверьте выполнение SQL-запросов собираемыми метриками Kintsugi согласно разделу «SQL-запросы получения метрик для панели мониторинга «Метрики»».

Проблемы, возникающие при выполнении запросов к Kintsugi#

Решение:

Размер заголовка и/или cookie в запросе превышает максимально допустимое значение, установленное веб-сервером. Переопределите неиспользуемые заголовки и/или cookie на проксирующем узле.

Пример конфигурации (nginx/syngx):

proxy_set_header Cookie "";