Перемещение компонентов с одного компьютера на другой может привести к несоответствию конфигурации , если вы не синхронизируете IP-адреса в файлах конфигурации компонентов.
В этом разделе описывается, как диагностировать и устранять несоответствия конфигурации.
IP-адреса и имена хостов
В файлах конфигурации компонентов вам следует использовать IP-адреса, а не имена хостов.
Хотя некоторые файлы конфигурации компонентов позволяют использовать имена хостов, а не IP-адреса, использование имен хостов может затруднить устранение неполадок. Например, имена хостов могут быть источником проблем, связанных с подключением DNS-сервера, сбоями поиска и синхронизацией.
В результате Apigee настоятельно рекомендует использовать IP-адреса для всех конфигураций компонентов. В некоторых случаях, например, в случае с Cassandra, вы должны использовать IP-адреса и не можете использовать имена хостов. В большинстве примеров в документации для настройки компонентов используются IP-адреса.
Что касается имен хостов и IP-адресов, учтите последствия следующих сценариев при перемещении серверов Apigee:
Сценарий | Влияние на перемещение серверов |
---|---|
Изменение IP-адреса | Обновите все связанные файлы, которые ссылаются на исходный IP-адрес. |
Изменение имени хоста без изменения IP-адреса | Никакого влияния |
Изменение имени хоста при изменении IP-адреса | То же, что и изменение IP-адреса. |
Изменение IP-адреса узла Cassandra
Чтобы изменить IP-адрес узла Cassandra, выполните следующие действия:
Для конфигураций с одним узлом Cassandra
- Отредактируйте
/opt/apigee/customer/application/cassandra.properties
в изменяемой системе. Если файл не существует, создайте его. - Измените следующие параметры:
- Установите параметры
conf_cassandra_seeds
иconf_cassandra_listen_address
чтобы указать новый IP-адрес системы. - Измените
conf_cassandra_rpc_address
, чтобы использовать либо новый IP-адрес, либо 0.0.0.0 (что позволяет Cassandra Thrift прослушивать все интерфейсы).
- Установите параметры
- Откройте
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
в редакторе. Вы должны увидеть старый IP-адрес и настройки по умолчанию в форме:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
Сохраните эту информацию.
- Отредактируйте
/opt/apigee/customer/application/cassandra.properties
, чтобы изменить указанный старый IP-адрес на новый IP-адрес:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
Убедитесь, что вы вставили «\n» после IP-адреса и указали те же настройки по умолчанию, которые вы нашли выше в шаге 3.
- Перезапустите Кассандру:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- При необходимости также отремонтируйте ZooKeeper (см. Изменение IP-адреса узла ZooKeeper ). В противном случае перезапустите каждый компонент платформы Apigee, начиная с сервера управления.
Для конфигураций с несколькими узлами Cassandra (кольцо)
- Если изменяемый узел является начальным узлом, отредактируйте файл
/opt/apigee/customer/application/cassandra.properties
в каждой системе в кольце и измените параметрconf_cassandra_seeds
, включив в него новый IP-адрес измененной системы. Если файл cassandra.properties не существует, создайте его. - Отредактируйте
/opt/apigee/customer/application/cassandra.properties
в изменяемой системе и измените следующие параметры:- Установите
conf_cassandra_listen_address
чтобы использовать новый IP-адрес. - Установите
conf_cassandra_rpc_address
для использования либо нового IP-адреса, либо «0.0.0.0» (что позволяет Cassandra Thrift прослушивать все интерфейсы).
- Установите
- Откройте
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
в редакторе. Вы должны увидеть все IP-адреса Cassandra и настройки по умолчанию в форме:192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
Сохраните эту информацию.
- Отредактируйте
/opt/apigee/customer/application/cassandra.properties
, чтобы изменить указанный старый IP-адрес на новый IP-адрес:conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
Обязательно вставьте «\n» после каждого IP-адреса и используйте те же настройки по умолчанию, которые вы записали выше на шаге 3.
- Перезапустите Cassandra в модифицированной системе.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Для всех остальных узлов повторите изменения, внесенные в шагах 3 и 4, чтобы сообщить им о положении этого узла в кольце Кассандры. Кроме того, измените IP-адрес начального узла, как описано в шаге 1.
- Перезапустите каждый оставшийся узел Cassandra один за другим.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Запустите команду
nodetool ring
на измененном узле, чтобы убедиться, что кольцо завершено. Утилиту можно найти по адресу/opt/apigee/apigee-cassandra/bin
.nodetool [-u username -pw password] -h localhost ring
- Запустите
nodetool repair
на измененном узле. Обратите внимание, что этот процесс может занять некоторое время, поэтому настоятельно не рекомендуется делать это в часы пик трафика API.nodetool [-u username -pw password] -h localhost repair -pr
- При необходимости восстановите ZooKeeper (см. Изменение IP-адреса узла ZooKeeper ), затем перезапустите каждый компонент платформы Apigee, начиная с Сервера управления.
Обновление регистрации хранилища данных
- Найдите UUID регистраций хранилища данных с указанием старого IP-адреса, используя приведенные ниже команды. Обратите внимание на параметры «type» и «UUID»:
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
Где DC — имя центра обработки данных. При установке в одном центре обработки данных обычно используется значение «dc-1».
- Зарегистрируйте новые IP-адреса, используя одну из команд ниже. Необходимая команда будет зависеть от типа измененного узла.
- Для type="application-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Для типа="kms-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- Для type="reportcrud-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Для type="application-datastore":
- Удалите старые регистрации UUID системы, в которой был изменен IP-адрес. Для каждой из этих проблем UUID:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
Изменение IP-адреса узла ZooKeeper
Выполните следующие действия, чтобы изменить IP-адрес узла ZooKeeper:
Измените IP-адрес и перезапустите ансамбль ZooKeeper (только для конфигураций ансамбля с несколькими узлами).
- Откройте
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
в редакторе. Вы должны увидеть все IP-адреса ZooKeeper и настройки по умолчанию в форме:server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
Сохраните эту информацию.
- На каждом узле ZooKeeper отредактируйте файл
/opt/apigee/customer/application/zookeeper.properties
, чтобы установить для свойстваconf_zoo_quorum
правильные IP-адреса. Если файл не существует, создайте его.conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
Убедитесь, что вы вставили «\n» после каждого IP-адреса и что записи расположены в одном и том же порядке на каждом узле.
- Найдите лидера ансамбля ZooKeeper с помощью следующей команды (замените node на IP-адрес компьютера Zookeeper):
echo srvr | nc node 2181
В строке режима вывода должно быть написано «лидер».
- Перезапускайте ZooKeeper один за другим, начиная с лидера и заканчивая узлом, на котором был изменен IP-адрес. Если более одного узла Zookeeper изменили IP-адреса, возможно, потребуется перезапустить все узлы.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- Используйте команду
echo
, описанную выше, для проверки каждого узла ZooKeeper.
Сообщите узлам Apigee об измененной конфигурации.
- На каждом узле маршрутизатора отредактируйте файл
/opt/apigee/customer/application/router.properties
следующим образом. Если файл не существует, создайте его.- Измените параметр
conf_zookeeper_connection.string
, чтобы включить новый IP-адрес. - Измените параметр
conf_zookeeper_zk1.host
, чтобы включить новый IP-адрес.
- Измените параметр
- На каждом узле процессора сообщений отредактируйте файл
/opt/apigee/customer/application/message-processor.properties
следующим образом. Если файл не существует, создайте его.- Измените параметр
conf_zookeeper_connection.string
, чтобы включить новый IP-адрес. - Измените параметр
conf_zookeeper_zk1.host
, чтобы включить новый IP-адрес.
- Измените параметр
- На узле Сервер управления отредактируйте файл
/opt/apigee/customer/application/management-server.properties
следующим образом. Если файл не существует, создайте его.- Измените параметр
conf_zookeeper_connection.string
, чтобы включить новый IP-адрес. - Измените параметр
conf_zookeeper_zk1.host
, чтобы включить новый IP-адрес.
- Измените параметр
- Перезапустите все компоненты платформы Apigee, выполнив следующую команду на каждом узле:
/opt/apigee/apigee-service/bin/apigee-all restart
Изменение IP-адреса LDAP-сервера (OpenLDAP)
Чтобы изменить IP-адрес узла OpenLDAP, выполните следующие действия:
- На узле Сервер управления отредактируйте файл
/opt/apigee/customer/application/management-server.properties
. Если файл не существует, создайте его. - В файле
management-server.properties
установите для параметраconf_security_ldap.server.host
новый IP-адрес. - Перезапустите сервер управления:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Изменение IP-адреса других типов узлов Apigee
Чтобы изменить IP-адрес любого из этих типов узлов (маршрутизатор, процессор сообщений, сервер Postgres (не postgresql) и сервер Qpid (не qpidd):
- Используйте следующую команду
curl
, чтобы зарегистрировать новый внутренний и внешний IP-адрес:curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip
Где uuid — это UUID узла.
Сведения о том, как получить UUID компонента, см. в разделе Получение UUID .