PowerFlex 3.x: Tijdens NDU raakt de SDS in paniek en stopt de upgrade
Summary: Tijdens NDU kan de SDS een rolling kernel panic ervaren.
Symptoms
Een upgrade van VxFlex OS 3.0.x.x naar PowerFlex 3.5.x.x of 3.6.0.x
Een rollend kernelpanic van de SDS verhindert dat het systeem de upgrade voortzet.
Het SDS-proces blijft in paniek raken en opnieuw opstarten met de volgende stacktrace:
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
Tijdens een achterwaartse heropbouw van het systeem, tijdens het afsluiten van de Instant Maintenance Mode (IMM), wordt een onjuist datasynchronisatiebericht verzonden en ontvangen op de primaire (PRI) en secundaire (SEC) SDS'en. De SEC SDS start de service dus abrupt opnieuw op om mogelijke inconsistentie van gegevens te voorkomen.
Het is een zeldzaam scenario tijdens IMM waarbij een mislukte schrijfopdracht IO ten onrechte kan leiden tot een interne sanity check (interne data-integriteitscontrole die ervoor zorgt dat de SDS-service crasht) tijdens de heropbouw nadat de afsluit-IMM is voltooid. De mislukte schrijfopdracht IO vindt plaats vóór Enter IMM en tijdens IMM werd er een andere IO verzonden naar een nabijgelegen offset in dezelfde dataset.
Resolution
Geautomatiseerde upgrade via Gateway
- Stop de upgrade via de Gateway-UI.
- Verwijder de defecte SDS uit het cluster en voeg deze vervolgens weer toe.
- Start de upgrade opnieuw vanuit de gebruikersinterface van IM Gateway en schakel het selectievakje Upgrade toestaan, zelfs wanneer de upgradestatus al is ingeschakeld - de upgrade moet opnieuw beginnen en verdergaan met onderdelen die nog niet zijn bijgewerkt:
Handmatige upgrade
Optie #1
- Als hetzelfde apparaat in elk van de gevallen uitvalt, moet u dat ene apparaat offline halen. Als dit niet het geval is, verwijdert u alle SDS-apparaten van de SDS.
- Wacht tot de heropbouw is voltooid.
- Upgrade de SDS na verwijdering en voeg deze weer toe aan het cluster.
- Verwijder de volgende SDS die moet worden geüpgraded uit het cluster, waardoor een herverdeling wordt geactiveerd.
- Upgrade de SDS na verwijdering en voeg deze weer toe aan het cluster.
- Laat de herverdeling doorgaan totdat het systeem voldoende capaciteit heeft om de volgende SDS te verwijderen die moet worden geüpgraded. Herhaal dit totdat alle SDS-exemplaren zijn geüpgraded.
Optie #2
Gebruik de Protected Maintenance Mode (PMM) in plaats van IMM voor het maken van een volledige derde kopie. Het probleem zou zich niet moeten voordoen met PMM, de servicecrashlus treedt bijvoorbeeld op omdat de SDS crasht tijdens de rebuild, weer opstart en zich herhaalt. Een uitweg is om de crashende SDS lang genoeg uit de lucht te halen, zodat de MDM een voorwaartse rebuild instrueert in plaats van een achterwaartse. Zodra de problematische dataset opnieuw is opgebouwd, kan de SDS weer worden opgestart.
Versies waarop dit van toepassing is:
VxFlex OS 3.0.x.x
PowerFlex 3.5.x.x
PowerFlex 3.6.0.x-3.6.1.x
Opgelost in versie:
PowerFlex 3.6.2