Edge for Private Cloud w wersji 4.19.01
Jeśli podczas aktualizowania do wersji Edge 4.19.01 wystąpi błąd, możesz przywrócić który spowodował błąd, a następnie spróbuj ponownie przeprowadzić aktualizację.
Edge 4.19.01 możesz przywrócić do tych wersji funkcji:
- Wersja 4.18.05
- Wersja 4.18.01
- Wersja 4.17.09*
* Aby przywrócić wersję 4.19.01–4.17.09, musisz wycofanie Postgres, a także wycofanie komponentów każdego węzła. Jeśli przywrócisz wersję 4.18.01 lub 4.18.05, nie musisz wycofywać Postgres jako uaktualnienia nie zawierała aktualizacji Postgres.
Istnieją 2 sytuacje, w których możesz chcieć przywrócić poprzednią wersję aplikacji:
- Przywracanie poprzedniej wersji funkcji. Na przykład z od 4.19.01 do 4.18.05.
- Przywracanie poprzedniej wersji aktualizacji w tej samej wersji. Dla: np. od 4.19.01.02 do 4.19.01.01.
Więcej informacji znajdziesz w artykule o wersji Apigee Edge .
Kto może przywrócić poprzednią wersję aplikacji
Użytkownik wykonujący przywrócenie poprzedniej wersji powinien być tym samym użytkownikiem, który pierwotnie zaktualizował Edge lub z wykorzystaniem roota.
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.
Komponenty ze wspólnym kodem
Poniższe komponenty Edge mają wspólny kod. Dlatego, aby wycofać dowolną tych komponentów w węźle, musisz wycofać wszystkie te komponenty, które znajdują się w tym węźle.
edge-management-server
(serwer zarządzania)edge-message-processor
(system przetwarzania wiadomości)edge-router
(router)edge-postgres-server
(serwer Postgres)edge-qpid-server
(serwer Qpid)
Jeśli na przykład na serwerze zarządzania, routerze i procesorze wiadomości i wycofać dowolną z nich.
Przywracanie poprzedniej wersji funkcji
Aby przywrócić wersję 4.19.01–17.09, musisz wycofać zmiany Postgres, a także przywrócić poprzednie komponenty każdego węzła. Jeśli przywrócisz wersję 4.18.01 lub 4.18.05, nie musisz wycofywać Postgres jako uaktualnienia nie zawierała aktualizacji Postgres.
Aby przywrócić poprzednią wersję funkcji, wykonaj te czynności na każdym węźle, który hostuje składnik:
-
Pobierz plik
bootstrap.sh
dla wersji, którą chcesz zastosować plecy:- Aby przywrócić wersję 4.18.05, pobierz
bootstrap_4.18.05.sh
:curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh
- Aby przywrócić wersję 4.18.01, pobierz
bootstrap_4.18.01.sh
:curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
- Aby przywrócić wersję 4.17.09, pobierz
bootstrap_4.17.09.sh
:curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
- Aby przywrócić wersję 4.18.05, pobierz
- Zatrzymaj komponent do wycofania:
- Aby wycofać dowolny z komponentów ze wspólnym kodem w
musisz zatrzymać je wszystkie, jak pokazano w poniższym przykładzie:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
- Aby przywrócić poprzednią wersję dowolnego komponentu innego w węźle, zatrzymaj tylko ten komponent:
/opt/apigee/apigee-service/bin/apigee-service component stop
- Aby wycofać dowolny z komponentów ze wspólnym kodem w
musisz zatrzymać je wszystkie, jak pokazano w poniższym przykładzie:
- Jeśli chcesz przywrócić zarabianie, odinstaluj tę funkcję z serwera zarządzania i wiadomości
Węzły procesora:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- Odinstaluj komponent, aby przywrócić poprzednią wersję w węźle:
- Aby wycofać dowolny z komponentów ze wspólnym kodem w
węzła, musisz je wszystkie odinstalować, odinstalowując komponent
edge-gateway
jak w tym przykładzie:/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
- Aby przywrócić dowolny inny komponent w węźle, odinstaluj tylko ten komponent, ponieważ
następujący przykład:
/opt/apigee/apigee-service/bin/apigee-service component uninstall
Gdzie component to nazwa komponentu.
- Aby przywrócić router brzegowy, musisz usunąć zawartość
/opt/nginx/conf.d
, oprócz odinstalowania Grupa komponentówedge-gateway
:cd /opt/nginx/conf.d
rm -rf *
- Aby wycofać dowolny z komponentów ze wspólnym kodem w
węzła, musisz je wszystkie odinstalować, odinstalowując komponent
- Odinstaluj wersję 4.19.01 aplikacji
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- Zainstaluj
apigee-service
w wersji 4.18.05, 4.18.01 lub 4.17.09 i ich zależnościami. Poniższy przykład instaluje wersję 4.17.09apigee-service
:sudo bash /tmp/bootstrap_4.17.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 jego podanie.
Jeśli pojawi się błąd, sprawdź, czy w kroku został pobrany plik
bootstrap.sh
. 1. - Zainstaluj
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- Zainstaluj starszą wersję komponentu:
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
Gdzie component jest komponentem do zainstalowania, a configFile to komponent i konfigurację starszej wersji.
- Jeśli wycofujesz zmiany Qpid, opróżnij pliki iptables:
sudo iptables -F
- Powtórz ten proces dla każdego węzła hostującego wycofywany komponent.
Aby przywrócić wersję 4.19.01–17.09, musisz wycofać zmiany Postgres, a także przywrócić poprzednie komponenty każdego węzła. Jeśli przywrócisz wersję 4.18.01 lub 4.18.05, nie musisz wycofywać Postgres jako uaktualnienia nie zawierała aktualizacji Postgres.
Przywracanie poprzedniej wersji aktualizacji
Aby przywrócić komponent do określonej wersji wersji, w każdym węźle wykonaj te czynności który hostuje komponent:
- Pobierz konkretną wersję komponentu:
/opt/apigee/apigee-service/bin/apigee-service component_version install
Gdzie component_version to komponent i wersja do zainstalowania. Dla: 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 określić dostępny komponent za pomocą tego polecenia:
yum --showduplicates list comp
Na przykład:
yum --showduplicates list edge-ui
- 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 podczas instalacji podajesz tylko nazwę komponentu, a nie wersję.
- Powtórz ten proces dla każdego węzła hostującego wycofywany komponent.
Aby przywrócić wersję 4.19.01–17.09, musisz wycofać zmiany Postgres, a także przywrócić poprzednie komponenty każdego węzła. Jeśli przywrócisz wersję 4.18.01 lub 4.18.05, nie musisz wycofywać Postgres jako uaktualnienia nie zawierała aktualizacji Postgres.
Cofanie aktualizacji Postgres 9.6
W przypadku aktualizacji do wersji 4.19.01 z wersji 4.17.09 musisz wycofać Aktualizuj Postgres, a nie tylko komponenty Edge.
Aby wycofać aktualizację Postgres podczas aktualizowania Postgres w konfiguracji stanu głównego:
- 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.
- 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
- 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
- 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
- Awansuj nowy węzeł gotowości jako główny Postgres:
- 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”.
- 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
- Skonfiguruj nowy wzorzec:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- Awansuj nowy węzeł gotowości na nowy węzeł nadrzędny:
- Utwórz ponownie stary węzeł gotowości:
- 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
- Usuń katalog danych w starym węźle gotowości:
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- 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
- 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
- Edytuj plik konfiguracyjny użyty do zainstalowania bieżącej wersji Edge, aby określić
następujące:
- Sprawdź, czy nowy węzeł gotowości został dodany, wyświetlając
/opt/apigee/apigee-postgresql/conf/pg_hba.conf
w nowym wzorcu. - 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 poluname
w kolumnieconsumer-groups
. Dodatkowo zwraca identyfikatory UUID starych węzłów głównych i gotowości Postgres wpostgres-server
idatastores
. 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" : { } }
- Uzyskaj adres UUID starego mastera, uruchamiając na urządzeniu następujące polecenie
curl
stary węzeł główny: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"
- Powtórz poprzedni krok, aby uzyskać adresy IP starego i nowego węzła gotowości głównym.
- 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
elementuconsumer-groups
powinna teraz być puste. - 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 poluuuids
powinna być teraz pusta. - 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
- Zweryfikuj grupę statystyk:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
Identyfikatory UUID nowych węzłów głównych i gotowości powinny wyświetlić się w grupie Analytics. i grupę konsumentów.
- Ponownie uruchom serwer zarządzania brzegiem:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Uruchom ponownie wszystkie serwery Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- Uruchom ponownie wszystkie serwery Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- 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.
- Powtórz poprzedni krok po wykonaniu kilku żądań do interfejsu API, aby mieć pewność, że węzły są synchronizację.
- 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 wzorca i zainstaluj Qpid w nowym węźle głównym. Po odinstalowaniu narzędzia Qpid możesz wyłączyć starego węzła głównego.
Odinstaluj Qpid ze starego mastera i zainstaluj Qpid na nowym masterze
Aby odinstalować moduł Qpid ze starego mastera i zainstalować go na nowym masterze:
- 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
- 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, gdymsg=0
, imsgIn=msgOut
. - 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
- 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
- Odinstaluj serwer Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
- 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
- Usuń stary serwer Qpid z Zookeeper:
curl -u sysAdminEmail:password -X DELETE \ http://ms_IP:8080/v1/servers/qpid_UUID
- Zainstaluj Qpid na nowym masterze:
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
- 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
- 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
- Uruchom ponownie wszystkie procesory wiadomości:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Uruchom to polecenie na nowym serwerze Qpid, aby sprawdzić, czy kolejki zostały utworzone:
qpid-stat -q
Upewnij się, że
msg
,msgIn
imsgOut
są oznaczone aktualizowany w miarę przetwarzania wiadomości przez serwer Qpid.
Jeśli podczas przywracania poprzedniej wersji wystąpią problemy, skontaktuj się z zespołem pomocy Apigee Edge.