В этом документе описывается, как добавить три новых узла Cassandra в существующую установку Edge для частного облака.
Хотя вы можете добавить один или два узла Cassandra к существующей установке Edge, Apigee рекомендует добавлять по три узла за раз.
Список системных требований для узла Cassandra приведен в разделе Требования к установке.
Существующая конфигурация Edge
Все поддерживаемые топологии Edge для производственной системы указывают на использование трех узлов Cassandra. Три узла указываются в свойстве CASS_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" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd
Обратите внимание, что в свойстве REGION указано название региона dc-1. Эта информация понадобится вам при добавлении новых узлов Cassandra.
Изменение файла конфигурации для добавления трех новых узлов Cassandra
В этом примере три новых узла Cassandra имеют следующие 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 CASS_HOSTS to add each new node after an existing nodes. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1"
Это гарантирует, что существующие узлы сохранят свои исходные настройки токенов, а начальный токен каждого нового узла будет находиться между значениями токенов существующих узлов.
Настройка Edge
После изменения файла конфигурации необходимо:
- Повторно настройте существующие узлы Cassandra.
- Установите Cassandra на новые узлы
- Как перенастроить сервер управления
Перенастройте существующие узлы Cassandra.
На существующих узлах Cassandra:
- Повторно запустите setup.sh с профилем -p c и новым файлом конфигурации:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
Установите Cassandra на новые узлы
Чтобы установить Cassandra на новые узлы, выполните описанную ниже процедуру.
На каждом новом узле Cassandra:
- Установите Cassandra на три узла:
- Установите
apigee-setupна первый узел, как описано в разделе Установка утилиты apigee-setup для Edge. - Установите Cassandra на первом узле, используя обновленный файл конфигурации:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- Повторите эти два шага для остальных новых узлов Cassandra.
- Установите
- Перестройте три новых узла Cassandra, указав в качестве названия региона центр обработки данных, в который вы добавляете узел (
dc-1,dc-2и т. д.). В нашем примере этоdc-1:- На первом узле выполните следующую команду:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
где nodeIP – IP-адрес узла Cassandra.
Имя пользователя и пароль нужно передавать, только если вы включили аутентификацию JMX для Cassandra.
- Повторите этот шаг для остальных новых узлов Cassandra.
- На первом узле выполните следующую команду:
Как перенастроить сервер управления
На узле Management-Server
- Чтобы обновить сервер управления для добавленных узлов Cassandra, повторно запустите setup.sh:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
Перезапустите все маршрутизаторы и процессоры сообщений.
- На всех маршрутизаторах:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- На всех процессорах сообщений:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Освободите место на диске в существующих узлах Cassandra.
После добавления нового узла вы можете использовать команду nodetool cleanup на существующих узлах, чтобы освободить место на диске. Эта команда очищает токены конфигурации, которые больше не принадлежат существующему узлу Cassandra.
Чтобы освободить место на диске существующих узлов Cassandra после добавления нового узла, выполните следующую команду:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
Имя пользователя и пароль нужно передавать, только если вы включили аутентификацию JMX для Cassandra.
Проверка пересборки
Чтобы убедиться, что пересборка прошла успешно, используйте следующие команды:
nodetool [-u username -pw password] -h nodeIP netstats
Когда узел будет запущен и индексы будут созданы, эта команда должна вернуть значение MODE: Normal.
nodetool [-u username -pw password] -h nodeIP statusthrift
Должно быть указано, что сервер Thrift работает. Это позволяет Cassandra принимать новые запросы клиентов.
nodetool [-u username -pw password] -h nodeIP statusbinary
Должно быть указано, что нативный транспорт (или двоичный протокол) запущен.
nodetool [-u username -pw password] -h nodeIP describecluster
Новые узлы должны использовать ту же версию схемы, что и старые.
Дополнительную информацию об использовании nodetool можно найти в документации по nodetool.