CloudLink-krypterede PowerFlex SDS-enhedsfejl efter genstart på grund af, at SDS-tjenesten starter, før CloudLink-agenten låser drev op
Summary: Når PowerFlex SDS-enheder krypteres af CloudLink, kan mappernavnene ændres efter en genstart. Dette får SDS-enhederne til at ændre rækkefølgen, og de vises som mislykkede i PowerFlex-brugergrænsefladen. ...
Symptoms
Berørte produkter: Den specifikke kombination, der omfatter:
- PowerFlex 3.6
- Cloudlink 7.1
- RHEL 8.x
- SDS-enheder krypteret af CloudLink
Efter en genstart kan CloudLink-krypterede SDS-enheder vises som mislykkede i PowerFlex-brugergrænsefladen på grund af omarrangering af enhedsmapper.
Startenhedens logiske kortlægning kan skifte mellem det første og det sidste enhedsbogstav.
SDS-fejlene kan også opstå efter genstart, hvis SDS-tjenesten starter, før CloudLink har låst drevene op. Dette vil blive rettet i CloudLink version 7.0.2.
Cause
- Den krypterede CloudLink-mapper bruger drevbogstavet som identifikator. (f.eks. /dev/mapper/svm_sdb)
- Når drevbogstavet ændres, ændres mappenavnet
- Under genstart kan drevbogstavet ændre sig, afhængigt af om startdrevet eller SDS-drevene registreres først.
- Dette kan også ske, hvis SDS-tjenesten starter, før CloudLink-agenten har låst drevene op.
Resolution
Løsning til ændring af drevbogstav:
-
Valgmulighed 1:
- Stop SDS-tjenesten på PowerFlex-noden (/opt/emc/scaleio/sds/bin/delete_service.sh).
- Ryd alle SDS-advarsler. Dette bør få PowerFlex til at scanne systemet igen for de nye enhedsnavne og begynde at bruge dem. (Findes i præsentationsserverenheder>).
- Genstart SDS-tjenesten efter (/opt/emc/scaleio/sds/bin/create_service.sh).
-
Valgmulighed 2: Fjern SDS-drevene fra PowerFlex, og tilføj dem igen. (findes i præsentationsserverenheder>)
-
Valgmulighed 3: Genstart PowerFlex-noden, og diskrækkefølgen ændres muligvis tilbage til den oprindelige tilknytning.
Hvis efterfølgende genstarter bruger det nye drevbogstavformat, fortsætter SDS-fejlene med at forekomme ved genstart. Hvis du vil ændre PowerFlex-drevbogstaverne, så SDS-fejl ikke opstår, skal du køre følgende scli-kommandoer:
Find sds_id af den SDS-node, der havde fejlene:
Scli --query_all_sds
Opdatering med de nye drevbogstaver:
Scli --update_sds_original_paths -sds_id <id>
Udsæt PowerFlex-starten, indtil CloudLink låser drevene op:
CloudLink-opgraderinger til 7.0x, 7.1, 7.1.1 og 7.1.2 fjerner en 60 sekunders sleeptimer i /opt/emc/extra/pre_run.sh på SDS-noder. Dette vil forårsage SDS-fejl efter en genstart, fordi PowerFlex begynder at bruge drevene, før de låses op af CloudLink. For at forhindre SDS-fejl ved genstart skal du tilføje 60 sekunders forsinkelse tilbage i /opt/emc/extra/pre_run.sh på SDS-noder efter en CloudLink-agentopgradering. Dette forsinker SDS-tjenestens start, indtil de krypterede drev er blevet låst op af CloudLink.
Et eksempel, der viser 60 s forsinkelse tilføjet til pre_run.sh:
#!/bin/bash -f if [ -f /sbin/svm ]; then echo svm is installed $(date) >> /var/log/svm-sds /sbin/svmd -l /var/log/svmd.log -p /var/run/svmd.pid & end=$((SECONDS+300)) while [ $SECONDS -lt $end ]; do /sbin/svm unlocked > /dev/null && break sleep 5 done fi sleep 60 echo pre_run returned...$(date) >> /var/log/svm-sds
Permanent løsning:
- Nye implementeringer – Installer CloudLink 7.1.2 og PowerFlex 3.6.0.2
- Eksisterende systemer: Opgrader til CloudLink 7.1.2 og PowerFlex 3.6.0.2
CloudLink 7.1.2 og PowerFlex 3.6.0.2 bruger /dev/disk/by-id/.... Og brug derfor navnene /dev/mapper/svm_wwn-XXXX vs de logiske /dev/svm_sdXXX.