Конфигурация АктивныхШлюзов

Материал из Документация Ключ-АСТРОМ

Контейнер АктивногоШлюза можно настроить в некоторой степени с помощью методов, специфичных для контейнера, через переменные или секреты. Более продвинутые настройки требуют предоставления файла АктивногоШлюза custom.properties.

См. Расширенная конфигурация (ниже), чтобы узнать, как использовать механизмы Kubernetes, например, сопоставить ConfigMap с custom.properties.

Конфиденциальная информация

Для обеспечения безопасности необходимо передать конфиденциальную информацию в контейнер АктивногоШлюза в файле, содержащем секрет.

Конфигурация среды

Образ контейнера АктивногоШлюза не содержит никакой конфигурации, связанной с вашей средой.

Ниже приведены обязательные параметры конфигурации, необходимые для работы контейнера АктивногоШлюза.

Конечные точки связи

Это разделенный запятыми список конечных точек связи, которые АктивныйШлюз будет использовать для отправки данных в вашу среду Ключ-АСТРОМ.

Чтобы определить конечные точки, используйте информацию о подключении GET для АктивногоШлюза в API Ключ-АСТРОМ.

необходимо Переменная окружения - KA_SERVER

Идентификатор среды

Идентификатор среды Ключ-АСТРОМ.

необходимо Переменная окружения - KA_TENANT

Токен

Токен используется ЕдинымАгентом и АктивнымШлюзом для передачи данных в Ключ-АСТРОМ.

Ключ-АСТРОМ автоматически генерирует токен для вашего АктивногоШлюза.

Чтобы определить токен, используйте информацию о подключении GET для АктивногоШлюза в API Ключ-АСТРОМ.

необходимо Секрет файл - /var/lib/astromkey/secrets/tokens/tenant-token

Токен АктивногоШлюза

Для авторизации в кластере Ключ-АСТРОМ АктивномуШлюзу требуется уникальный токен АктивногоШлюза.

необходимо Секрет файл - /var/lib/astromkey/secrets/tokens/auth-token

Настройки развертывания

Группа активации

Определяет группу АктивногоШлюза, к которой принадлежит АктивныйШлюз.

АктивныйШлюз может принадлежать только к одной группе. Имя группы АктивногоШлюза представляет собой строку из буквенно-цифровых символов, дефисов (-), подчеркиваний (_) и точек (.). Точки используются в качестве разделителей, поэтому вы не должны использовать точку в качестве первого символа имени группы. Длина строки ограничена 256 символами. Вы можете использовать группы АктивныхШлюзов для выполнения массовых действий на ваших АктивныхШлюзах, таких как управление расширениями 2.0, работающими на АктивныхШлюзах.

Переменная окружения Пример
KA_GROUP myGroup

Сетевая зона

Определяет сетевую зону, к которой принадлежит АктивныйШлюз.

АктивныйШлюз может принадлежать только к одной сетевой зоне. Имя сетевой зоны представляет собой строку из буквенно-цифровых символов, дефисов (-), подчеркиваний (_) и точек (.). Точки используются в качестве разделителей, поэтому вы не должны использовать точку в качестве первого символа имени сетевой зоны. Длина строки ограничена 256 символами.

Переменная окружения Пример
KA_NETWORK_ZONE myNetworkZone

Включенные модули

Контейнеризованный АктивныйШлюз не включает никаких функций по умолчанию. Включенные модули должны быть указаны с помощью переменной окружения KA_CAPABILITIES. Добавьте разделенный запятыми список имен модулей в качестве значения переменной.

Переменная окружения Пример
KA_CAPABILITIES azure_monitoring,MSGrouter

Обычно следует ссылаться на имена разделов custom.properties как на имена модулей, например, cloudfoundry_monitoring.

Исключением из этого правила являются следующие модули, которые хранятся в разделе [collector].

  • MSGrouter— Включает маршрутизацию сообщений
  • restInterface— Включает модуль REST API
  • java-script-agent-servlet— Включает агент JavaScript
Не все модули поддерживаются

Не все модули поддерживаются в развернутых контейнерах.

Настройки сети

Прокси

Прокси-сервер, используемый для связи с кластером Ключ-АСТРОМ, на который АктивныйШлюз отправляет данные.

Секрет файл Описание
/var/lib/astromkey/secrets/internal-proxy/host Адрес сервера.
/var/lib/astromkey/secrets/internal-proxy/port необязательный Порт. Если оставить пустым, будет использоваться порт по умолчанию 8080.
/var/lib/astromkey/secrets/internal-proxy/scheme АктивныйШлюз версии 1.289+

необязательный Схема. Если оставить пустым, будет использоваться схема http по умолчанию. Это относится к наиболее распространенной настройке, когда соединение с прокси инициируется с помощью HTTP и автоматически обновляется до защищенного. Все дальнейшие коммуникации АктивногоШлюза через прокси защищены с помощью SSL/TLS.

Необходимо установить https для прокси-серверов, которые вообще не поддерживают HTTP.

/var/lib/astromkey/secrets/internal-proxy/username необязательный Имя пользователя.
/var/lib/astromkey/secrets/internal-proxy/password необязательный Пароль см. в разделе Требования к паролю прокси-сервера (ниже).

Расширенные сценарии

Для более сложных сценариев, где один или несколько прокси используются для средств, отличных от связи с кластером Ключ-АСТСТРОМ, см. Настройка прокси для АктивногоШлюза. После создания необходимой конфигурации вы можете предоставить ее контейнеру АктивногоШлюза в виде файла custom.properties.

Требования к паролю прокси-сервера

Пароль прокси-сервера должен соответствовать следующим требованиям.

Требования Соответствующие символы
Разрешенные символы [А-За-з0-9]

! " # $ ( ) * - . / : ; < > ? @ [ ] ^ _ { | }

Недопустимые символы пробел

' ` , & = + % \

Балансировщик нагрузки между АктивнымШлюзом и ЕдинымАгентом

ЕдиныйАгент Ключ-АСТРОМ обращается к АктивномуШлюзу через список автоматически обнаруженных конечных точек. Если на пути от ЕдиногоАгента к АктивномуШлюзу размещен балансировщик нагрузки, например Kubernetes Service, вам необходимо указать конечную точку, которая будет использоваться ЕдинымАгентом.

Переменная окружения Пример значения
KA_DNS_ENTRY_POINT https://sg1.mydomain.com:9999

Балансировщик нагрузки между АктивнымШлюзом и кластером Клюбч-АСТРОМ

Обратный прокси или балансировщик нагрузки можно разместить на пути от АктивногоШлюза к кластеру Ключ-АСТРОМ. Это позволяет вашему АктивномуШлюзу подключаться к любому доступному узлу кластера, распределяя нагрузку между узлами.

Для этого вам необходимо:

  • Указать адрес обратного прокси-сервера/балансировщика нагрузки.
  • Убедиться, что АктивныйШлюз будет игнорировать любую дальнейшую информацию о целевом адресе, отправленную из кластера Ключ-АСТРОМ, и, таким образом, будет подключаться только к указанному вами адресу.

Rev-proxy-001-1000-f7d875625b.png

В этом сценарии вам необходимо установить следующие переменные среды.

Переменная окружения Пример значения
KA_SERVER https://load.balancer.com:9999
KA_IGNORE_CLUSTER_RUNTIME_INFO true

Настройки SSL

Пользовательский SSL-сертификат

АктивныйШлюз будет обслуживать пользовательский сертификат вместо сертификата по умолчанию. Для настройки вам понадобится файл в формате PKCS#12, содержащем закрытый ключ и соответствующую ему цепочку сертификатов. Для получения дополнительной информации см. Пользовательский сертификат SSL для АктивногоШлюза.

Секрет файл Описание
/var/lib/astromkey/secrets/tls/server.p12 Файл сертификата
/var/lib/astromkey/secrets/tls/password необязательно Пароль сертификата
/var/lib/astromkey/secrets/tls/alias необязательно Название сертификата. Значение должно быть указано в нижнем регистре.

Доверенные корневые сертификаты

АктивныйШлюз может использовать дополнительные доверенные корневые сертификаты. Для настройки вам понадобится файл в формате PEM, содержащем список сертификатов, которые необходимо включить в хранилище доверия. Для получения дополнительной информации см. Доверенные корневые сертификаты для АктивногоШлюза.

Секрет файл Описание
/var/lib/astromkey/secrets/rootca/rootca.pem Файл сертификата

HTTP-порт

Контейнер АктивногоШлюза по умолчанию открывает порт HTTPS 9999. Если вам необходимо, чтобы ваш АктивныйШлюз взаимодействовал по простому HTTP, вам необходимо указать этот порт HTTP.

Переменная окружения Пример
KA_HTTP_PORT 8888

Расширенная конфигурация

Помимо параметров конфигурации, передаваемых через переменные среды или файлы, вы можете настроить все остальные параметры конфигурации, указав содержимое файла custom.properties.

  1. Определять ConfigMap.
    kind: ConfigMap
    apiVersion: v1
    data:
      custom.properties: |-
        [vmware_monitoring]
        vmware_monitoring_enabled = true
    metadata:
      name: vmware-config
      namespace: astromkey
  2. Ссылка ConfigMap в вашем файле развертывания.
    [...]
          volumeMounts:
            [...]
            - name: ag-conf
              mountPath: /var/lib/astromkey/gateway/config_template/custom.properties
              subPath: custom.properties
    [...]
        volumes:
          - name: ag-conf
            configMap:
              name: vmware-config
              items:
              - key: custom.properties
                path: custom.properties