В этом документе рассказывается, как добавить три новых узла ZooKeeper в существующую установку Edge для частного облака.
Вы можете добавить один или два узла 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 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 модификатором :observer. Узлы без модификатора :observer называются голосующими. В конфигурации должно быть нечетное число голосующих. Таким образом, в этой конфигурации у вас будет пять голосующих серверов ZooKeeper и один наблюдатель.
Убедитесь, что узлы добавлены в свойства ZK_HOSTS и ZK_CLIENT_HOSTS в одном и том же порядке. Однако при настройке ZK_CLIENT_HOSTS не используйте модификатор :observer.
Как настроить Edge
После редактирования файла конфигурации необходимо выполнить все перечисленные ниже задачи.
Установите ZooKeeper на новые узлы
- Установите
apigee-setupна первом узле, как описано в разделе Установка утилиты Edge apigee-setup. - Установите ZooKeeper на первом узле, используя следующие команды:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile - Повторите шаги 1 и 2 для остальных новых узлов ZooKeeper.
Как перенастроить существующие узлы ZooKeeper
На существующих узлах ZooKeeper:
- Повторно выполните команду установки с новым файлом конфигурации:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
Перезапустите все узлы Zookeeper.
На всех узлах ZooKeeper:
- Перезапустите узел:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
Необходимо перезапустить все узлы ZooKeeper, но порядок перезапуска не имеет значения.
Как перенастроить узел сервера управления
На узле сервера управления:
- Выполните команду установки:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server setup -f updatedConfigFile
- Перезапустите сервер управления:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Заново настройте все маршрутизаторы.
На всех узлах маршрутизатора:
- Выполните команду установки:
/opt/apigee/apigee-service/bin/apigee-service edge-router setup -f updatedConfigFile
- Перезапустите маршрутизатор.
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
Перенастройте все процессоры сообщений.
На всех узлах обработчика сообщений:
- Выполните команду установки:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
- Перезапустите Message Processor:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Как перенастроить все узлы Qpid
На всех узлах Qpid:
- Выполните команду установки:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server setup -f updatedConfigFile
- Перезапустите Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
Как перенастроить все узлы Postgres
На всех узлах Postgres:
- Выполните команду установки:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server setup -f updatedConfigFile
- Перезапустите Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
Как проверить установку
Вы можете проверить установку новых узлов ZooKeeper, отправив команды на порт 2181 с помощью netcat (nc) или telnet. Дополнительную информацию о командах ZooKeeper можно найти на странице https://zookeeper.apache.org/doc/r3.8.3/zookeeperAdmin.html#sc_zkCommands.
Чтобы проверить AMP-страницу, выполните следующие действия:
- Если на узле ZooKeeper не установлено приложение nc, установите его:
sudo yum install nc
- Выполните следующую команду nc:
echo stat | nc localhost 2181
- Повторите шаги 1 и 2 на каждом узле ZooKeeper. В строке
Modeвыходных данных для узлов один узел должен быть назначен наблюдателем, один – лидером, а остальные – подчиненными.