Вывод из эксплуатации дата-центра

Иногда вам может потребоваться вывести центр обработки данных из эксплуатации. Например, если вы обновляете свою операционную систему , вам необходимо установить новую операционную систему в новом центре обработки данных, а затем вывести из эксплуатации старый центр обработки данных. В следующих разделах представлен пример вывода из эксплуатации центра обработки данных, в котором имеются два центра обработки данных, dc-1 и dc-2, в кластерной установке из 12 узлов :

  • dc-1 — дата-центр, который будет выведен из эксплуатации.
  • РЦ-2 — второй дата-центр, который используется в процедуре вывода из эксплуатации.

Если вы обновляете свою операционную систему, dc-2 может быть центром обработки данных, в котором вы установили новую версию операционной системы (ОС). Однако для вывода центра обработки данных из эксплуатации не требуется установка новой ОС.

Соображения перед выводом центра обработки данных из эксплуатации

При выводе центра обработки данных из эксплуатации следует учитывать следующие соображения:

  • Блокируйте весь трафик среды выполнения и управления в выводимом из эксплуатации центре обработки данных и перенаправляйте его в другие центры обработки данных.
  • После вывода из эксплуатации центра обработки данных емкость вашего кластера Apigee уменьшится. Чтобы компенсировать это, рассмотрите возможность увеличения мощности оставшихся центров обработки данных или добавления центров обработки данных после вывода из эксплуатации.
  • В процессе вывода из эксплуатации существует вероятность потери данных аналитики, в зависимости от того, какие компоненты аналитики установлены в выводящемся из эксплуатации центре обработки данных. Более подробную информацию можно найти в разделе Добавление или удаление узлов Qpid .
  • Прежде чем вывести центр обработки данных из эксплуатации, вы должны понять, как настраиваются все компоненты во всех центрах обработки данных, особенно серверы OpenLDAP, ZooKeeper, Cassandra и Postgres. Вам также следует сделать резервные копии всех компонентов и их конфигураций.

Прежде чем начать

  • Сервер управления: Все этапы вывода из эксплуатации сильно зависят от Сервера управления. Если у вас доступен только один сервер управления, мы рекомендуем вам установить новый компонент сервера управления в центре обработки данных, отличном от dc-1, перед выводом из эксплуатации сервера управления на dc-1 и убедиться, что один из серверов управления всегда доступен. .
  • Маршрутизатор: перед выводом маршрутизатора из эксплуатации отключите доступность маршрутизаторов, заблокировав порт 15999. Убедитесь, что трафик во время выполнения не направляется на выводимые из эксплуатации маршрутизаторы.
  • Cassandra и ZooKeeper: В разделах ниже описывается, как вывести из эксплуатации dc-1 в конфигурации с двумя центрами обработки данных. Если у вас более двух центров обработки данных, обязательно удалите все ссылки на выводимый из эксплуатации узел (в данном случае dc-1) из всех файлов автоматической конфигурации во всех оставшихся центрах обработки данных. Для узлов Cassandra, которые должны быть выведены из эксплуатации, удалите эти хосты из CASS_HOSTS . Остальные узлы Cassandra должны оставаться в исходном порядке CASS_HOSTS .

  • Postgres: Если вы выводите из эксплуатации главный сервер Postgres, обязательно продвиньте любой из доступных резервных узлов в качестве нового главного сервера Postgres. Пока сервер QPID сохраняет буфер в очереди, если мастер Postgres недоступен в течение длительного времени, вы рискуете потерять данные аналитики.

Предварительные условия

  • Перед выводом из эксплуатации любого компонента мы рекомендуем выполнить полное резервное копирование всех узлов. Используйте процедуру для вашей текущей версии Edge для выполнения резервного копирования. Дополнительную информацию о резервном копировании см. в разделе Резервное копирование и восстановление .

    Примечание. Если у вас есть несколько узлов Cassandra или ZooKeeper, создавайте их резервные копии по одному, поскольку процесс резервного копирования временно отключает ZooKeeper.

  • Перед выводом из эксплуатации убедитесь, что Edge запущен и работает, с помощью команды:
    /opt/apigee/apigee-service/bin/apigee-all status
  • Убедитесь, что в центр обработки данных, который вы выводите из эксплуатации, в настоящее время не поступает трафик среды выполнения.

Порядок вывода из эксплуатации компонентов

Если вы устанавливаете Edge для частного облака на нескольких узлах, вам следует вывести из эксплуатации компоненты Edge на этих узлах в следующем порядке:

  1. Пограничный интерфейс (edge-ui)
  2. Сервер управления (пограничный сервер управления)
  3. OpenLDAP (apigee-openldap)
  4. Маршрутизатор (edge-маршрутизатор)
  5. Процессор сообщений (edge-message-processor)
  6. Сервер Qpid и Qpidd (edge-qpid-server и apigee-qpidd)
  7. База данных Postgres и PostgreSQL (edge-postgres-server и apigee-postgresql)
  8. ZooKeeper (обезьяны-зоопарковщики)
  9. Кассандра (apigee-cassandra)

В следующих разделах объясняется, как вывести из эксплуатации каждый компонент.

Пограничный интерфейс

Чтобы остановить и удалить компонент Edge UI dc-1, введите следующие команды:

/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall

Сервер управления

Чтобы вывести из эксплуатации Сервер управления на DC-1, выполните следующие действия:

  1. Остановите сервер управления на DC-1:
    apigee-service edge-management-server stop
  2. Найдите UUID сервера управления, зарегистрированного в dc-1:
    curl -u <AdminEmailID>:'<AdminPassword>' \
    -X GET “http://{MS_IP}:8080/v1/servers?pod=central&region=dc-1&type=management-server”
  3. Отменить регистрацию типа сервера:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=management-server&region=dc-1&pod=central&uuid=UUID&action=remove"
  4. Удалить сервер. Примечание. Если на этом сервере также установлены другие компоненты, сначала отмените регистрацию их всех, прежде чем удалять UUID.
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
  5. Удалите компонент Management Server на DC-1:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall

Открыть LDAP

В этом разделе объясняется, как вывести OpenLDAP из эксплуатации на dc-1.

Примечание. Если у вас более двух центров обработки данных, см. раздел «Настройки с более чем двумя центрами обработки данных» ниже.

Чтобы вывести OpenLDAP из эксплуатации на dc-1, выполните следующие действия:

  1. Создайте резервную копию узла OpenLDAP dc-1, выполнив действия, описанные в разделе «Как выполнить резервное копирование» .
  2. Прервите репликацию данных между двумя центрами обработки данных (DC-1 и DC-2), выполнив следующие шаги в обоих центрах обработки данных.

    1. Проверьте текущее состояние:
      ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

      Вывод должен быть похож на следующий:

      olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
    2. Создайте break_repl.ldif , содержащий следующие команды:
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcSyncRepl
      
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcMirrorMode
    3. Запустите команду ldapmodify :
      ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif

      Вывод должен быть похож на следующий:

      modifying entry "olcDatabase={2}bdb,cn=config"
      modifying entry "olcDatabase={2}bdb,cn=config"
  3. Вы можете убедиться, что dc-2 больше не реплицируется на dc-1, создав запись в LDAP dc-2 и убедившись, что она не отображается в LDAP dc-1.

    При желании вы можете выполнить следующие шаги: создать пользователя только для чтения на узле OpenLDAP dc-2, а затем проверить, реплицируется ли этот пользователь или нет. Впоследствии пользователь удаляется.

    1. Создайте файл readonly-user.ldif в dc-2 со следующим содержимым:
      dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      cn: readonly-user
      sn: readonly-user
      userPassword: {testPassword}
    2. Добавьте пользователя с помощью команды ldapadd в dc-2:
      ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif

      Результат будет похож на:

      adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
    3. Найдите пользователя в DC-1, чтобы убедиться, что он не реплицирован. Если пользователь отсутствует в dc-1, вы можете быть уверены, что оба LDAP больше не реплицируются:
      ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL

      Вывод должен быть похож на следующий:

      No such object (32)
      Matched DN: ou=users,ou=global,dc=apigee,dc=com
    4. Удалите добавленного ранее пользователя только для чтения:
      ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
  4. Остановите OpenLDAP в dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
  5. Удалите компонент OpenLDAP на dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall

Маршрутизатор

В этом разделе объясняется, как вывести маршрутизатор из эксплуатации. Дополнительные сведения об удалении маршрутизатора см. в разделе Удаление сервера .

Следующие шаги выводят маршрутизатор из эксплуатации из dc-1. Если в dc-1 настроено несколько узлов маршрутизатора, выполните действия на всех узлах маршрутизатора по одному.

Примечание. Здесь предполагается, что порт 15999 проверки работоспособности маршрутизатора настроен в балансировщике нагрузки и блокировка порта 15999 сделает маршрутизатор недоступным. Вам может потребоваться root-доступ, чтобы заблокировать порт.

Чтобы вывести маршрутизатор из эксплуатации, выполните следующие действия:

  1. Отключите доступность маршрутизаторов, заблокировав порт 15999, порт проверки работоспособности. Убедитесь, что трафик среды выполнения заблокирован в этом центре обработки данных:

    iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
  2. Убедитесь, что маршрутизатор доступен:

    curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable

    Вывод должен быть похож на следующий:

    About to connect() to 10.126.0.160 port 15999 (#0)
    Trying 10.126.0.160...
    Connection refused
    Failed connect to 10.126.0.160:15999; Connection refused
    Closing connection 0
    curl: (7) Failed connect to 10.126.0.160:15999; Connection refused
  3. Получите UUID маршрутизатора, как описано в разделе «Получение UUID» .
  4. Остановите маршрутизатор:
    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  5. Перечислите доступные модули шлюзов в организации с помощью следующей команды:
    curl -u  <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"

    См. раздел «О модулях» .

  6. Отмените регистрацию типа сервера:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=router&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"
  7. Удалить сервер:
    curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Удалите edge-router :
    /opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
    См. Удаление сервера .
  9. Очистите правила iptables , чтобы включить заблокированный порт 15999:
    iptables -F

Процессор сообщений

В этом разделе описывается, как вывести процессор сообщений из эксплуатации из DC-1. Дополнительные сведения об удалении процессора сообщений см. в разделе Удаление сервера .

Поскольку мы предполагаем, что dc-1 имеет кластерную установку из 12 узлов , в dc-1 настроены два узла процессора сообщений. Выполните следующие команды на обоих узлах.

  1. Получите UUID процессоров сообщений, как описано в разделе «Получение UUID» .
  2. Остановите процессор сообщений:
    apigee-service edge-message-processor stop
  3. Отмените регистрацию типа сервера:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers  \
    -d "type=message-processor&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"/pre>
  4. Disassociate an environment from the Message Processor.

    Note: You need to remove the bindings on each org/env that associates the Message Processor UUID.

    curl -H "Content-Type:application/x-www-form-urlencoded" -u <AdminEmailID>:''  \
    -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \
    -d "action=remove&uuid=UUID"
  5. Отмените регистрацию типа сервера:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=message-processor&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"
  6. Удалите процессор сообщений:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
  7. Отмените регистрацию сервера:
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID

Сервер Qpid и Qpidd

В этом разделе объясняется, как вывести из эксплуатации серверы Qpid ( edge-qpid-server ) и Qpidd ( apigee-qpidd ). В dc-1 настроено два узла Qpid, поэтому для обоих узлов необходимо выполнить следующие действия:

  1. Получите UUID для Qpidd, как описано в разделе «Получение UUID» .
  2. Остановите edge-qpid-server и apigee-qpidd :
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  3. Получите список аналитики и групп потребителей:
    curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
  4. Удалите Qpid из группы потребителей:
    curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json"  -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
  5. Удалите Qpid из группы аналитики:
    curl -v -u <AdminEmailID>:'<AdminPassword>' \
    -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
  6. Отмените регистрацию сервера Qpid в установке Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=qpid-server&region=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
  7. Удалите сервер Qpid из установки Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Перезапустите все компоненты Edge-qpid-server на всех узлах, чтобы убедиться, что изменения учтены этими компонентами:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
  9. Удалите Edge-qpid-server и apigee-qpidd:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall

Постгрес и Постгреск

Центр обработки данных, который вы выводите из эксплуатации, может иметь главный или резервный сервер Postgres. В следующих разделах объясняется, как их вывести из эксплуатации:

Вывод из эксплуатации мастера Postgres

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

Чтобы вывести из эксплуатации мастер Postgres:

  1. Создайте резервную копию главного узла Postgres dc-1, следуя инструкциям по следующим ссылкам:
  2. Получите UUID серверов Postgres, как описано в разделе «Получение UUID» .
  3. На dc-1 остановите edge-postgres-server и apigee-postgresql на текущем мастере:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  4. На резервном узле DC-2 введите следующую команду, чтобы сделать его главным узлом:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>

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

    Чтобы добавить записи хоста в новый мастер Postgres: выполните действия, описанные в соответствующем разделе ниже:

    Если остался только один резервный узел

    Например, предположим, что перед выводом из эксплуатации было настроено три узла Postgres. Вы вывели из эксплуатации существующий главный узел и повысили статус одного из оставшихся резервных узлов Postgres до главного. Настройте оставшийся резервный узел, выполнив следующие действия:

    1. На новом ведущем устройстве отредактируйте файл конфигурации, чтобы установить:
      PG_MASTER=IP_or_DNS_of_new_PG_MASTER
      PG_STANDBY=IP_or_DNS_of_PG_STANDBY
    2. Включите репликацию на новом мастере:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle

    Если осталось более одного резервного узла

    1. Добавьте следующую конфигурацию в /opt/apigee/customer/application/postgresql.properties :
      conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
    2. Убедитесь, что файл /opt/apigee/customer/application/postgresql.properties принадлежит пользователю apigee:
            chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
    3. Перезапустите apigee-postgresql :
      apigee-service apigee-postgresql restart
    4. Чтобы обновить настройки репликации на резервном узле:

      1. Измените файл конфигурации /opt/silent.conf и обновите поле PG_MASTER , указав IP-адрес нового мастера Postgres.
      2. Удалите все старые данные Postgres с помощью следующей команды:
        rm -rf /opt/apigee/data/apigee-postgresql/
      3. Настройте репликацию на резервном узле:
        /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    5. Убедитесь, что мастер Postgres настроен правильно, введя следующую команду в dc-2:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
    6. Удалите и добавьте серверы Postgresql из группы аналитики и группы потребителей.
      1. Удалите старый сервер Postgres из группы аналитики, следуя инструкциям в разделе Удаление сервера Postgres из группы аналитики .
      2. Добавьте новый сервер Postgres в группу аналитики, следуя инструкциям в разделе Добавление существующего сервера Postgres в группу аналитики .
    7. Отмените регистрацию старого сервера postgres с dc-1:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    8. Удалите старый сервер postgres из dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    9. Старый мастер Postgres теперь можно безопасно вывести из эксплуатации. Удалите edge-postgres-server и apigee-postgresql :
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    Вывод из эксплуатации резервного Postgres

    Примечание. В документации для кластерной установки с 12 узлами узел postgresql dc-1 указан как главный, но для удобства в этом разделе предполагается, что узел postgresql dc-1 является резервным, а узел postgresql dc-2 — главным.

    Чтобы вывести из эксплуатации резервный Postgres, выполните следующие действия:

    1. Получите UUID серверов Postgres, следуя инструкциям в разделе «Получение UUID» .
    2. Остановите apigee-postgresql на текущем резервном узле в dc-1:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
    3. Удалите и добавьте серверы Postgresql из группы аналитики и группы потребителей.
      1. Удалите старый сервер Postgres из группы аналитики, следуя инструкциям в разделе Удаление сервера Postgres из группы аналитики .
      2. Добавьте новый сервер Postgres в группу аналитики, следуя инструкциям в разделе Добавление существующего сервера Postgres в группу аналитики .
    4. Отмените регистрацию старого сервера postgres с dc-1:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    5. Удалите старый сервер postgres из dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    6. Старый мастер Postgres теперь можно безопасно вывести из эксплуатации. Удалите edge-postgres-server и apigee-postgresql :
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    Zookeeper и Кассандра

    В этом разделе объясняется, как вывести из эксплуатации серверы ZooKeeper и Cassandra в конфигурации с двумя центрами обработки данных.

    Если у вас более двух центров обработки данных, обязательно удалите все ссылки на выводимый из эксплуатации узел (в данном случае dc-1) из всех файлов автоматической конфигурации во всех оставшихся центрах обработки данных. Для узлов Cassandra, которые должны быть выведены из эксплуатации, удалите эти хосты из CASS_HOSTS . Остальные узлы Cassandra должны оставаться в исходном порядке CASS_HOSTS .

    Примечание о ZooKeeper: вы должны поддерживать кворум узлов голосования при изменении свойства ZK_HOST в файле конфигурации, чтобы гарантировать, что ансамбль ZooKeeper останется работоспособным. В вашей конфигурации должно быть нечетное количество узлов избирателей. Дополнительные сведения см. в разделе Задачи обслуживания Apache ZooKeeper .

    Чтобы вывести из эксплуатации серверы ZooKeeper и Cassandra:

    1. Создайте резервную копию узлов Cassandra и ZooKeeper dc-1, следуя инструкциям по следующим ссылкам:
    2. Перечислите UUID серверов ZooKeeper и Cassandra в центре обработки данных, где узлы Cassandra собираются вывести из эксплуатации.

      apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
    3. Отмените регистрацию типа сервера:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore&region=dc-1&pod=central&uuid=UUID&action=remove"
    4. Отмените регистрацию сервера:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
    5. Обновите файл конфигурации, указав IP-адреса выведенных из эксплуатации узлов, удаленных из ZK_HOSTS и CASS_HOSTS .

      Пример: Предположим, у вас есть IP-адреса $IP1 $IP2 $IP3 в DC-1 и $IP4 $IP5 $IP6 в DC-2, и вы выводите DC-1 из эксплуатации. Затем вам следует удалить IP-адреса $IP1 $IP2 $IP3 из файлов конфигурации.

      • Существующие записи файла конфигурации:
        ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6"
        CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
      • Новые записи в файле конфигурации:
        ZK_HOSTS="$IP4 $IP5 $IP6"
        CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
    6. Обновите файл автоматической конфигурации (измененный на шаге e), указав IP-адреса удаленных выведенных из эксплуатации узлов и запустите профиль сервера управления на всех узлах, на которых размещены серверы управления:
      /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
    7. Обновите файл конфигурации, указав IP-адреса удаленных выведенных из эксплуатации узлов и запустите профиль MP/RMP на всех узлах маршрутизатора и процессора сообщений:
      • Если пограничный маршрутизатор и процессор сообщений настроены на одном узле, введите:
        /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
      • Если пограничный маршрутизатор и процессор сообщений настроены на отдельных узлах, введите следующее:

        Для маршрутизатора:

        /opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file

        Для процессора сообщений:

        /opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
    8. Перенастройте все узлы Qpid, удалив IP-адреса выведенных из эксплуатации узлов из файла ответов:
      /opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
    9. Перенастройте все узлы Postgres, удалив IP-адреса выведенных из эксплуатации узлов из файла ответов:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
    10. Измените пространство ключей system_auth . Если у вас включена аутентификация Cassandra на существующем узле Cassandra, обновите коэффициент репликации пространства ключей system_auth , выполнив следующую команду:
      ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};

      Эта команда устанавливает коэффициент репликации равным '3' , что указывает на три узла Cassandra в кластере. При необходимости измените это значение.

      После выполнения этого шага топология Cassandra не должна иметь dc-1 ни в одном из пространств ключей.

    11. Выведите из эксплуатации узлы Кассандра на DC-1 один за другим.

      Чтобы вывести из эксплуатации узлы Cassandra, введите следующую команду:

      /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission
    12. Проверьте подключение узлов Cassandra от dc-1 с помощью одной из следующих команд:
      /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'

      Или команда вторичной проверки, выполняемая на выведенном из эксплуатации узле:

      /opt/apigee/apigee-cassandra/bin/nodetool netstats

      Приведенная выше команда должна вернуть:

      Mode: DECOMMISSIONED
    13. Запустите профиль DS для всех узлов Cassandra и ZooKeeper в dc-2:
      /opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
    14. Остановите apigee-cassandra и apigee-zookeeper в dc-1:
      apigee-service apigee-cassandra stop
      apigee-service apigee-zookeeper stop
    15. Удалите apigee-cassandra и apigee-zookeeper в dc-1:
      apigee-service apigee-cassandra uninstall
      apigee-service apigee-zookeeper uninstall

    Удалить привязки из dc-1

    Чтобы удалить привязки из dc-1, выполните следующие действия:

    1. Удалите привязки из dc-1.
      1. Перечислите все доступные модули в организации:
        curl -v -u  <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
      2. Чтобы проверить, удалены ли все привязки, получите UUID серверов, связанных с модулями:
        curl -v -u  <AdminEmailID>:<AdminPassword> \
        -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"

        Если эта команда не возвращает ни одного UUID, значит, предыдущие шаги удалили все привязки, и вы можете пропустить следующий шаг. В противном случае выполните следующий шаг.

      3. Удалите все привязки сервера для UUID, полученных на предыдущем шаге:
        curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
      4. Отсоедините организацию от модуля:
        curl -v -u  <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove&region=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
    2. Удалите модули:
      curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
    3. Удалить регион.
      curl -v -u <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/regions/dc-1" -X DELETE

    Примечание. Если вы пропустите один из шагов по удалению серверов, приведенный выше шаг вернет сообщение об ошибке о том, что определенный сервер в модуле все еще существует. Поэтому удалите их, выполнив приведенные ниже действия по устранению неполадок, одновременно настраивая типы в команде curl .

    На этом этапе вы завершили вывод из эксплуатации DC-1.

    Приложение

    Поиск неисправностей

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

    1. Получите UUID, используя следующую команду:
      apigee-adminapi.sh servers list -r dc-1 -p POD -t  --admin <AdminEmailID> --pwd  '<AdminPassword>’ --host localhost
    2. Отменить регистрацию типа сервера:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
    3. Удалите серверы один за другим:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID

    Валидация

    Вы можете подтвердить вывод из эксплуатации, используя следующие команды.

    Сервер управления

    Выполните следующие команды с серверов управления во всех регионах.

    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central&region=dc-1
    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway&region=dc-1
    curl -v -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/servers?pod=analytics&region=dc-1

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

    curl -v http://MS_IP:8080/v1/servers/self

    Проверьте группу аналитики.

    curl  -v  -u  <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080}/v1/o/ORG/e/ENV/provisioning/axstatus"
    curl -v  -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/analytics/groups/ax

    Узлы Кассандра/ZooKeeper

    На всех узлах Cassandra введите:

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift

    Это вернет статус running или not running для этого конкретного узла.

    На одном узле введите:

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> status

    Приведенные выше команды вернут информацию об активном центре обработки данных.

    На узлах ZooKeeper сначала введите:

    echo ruok | nc <host> 2181

    Эта команда вернет imok .

    Затем введите:

    echo stat | nc <host> 2181 | grep Mode

    Значение Mode , возвращаемое приведенной выше командой, будет одним из следующих: observer , leader или follower .

    В одном узле ZooKeeper:

    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt

    На главном узле Postgres выполните:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Убедитесь, что в ответе указано, что узел является главным.

    На резервном узле:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

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

    Войдите в базу данных PostgreSQL с помощью команды

    psql -h localhost -d apigee -U postgres

    При появлении запроса введите пароль пользователя «postgres» как 'postgres' . Выберите max(client_received_start_timestamp) из аналитики.

    ”$org.$env.fact” limit 1 ;

    Журналы

    Проверьте журналы компонентов, чтобы убедиться в отсутствии ошибок.