Edge for Private Cloud w wersji 4.18.05
Jeśli podczas aktualizowania do wersji Edge 4.18.05 wystąpi błąd, możesz przywrócić który spowodował błąd, a następnie spróbuj ponownie przeprowadzić aktualizację.
Możesz przywrócić Edge 4.18.05 do tych wersji funkcji:
- Wersja 4.18.01
- Wersja 4.17.09*
- Wersja 4.17.05*
* Aby przywrócić wersję 4.18.05–4.17.09 lub 4.17.05, musisz wycofanie Postgres, a także wycofanie komponentów każdego węzła. Jeśli wrócisz do wersji 4.18.01, nie będzie trzeba wycofywać Postgres w ramach 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.18.05 do 4.18.01.
- Przywracanie poprzedniej wersji aktualizacji w tej samej wersji. Dla: np. od 4.18.05.02 do 4.18.05.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.18.05–4.17.09 lub 4.17.05, musisz wycofać zmiany Postgres, a także przywrócić poprzednie komponenty każdego węzła. Jeśli przywrócisz wersję 4.18.01, nie musisz wycofywać Postgres w ramach 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.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.17.05, pobierz
bootstrap_4.17.05.sh
:curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh
- Aby przywrócić wersję 4.18.01, 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.18.05 aplikacji
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- Zainstaluj wersję 4.18.01, 4.17.09 lub 4.17.05 urządzenia
apigee-service
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.18.05–4.17.09 lub 4.17.05, musisz wycofać zmiany Postgres, a także przywrócić poprzednie komponenty każdego węzła. Jeśli przywrócisz wersję 4.18.01, nie musisz wycofywać Postgres w ramach 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.18.05–4.17.09 lub 4.17.05, musisz wycofać zmiany Postgres, a także przywrócić poprzednie komponenty każdego węzła. Jeśli przywrócisz wersję 4.18.01, nie musisz wycofywać Postgres w ramach uaktualnienia nie zawierała aktualizacji Postgres.
Cofanie aktualizacji Postgres 9.6
W przypadku aktualizacji do wersji 4.18.05 z wersji 4.17.05 lub 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.