CloudLink-krypterade PowerFlex SDS-enhetsfel efter omstart på grund av att SDS-tjänsten startar innan CloudLink-agenten låser upp enheter
Summary: När PowerFlex SDS-enheter krypteras av CloudLink kan mappernamnen ändras efter en omstart. Detta gör att SDS-enheterna ordnas om och de visas som misslyckade i PowerFlex-gränssnittet.
Symptoms
Berörda produkter: Den specifika kombination som omfattar:
- PowerFlex 3.6
- Molnlänk 7.1
- RHEL 8.x
- SDS-enheter krypteras av CloudLink
Efter en omstart kan de CloudLink-krypterade SDS-enheterna visas som misslyckade i PowerFlex-gränssnittet på grund av omordning från enhetsmappningen.
Den logiska mappningen av startenheten kan växla mellan den första och sista enhetsbokstaven.
SDS-felen kan även inträffa efter omstarter om SDS-tjänsten startar innan CloudLink har låst upp enheterna. Detta kommer att åtgärdas i CloudLink version 7.0.2.
Cause
- Den krypterade CloudLink-mapparen använder enhetsbokstaven som identifierare. (till exempel /dev/mapper/svm_sdb)
- När enhetsbeteckningen ändras ändras mappningsnamnet
- Under omstarten kan enhetsbeteckningen ändras beroende på om startenheten eller SDS-enheterna upptäcks först.
- Detta kan även inträffa om SDS-tjänsten startar innan CloudLink-agenten har låst upp enheterna.
Resolution
Lösning för ändring av enhetsbeteckning:
-
Alternativ 1:
- Stoppa SDS-tjänsten på PowerFlex-noden (/opt/emc/scaleio/sds/bin/delete_service.sh).
- Rensa alla SDS-varningar. Det bör leda till att PowerFlex söker igenom systemet efter de nya enhetsnamnen och börjar använda dem. (Finns i presentationsserverenheter>.)
- Starta om SDS-tjänsten efter (/opt/emc/scaleio/sds/bin/create_service.sh).
-
Alternativ 2: Ta bort SDS-enheterna från PowerFlex och lägg till dem igen. (finns i presentationsserverenheter>)
-
Alternativ 3 Starta om PowerFlex-noden och diskordningen kan ändras tillbaka till den ursprungliga mappningen.
Om efterföljande omstarter använder det nya enhetsbokstavsformatet fortsätter SDS-felen att inträffa vid omstarterna. Om du vill ändra PowerFlex-enhetens bokstäver så att SDS-fel inte uppstår kör du följande scli-kommandon:
Hitta sds_id för SDS-noden som hade felen:
Scli --query_all_sds
Uppdatera med de nya enhetsbeteckningarna:
Scli --update_sds_original_paths -sds_id <id>
Fördröj PowerFlex-start tills CloudLink låser upp enheterna:
CloudLink-uppgraderingar till 7.0x, 7.1, 7.1.1 och 7.1.2 tar bort en 60 sekunders insomningstimer i /opt/emc/extra/pre_run.sh på SDS-noder. Detta orsakar SDS-fel efter en omstart eftersom PowerFlex börjar använda enheterna innan de låses upp av CloudLink. För att förhindra SDS-fel vid omstart lägger du till 60 sekunders fördröjning i /opt/emc/extra/pre_run.sh på SDS-noder efter en CloudLink-agentuppgradering. Detta fördröjer SDS-tjänstens start tills de krypterade enheterna har låsts upp av CloudLink.
Ett exempel som visar 60 sekunders fördröjning tillagd i 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:
- Nya distributioner – Installera CloudLink 7.1.2 och PowerFlex 3.6.0.2
- Befintliga system: Uppgradera till CloudLink 7.1.2 och PowerFlex 3.6.0.2
CloudLink 7.1.2 och PowerFlex 3.6.0.2 kommer att använda /dev/disk/by-id/.... Och använd därför namnen /dev/mapper/svm_wwn-XXXX istället för de logiska /dev/svm_sdXXX.