Устранение проблем при установке или обновлении агентов

В данном разделе приведены возможные проблемы при установке или обновлении агента и способы их решения.

Некорректные статусы модулей nats-server и configuration-server

Проблема: после установки и запуска агента статусы модулей nats-server и configuration-server отличаются от running, например:

[{"name":"nats-server","status":"running"},{"name":"configuration-server","reason":"Down/Starting..","status":"not running"},...]

Решение: переустановите агент. Для этого:

  1. Удалите агент.

  2. Перезапустите устройство.

  3. Заново установите и запустите агент.

Установленный агент не отображается в менеджере агентов

Проблема: после установки и запуска агент не отображается в менеджере агентов.

Решение:

  1. Если система отображает ошибку вида Error trying to connect as leafnode to remote server:

    1. Проверьте подключение компьютера к сети. Если подключение отсутствует, восстановите его.

    2. Проверьте доступность шлюза, указанного в конфигурационном файле rpoint.conf. Если указаны некорректные настройки подключения (например, заданы закрытые порты), исправьте их.

  2. Откройте файл logs/nats.log и найдите последнее сообщение.

    • Если сообщение содержит запись вида 10.99.66.43:32422 - lid:29 - JetStream using domains: local "agent-19395b65-6bdd-5a00-9970-47668a6ce92c", подключение к NATS прошло успешно. Вероятнее всего, проблема в конфигурации пространства центрального кластера или сателлита.

      Для решения проблемы удостоверьтесь в корректности заданных настроек подключения к пространству:

      • Если настройки некорректны, исправьте их.

      • Если настройки корректны, но ошибка сохраняется, обратитесь в службу поддержки по адресу support@rvision.ru.

    • Если сообщение содержит запись вида Error trying to connect as leafnode to remote server "ep-worker03.rpoint.test.dev.rvision.local:32422" (attempt 1): dial tcp 10.99.66.43:32422: connect: connection refused, указанный в сообщении порт недоступен на оборудовании.

      Для решения проблемы обратитесь к системному администратору с запросом на открытие порта.

  3. Если на предыдущих шагах проблемы не были выявлены и подключение агента прошло успешно, возможно, IP-адреса, к которым должны подключаться агенты, не указаны в файле etc/nats-leafnode.conf.

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

    1. Откройте файл конфигурации агента rpoint.conf.

    2. Проверьте, правильно ли указаны в файле IP-адреса, к которым должны подключаться агенты.

      Если IP-адреса указаны неправильно, укажите верные IP-адреса в файле rpoint.conf.

      Если IP-адреса указаны правильно, но данные тенантов и шлюзов не отображаются в файле nats-leafnode.conf, проверьте корректность этих данных в менеджере агентов:

      • Если данные тенантов и шлюзов некорректны, исправьте их.

      • Если данные корректны, ошибка, вероятнее всего, связана с самим агентом. Обратитесь в службу поддержки по адресу support@rvision.ru.

Сбой при обновлении агента

Проблема: во время обновления агента произошел сбой.

Решение:

Установленный агент не отображается в списке агентов

Проблема: установленный агент не отображается в списке раздела Агенты → Агенты.

Причина: сообщение о регистрации, отправляемое агентом, превышает максимальный размер сообщения NATS, задаваемый параметром конфигурации max_payload. По умолчанию он равен 4 МБ (4 194 304 байт).

Решение: увеличьте значение параметра max_payload.

Максимальное допустимое значение max_payload — 64 МБ. Однако не рекомендуется увеличивать его более чем до 8 МБ для поддержания оптимальной производительности системы и контролируемого потребления вычислительных ресурсов.
Увеличить значение параметра max_payload следует в центральном кластере и во всех сателлитах.

Чтобы увеличить значение max_payload:

  1. Добавьте параметр max_payload или отредактируйте его значение в следующих объектах ConfigMap:

    • в центральном кластере — nats-main-config, nats-bridge-config и nats-space-config;

    • в сателлите — только nats-space-config.

    Для этого выполните следующие действия:

    1. Откройте ConfigMap, выполнив следующую команду:

      kubectl -n <namespace> edit configmap <configmap>

      Здесь:

      • <namespace> — название пространства имен, в котором установлена система.

      • <configmap> — имя ConfigMap: nats-main-config, nats-bridge-config или nats-space-config.

    2. По пути data → nats.conf добавьте ключ max_payload или отредактируйте его значение, если он уже существует. В качестве значения этого ключа укажите необходимый максимальный размер события в мегабайтах.

      Пример ConfigMap с ключом max_payload
      data:
        nats.conf: |
          {
            "http_port": 8222,
            "jetstream": {
              "domain": "main",
              "max_file_store": 30Gi,
              "max_memory_store": 0,
              "store_dir": "/data"
            },
            "lame_duck_duration": "30s",
            "lame_duck_grace_period": "10s",
            "leafnodes": {
              "no_advertise": true,
              "port": 7422
            },
            # Добавьте или отредактируйте данный параметр.
            "max_payload": 8Mb,
            "pid_file": "/var/run/nats/nats.pid",
            "port": 4222,
            "server_name": $SERVER_NAME
          }
  2. Подождите несколько минут. Когда Kubernetes применит новую конфигурацию, проблема будет устранена.

    Если новая конфигурация не применяется в течение длительного времени, выполните следующие действия:

    1. Проверьте корректность ConfigMap NATS, выполнив следующую команду для nats-main, nats-bridge и nats-space (в случае центрального кластера) или только nats-space (в случае сателлита):

      kubectl exec -n <namespace> <nats_name>-0 -c nats -- nats-server --config /etc/nats-config/nats.conf -t

      Здесь:

      • <namespace> — название пространства имен, в котором установлена система.

      • <nats_name> — имя экземпляра NATS: nats-main, nats-bridge или nats-space.

      Если ConfigMap валидный, отобразится сообщение, содержащее строку configuration file /etc/nats-config/nats.conf is valid, например:

      nats-server: configuration file /etc/nats-config/nats.conf is valid (sha256:0f46738ebed370c5c52ee0ad96dec8f459fb901c2ca4e285211eddf903bf1598)
    2. Если ConfigMap валидный, отправьте сигнал на его принудительное обновление, выполнив следующую команду:

      kubectl exec -n <namespace> <nats_name>-0 -c nats -- nats-server --config /etc/nats-config/nats.conf --signal reload=/var/run/nats/nats.pid

      Здесь:

      • <namespace> — название пространства имен, в котором установлена система.

      • <nats_name> — имя экземпляра NATS: nats-main, nats-bridge или nats-space.

    3. Если ConfigMap не валидный, вернитесь к началу инструкции и проверьте валидность внесенных вами изменений.

Была ли полезна эта страница?

Обратная связь