Wycofanie Centrum danych

Może się zdarzyć, że konieczne będzie wyłączenie centrum danych. Przykład: jeśli uaktualniasz system operacyjny, , by zainstalować nowy system operacyjny w nowym centrum danych, a następnie wyłączyć stare centrum. W sekcjach poniżej znajdziesz przykład wyłączenia centrum danych, w którym są dwa centra danych – dc-1 i dc-2 – 12 węzłów instalacja w klastrze:

  • dc-1 to centrum danych, które ma zostać wycofane.
  • dc-2 to drugie centrum danych, które jest używane w procesie wyłączenia.

Jeśli przechodzisz na wyższą wersję systemu operacyjnego, dc-2 może być centrum danych, w którym Nowa wersja systemu operacyjnego. Nie musisz jednak instalować nowego systemu operacyjnego do wyłączenia centrum danych.

Uwagi do rozważenia przed wyłączeniem centrum danych

Przy wycofywaniu centrum danych pamiętaj o tych uwagach:

  • Blokuj cały ruch związany ze środowiskiem wykonawczym i zarządzaniem do centrum danych, który zostanie wycofany z użytku i przekieruj ich do innych centrów danych.
  • Po wyłączeniu centrum danych rozmiar klastra Apigee zmniejszy się. Aby nadrobić zaległości, zastanów się nad zwiększeniem mocy obliczeniowej w pozostałych centrach danych lub do centrów danych.
  • W trakcie procesu wycofania możesz utracić dane analityczne w zależności od tego, które komponenty analityki są zainstalowane w wycofywanym centrum danych. Więcej więcej informacji znajdziesz w sekcji Dodawanie lub usuwanie identyfikatora Qpid węzłów.
  • Przed zamknięciem centrum danych musisz dowiedzieć się, jak wszystkie jego elementy są konfigurowane dla wszystkich centrów danych, zwłaszcza OpenLDAP, ZooKeeper, Cassandra, i Postgres. Musisz też wykonać kopie zapasowe wszystkich komponentów i ich konfiguracji.

Zanim rozpoczniesz

  • Serwer zarządzania: Wszystkie kroki wycofania w dużym stopniu zależą od serwera zarządzania. Jeśli masz tylko jedną Dostępny jest serwer zarządzania, zalecamy zainstalowanie nowego Komponent serwera zarządzania w centrum danych innym niż dc-1 przed zamknięciem zarządzania Serwer dc-1 i upewnij się, że jeden z serwerów zarządzania jest zawsze dostępny.
  • Router: Przed zamknięciem routera wyłącz osiągalność routerów blokując port 15999. Upewnij się, że nie ma środowiska wykonawczego ruch jest kierowany na routery wycofywane z użytku.
  • Cassandra i ZooKeeper: W poniższych sekcjach opisano, jak wyłączyć dc-1 w konfiguracji dwóch centrów danych. Jeśli masz więcej niż 2 pamiętaj, aby usunąć wszystkie odwołania do wycofanego węzła (w tym przypadku dc-1) ze wszystkich plików konfiguracji dyskretnych we wszystkich pozostałych centrach danych. Jeśli węzły Cassandra mają zostać wycofane, usuń te hosty z CASS_HOSTS. Pozostałe węzły Cassandra powinny pozostać w pierwotnej kolejności: CASS_HOSTS.

  • Postgres: po wyłączeniu instancji głównej Postgres pamiętaj, aby awansować każdą z instancji dostępnych węzłów gotowości jako nowego głównego węzła postgres. Chociaż serwer QPID przechowuje bufor w kolejki, jeśli instancja główna Postgres będzie niedostępna przez dłuższy czas, ryzykujesz utratę danych analitycznych.

Wymagania wstępne

  • Przed wycofaniem któregokolwiek komponentu zalecamy utworzenie pełnej kopii zapasowej wszystkich komponentów węzłów. Wykonaj procedurę dla bieżącej wersji Edge, aby wykonać kopii zapasowej. Więcej informacji o kopii zapasowej znajdziesz w artykule Tworzenie i przywracanie kopii zapasowej

    Uwaga: jeśli masz wiele węzłów Cassandra lub ZooKeeper, twórz ich kopie zapasowe pojedynczo. ponieważ proces tworzenia kopii zapasowej tymczasowo wyłącza ZooKeeper.

  • Przed zamknięciem upewnij się, że przeglądarka Edge jest uruchomiona. Aby to zrobić, użyj polecenia:
    /opt/apigee/apigee-service/bin/apigee-all status
  • Sprawdź, czy do centrum danych, do którego się znajdujesz, nie przychodzi obecnie żaden ruch do jej wycofania.

Kolejność komponentów używanych do wyłączenia

Jeśli zainstalujesz Edge for Private Cloud w wielu węzłach, wyjdź z użytku Komponenty brzegowe w tych węzłach w tej kolejności:

  1. Edge UI (edge-ui)
  2. Serwer zarządzania (edge-management-server)
  3. OpenLDAP (apigee-openldap)
  4. Router (router brzegowy)
  5. Procesor wiadomości (edge-message-processor)
  6. Qpid Server i Qpidd (edge-qpid-server i apigee-qpidd)
  7. Baza danych Postgres i PostgreSQL (edge-postgres-server i apigee-postgresql)
  8. ZooKeeper (apigee-zookeeper)
  9. Cassandra (apigee-cassandra)

W sekcjach poniżej wyjaśniamy, jak wyłączyć poszczególne komponenty.

Interfejs Edge

Aby zatrzymać i odinstalować komponent interfejsu Edge dla dc-1, wpisz te polecenia:

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

Serwer zarządzania

Aby wyłączyć serwer zarządzania w dc-1, wykonaj te czynności:

  1. Zatrzymaj serwer zarządzania w dc-1:
    apigee-service edge-management-server stop
  2. Znajdź identyfikator UUID serwera zarządzania zarejestrowanego w dc-1:
    curl -u <AdminEmailID>:'<AdminPassword>' \
    -X GET “http://{MS_IP}:8080/v1/servers?pod=central&region=dc-1&type=management-server”
  3. Wyrejestruj typ serwera:
    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. Usuń serwer. Uwaga: jeśli na serwerze są też zainstalowane inne komponenty, wyrejestrować je wszystkie, zanim usuniesz identyfikator UUID.
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
  5. Odinstaluj komponent serwera zarządzania w dc-1:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall

Otwórz LDAP

W tej sekcji wyjaśniono, jak wyłączyć OpenLDAP w dc-1.

Uwaga: jeśli masz więcej niż 2 centra danych, zapoznaj się z artykułem Poniżej znajdziesz konfiguracje z więcej niż 2 centrami danych.

Aby wyłączyć OpenLDAP na dc-1, wykonaj te czynności:

  1. Utwórz kopię zapasową węzła OpenLDAP dc-1, wykonując czynności opisane w Jak utworzyć kopię zapasową
  2. Przerwij replikację danych między dwoma centrami danych, dc-1 i dc-2, wykonując poniższe kroki w obu centrach danych.

    1. Sprawdź obecny stan:
      ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

      Dane wyjściowe powinny być podobne do tych:

      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. Utwórz plik break_repl.ldif zawierający te polecenia:
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcSyncRepl
      
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcMirrorMode
    3. Uruchom polecenie ldapmodify:
      ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif

      Dane wyjściowe powinny być podobne do tych:

      modifying entry "olcDatabase={2}bdb,cn=config"
      modifying entry "olcDatabase={2}bdb,cn=config"

  3. Aby sprawdzić, czy dc-2 nie jest już replikowana w dc-1, utwórz wpis w LDAP dc-2 i upewnienie się, że nie pojawi się w LDAP dc-1.

    Opcjonalnie możesz wykonać poniższe czynności, aby utworzyć w dc-2 użytkownika z dostępem tylko do odczytu. Węzeł OpenLDAP, a następnie sprawdź, czy użytkownik został zreplikowany. Następnie użytkownik zostaje Usunięto.

    1. Utwórz w dc-2 plik readonly-user.ldif z tą zawartością:
      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. Dodaj użytkownika za pomocą polecenia `ldapadd` w dc-2:
      ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif

      Dane wyjściowe będą podobne do tych:

      adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"

    3. Wyszukaj użytkownika w dc-1, aby upewnić się, że nie zostanie zreplikowany. Jeśli użytkownik nie występuje w dc-1, uzyskasz pewność, że oba LDAP nie będą już replikowane:
      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

      Dane wyjściowe powinny być podobne do tych:

      No such object (32)
      Matched DN: ou=users,ou=global,dc=apigee,dc=com
    4. Usuń dodanego wcześniej użytkownika z dostępem tylko do odczytu:
      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. Zatrzymaj OpenLDAP w dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
  5. Odinstaluj komponent OpenLDAP w dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall

Router

W tej sekcji wyjaśniono, jak wyłączyć router. Zobacz Aby dowiedzieć się więcej o usuwaniu routera, usuń serwer.

Wykonując poniższe kroki, wyłącz router dc-1. Jeśli w dc-1 jest skonfigurowanych kilka węzłów routera, wykonaj czynności we wszystkich węzłach routera pojedynczo

Uwaga: zakładamy, że w obciążeniu skonfigurowano port kontroli stanu 15999 routera w systemie równoważenia obciążenia. Ten port blokujący 15999 sprawi, że router będzie nieosiągalny. Możesz potrzebować dostępu na poziomie roota aby zablokować port.

Aby wyłączyć router, wykonaj te czynności:

  1. Wyłącz osiągalność routerów, blokując port 15999 (port kontroli stanu). Sprawdź, czy w tym centrum danych ruch w czasie działania jest zablokowany:

    iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
  2. Upewnij się, że router jest osiągalny:

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

    Dane wyjściowe powinny być podobne do tych:

    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. Uzyskaj UUID routera zgodnie z opisem w sekcji Uzyskaj identyfikatory UUID
  4. Zatrzymaj router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  5. Wyświetl listę podów bramy dostępnych w organizacji za pomocą tego polecenia:
    curl -u  <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"

    Zobacz Informacje o podach.

  6. Wyrejestruj typ serwera:
    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. Wyrejestruj serwer:
    curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Odinstaluj aplikację edge-router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
    Zobacz Usuń serwer.
  9. Wyczyść reguły iptables, aby włączyć zablokowany port 15999:
    iptables -F

procesor komunikatów

W tej sekcji opisano, jak wyłączyć procesor wiadomości w dc-1. Zobacz Usuń serwer, aby uzyskać więcej informacji o usuwaniu procesora wiadomości.

Ponieważ zakładamy, że dc-1 ma 12 węzłów instalacja klastrowa, w dc-1 są skonfigurowane 2 węzły procesora wiadomości. Wykonaj tych poleceń w obu węzłach.

  1. Uzyskiwanie identyfikatorów UUID procesorów wiadomości zgodnie z opisem w sekcji Uzyskaj identyfikatory UUID
  2. Zatrzymaj procesor wiadomości:
    apigee-service edge-message-processor stop
  3. Wyrejestruj typ serwera:
    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. Wyrejestruj typ serwera:
    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. Odinstaluj procesor wiadomości:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
  7. Wyrejestruj serwer:
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID

Serwer Qpid i Qpidd

W tej sekcji wyjaśniono, jak wyłączyć serwer Qpid (edge-qpid-server) i Qpidd (apigee-qpidd). W dc-1 są skonfigurowane 2 węzły Qpid, musisz więc wykonać poniższe czynności w obu z nich. węzłów:

  1. Uzyskiwanie identyfikatora UUID aplikacji Qpidd zgodnie z opisem w sekcji Pobieranie Identyfikatory UUID.
  2. Zatrzymaj edge-qpid-server i apigee-qpidd:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  3. Zobacz listę grup Analytics i grup konsumentów:
    curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
  4. Usuń Qpid z grupy klientów:
    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. Usuń Qpid z grupy analitycznej:
    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. Wyrejestruj serwer Qpid z instalacji 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. Usuń serwer Qpid z instalacji Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Ponownie uruchom wszystkie komponenty Edge-qpid-server we wszystkich węzłach, aby mieć pewność, że zmiana została zastosowana. przez te komponenty:
    $ /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. Odinstaluj Edge-qpid-server i apigee-qpidd:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall

Postgres i Postgresql

Centrum danych, które wycofujesz, może mieć instancję główną Postgres lub tryb gotowości Postgres. W sekcjach poniżej opisano, jak je wyłączyć:

Wycofuję instancję główną Postgres

Uwaga: po wyłączeniu instancji głównej Postgres pamiętaj, aby awansować każdą z instancji dostępnych węzłów gotowości jako nowego głównego węzła postgres. Kolejki QPID buforują dane, Jeśli główny serwer Postgres jest przez dłuższy czas niedostępny, ryzykujesz utratę danych analitycznych.

Aby wyłączyć instancję główną Postgres:

  1. Utwórz kopię zapasową węzła głównego dc-1 Postgres, wykonując instrukcje podane w tych linkach:
  2. Uzyskaj identyfikatory UUID serwerów Postgres zgodnie z opisem w sekcji Uzyskaj identyfikatory UUID
  3. Na dc-1 zatrzymaj: edge-postgres-server i apigee-postgresql w bieżącym wzorcu:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  4. W węźle gotowości dc-2 wpisz to polecenie, by ustawić go jako węzeł nadrzędny:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>

    Uwaga: jeśli masz więcej niż 1 tryb gotowości Postgres, musisz dodać wpisy hosta w nowego mastera i zaktualizuj ustawienie replikacji dla wszystkich dostępnych węzłów gotowości Postgres.

    Aby dodać wpisy hosta do nowego mastera Postgres: wykonaj czynności opisane w odpowiedniej sekcji poniżej:

    Jeśli pozostanie tylko 1 węzeł gotowości

    Załóżmy na przykład, że przed zamknięciem zostały skonfigurowane 3 węzły Postgres. Istniejący master został wyłączony i awansowano jeden z pozostałych stanów gotowości Postgres węzłów do masteringu. Aby skonfigurować pozostały węzeł gotowości, wykonaj te czynności:

    1. W nowym masterze edytuj konfigurację plik do ustawienia:
      PG_MASTER=IP_or_DNS_of_new_PG_MASTER
      PG_STANDBY=IP_or_DNS_of_PG_STANDBY
    2. Włącz replikację w nowym masterze:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle

    Jeśli pozostanie więcej niż 1 węzeł gotowości

    1. Dodaj tę konfigurację w: /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. Sprawdź, czy plik /opt/apigee/customer/application/postgresql.properties należy do użytkownik Apigee:
            chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
    3. Uruchom ponownie apigee-postgresql:
      apigee-service apigee-postgresql restart
    4. Aby zaktualizować ustawienia replikacji w węźle gotowości:

      1. Zmodyfikuj plik konfiguracji /opt/silent.conf i zaktualizuj go w polu PG_MASTER z adresem IP nowego mastera Postgres.
      2. Usuń wszystkie stare dane Postgres za pomocą tego polecenia:
        rm -rf /opt/apigee/data/apigee-postgresql/
      3. Skonfiguruj replikację w węźle gotowości:
        /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    5. Sprawdź, czy master Postgres jest prawidłowo skonfigurowany, wpisując w dc-2 to polecenie:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
    6. Usuń serwery Postgresql i dodaj je z grupy Analytics i grupy konsumentów.
      1. Usuń stary serwer Postgres z grupy analitycznej, wykonując instrukcje podane w Usuwanie serwera Postgres z grupy w Analytics
      2. Dodaj do grupy Analytics nowy serwer postgres, postępując zgodnie z instrukcjami w artykule Dodaj istniejący serwer Postgres do grupy analitycznej.
    7. Wyrejestruj stary serwer postgres z 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. Usuń stary serwer postgres z dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    9. Starego mastera Postgres można teraz bezpiecznie wyłączyć. Odinstaluj aplikację edge-postgres-server i apigee-postgresql:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    Wycofuję tryb gotowości Postgres

    Uwaga: dokumentacja 12 węzłów instalacja w klastrze pokazuje węzeł postgresql dc-1 jako instancję główną, ale dla wygody w tej sekcji założono, że węzeł postgresql dc-1 jest w stanie gotowości a węzeł postgresql dc-2 jest nadrzędny.

    Aby wyłączyć tryb gotowości Postgres, wykonaj te czynności:

    1. Uzyskaj identyfikatory UUID serwerów Postgres, postępując zgodnie z instrukcjami w artykule Uzyskaj identyfikatory UUID
    2. Zatrzymaj apigee-postgresql w bieżącym węźle gotowości w dc-1:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
    3. Usuń serwery Postgresql i dodaj je z grupy Analytics i grupy konsumentów.
      1. Usuń stary serwer Postgres z grupy analitycznej, wykonując instrukcje podane w Usuwanie serwera Postgres z grupy w Analytics
      2. Dodaj do grupy Analytics nowy serwer postgres, postępując zgodnie z instrukcjami w artykule Dodaj istniejący serwer Postgres do grupy analitycznej.
    4. Wyrejestruj stary serwer postgres z 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. Usuń stary serwer postgres z dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    6. Starego mastera Postgres można teraz bezpiecznie wyłączyć. Odinstaluj aplikację edge-postgres-server i apigee-postgresql:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    ZooKeeper i Cassandra

    W tej sekcji wyjaśniono, jak zamknąć serwery ZooKeeper i Cassandra. w dwóch centrach danych.

    Jeśli masz więcej niż 2 pamiętaj, aby usunąć wszystkie odwołania do wycofanego węzła (w tym przypadku dc-1) ze wszystkich plików konfiguracji dyskretnych we wszystkich pozostałych centrach danych. Jeśli węzły Cassandra mają zostać wycofane, usuń te hosty z CASS_HOSTS. Pozostałe węzły Cassandra powinny pozostać w pierwotnej kolejności: CASS_HOSTS.

    Uwaga dotycząca ZooKeeper: podczas modyfikowania Usługa ZK_HOST w pliku konfiguracji, by mieć pewność, że zestaw ZooKeeper działa. Musisz mieć liczbę nieparzystą węzłów wyborczych w Twojej konfiguracji. Więcej informacji: Konserwacja Apache ZooKeeper zadania.

    Aby wyłączyć serwery ZooKeeper i Cassandra:

    1. Utwórz kopie zapasowe węzłów dc-1 Cassandra i ZooKeeper, postępując zgodnie z instrukcjami podanymi w tych linkach: .
    2. Wymień UUID ZooKeeper i Cassandra i serwery w centrum danych, w którym znajdują się węzły Cassandra. do wycofania z eksploatacji.

      apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
    3. Wyrejestruj typ serwera:
      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. Wyrejestruj serwer:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
    5. Zaktualizuj plik konfiguracji, dodając adresy IP wycofanych węzłów usuniętych z ZK_HOSTS i CASS_HOSTS.

      Przykład: załóżmy, że masz adresy IP $IP1 $IP2 $IP3 w dc-1 i $IP4 $IP5 $IP6 w dc-2, wyłączają dc-1. Następnie usuń adresy IP $IP1 $IP2 $IP3 z plików konfiguracji.

      • Wpisy w istniejących plikach konfiguracji:
        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”
      • Nowe wpisy w pliku konfiguracji:
        ZK_HOSTS="$IP4 $IP5 $IP6"
        CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
    6. Zaktualizuj plik konfiguracji cichej (zmodyfikowany w kroku e) o adresy IP usuniętych wycofane węzły i uruchomienie zarządzania profilu serwera na wszystkich węzłach hostujących serwery zarządzania:
      /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
    7. Zaktualizuj plik konfiguracji, podając adresy IP usuniętych węzłów wycofanych z użytku, i uruchom profil MP/RMP we wszystkich węzłach routera i procesora wiadomości:
      • Jeśli router brzegowy i procesor wiadomości są skonfigurowane w tym samym węźle, wpisz:
        /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
      • Jeśli router brzegowy i procesor wiadomości są skonfigurowane w oddzielnych węzłach, wpisz:

        W przypadku routera:

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

        W przypadku procesora wiadomości:

        /opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
    8. Ponownie skonfiguruj wszystkie węzły Qpid, usuwając adresy IP wycofanych węzłów z pliku odpowiedzi:
      /opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
    9. Skonfiguruj ponownie wszystkie węzły Postgres, usuwając adresy IP wycofanych węzłów z pliku odpowiedzi:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
    10. Zmień przestrzeń klawiszy system_auth. Jeśli masz włączone uwierzytelnianie Cassandra w istniejącym systemie W węźle Cassandra zaktualizuj współczynnik replikacji przestrzeni kluczy system_auth, uruchamiając polecenie następujące polecenie:
      ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};

      To polecenie ustawia współczynnik replikacji na '3', co oznacza 3 węzły Cassandra w klastrze. W razie potrzeby zmień tę wartość.

      Po wykonaniu tego kroku topologia Cassandra powinna nie mają elementu dc-1 w żadnym z przestrzeni klawiszy.

    11. Wyłącz po kolei węzły Cassandra w dc-1.

      Aby wyłączyć węzły Cassandra, wpisz to polecenie:

      /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission

    12. Sprawdź połączenie węzłów Cassandra z dc-1 za pomocą jednego z tych poleceń:
      /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'

      Lub dodatkowa weryfikacja do uruchomienia na wycofanym węźle:

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

      Powyższe polecenie powinno zwrócić:

      Mode: DECOMMISSIONED

    13. Uruchom profil DS dla wszystkich węzłów Cassandra i ZooKeeper w dc-2:
      /opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
    14. Zatrzymaj apigee-cassandra i apigee-zookeeper w dc-1:
      apigee-service apigee-cassandra stop
      apigee-service apigee-zookeeper stop
    15. Odinstaluj apigee-cassandra i apigee-zookeeper w dc-1:
      apigee-service apigee-cassandra uninstall
      apigee-service apigee-zookeeper uninstall

    Usuń powiązania z dc-1

    Aby usunąć powiązania z dc-1, wykonaj te czynności:

    1. Usuń powiązania z dc-1.
      1. Wyświetl wszystkie pody dostępne w organizacji:
        curl -v -u  <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
      2. Aby sprawdzić, czy wszystkie powiązania zostały usunięte, pobierz Identyfikatory UUID serwerów powiązanych z podami:
        curl -v -u  <AdminEmailID>:<AdminPassword> \
        -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"

        Jeśli to polecenie nie zwróci żadnych identyfikatorów UUID, oznacza to, że w poprzednich krokach wszystkie powiązania zostały usunięte: i możesz pominąć następny krok. W przeciwnym razie wykonaj następny krok.

      3. Usuń wszystkie powiązania serwera dla identyfikatorów UUID uzyskanych w poprzednim kroku:
        curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
      4. Odłącz organizację od poda:
        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. Usuń pody:
      curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
    3. Usuń region.
      curl -v -u <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/regions/dc-1" -X DELETE

    Uwaga: jeśli nie wykonasz jednego z kroków podczas usuwania serwerów, wykonaj czynności opisane powyżej. zwróci komunikat o błędzie określony serwer w podzie nadal istnieje. Usuń je, postępując zgodnie z instrukcjami rozwiązywania problemów. poniżej oraz dostosować typy w poleceniu curl.

    Na tym etapie zakończono wycofanie dc-1.

    Dodatek

    Rozwiązywanie problemów

    Jeśli po wykonaniu poprzednich kroków w niektórych podach nadal znajdują się serwery, wykonaj te czynności aby wyrejestrować i usunąć serwery. Uwaga: w razie potrzeby zmień typy i bloki reklamowe.

    1. Uzyskaj identyfikatory UUID za pomocą tego polecenia:
      apigee-adminapi.sh servers list -r dc-1 -p POD -t  --admin <AdminEmailID> --pwd  '<AdminPassword>’ --host localhost
    2. Wyrejestruj typ serwera:
      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. Usuń serwery pojedynczo:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID

    Weryfikacja

    Wycofanie możesz sprawdzić za pomocą tych poleceń.

    Serwer zarządzania

    Uruchom następujące polecenia na serwerach zarządzania we wszystkich regionach.

    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

    Uruchom to polecenie na wszystkich komponentach, aby sprawdzić wymagania portów dla wszystkich funkcji zarządzania porty.

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

    Sprawdź grupę analityczną.

    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

    Węzły Cassandra/ZooKeeper

    We wszystkich węzłach Cassandra wpisz:

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

    Spowoduje to zwrócenie stanu running lub not running dla tego konkretnego do węzła.

    W jednym węźle wpisz:

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

    Powyższe polecenia zwracają informacje o aktywnych centrach danych.

    W węzłach ZooKeeper wpisz najpierw:

    echo ruok | nc <host> 2181

    To polecenie zwróci wartość imok.

    Potem wpisz:

    echo stat | nc <host> 2181 | grep Mode

    Wartość Mode zwrócona przez powyższe polecenie będzie mieć jedną z tych wartości: observer, leader lub follower.

    W jednym węźle ZooKeeper:

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

    W węźle głównym Postgres uruchom polecenie:

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

    Sprawdź, czy odpowiedź wskazuje, że węzeł jest nadrzędny.

    W węźle gotowości:

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

    Sprawdź, czy odpowiedź wskazuje, że węzeł jest w trybie gotowości.

    Zaloguj się do bazy danych PostgreSQL przy użyciu polecenia

    psql -h localhost -d apigee -U postgres

    Gdy pojawi się prośba, wpisz „postgres”. jako hasła użytkownika 'postgres'. Ze statystyk wybierz max(client_received_start_timestamp).

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

    Logi

    Sprawdź dzienniki komponentów, aby upewnić się, że nie ma w nich błędów.