4.18.01 Przywracanie poprzedniej wersji

Edge for Private Cloud w wersji 4.18.01

W przypadku błędu podczas aktualizowania do wersji Edge 4.18.01 komponent można wycofać który spowodował błąd, a następnie spróbuj ponownie przeprowadzić aktualizację. Jeśli na przykład aktualizacja do Postgres 9.6 nie powiedzie się, możesz przywrócić tylko węzły Postgres i spróbować jeszcze raz przeprowadzić aktualizację.

Istnieją 2 sytuacje, w których możesz chcieć przywrócić poprzednią wersję aplikacji:

  1. Przywróć starszą wersję. Na przykład od 4.18.01 do 4.17.01.
  2. Przywróć starszą wersję w tej samej wersji.

Wykonaj poniższe czynności, aby przywrócić poprzednią wersję w obu przypadkach.

Kto może przywrócić poprzednią wersję aplikacji

Użytkownik przeprowadzający przywrócenie poprzedniej wersji powinien być taki sam jak użytkownik, który pierwotnie zaktualizował Edge. lub jako użytkownik root.

Domyślnie komponenty Edge działają jako „apigee” użytkownika. W niektórych przypadkach możesz używać Edge jako różnych użytkowników. Jeśli na przykład router musi mieć dostęp do portów z podwyższonymi uprawnieniami, takich jak poniżej 1000, musisz uruchomić router jako użytkownik root lub użytkownik z dostępem do tych porty. Możesz też uruchomić jeden komponent jako jeden użytkownik, a drugi jako inny użytkownik.

Które komponenty można wycofać

Podczas przywracania starszej wersji musisz pamiętać o tych warunkach:

  • 5 komponentów Edge wymienionych poniżej ma wspólny kod. Dlatego, aby przywrócić jedną z 5 komponentów w węźle, musisz wycofać dowolny z 5 zainstalowanych w nim komponentów. Dla: jeśli na przykład w Twojej witrynie jest zainstalowany serwer zarządzania, router i procesor wiadomości i wycofanie dowolnego z nich, trzeba wycofać wszystkie trzy.

    Oto 5 elementów wspólnych kodu:

    • Serwer zarządzania
    • Router
    • procesor komunikatów
    • Serwer Qpid
    • Serwer Postgres
  • Jeśli aktualizujesz wersję z Edge 4.16.01, nie wycofuj systemu Cassandra. Ten wersja Edge zawiera zaktualizowaną wersję systemu Cassandra. Jeśli przywrócisz jakieś komponenty, Cassandra w wersji 4.18.01.

Wycofanie wersji 4.18.01

Ta sekcja zawiera procedurę przywracania poprzedniej wersji Edge 4.18.01. Ten składa się z dwóch części:

  • Wycofywanie aktualizacji Postgres
    Ostatnim etapem każdej procedury aktualizacji jest zaktualizowanie węzłów Postgres do wersji 9.6. Jeśli aktualizacja nie powiedzie się, możesz użyć tej procedury, aby ją wycofać.
  • Wycofanie wszystkich innych komponentów Edge
    Ta procedura pozwala przywrócić wszystkie inne komponenty Edge.

Aby wycofać aktualizację Postgres 9.6

Aby wycofać aktualizację Postgres podczas aktualizowania Postgres w konfiguracji stanu głównego, Ty:

  • Awansuj nowy węzeł gotowości na główny węzeł Postgres. Nowy master Postgres zostanie taką samą wersję jak poprzednia instalacja Edge.
  • Skonfiguruj stary węzeł gotowości tak, aby był węzłem gotowości nowego mastera. Stary węzeł gotowości będzie taka sama jak poprzednia instalacja Edge
  • Zarejestruj nowe węzły główne i gotowości w grupach Analytics i konsumentów.

Po zakończeniu przywracania stary węzeł główny nie będzie już potrzebny. Dostępne opcje a następnie wyłączyć stary węzeł główny.

  1. Sprawdź, czy nowy węzeł gotowości Postgres jest uruchomiony:
    > /opt/apigee/apigee-service/bin/apigee-all status

    Jeśli Postgres nie jest uruchomiony, uruchom go:

    > /opt/apigee/apigee-service/bin/apigee-all start
  2. Sprawdź, czy Postgres został zatrzymany w starym węźle głównym i starym węźle gotowości:
    > /opt/apigee/apigee-service/bin/apigee-all status

    Jeśli Postgres jest uruchomiony, zatrzymaj go:

    > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  3. Jeśli zainstalowano usługę Qpid, uruchom ją w starym węźle gotowości:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. Awansuj nowy węzeł gotowości jako główny Postgres:
    1. Awansuj nowy węzeł gotowości na nowy węzeł nadrzędny:
      > apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      Jeśli pojawi się prośba, wpisz hasło Postgres dla „apigee” user, która jest domyślnie ustawiona jako „postgres”.

    2. Edytuj plik konfiguracyjny użyty do zainstalowania bieżącej wersji Edge, aby określić następujące:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. Skonfiguruj nowy wzorzec:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. Utwórz ponownie stary węzeł gotowości:
    1. Edytuj plik konfiguracyjny użyty do zainstalowania bieżącej wersji Edge, aby określić następujące:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. Usuń katalog danych w starym węźle gotowości:
      > cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. Skonfiguruj ponownie stary węzeł gotowości tak, aby był węzłem gotowości nowego węzła głównego:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. Sprawdź, czy Postgres działa w starym węźle gotowości:
      > /opt/apigee/apigee-service/bin/apigee-all status

      Jeśli nie jest uruchomiony, uruchom go:

      > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  6. Sprawdź, czy nowy węzeł gotowości został dodany, wyświetlając /opt/apigee/apigee-postgresql/conf/pg_hba.conf w nowym wzorcu.
  7. Wyświetl bieżące statystyki i informacje o grupach konsumentów, uruchamiając następujące polecenie na serwerze zarządzania:
    > curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    To polecenie zwraca nazwę grupy analitycznej w polu name, a parametr w polu name w kolumnie consumer-groups. Dodatkowo zwraca identyfikatory UUID starych węzłów głównych i gotowości Postgres w postgres-server i datastores. Zobaczysz, że dane wyjściowe w formacie:

    {
      "name" : "axgroup-001",
      "properties" : {
      },
      "scopes" : [ "VALIDATE~test", "sgilson~prod" ],
      "uuids" : {
        "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "postgres-server" : [
          "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256"
        ]
      },
      "consumer-groups" : [ {
        "name" : "consumer-group-001",
        "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "datastores" :
          [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ],
          "properties" : {     }
        }
      ],
      "data-processors" : {
      }
    }
  8. Uzyskaj adres UUID starego mastera, uruchamiając następujące polecenie cURL na starym węzeł nadrzędny:
    > curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    Identyfikator UUID węzła powinien być widoczny na końcu danych wyjściowych w formacie:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  9. Powtórz poprzedni krok, aby uzyskać adresy IP starego i nowego węzła gotowości głównym.
  10. Usuń stare węzły główne i gotowości z grupy konsumentów:
    > curl -u sysAdminEmail:password -X DELETE
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v

    gdzie axgroup-001 i consumer-group-001 to domyślne nazwy funkcji analiz i grup konsumentów. masterUUID,standbyUUID są w tej samej kolejności pojawia się powyżej, gdy wyświetlisz aktualne informacje o bieżących danych analitycznych i o grupie konsumentów powyżej. Ty może być konieczne określenie ich jako standbyUUID,masterUUID.

    Właściwość datastores elementu consumer-groups powinna teraz być puste.

  11. Usuń z grupy analitycznej stary węzeł główny i węzeł gotowości:
    > curl -u sysAdminEmail:password -X DELETE
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    Właściwość postgres-server w polu uuids powinna być teraz pusta.

  12. Zarejestruj nowe węzły główne i gotowości PG w grupach analitycznych i dla konsumentów:
    > curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
    > curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
  13. Zweryfikuj grupę statystyk:
    > curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    Identyfikatory UUID nowych węzłów głównych i gotowych powinny być widoczne w grupie analitycznej oraz do grupy konsumenta.

  14. Ponownie uruchom serwer zarządzania brzegiem:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  15. Uruchom ponownie wszystkie serwery Qpid:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  16. Uruchom ponownie wszystkie serwery Postgres:
    > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  17. Sprawdź stan replikacji, uruchamiając poniższe skrypty na obu serwerach. System powinny wyświetlać identyczne wyniki na obu serwerach, aby zapewnić pomyślną replikację:

    Na nowym wzorcu uruchom polecenie:

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

    Potwierdź, że jest oznaczona jako nadrzędna. W starym węźle gotowości:

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

    Upewnij się, że jest wyświetlany w trybie gotowości.

  18. Powtórz poprzedni krok po wykonaniu kilku żądań do interfejsu API, aby mieć pewność, że węzły są synchronizację.
  19. Wycofaj stary master Postgres, korzystając z procedury w Zaktualizuj Apigee Edge od 4.16.01/4.16.05 do 4.17.09.

    Możesz też odinstalować Qpid ze starego mastera i zainstalować Qpid w nowym masterze. zgodnie z opisem poniżej. Po odinstalowaniu Qpid możesz wyłączyć stary master. do węzła.

Odinstaluj Qpid ze starego mastera i zainstaluj Qpid na nowym masterze

Wykonaj poniższe czynności, aby odinstalować Qpid ze starego mastera i zainstalować go w nowym wzorzec:

  1. Zablokuj podmiotom przetwarzającym wiadomości dostęp do portu Qpid 5672 w starym masterze uruchomienie tego polecenia na wszystkich procesorach wiadomości:
    > iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
  2. Uruchom poniższe polecenie, aby mieć pewność, że kolejka komunikatów Qpid jest pusta. Nie można odinstaluj Qpid, dopóki nie przetworzy wszystkich oczekujących wiadomości:
    > qpid-stat -q

    To polecenie wyświetla tabelę zawierającą liczbę dla msg, msgIn, and msgOut. Wszystkie wiadomości zostaną przetworzone, gdy msg=0, i msgIn=msgOut.

  3. Określ identyfikator UUID serwera Qpid w starym masterze, uruchamiając następujące polecenie na ze starym mistrzem. Zapisz te informacje na później w ramach procedury:
    > curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
  4. Zatrzymaj Qpid na starym masterze:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    > /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  5. Odinstaluj serwer Qpid:
    > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    > /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
  6. Usuń stary serwer Qpid z grup analitycznych i dla konsumentów:
    > curl -u sysAdminEmail:password -X DELETE -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/qpid_UUID" -v
    > curl -u sysAdminEmail:password -X DELETE
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
  7. Usuń stary serwer Qpid z Zookeeper:
    > curl -u sysAdminEmail:password -X DELETE
      http://ms_IP:8080/v1/servers/qpid_UUID
  8. Zainstaluj Qpid na nowym masterze:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
  9. Określ identyfikator UUID serwera Qpid w nowym masterze, uruchamiając poniższe polecenie na nowego mistrza. Zapisz te informacje na później w ramach procedury:
    > curl -u sysAdminEmail:password
      http://node_IP::8083/v1/servers/self
  10. Zarejestruj nowy serwer Qpid w grupach analitycznych i dla konsumentów:
    > curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
    > curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers?uuid=qpid_UUID" -v
  11. Uruchom ponownie wszystkie procesory wiadomości:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  12. Uruchom to polecenie na nowym serwerze Qpid, aby sprawdzić, czy kolejki zostały utworzone:
    > qpid-stat -q

    Upewnij się, że msg, msgIn i msgOut są aktualizowane jako serwer Qpid przetwarza wiadomości.

Aby przywrócić poszczególne komponenty z: 4.18.01

W ramach przywracania ustawień musisz pobrać plik Bostrap.sh dotyczący Aktualna wersja Edge:

  • Aby przywrócić wersję 4.17.09, pobierz bootstrap_4.17.09.sh
  • Aby przywrócić wersję 4.17.05, pobierz bootstrap_4.17.05.sh
  • Aby przywrócić wersję 4.17.01, pobierz bootstrap_4.17.01.sh
  • Aby przywrócić wersję 4.16.09, pobierz bootstrap_4.16.09.sh
  • Aby przywrócić wersję 4.16.05, pobierz bootstrap_4.16.05.sh
  • Aby przywrócić wersję 4.16.01, pobierz bootstrap.sh

Dla każdego węzła hostującego komponent do wycofania:

  1. Zatrzymaj komponent do wycofania:
    1. Jeśli przywracasz jeden z poniższych komponentów w węźle, musisz zatrzymaj je wszystkie: serwer zarządzania, router, procesor wiadomości, serwer Qpid lub Postgres. Serwer:
      • > apigee-service edge-management-server stop
      • > apigee-service edge-router stop
      • > apigee-service edge-message-processor stop
      • > apigee-service edge-qpid-server stop
      • > apigee-service edge-postgres-server stop
    2. Jeśli przywracasz inny komponent w węźle, zatrzymaj tylko ten komponent:
      • > apigee-service comp stop
  2. Jeśli chcesz przywrócić zarabianie, odinstaluj tę funkcję z serwera zarządzania i wiadomości Węzły procesora:
    > apigee-service edge-mint-gateway uninstall
  3. Odinstaluj komponent, aby przywrócić poprzednią wersję w węźle:
    1. Jeśli przywracasz któryś z tych komponentów w węźle, Odinstaluj je wszystkie: serwer zarządzania, router, procesor wiadomości, serwer Qpid lub Postgres. Serwer:
      > apigee-service edge-gateway uninstall
    2. Jeśli przywracasz inny komponent w węźle, odinstaluj tylko ten komponent:
      > apigee-service comp uninstall
    3. Jeśli przywracasz router, musisz usunąć zawartość /opt/nginx/conf.d:
      > cd /opt/nginx/conf.d
      > rm -rf *
  4. Aby przywrócić komponent:
    1. Odinstaluj wersję 4.18.01 aplikacji apigee-setup:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
    2. Pobierz plik startstrap.sh dla odpowiedniej wersji, na przykład w wersji 4.16.09:
      > curl https://software.apigee.com/bootstrap_4.16.09.sh -o /tmp/bootstrap_4.16.09.sh 
    3. Zainstaluj narzędzia 4.16.01, 4.16.05 lub 4.16.09 apigee-service i zależności. Na przykład w przypadku wersji 4.16.09:
      > sudo bash /tmp/bootstrap_4.16.09.sh apigeeuser=uName apigeepassword=pWord

      gdzie uName i pWord to otrzymana nazwa użytkownika i hasło z Apigee. Jeśli pominiesz pWord, pojawi się prośba o wpisanie .

    4. Zainstaluj apigee-setup:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    5. Zainstaluj odpowiednią wersję komponentu:
      > /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

      gdzie comp to komponent do zainstalowania, a configFile to Twój plik konfiguracji odpowiedniej wersji.

    6. Jeśli wycofujesz zmiany Qpid, opróżnij pliki iptables:
      > sudo iptables -F
  5. Aby przywrócić komponent do określonej wersji wersji 4.18.01:
    1. Pobierz konkretną wersję komponentu:
      > /opt/apigee/apigee-service/bin/apigee-service comp-version install

      gdzie comp-version to komponent i wersja do zainstalowania. Na przykład:

      > /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.09-0.0.3749 install

      Jeśli korzystasz z repozytorium online Apigee, możesz sprawdzić dostępne wersje komponentów za pomocą tego polecenia:

      > yum --showduplicates list comp

      Na przykład:

      > yum --showduplicates list edge-ui
    2. Użyj narzędzia apigee-setup, aby zainstalować komponent:
      > /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

      Na przykład:

      > /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

      Pamiętaj, że nazwę komponentu określasz tylko podczas instalacji.

Jeśli podczas przywracania poprzedniej wersji wystąpią problemy, skontaktuj się z zespołem pomocy Apigee Edge.