PowerFlex 3.x: Podczas NDU SDS ulega awarii i zatrzymuje uaktualnienie
Summary: Podczas NDU w serwerze SDS może wystąpić stopniowa awaria jądra.
Symptoms
Uaktualnienie systemu VxFlex OS 3.0.x.x do PowerFlex 3.5.x.x lub 3.6.0.x
Stopniowa awaria jądra SDS uniemożliwia systemowi kontynuowanie aktualizacji.
Proces SDS ciągle panikuje i uruchamia się ponownie z następującym śladem stosu:
27/07 08:07:25.381223 Panic in file /data/build/workspace/ScaleIO-Common-Job/src/tgt/spef/l2p_sm/l2p_resolver/l2p_resolver_sync_services.c, line 1828, function Resolver_Inter_SyncUnmatchedVto, PID 133106.Panic Expression ALWAYS_ASSERT PANIC_ID_tgt_1588256010820.
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(mosDbg_PanicPrepare+0x13a) [0x93b62a]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_Inter_SyncUnmatchedVto+0x69c) [0x643ddc]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_Inter_SyncOffsetData+0xd2) [0x644082]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_SyncOffset+0x3e6) [0x6446f6]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(Resolver_Sync+0x1e4) [0x645c54]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Inter_Sync+0x59) [0x6542d9]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Inter_UpdateRamCopyEx+0x163) [0x901ba3]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Inter_Update+0x4f7) [0x9060f7]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(L2PGateway_Sync+0x64) [0x9073d4]
/opt/emc/scaleio/sds/bin/sds-3.5.1100.107(feIo_L2PGatewayUpdate+0x3d8) [0x90cf98]
Cause
Podczas odtwarzania wstecz systemu, przy wychodzeniu z trybu natychmiastowej konserwacji (IMM), na podstawowym (PRI) i dodatkowym (SEC) serwerze SDS jest wysyłany i odbierany nieprawidłowy komunikat synchronizacji danych. W związku z tym SEC SDS gwałtownie ponownie uruchamia usługę, aby uniknąć ewentualnej niespójności danych.
Rzadko zdarza się podczas IMM, że nieudane operacje we/wy polecenia zapisu mogą niewłaściwie prowadzić do wewnętrznego sprawdzenia poprawności (wewnętrznego sprawdzenia integralności danych, które powoduje awarię usługi SDS) podczas odbudowy po zakończeniu wyjścia z IMM. Nieudane polecenie we/wy zapisu występuje przed wejściem IMM, a podczas IMM zostało wysłane kolejne we/wy do pobliskiego przesunięcia w tym samym zestawie danych.
Resolution
Automatyczne uaktualnianie przy użyciu bramki
- Zatrzymaj uaktualnienie przy użyciu interfejsu użytkownika bramy.
- Usuń wadliwy serwer SDS z klastra, a następnie dodaj go ponownie.
- Uruchom ponownie uaktualnienie z interfejsu użytkownika bramy komunikatorów i zaznacz pole wyboru "Zezwalaj na uaktualnianie nawet wtedy, gdy jest już w stanie uaktualnienia" — uaktualnianie powinno rozpocząć się od nowa i kontynuować z jeszcze nie uaktualnionymi komponentami:
Aktualizacja ręczna
Opcja #1
- Jeśli to samo urządzenie ulegnie awarii w każdym wystąpieniu, przełącz to pojedyncze urządzenie w tryb offline. Jeśli nie, usuń wszystkie urządzenia SDS z serwera SDS.
- Poczekaj na zakończenie procesu odbudowy.
- Po usunięciu uaktualnij serwer SDS i dodaj go z powrotem do klastra.
- Usuń następny serwer SDS, który musi zostać uaktualniony z klastra, co spowoduje ponowne zrównoważenie.
- Po usunięciu uaktualnij serwer SDS i dodaj go z powrotem do klastra.
- Przywracanie równowagi będzie kontynuowane do momentu, gdy system uzyska wystarczającą pojemność, aby usunąć następny serwer SDS, który musi zostać uaktualniony — powtarzaj tę czynność do momentu uaktualnienia wszystkich serwerów SDS.
Opcja #2
Użyj trybu Protected Maintenance Mode (PMM) zamiast IMM, aby utworzyć pełną trzecią kopię. Problem nie powinien występować w przypadku PMM. Na przykład pętla awarii usługi występuje, ponieważ SDS ulega awarii podczas odbudowy, powraca i powtarza się. Wyjściem z tego problemu jest wyłączenie zawieszającego się SDS na wystarczająco długi czas, aby MDM poinstruował odbudowę do przodu, a nie do tyłu. Po odbudowaniu problematycznego zestawu danych można pomyślnie przywrócić SDS.
Wersje, których dotyczy problem:
VxFlex OS 3.0.x.x
, PowerFlex 3.5.x.x
, PowerFlex 3.6.0.x-3.6.1.x
Naprawiono w wersji:
PowerFlex 3.6.2