Настройка конфигурации для kubernetes

Настройка конфигурации Kubernetes для мультикластера


Смотрите также

Данная инструкция рассматривает настройку конфигурации для Kubernetes и служит частью инструкции по настройке мультикластерного режима.

  1. Произвести настройки в конфигурации
    1. Добавить и настроить компонент CDN. Описание параметров смотрите ниже Описание переменных.
1 global: 2 config: 3 cdn: 4 logLevel: WARN 5 database: 6 host: <postgres_host> 7 name: <postgres_name> 8 searchPath: multi-cluster 9 user: <postgres_username> 10 password: <postgres_password> 11 clusters: 12 this: 13 name: cluster1 14 kafka: 15 servers: [ "kafka-cluster-1.multi-cluster-infra.svc.cluster.local:9092" ] 16 user: <user> 17 password: <pass> 18 others: 19 - name: cluster2 20 kafka: 21 servers: [ "kafka-cluster-2.regress-multi-cluster-infra.svc.cluster.local:9092" ] 22 user: <user> 23 password: <pass> 24 http: 25 protocol: http 26 host: cdn-service.multi-cluster-2.svc.cluster.local 27 port: 80
11. Добавить параметры для gateway в мультикластерном режиме.
1global: 2 config: 3 gatewayCloud: 4 # ... предудщие настройки для gateway 5 # ниже настройки которые необходимо добавить 6 clusters: 7 enabled: true 8 this: 9 name: GatewayCluster1 10 kafka: 11 servers: 12 - kafka-cluster-1.multi-cluster-infra.svc.cluster.local:9092 13 user: <user> 14 password: <pass> 15 others: 16 - name: GatewayCluster2 17 kafka: 18 servers: 19 - kafka-cluster-2.multi-cluster-infra.svc.cluster.local:9092 20 user: <user> 21 password: <pass>
  1. Обновить все сервисы через helm upgrade
  2. Дождаться чтобы все компоненты успели запуститься. Убедитесь, что сервисы успешно запустились.
  3. Произвести аналогичную настройку для всех последующих узлов мультикластера (кластеров) с пункта 1 до пункта 3.
  4. Произвести проверку связанности, см. здесь.

Описание переменных

ПеременнаяОписаниеЗначение по умолчаниюRequired
global.config.cdn.logLevelУровень логирования для компонента cdnINFO
global.config.cdn.database.hostХост базы данныхyes
global.config.cdn.database.nameИмя базы данныхyes
global.config.cdn.database.searchPathСхема базы данныхpublic
global.config.cdn.database.userПользователь базы данныхyes
global.config.cdn.database.passwordПароль базы данныхyes
--
global.config.cdn.clusters.this.nameИмя текущего кластера. Используется для идентификации и различения данного кластера от других в системе-yes
global.config.cdn.clusters.this.kafka.topicНазвание топика Kafka, используемого в текущем кластере для отправки сообщений о репликацииZakromaCdn__<this_cluster_name>
global.config.cdn.clusters.this.kafka.dead_letterНазвание топика “мертвых писем” используется для хранения сообщений, которые не удалось обработать из основного топикаZakromaCdnDeadLetter_<this_cluster_name>
global.config.cdn.clusters.this.kafka.serversАдреса серверов Kafka для текущего кластераyes
global.config.cdn.clusters.this.kafka.userИмя пользователя для аутентификации в Kafka в текущем кластере""
global.config.cdn.clusters.this.kafka.passwordПароль для аутентификации в Kafka для текущего кластера""
-- -
global.config.cdn.clusters.others.nameИмя другого кластера, с которым происходит взаимодействиеyes
global.config.cdn.clusters.others.kafka.serversАдреса серверов Kafka в другом кластереyes
global.config.cdn.clusters.others.kafka.topicНазвание топика Kafka в другом кластере с котором происходит чтение событий репликацииZakromaCdn__<other_cluster_name>yes
global.config.cdn.clusters.others.kafka.consumer_groupНазвание группы потребителей (Consumer Group) в Kafka для другого кластера<this_cluster_name>yes
global.config.cdn.clusters.others.kafka.userИмя пользователя для аутентификации в Kafka в другом кластере""
global.config.cdn.clusters.others.kafka.passwordПароль для аутентификации в Kafka в другом кластере""
global.config.cdn.clusters.others.http.protocolПротокол используемый для связи с другим кластером (HTTP или HTTPS)yes
global.config.cdn.clusters.others.http.hostХост (или домен) другого кластера, к которому происходит обращение по HTTPyes
global.config.cdn.clusters.others.http.portПорт другого кластера, к которому происходит обращение по HTTPyes
global.config.cdn.clusters.others.http.download_timeoutВремя ожидания в секундах при скачивании данных по HTTP из другого кластера. Если загрузка данных превышает этот тайм-аут, процесс может быть прерван.yes
--
global.config.gatewayCloud.clusters.enabledВключить режим мульти-кластера в gateway репликаця (s3 ключи, политики доступа, роли пермиссии)yes
global.config.gatewayCloud.clusters.this.nameИмя текущего кластера.yes
global.config.gatewayCloud.clusters.this.kafka.topicНазвание топика Kafka, используемого в текущем кластере для отправки сообщений о репликации<this_cluster_name>
global.config.gatewayCloud.clusters.this.kafka.serversАдреса серверов Kafka для текущего кластераyes
global.config.gatewayCloud.clusters.this.kafka.userИмя пользователя для аутентификации в Kafka в текущем кластере""
global.config.gatewayCloud.clusters.this.kafka.passwordПароль для аутентификации в Kafka для текущего кластера""
-- -
global.config.gatewayCloud.clusters.others.nameИмя другого кластера, с которым происходит взаимодействиеyes
global.config.gatewayCloud.clusters.others.kafka.serversАдреса серверов Kafka в другом кластереyes
global.config.gatewayCloud.clusters.others.kafka.topicНазвание топика Kafka в другом кластере с котором происходит чтение событий репликацииyes
global.config.gatewayCloud.clusters.others.kafka.consumer_groupНазвание группы потребителей (Consumer Group) в Kafka для другого кластера<this_cluster_name>
global.config.gatewayCloud.clusters.others.kafka.userИмя пользователя для аутентификации в Kafka в другом кластере""
global.config.gatewayCloud.clusters.others.kafka.passwordПароль для аутентификации в Kafka в другом кластере""