Добавление узлов ZooKeeper

Edge для частного облака v. 4.17.01

В этом документе описывается, как добавить три новых узла ZooKeeper к существующей установке Edge for Private Cloud.

Вы можете добавить один или два узла ZooKeeper к существующей установке Edge, однако вы должны убедиться, что у вас всегда есть нечетное количество узлов голосования ZooKeeper, как описано ниже.

Существующая конфигурация Edge

Все поддерживаемые топологии Edge для производственной системы предусматривают использование трех узлов ZooKeeper. Эти три узла указаны для свойств ZK_HOSTS и ZK_CLIENT_HOSTS в файле конфигурации, как показано ниже:

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com 
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt 
MSIP=$IP1 
USE_LDAP_REMOTE_HOST=n 
LDAP_TYPE=1
APIGEE_LDAPPW=secret 
BIND_ON_ALL_INTERFACES=y
MP_POD=gateway
REGION=dc-1 
ZK_HOSTS="$IP1 $IP2 $IP3" 
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" 
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" 
SKIP_SMTP=n
SMTPHOST=smtp.example.com 
SMTPUSER=smtp@example.com  
SMTPPASSWORD=smtppwd       

где:

  • ZK_HOSTS указывает IP-адреса или DNS-имена узлов ZooKeeper. IP-адреса или DNS-имена должны быть указаны в одном и том же порядке на всех узлах ZooKeeper. В среде с несколькими центрами обработки данных перечислите все узлы ZooKeeper из обоих центров обработки данных.
  • ZK_CLIENT_HOSTS указывает IP-адреса или DNS-имена узлов ZooKeeper, используемых этим центром обработки данных. IP-адреса или DNS-имена должны быть указаны в одном и том же порядке на всех узлах ZooKeeper.

    При установке одного центра обработки данных это те же узлы, которые указаны в ZK_HOSTS . В среде с несколькими центрами обработки данных укажите только узлы ZooKeeper в этом центре обработки данных.

Изменение файла конфигурации для добавления трех новых узлов ZooKeeper.

В этом примере три новых узла ZooKeeper находятся по следующим IP-адресам:

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

Сначала необходимо обновить файл конфигурации Edge, чтобы добавить новые узлы:

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
# Add the new node IP addresses.
IP14=10.10.0.14
IP15=10.10.0.15
IP16=10.10.0.16
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com 
...
# Update ZK_HOSTS to add each new node after an existing nodes. 
ZK_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16:observer" 
# Update ZK_Client_HOSTS to add each new node after an existing nodes. 
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16" 

Отметьте последний узел в ZK_HOSTS модификатором with «:observer». Узлы без модификатора «:observer» называются «избирателями». В вашей конфигурации должно быть нечетное количество «избирателей». Таким образом, в этой конфигурации у вас есть 5 избирателей ZooKeeper и один наблюдатель.

Обязательно добавьте узлы в ZK_HOSTS и ZK_CLIENT_HOSTS в одном и том же порядке. Однако опустите модификатор «:observer» при настройке ZK_CLIENT_HOSTS .

Настроить Edge

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

Установите ZooKeeper на новые узлы.

  1. Установите apigee-setup на первый узел, как описано в разделе Установка утилиты Edge apigee-setup .
  2. Установите ZooKeeper на первый узел, используя следующие команды:
    > /opt/apigee/apigee-service/bin/apigee-service установка apigee-zookeeper
    > /opt/apigee/apigee-service/bin/apigee-service настройка apigee-zookeeper -f обновленныйConfigFile
  3. Повторите шаги 1 и 2 для остальных новых узлов ZooKeeper.

Переконфигурируйте существующие узлы ZooKeeper.

На существующих узлах ZooKeeper:

  1. Перезапустите setup.sh с профилем «-pc» и новым файлом конфигурации:
    > /opt/apigee/apigee-service/bin/apigee-service настройка apigee-zookeeper -f обновленныйConfigFile

Перезапустите все узлы Zookeeper.

На всех узлах ZooKeeper:

  1. Перезапустите узел:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск apigee-zookeeper

    Вам необходимо перезапустить все узлы ZooKeeper, но порядок перезапуска не имеет значения.

Перенастройте узел Сервера управления.

На узле Сервер управления:

  1. Запустите команду установки:
    > /opt/apigee/apigee-service/bin/apigee-service настройка Edge-Management-Server -f обновленныйConfigFile
  2. Перезапустите сервер управления:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск сервера Edge-Management-Server

Перенастроить все маршрутизаторы

На всех узлах маршрутизатора:

  1. Запустите команду установки:
    > /opt/apigee/apigee-service/bin/apigee-service настройка Edge-Router -f обновленныйConfigFile
  2. Перезагрузите маршрутизатор:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск пограничного маршрутизатора

Переконфигурируйте все процессоры сообщений.

На всех узлах процессора сообщений:

  1. Запустите команду установки:
    /opt/apigee/apigee-service/bin/apigee-service настройка процессора Edge-message -f обновленныйConfigFile
  2. Перезапустите процессор сообщений:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск процессора Edge-message

Перенастроить все узлы Qpid

На всех узлах Qpid:

  1. Запустите команду установки:
    > /opt/apigee/apigee-service/bin/apigee-service настройка Edge-qpid-server -f обновленныйConfigFile
  2. Перезапустите Qpid:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-qpid-перезапуск сервера

Переконфигурируйте все узлы Postgres.

На всех узлах Postgres:

  1. Запустите команду установки:
    > /opt/apigee/apigee-service/bin/apigee-service настройка Edge-postgres-server -f обновленныйConfigFile
  2. Перезапустите Постгрес:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск Edge-postgres-сервера

Подтвердите установку

Вы можете проверить установку новых узлов ZooKeeper, отправив команды на порт 2181 с помощью netcat (nc) или telnet. Дополнительную информацию о командах ZooKeeper см. по адресу: http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands .

Чтобы подтвердить:

  1. Если он не установлен на узле ZooKeeper, установите nc:
    > sudo yum install nc
  2. Выполните следующую команду nc:
    > статистика эха | NC локальный хост 2181
  3. Повторите шаги 1 и 2 на каждом узле ZooKeeper.
    В строке «Режим » выходных данных для узлов один узел должен быть назначен наблюдателем, один узел — лидером, а остальные — ведомыми.