PowerFlex 3.x: vTree-migrering kan forårsage SDS-panik eller -hængning
요약: Under vTree-migrering kan SDS-noder, der kører PowerFlex 3.6.7, gå i panik, hvilket resulterer i en DU-hændelse (data unavailability). I tidligere PowerFlex-versioner kan migreringsprocessen sidde fast på ubestemt tid og ikke fuldføres. ...
증상
I PowerFlex version 3.6.7 går flere SDS'er i panik under en planlagt vTree-migrering, hvilket får systemet til at gå i en tilstand for datautilgængelighed.
Som følge af migreringsforsinkelserne øges lagerpuljekapacitetsforbruget (SP) hurtigt og kan nå fuld udnyttelse inden for en kort periode.
MDM-hændelser:
2026-06-30 07:27:19.340 SDS_DECOUPLED ERROR SDS: SDS11 (id: 64cb920800000006) decoupled. 2026-06-30 07:27:19.465 MDM_DATA_DEGRADED ERROR The system is now in DEGRADED state .... 2026-06-30 07:32:20.638 SDS_DECOUPLED ERROR SDS: SDS9 (id: 64cb920b00000009) decoupled. 2026-06-30 07:32:20.638 SDS_DECOUPLED ERROR SDS: SDS12 (id: 64cb920a00000008) decoupled. 2026-06-30 07:32:21.842 MDM_DATA_FAILED CRITICAL The system is now in DATA FAILURE state. Some data is unavailable ... 2026-06-30 07:32:23.538 DEV_CAPACITY_USAGE_CRITICAL ERROR Capacity usage on Protection Domain PD1, Storage Pool FGSP_01 is CRITICAL. 2026-06-30 07:32:23.605 DEV_CAPACITY_USAGE_FULL ERROR Capacity usage on Protection Domain PD1, Storage Pool FGSP_02 is FULL.
Sporingslogfiler på alle de berørte SDS-noder producerer den samme panikstaksporing:
2026/07/01 17:45:33.506630 Panic in file /data/build/workspace/ScaleIO-Common-Job/src/mos/mos_timer.c, line 437, function mosTimerReq_AddByQ, PID 1291427.Panic Expression pReq->state == MOS_TIMER_REQ_STATE__IDLE . /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(mosDbg_PanicPrepare+0xe5) [0x932ce5] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(mosTimerReq_AddByQ+0x143) [0x917043] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(vaeCleaner_CleanVae+0x64) [0x668904] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(head_removeVae+0x170) [0x545e00] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(head_Update+0x373) [0x546363] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(contHead_UpdateFull+0x69) [0x4db689] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(contCmd_AddHead+0x18a) [0x60d85a] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(contCmd_AddHeadGroup+0x100) [0x61b630] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(contCmd_NewRequest+0x15fd) [0x62b96d] /opt/emc/scaleio/sds/bin/sds-3.6.7000.123(contNet_RecvRequest+0xd0) [0x4ce880]
I PowerFlex-versioner, der er ældre end 3.6.7, under en planlagt vTree-migrering, hænger migreringen og fuldføres aldrig.
I PowerFlex Manager UI > Running Storage Jobs vises Indlæser i det uendelige:

query_vtree_migration output viser, at fremdriftsprocenten aldrig ændres:
scli --query_vtree_migration --volume_id 53b80e00000000d1
VTree ID: ba46bf57000000d1 Name: PDC-GC-LNX-N-01-PFSP01-01-V043
Storage Pool 5f2f4acc00000000 Name: PDC-FLEX-LNX-SP01
Protection Domain 908ff43700000000 Name: PDC-FLEX-LNX-PD01
Data layout: Medium granularity
Provisioning: Thin
Total capacity in use: 504.7 GB (516787 MB)
Total user data: 504.7 GB (516787 MB)
Total base user data: 504.7 GB (516787 MB)
Total snapshots user data: 0 Bytes
VTree migration info:
Migration status: Migrating
Source: Storage Pool: PDC-FLEX-LNX-SP01 ID: 5f2f4acc00000000 Protection Domain: PDC-FLEX-LNX-PD01 ID: 908ff43700000000
Destination: Storage Pool: PDC-FLEX-LNX-SP03 ID: 5f2fe70d00000004 Protection Domain: PDC-FLEX-LNX-PD03 ID: 9090907800000003
Conversion type: No conversion
Queue position: 1
Progress percentage : 34%
Påvirkning
På versioner, der er ældre end 3.6.7, slutter volumenmigreringen aldrig, SP-kapacitetsudnyttelsen er kritisk eller højere, og programmer kan opleve I/O-fejl.
På version 3.6.7, utilgængelighed af data.
원인
Dette problem skyldes en racetilstand med flere tråde, der involverer en delt timermekanisme i Volume Allocation Element (VAE)-rengøringskomponenten under volumenmigreringshandlinger.
I PowerFlex-versioner før 3.6.7 blev der brugt en asynkron oprydningsproces til at slette data fra gamle SP-placeringer efter en migrering. Under sjældne omstændigheder, f.eks. samtidige enhedsstyringshandlinger, samtidige diskenhedssletninger, høj I/O-belastning eller netværksustabilitet, kan denne proces opleve en racetilstand, der fik migreringer til at virke fastlåst på ubestemt tid.
For at løse dette blev der indført en forbedret overvågningsmekanisme i version 3.6.7. Denne sikkerhedsmekanisme indeholdt en timer designet til at registrere en fast VAE-rengøringstråd og proaktivt panikere SDS-tjenesten for at forhindre datakorruption eller langvarige boder, svarende til hvordan systemet håndterer fastlåste I / O- eller MDM-kommandoer.
I den indledende implementering af denne rettelse blev overvågningstimeren imidlertid kun initialiseret én gang under migreringsdatakonstruktion og blev delt globalt på tværs af alle efterfølgende VAE-rengøringsopkald. Når flere baggrundstråde forsøger at få adgang til denne ene delte timer samtidigt under tunge migreringsarbejdsbelastninger, udløses en ny løbstilstand. Denne samtidige adgang får sporingsmekanismen til fejlagtigt at markere VAE-renseren som fastlåst, hvilket resulterer i utilsigtede SDS-servicenedbrud og lokaliseret afbrydelse af datatilgængelighed, hvilket resulterer i datautilgængelighed.
해결
Permanent rettelse (anbefales)
Opgrader klyngen til PowerFlex 3.6.7.1 eller nyere. Rettelsen til både VAE-renere og timerløbsforhold er inkluderet.
Løsning (hvis opgraderingen ikke kan udføres med det samme)
På versioner ældre end 3.6.7
- På den primære MDM skal du gå til mappen Sporingslogfiler, der findes på
/opt/emc/scaleio/mdm/logs/. For at finde den aktuelle sporingslog skal du kørels -ltr, så den senestetrc.z.*Log vises nederst på listen. - Da logfiler er komprimerede, skal du bruge
trace_decompressHjælpeprogram placeret på/opt/emc/scaleio/mdm/bin/
tail -f <current_trace_log> | /opt/emc/scaleio/mdm/bin/trace_decompress
- Filtrer efter SDS-id (f.eks.
TGT) Bruggrepkommando til at finde:
tail -f <current_trace_log> | /opt/emc/scaleio/mdm/bin/trace_decompress | grep volumeBlock_HandleQueryCleanVaeResponse
- Identificer
TGT. Se efter linjer, der ligner følgende, i det filtrerede output:
TGT 41a903f100000036 not done yet
Hvis ikonet TGT ID forbliver konsistent over tid, det svarer sandsynligvis til den involverede SDS-node. Kør trin 3 igen for at bekræfte, at det forbliver konsekvent.
- Kør følgende kommando for at få vist en liste over alle SDS-noder og matche
TGTID med SDS-navn/IP-adresse:
scli --query_all_sds
- Når du har de nødvendige oplysninger, kan du derefter
SSHtil det pågældende SDS, og genstart SDS-tjenesten ved at køre:
pkill sds
På version 3.6.7
- Serialiser volumenadministrationshandlinger – kør kun én sletning, ændring af størrelse eller migrering ad gangen.
- Reducer I/O-belastningen på de berørte beskyttelsesdomæner, mens migreringerne kører.
- Undgå massemigreringer af vTree; batch dem i små grupper.
- Du må ikke sætte en migrering på pause eller annullere den, når netværket viser ustabilitet.
Disse handlinger mindsker sandsynligheden for samtidig timerbrug og reducerer dermed panikforekomster.
Påvirkede versioner
PowerFlex Core 3.x.x.x
Løst i version
PowerFlex Core 3.6.7.1