Установка сателлита в неинтерактивном режиме

Добавление TLS-сертификатов для подключения к основному экземпляру системы

После завершения установки основного экземпляра системы создается архив TLS-сертификатов $SETUP_ROOT_DIR/r-vision/nats-tls.tar.gz. Этот архив необходимо скопировать в каталог установки сателлита $SETUP_ROOT_DIR/r-vision до начала его установки.

Подготовка конфигурационного файла

Подготовьте конфигурационный файл для установщика согласно инструкции для сателлита.

Запуск установщика

Запустите установщик в неинтерактивном режиме, выполнив одну из нижеприведенных команд:

DEPLOY_SKIP_REGISTER=yes CTL_ENV_FILE=<path_to_env_file> evoctl instance install

Или:

CTL_ENV_FILE=<path_to_env_file> evoctl instance install --skip-register

Здесь:

  • <path_to_env_file> — путь к конфигурационному файлу.

Если не указать параметры DEPLOY_SKIP_REGISTER или --skip-register, сателлит будет готов к работе не сразу после установки, поскольку сервис evo.space.space-controller, регистрирующий образы его компонентов, будет запущен только после подключения основного экземпляра системы к сателлиту.

Рекомендуется указать параметры DEPLOY_SKIP_REGISTER или --skip-register и зарегистрировать образы вручную после завершения установки.

Завершение установки

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

To add this Satellite as a new space of main instance use values:
  space id: space-satellite
  space port: 30072
Если вы отключали какие-либо сервисы во время аудита системного окружения, включите их.

Настройка исключений для антивируса

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

Настройка mTLS-шифрования между основным экземпляром и сателлитом

По умолчанию после установки основного экземпляра системы и сателлита шифрование соединения между ними отключено.

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

  1. Включите TLS-шифрование для пространств. Для этого:

    1. Подключитесь к терминалу master-узла кластера, в котором установлен основной экземпляр системы.

    2. Откройте ConfigMap space-manager-extravars:

      kubectl -n <namespace> edit configmap space-manager-extravars

      Здесь:

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

        Вы можете получить название пространства имен, в котором установлена система, с помощью утилиты evoctl.
    3. Установите для переменной NATS_CONFIGURATOR_USE_LEAF_TLS_FOR_SPACES значение "true".

    4. Сохраните изменения в ConfigMap.

    5. Перезапустите Deployment evo.space.space-manager:

      kubectl -n <namespace> rollout restart deployment evo.space.space-manager
  2. Если вы планируете размещать шлюзы в пространстве сателлита, включите TLS-шифрование для подключения шлюзов к NATS. Для этого:

    1. Откройте ConfigMap space-controller-extravars:

      kubectl -n <namespace> edit configmap space-controller-extravars

      Здесь:

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

    2. Установите для переменной NATS_CONFIGURATOR_USE_LEAF_TLS_FOR_SPACES значение "true".

    3. Сохраните изменения в ConfigMap.

    4. Перезапустите Deployment evo.space.space-controller:

      kubectl -n <namespace> rollout restart deployment evo.space.space-controller
  3. Задайте параметры TLS в ConfigMap nats-space-config. Для этого:

    1. Откройте ConfigMap nats-space-config:

      kubectl edit -n <namespace> configmaps nats-space-config -o yaml

      Здесь:

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

    2. В блоке leafnodes добавьте блок tls со следующим содержимым:

      "tls": {
        "ca_file": "/etc/nats/ca/ca.crt",
        "cert_file": "/etc/nats/tls/tls.crt",
        "key_file": "/etc/nats/tls/tls.key",
        "verify": true,
        "handshake_first": true
      }
      Пример измененного блока leafnodes
      "leafnodes": {
        "no_advertise": true,
        "port": 7422,
        "tls": {
          "ca_file": "/etc/nats/ca/ca.crt",
          "cert_file": "/etc/nats/tls/tls.crt",
          "key_file": "/etc/nats/tls/tls.key",
          "verify": true,
          "handshake_first": true
        }
      },
    3. Перезапустите StatefulSet nats-space:

      kubectl -n <namespace> rollout restart statefulset nats-space
  4. Повторите действия на шаге 3 в терминале master-узла кластера сателлита.

Подключение к пространству сателлита

Управление сателлитом осуществляется за счет запускаемых в нем сервисов через веб-интерфейс основного экземпляра системы. Чтобы подключиться к сателлиту, необходимо создать подключение к его пространству. Для этого:

  1. Войдите в веб-интерфейс основного экземпляра системы.

  2. Перейдите в раздел Настройки → Пространства и сервисы → Пространства.

  3. Нажмите на кнопку Создать (plus). Отобразится окно создания подключения.

  4. Введите идентификатор пространства сателлита в поле ID.

  5. Введите название подключения. Название может быть любым.

  6. В поле IP или домен введите IP-адрес или доменное имя (FQDN) одного из узлов кластера, в котором развернут сателлит.

  7. В поле Порт введите номер TCP-порта, указанного при установке сателлита.

  8. При необходимости введите описание подключения к пространству.

  9. Нажмите на кнопку Создать. Система создаст подключение к пространству и отобразит соответствующее уведомление. Подключение отобразится в списке раздела Настройки → Пространства и сервисы → Пространства.

У созданного подключения отобразится статус Подключается. По завершении подключения статус изменится на Активен.

Время на инициализацию подключения зависит загруженности кластеров и каналов связи и может достигать 5—​10 минут.

Регистрация образов компонентов сателлита

Завершив подключение основного экземпляра системы к сателлиту, зарегистрируйте образы компонентов сателлита. Для этого:

  1. Подключитесь к терминалу машины, с которой запускалась установка сателлита.

  2. Дождитесь запуска сервиса evo.space.space-controller. Для этого отследите его статус:

    kubectl -n <satellite_namespace> get pods -l app.kubernetes.io/name=space-controller ---watch

    Здесь:

    • <satellite_namespace> — название пространства имен, в котором установлен сателлит. Оно определено в переменной EVO_NAMESPACE.

  3. Когда под сервиса evo.space.space-controller перейдет в статус Running, выполните следующие действия:

    1. Чтобы остановить наблюдение за статусом сервиса evo.space.space-controller, нажмите на комбинацию клавиш CTRL+C.

    2. Чтобы зарегистрировать образы компонентов сателлита, выполните следующую команду:

      evoctl instance upload -n <satellite_namespace>

      Здесь:

      • <satellite_namespace> — название пространства имен, в котором установлен сателлит. Оно определено в переменной EVO_NAMESPACE.

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

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