PowerFlex: Liiallinen dataroolin vaihtaminen aiheuttaa IO-viivettä ja virheitä

Сводка: Tässä artikkelissa kerrotaan, miten liiallinen dataroolien vaihtaminen aiheuttaa I/O-viivettä ja -virheitä.

Данная статья применяется к Данная статья не применяется к Эта статья не привязана к какому-либо конкретному продукту. В этой статье указаны не все версии продуктов.

Симптомы

Tietyissä klusteritilasiirtymissä MDM-roolitasapainologiikka voi tuottaa nopeita, toistuvia ensisijaisia/toissijaisia roolikytkimiä useissa kammoissa (sisäiset tietorakenteet, jotka seuraavat, mitkä SDS-solmut tallentavat kutakin volyymidataa). Jokainen roolikytkin mitätöi asiakaspuolen (SDC) kampakartat ja pakottaa I/O-uudelleenyritykset. Kun ongelma koskee riittävän monta kampaa samanaikaisesti, kumulatiivinen uudelleenyrityksen yleiskustannus aiheuttaa I/O-viivepiikkejä ja I/O-virheitä SDC-isännissä. Palvelinympäristöstä riippuen tämä voi aiheuttaa sovellusten I/O-aikakatkaisuja, virtuaalikoneiden siirtymistä kirjoitussuojattuun tilaan tai tiedostojärjestelmän poissaoloja.

Tämä toiminta on havaittu useissa laukaisuskenaarioissa, eikä se rajoitu yksittäisiin toimintatapoihin.

Yhteiset indikaattorit

  • MDM_DATA_DEGRADED tapahtuma, jota seuraa jatkuva I/O-viive, joka kestää 1–15+ minuuttia
  • SDC-isännät ilmoittavat I/O-virheistä ja/tai I/O-aikakatkaisuista heikentyneen ikkunan aikana
    • VMware (ESXi): VMFS-sykeaikakatkaisut, SCSI-laitteistovirheet (sense data: 0x4 0x0 0x0), virtuaalikoneiden siirtyminen vain luku -tilaan, mahdollinen HA-vikasietoisuus
    • Linux: I/O-virheet järjestelmälokeissa (/var/log/messages, dmesg), sovelluksissa voi olla I/O-aikakatkaisuja tai tiedostojärjestelmä saattaa käynnistyä uudelleen vain luku -muodossa
  • MDM-tapahtumalokeissa järjestelmä näkyy HEIKENTYNEESSÄ tilassa odotettua pidempään yksittäisen SDS-menetyksen varalta.
  • Järjestelmä palautuu lopulta itsestään normaalitilaan ilman manuaalisia toimia (yleensä)
 
Huomautus: Tätä kirjoitettaessa ongelmasta on raportoitu ainoastaan ympäristöissä, joissa on VMware (ESXi)- ja Linux SDC -isäntiä. Windows SDC -isäntiin vaikuttavasta toiminnasta ei ole tunnettuja raportteja, mutta taustalla oleva vika on MDM-ydinlogiikassa eikä käyttöjärjestelmäkohtainen.


Tilanne 1: Armoton SDS-menetys (ei ylläpitotilaa)

Milloin se voi tapahtua:

  • Tämä on harvinainen skenaario. Jotta nopeat, toistuvat roolinvaihtotapahtumat voivat tapahtua häpeällisen SDS-menetyksen aikana, useiden erityisolosuhteiden on täytyttävä samanaikaisesti:
    • Laajamittainen ympäristö - merkittävä määrä SDS-solmuja ja taltioita
    • Raskas tuotannon I/O-kuorma - merkittävä I/O-toiminta SDS:n vikaantuessa
    • Uudelleenmuodostuskuormitus ylittää käsittelykapasiteetin – Uudelleenmuodostusta edellyttävien metatietorivien määrä ylittää MDM-tasapainottajan jaksokohtaisen 1 024 rivin rajan.

Jokainen tasapainotusjakso voi käsitellä jopa 1 024 metatietoriviä. Kun lisää rivejä on muodostettava uudelleen, tasapainottaja ei voi viimeistellä nykyistä suunnitelmaa ennen seuraavan luomista.

Mitä tapahtuu:

  • SDS irtoaa äkillisesti MDM:stä (tapahtuma SDS_DECOUPLED)
  • Kaikki kyseiseen SDS:ään yhteydessä olleet SDC:t menettävät yhteytensä, → SDC katkaisee yhteyden
  • MDM merkitsee klusterin heikentyneeksi (tapahtuma) MDM_DATA_DEGRADED)
  • Koska uudelleenmuodostettavien rivien määrä on yli 1 024, MDM-tasapainottaja ei voi suorittaa nykyistä tasapainotussuunnitelmaa loppuun
  • Täsmäyttäjä aloittaa uuden suunnitelman edellisen suunnitelman ollessa vielä käynnissä ja tuottaa nopeita, toistuvia roolinvaihtotapahtumia
  • Asiakasohjelmien SDC:t näkevät jatkuvia I/O-virheitä (IO_FAULT_NOT_PRI, SCSI sense 0x4). Kun uudelleenyritykset on käytetty, isäntäkäyttöjärjestelmä ilmoittaa I/O-virheistä, aikakatkaisuista tai vain luku -tiedostojärjestelmästä
  • MDM-jäljitystodisteet:

Kun työmäärän tasapainotus ylittää 1 024 rivin rajan, MDM-jäljitys näyttää kynnysarvon ylittymisen:

2026/03/28 22:43:53.246702 MED:7f1f984aedb0:balanceExec_HandleDegradedRows:00343: BALANCER: Storage Pool: 1193844800000000 - 1024 rows processed out of 1098 degraded rows. 0 allocation failures. 0 cumulative allocation failures.

Tämä osoittaa, että 1 098 riviä oli muodostettava uudelleen, mutta vain 1 024 voitiin käsitellä nykyisessä syklissä. Jäljellä olevat rivit käynnistävät uuden tasapainotussuunnitelman ennen kuin edellinen suunnitelma on valmis, mikä käynnistää palautesilmukan.

Tapahtumaketju:

Log Source     Event / Pattern
MDM events     SDS_DECOUPLED — SDS formally declared dead
MDM events     MDM_DATA_DEGRADED — Cluster enters DEGRADED state
SDS traces     Flood of IO_FAULT_NOT_PRI — SDS received IO for a comb it is no longer primary for
ESXi vmkernel  SCSI sense data: 0x4 0x0 0x0 — Hardware error
MDM events     MULTIPLE_SDC_CONNECTIVITY_CHANGES — Mass SDC connectivity storm
MDM events     SDC_DISCONNECTED_FROM_SDS_IP — SDCs losing contact with the failed SDS
Esimerkki MDM-tapahtumajärjestyksestä:
SDC_DISCONNECTED_FROM_SDS_IP    SDC disconnected from SDS <name>
SDS_DECOUPLED                   SDS <name> decoupled
MDM_DATA_DEGRADED               The system is now in DEGRADED state

Tilanne 2: SDS-virrankatkaisu PMM-syötön aikana

Milloin se voi tapahtua:
Tämä on harvinainen tilanne, joka edellyttää kahta samanaikaista tapahtumaa:

  • Käyttöturvallisuustiedote on siirtymässä Protected Maintenance Mode (PMM) -tilaan
  • SDS epäonnistuu tai sammuu, ennen kuin PMM-siirtymä on valmis

Mitä tapahtuu: 

  • MDM vastaanottaa PMM-merkintäkomennon ja kirjaa sen onnistuneeksi
  • SDS irrotetaan odottamatta, kun PMM-merkintä on vielä kesken
  • MDM merkitsee klusterin heikentyneeksi
  • Roolin tasapainottaja siirtyy jatkuvaan roolikytkinsilmukkaan koko PMM:n siirtymisvaiheen ajan
  • Muut kuin PMM-tietorivit vaihdetaan toistuvasti roolilla koko tallennusvarannossa
  • Myrsky jatkuu, kunnes käyttöturvallisuustiedote liittää klusterin uudelleen ja suorittaa ylläpitotilaan siirtymisen loppuun

Tapahtumaketju:

Log Source  Event / Pattern
MDM events  CLI_COMMAND_SUCCEEDED — enter_protected_maintenance_mode command succeeded
MDM events  SDS_DECOUPLED — SDS decoupled before maintenance mode started
MDM events  MDM_DATA_DEGRADED — Cluster enters DEGRADED state
SDS traces  Repeated role-switch operations across non-PMM rows

Esimerkki MDM-tapahtumajärjestyksestä:

CLI_COMMAND_SUCCEEDED            Command enter_protected_maintenance_mode succeeded
SDS_DECOUPLED                    SDS <name> decoupled
MDM_DATA_DEGRADED               The system is now in DEGRADED state

Kun käyttöturvallisuustiedotteeseen liitytään uudelleen ja PMM valmistuu:

SDS_MAINTENANCE_MODE_STARTED     SDS maintenance mode started
MDM_DATA_NORMAL                 The system is now in NORMAL state

Tilanne 3: Käyttöturvallisuustiedote välittömässä ylläpitotilassa (IMM)

Milloin se voi tapahtua:
Käyttöturvallisuustiedote siirtyy tai poistuu pikahuoltotilasta (IMM). Tämä tilanne ilmenee, kun yksittäinen SDS on huoltotilassa eikä järjestelmä pysty päättämään, mikä SDS käsittelee tiettyjen tietojen I/O:ta.

Mitä tapahtuu:

  • Järjestelmä muuttaa toistuvasti, mikä käyttöturvallisuustiedote vastaa samojen tietojen tarjoamisesta
  • Nämä jatkuvat muutokset tarkoittavat, että sovellukset eivät tiedä, minne lähettää I/O-pyyntönsä
  • I/O lähetetään väärään SDS:ään, mikä aiheuttaa uudelleenyrityksiä ja viiveitä
  • Sovellukset kokevat viivettä tai aikakatkaisuja yrittäessään käyttää tietoja, joita ongelma koskee

Vaikutus:

  • Vaikutus asiakkaaseen: Sovellukset ilmoittavat viiveestä ja aikakatkaisuista, kun SDS on IMM: ssä
  • Kesto: Jatkuu, kun käyttöturvallisuustiedote on IMM-tilassa
  • Recovery: Automaattinen - ratkaisee, kun SDS sulkee IMM: n

Tapahtumaketju:

Log Source  Event / Pattern
SDS traces  Repeated role-switch operations on the same data
SDS traces  Primary and secondary role switches on identical data

Tilanne 4: SDS Poistuminen suojatusta huoltotilasta (PMM)

Milloin se voi tapahtua:
SDS poistuu Protected Maintenance Mode (PMM) -tilasta. Tämä skenaario tapahtuu jokaisen PMM-poistumisen aikana - se ei ole harvinainen tapahtuma, mutta vakavuus riippuu siitä, kuinka kauan huoltotila kesti.

Mitä tapahtuu:

  • Kun SDS sulkee PMM:n, roolien tasapainottajan on määritettävä tietosegmentit uudelleen sisältämään palaava SDS
  • Uudelleentasapainotusprosessi vaikuttaa koko tallennusvarantoon, ei vain palaavan SDS:n tietoihin
  • Roolinvaihtoja esiintyy monissa tietosegmenteissä uudelleenintegroinnin aikana
  • Sovellukset saattavat kokea lyhyitä I/O-virheitä tai viiveitä roolimääritysten tasaantuessa

Vaikutus:

  • Vaikutus asiakkaaseen: Lyhyissä huoltoikkunoissa (alle 5 sekuntia) vaikutus on tuskin havaittavissa. Pitkäaikaisessa kunnossapidossa aktiivisella I/O:lla voi esiintyä tuhansia roolikytkimiä, jotka aiheuttavat jatkuvia I/O-katkoksia
  • Kesto: Jatkuu uudelleenintegrointivaiheen aikana, kunnes tasapainotus on valmis
  • Recovery: Automaattinen

Tapahtumaketju:

Log Source  Event / Pattern
MDM events  Role-switch operations across the storage pool during exit
SDS traces  Repeated role-switch operations during reintegration

Esimerkki MDM-tapahtumajärjestyksestä:

SDS_MAINTENANCE_MODE_EXIT_STARTED    SDS maintenance mode exit started
SDS_MAINTENANCE_MODE_EXIT_COMPLETED   SDS maintenance mode exit completed

Lokitulokset:
 

Huomautus: Alla olevat lokiesimerkit ovat yleisiä esityksiä malleista, joita on havaittu tämän ongelman useissa esiintymissä. Ne eivät ole sidoksissa mihinkään edellä lueteltuun skenaarioon - samat kuviot näkyvät liipaisimesta riippumatta.


MDM-tapahtumalokit: MDM-tapahtumaloki näyttää klusteritason järjestyksen. Avainindikaattorit ovat roolikytkintoiminnot huoltotilasta poistumisen aikana.

SDS-jäljityslokit: SDS-solmujen jäljityslokeissa näkyy toistuvia roolinvaihtotoimintoja uudelleenintegroinnin aikana:

raidComb_SetPriTgtGenNum: combId <id> combGenNum: cur <gen> new <gen>
contCmd_SetCombState: CombId <id> devId <id> PRI->SEC Switch roles
contCmd_SetCombState: CombId <id> devId <id> SEC->PRI Switch roles

Suuri määrä Switch-rooleja lyhyessä ajassa (tuhansia tai enemmän sekunneissa) on tämän ongelman lopullinen SDS-puolen ilmaisin.

SDC-/isäntälokit: VMware (ESXi) SDC I/O -uudelleenyritykset, joissa näkyy kampa, kohde-SDS ja vikakoodi:

vmkernel log
PowerFlex mapVolIO_Do_CK:1496 :Mit: <addr>. Retrying IO Type WRITE. Failed comb: <id>. SDS_ID <id>. Comb Gen <gen>. Head Gen <gen>.
PowerFlex mapVolIO_Do_CK:1510 :Mit: <addr>. Vol ID <id>. Last fault Status IO_FAULT_NOT_PRI(12). Retry count (1)

Jos uuvutetaan uudelleen, SCSI-virheet palautetaan: 

sense data: 0x4 0x0 0x0   -- SCSI Hardware Error

Diagnostinen vinkki: Jos näet I/O-virheitä useissa SDS-solmuissa (ei vain solmussa, jossa ongelma ilmeni), tämä saattaa tarkoittaa roolinvaihtomyrskyä normaalin heikentyneen tilan toiminnan sijaan. Jos I/O-virheet on eristetty yhteen SDS:ään, tämä on odotettua heikentyneen tilan toimintaa.

Tilanne 5: Ylläpitotilan vaihesiirtymät 

Milloin se voi tapahtua:
Siirtymän aikana, kun SDS siirtyy tai poistuu huoltotilasta (IMM tai PMM) - tällä hetkellä tila muuttuu normaalista MM: ksi tai MM: stä takaisin normaaliksi.

Mitä tapahtuu:

  • Roolien tasapainottaja jakaa tietovastuut uudelleen muutoksen mukaan
  • Roolinvaihdoksia esiintyy lyhyitä jaksoja, kun järjestelmä sopeutuu uuteen järjestelyyn
  • Sovelluksissa voi esiintyä lyhyitä viivepiikkejä siirtymän aikana

Vaikutus:

  • Vaikutus asiakkaaseen: Lyhyet viivepiikit, jotka kestävät sekunnista muutamaan minuuttiin. Yleensä sovelluksen aikakatkaisurajojen alapuolella
  • Kesto: Kestää sekunnista muutamaan minuuttiin ja asettuu sitten
  • Recovery: Automaattinen

Tapahtumaketju:

Log Source  Event / Pattern
SDS traces  Brief role-switch operations during phase transitions

Причина

MDM-roolitasapainologiikan ohjelmistovirhe aiheuttaa takaisinkytkentäsilmukan, kun klusterin tila siirtyy SDS:n menetyksen tai ylläpitotilan vuoksi.

Tietyissä olosuhteissa MDM määrittää toistuvasti uudelleen, mitkä SDS-solmut vastaavat I/O-palvelusta kammioille, joita ongelma koskee. Jokainen uudelleenmääritys mitätöi SDC:n välimuistiin tallennetun näkymän tietojen sijainnista, mikä pakottaa I/O-yritykset uudelleen. Kun ongelma koskee useita kampoja samanaikaisesti, uudelleenmääritysten määrä ylittää SDC:iden päivityskyvyn, mikä johtaa jatkuviin I/O-virheisiin useissa isännissä.

Myrsky on tyypillisesti itsestään rajoittuva. Se häviää, kun klusteri vakautuu, mutta kesto riippuu suojaustoimialueen koosta ja I/O-kuormituksesta tapahtumahetkellä.

Разрешение

Ongelma on korjattu PowerFlex Core -versiossa 4.5.6. Päivitä tähän versioon, kun se on saatavilla. Pyydä tiedot julkaisuaikataulusta Dell-tuelta .

Suunnitellut huoltotoimenpiteet:

  • Älä sammuta SDS:ää tai käynnistä sitä uudelleen, ennen kuin MDM on kirjautunut lokiin SDS_MAINTENANCE_MODE_STARTED. Varmista, että käyttöturvallisuustiedote on siirtynyt kokonaan huoltotilaan, ennen kuin jatkat fyysistä huoltoa.
  • Tarkkaile viivepiikkejä, kun siirryt ylläpitotilaan tai poistut siitä.

Suunnittelemattomat SDS-käyttökatkot:

  • Myrsky on itsestään rajoittuva ja häviää tyypillisesti muutamassa minuutissa klusterin vakautuessa. Jos ongelma ilmenee, kerää getinfo lokit kaikista suojaustoimialueen SDS-solmuista, kaikista hallinta-MDM:istä mahdollisimman pian tapahtuman jälkeen ja ota yhteys Dellin tukeen.

Harvoissa tapauksissa, joissa ongelma ei ratkea itsestään, MDM voi vakautua ottamalla uudelleenkoonnin tilapäisesti pois päältä ja ottamalla sen uudelleen käyttöön:

scli --set_rebuild_mode --protection_domain_name <pd_name> --storage_pool_name <sp_name> --disable_rebuild

# Odota 5-10 sekuntia ja ota sitten uudelleenmuodostus käyttöön: 

scli --set_rebuild_mode --protection_domain_name <pd_name> --storage_pool_name <sp_name> --enable_rebuild

 

Tärkeää: Klusterin vikasietoisuutta on vähennetty, kun uudelleenmääritys on poissa käytöstä. Poista uudelleenmääritys käytöstä vain niin kauan, että järjestelmä vakautuu, ja ota sitten uudelleen käyttöön välittömästi. Suosittelemme suorittamaan tämän toiminnon Dellin tuen opastuksella. 

 

Huomautus: Uudelleenmuodostusta hallitaan tallennusvarantojen tasolla. Jos kyseisellä SDS:llä on laitteita useissa tallennusvarannoissa, käytä tätä toimintoa kuhunkin tallennusvarantoon, jota ongelma koskee. Tämä ei vaikuta tallennusvarantoihin, jotka eivät sisällä kyseisen SDS:n laitteita. Protection Domain-, Storage Pool- ja SDS-to-device-määritykset voidaan tunnistaa scli --query_all komentojen tulos. 

Затронутые продукты

PowerFlex rack, PowerFlex Appliance, PowerFlex rack connectivity, PowerFlex Software
Свойства статьи
Номер статьи: 000450312
Тип статьи: Solution
Последнее изменение: 12 May 2026
Версия:  5
Получите ответы на свои вопросы от других пользователей Dell
Услуги технической поддержки
Проверьте, распространяются ли на ваше устройство услуги технической поддержки.