PowerFlex: Kør script på værtsfunktion (aka OS Patching) forklaret

Summary: Funktionen bruges til at køre brugerleverede scripts på servere, der er vært for MDM- eller SDS-komponenter. Funktionen kan bruges til ethvert formål uden for PowerFlex-systemet, såsom at køre et sæt Linux shell-kommandoer, lappe et operativsystem og mere. ...

Ez a cikk a következő(k)re vonatkozik: Ez a cikk nem vonatkozik a következő(k)re: Ez a cikk nem kapcsolódik egyetlen konkrét termékhez sem. Ez a cikk nem azonosítja az összes termékverziót.

Instructions

UI – Pre-PFMP (PowerFlex 4.x)

Forudsætninger

Obligatorisk - hovedscriptet er placeret i /opt/emc/scaleio/lia/bin/ mappe med udførelsestilladelser.

  • Scriptnavnet skal være patch_script 

Valgfrit – valideringsscriptet findes i /opt/emc/scaleio/lia/bin/ mappe med udførelsestilladelser.

  • Scriptnavnet skal være verification_script


> Funktionen understøttes kun på Linux (RHEL og SLES).
> Funktionen kontrollerer, om afslutningskoden er 0 (nul) i slutningen af udførelsen.
> Afslutningskoder og scriptkørsel kan findes i LIA-logfilerne.
> Det er kundens ansvar at teste patch_script og verification_script, før processen køres ved hjælp af Gateway.
> Funktionsplacering: Vedligeholde → systemlogfiler og analyse → køre script på værter.

GW vedligeholdelse 
Run script 

Trin og flows

Kører script på:
1. Hele systemet – alle PowerFlex-noder
Som standard kører scriptet på den første værts beskyttelsesdomæne (PD) og flyttes derefter til det andet osv.
Parallelt på forskellige beskyttelsesdomæner deaktiveret - som standard er afkrydsningsfeltet ryddet.
Oplysninger om PD 
Parallelt på forskellige aktiverede beskyttelsesdomæner – ved at vælge denne indstilling kører patch_script parallelt på alle PD'er.
PD er, der ikke har MDM, er de første, og klyngenoder er de sidste.
2_2 (1).png

2. Beskyttelsesdomæne – en specifik PD
PD er, der ikke har MDM er, er den første, og MDM-klyngenoderne er den sidste.

3. Fejlsæt - en bestemt FS.
FS er, der ikke har MDM'er, er først, og MDM-klyngenoder er sidste.

4. SDS – en enkelt SDS-node


Kører konfiguration:
1. Stop processen ved scriptfejl.
1.1 Stop processen ved scriptfejl aktiveret - som standard er afkrydsningsfeltet markeret.
Hele kørslen mislykkes og stopper, når patch_script (og verification_script, hvis valgt) afsluttes med en anden kode end 0 (nul).
Kørsel af config 
1.2 Stop processen ved scriptfejl deaktiveret.
Hvis patch_script mislykkes, mislykkes udførelsen af den node, og systemet flytter til den næste node og kører patch_script på den node.
Kørsel af config 

2. Timeout for script – Hvor lang tid skal der ventes på, at patch_script afsluttes?
Kørsel af scriptet har en konfigurerbar timeout, som vælges af brugeren.
Som standard konfigureret til 15 minutter → på grund af en fejl er timeout hårdt kodet til 15 minutter i versioner, der er ældre end PowerFlex 3.6.
Hele kørslen mislykkes og stopper, når scriptkørslen er timeout.

3. Bekræftelsesscript – Vil du køre verification_script, når patch_script er kørt?
3.1 Kør - patch_script kører, og når det er gjort, køres verification_script, afhængigt af om den patch_script post-handling skulle genstarte eller ej (sektion #4).
3.2 Kør ikke - patch_script kører, og når det er gjort, stopper hele kørslen og afsluttes med succes.
Kørsel af config 

4. Handling efter script – Vil du genstarte noden, når patch_script er kørt?
4.1 Genstart - når patch_script er færdig med at køre og afsluttet med kode 0 (nul), genstarter noden og stopper eller fortsætter, afhængigt af om verification_script blev valgt til at køre eller ej (sektion #3).
Hvis Gateway er på en node, der skal genstartes, genstarter den ikke, handlingen lykkes, og der vises en pop-up, der minder os om at genstarte den manuelt.
4.2 Genstart ikke - når patch_script er færdig med at køre og afsluttet med kode 0 (nul), genstarter noden ikke og stopper eller fortsætter, afhængigt af om verification_script blev valgt til at køre eller ej (sektion #3).
Kørsel af config 


Kør script på værter:
Tryk på "Run Script on Hosts" -->Valider fasestart .
Denne fase sender en anmodning til hver af nodens LIA for at bekræfte eksistensen af patch_script- og verification_script-filerne (hvis valgt) under /opt/emc/scaleio/lia/bin/.
Kodelogikken vælger en tilfældig liste over noder, der skal køres på (i henhold til de nævnte betingelser).
Run script 


Start udførelsesfasen:
Tryk på knappen "Start udførelsesfase".
1. Gateway foretager følgende verificeringer:

en. Kontrollér, at der ikke er nogen fejlbehæftet kapacitet.
b. Tjek den gyldige ekstra kapacitet.
c. Kontroller den gyldige klyngetilstand.
d. Kontroller, at intet andet sikkerhedsdatablad er i vedligeholdelsestilstand.

2. Sæt sikkerhedsdatabladet i vedligeholdelsestilstand.
3. Kør patch_script - efter en vellykket kørsel slettes filen, og der oprettes en sikkerhedskopifil af den på samme mappe.
Med navnet backup_patch_script
4. Genstart værten (hvis valgt)
5. Kør verification_script (hvis valgt) - efter en vellykket kørsel slettes filen, og der oprettes en sikkerhedskopifil af den på samme mappe med navnet backup_verification_script.
6. Afslut sikkerhedsdatabladet fra vedligeholdelsestilstand.
7. Handlingen blev gennemført.
Start udførelsesfase (1).png

 

RESTAPI – Post-PFMP (PowerFlex 4.x)

  • Kør et patchscript på alle eller nogle af systemnoderne med en valgfri genstart og et valgfrit verifikationsscript. Operationen har en vis grad af parallelisme.
  • Scriptfilerne skal gemmes i nodens mappe: /opt/emc/scaleio/lia/bin Alternativt kan GW uploade dem til noden. Scriptene kan enten tages fra en lokal GW-mappe eller downloades fra HTTP/HTTPS-deling.
  • Der kan leveres en liste over SdsId'er og/eller mdmId'er, så du eksplicit kan vælge de noder, der skal køres på.
  • Filnavnene er hårdt kodede og kan ikke ændres: patch_script og verification_script

REST-kommando

  • /im/types/Konfiguration/handlinger/liaRunOsPatching

Påkrævede parametre

  • En af følgende parametre er obligatorisk: pdIds/fsIds/sdsIds/mdmIds / executeOnAllSdss / executeOnAllMdms
    • pdIds  - køre på alle noder, der er en del af følgende beskyttelsesdomæner (PD-id'er), i decimalformat
    • fsIds  - køre på alle noder, der er en del af følgende fejlsæt (FS Id'er), i decimalformat
    • sdsIds  - køre på alle SDS'er, der er anført af id'er, i decimalformat
    • mdmIds  - køre på alle MDM'er, der er angivet efter id'er, i decimalformat
    • executeOnAllSdss  - Kør på alle SDS'er (sandt / falsk)
    • executeOnAllMdms  - kør på alle MDM'er (sandt / falsk)

Valgfrie parametre

  • isRebootRequired - Skal hver node genstartes efter at have kørt patchscriptet (værdier: true/false)
  • isVerificationScriptRequired - Skal verifikationsscriptet køre på hver node (værdier: sand/falsk)
  • isRunningInParallelOnPds - skal operationen køre parallelt på noder, der tilhører forskellige PD'er (værdier: sand/falsk)
  • isStopProcessingOnScriptFailure - skal hele operationen stoppe i tilfælde af en scriptfejl (værdier: sand/falsk)
  • TimeoutMs - timeout for at køre patch-scriptet i millisekunder
  • isUploadFileNeeded  - Skal GW uploade scripts til noderne (værdier: sand/falsk)

Følgende felter er relevante, når isUploadFileNeeded  er 'sand':

  • patchScriptFilePath  - enten det lokale mappenavn eller en http/https-URL til patchscriptet
  • verificationScriptFilePath  - enten det lokale mappenavn eller en http/https-URL til verifikationsscriptet
  • maintenanceModeType  - Type af vedligeholdelsestilstand(værdier: IMM/PMM)
  • verificationScriptTimeoutSec  - timeout for verifikationsscript på få sekunder
  • rebootTimeoutSec  - Timeout for genstart af node på få sekunder

Bemærk, at før du kører liaRunOsPatching-kommandoen, skal du først logge ind og hente systemkonfigurationen, se eksemplet nedenfor.
 

Eksempel på kommando

*tokenvariablen indeholder Keycloak-tokenet, der blev returneret fra /auth/login eller fra /api/gatewayLogin.
**<ip-address> – IP-adressen på en http-server, der indeholder de scripts, der skal køres

Få json for en systemkonfiguration, som vil være nyttelasten for patch-kommandoen (skal erstatte liaPassword og mdmPassword manuelt fra null til en streng).


Indsæt outputtet af denne kommando (med faste adgangskoder) i config.json filen:

curl -s -X POST -k -H  "Content-Type: application/json" -d '{ "mdmIps":["1.2.3.4","5.6,7,8"], "mdmUser":"<mdm_username>", "mdmPassword":"<mdm_password>", "securityConfiguration":{ "allowNonSecureCommunicationWithMdm":"true", "allowNonSecureCommunicationWithLia":"true", "disableNonMgmtComponentsAuth":"false" } }' -H "Authorization: Bearer ${token}"  https://<m&o-ip-address>/im/types/Configuration/instances
 


Kør patch-kommandoen:

 
curl -v -k -X -i POST -H "Content-Type:application/json" -H "Authorization: Bearer ${token}" 
 "https:/<m&o-ip-address>/im/types/Configuration/actions/liaRunOsPatching?executeOnAllSdss=true &isRebootRequired=true&isVerificationScriptRequired=true&patchScriptFilePath=https://<ip-address>/patch_script&verificationScriptFilePath=https://<ip-address>/verification_script&maintenanceModeType=IMM&rebootTimeoutSec=30" -d @config.json
 

    Additional Information

    Logfiler

    Gateway:

    • /opt/emc/scaleio/gateway/logfiler/scaleio.log
    • /opt/emc/scaleio/gateway/logfiler/scaleio-trace.log

    LIA:
    /opt/emc/scaleio/lia/logs/trc.x

    Drikkepenge- Speciel switch til at holde scriptet i noden under fejlfinding eller test:

    • Rediger fil /opt/emc/scaleio/gateway/webapps/ROOT/WEB-INF/classes/gatewayInternal.properties
    • Find feltet "ospatching.delete.scripts=false"
    • Skift til sand til fejlfinding (standard er falsk)

    Érintett termékek

    PowerFlex rack, ScaleIO
    Termék tulajdonságai
    Article Number: 000206981
    Article Type: How To
    Utoljára módosítva: 23 szept. 2025
    Version:  4
    Választ kaphat kérdéseire más Dell-felhasználóktól
    Támogatási szolgáltatások
    Ellenőrizze, hogy a készüléke rendelkezik-e támogatási szolgáltatással.