Mbyllja korrekte e hipervizorit VMWare ESXi në nivelin kritik të ngarkesës së baterisë së UPS-it APC

Në hapësirat online ka shumë artikuj rreth mënyrës se si të konfigurohet PowerChute Business Edition dhe si të lidhet me VMWare nga PowerShell, por ndonjëherë nuk është takuar të gjitha këto në një vend, me përshkrimin e detajeve të hollësishme. Dhe ato ekzistojnë.

1. Hyrje

Pavarësisht se çfarë lidhjeje kemi me energjinë, ndonjëherë problemet me elektricitetin ndodhin. Këtu hyn në lojë UPS, por edhe bateritë e tij, fatkeqësisht, nuk janë qëndrueshme. Çfarë të bëjmë? Të fikim!

Derisa të gjitha serverët ishin fizikë, gjërat shkonin mirë, na ndihmonte PowerChute Business Edition. Falas, për 5 serverëve, që ishte krejt mjaftueshëm. Në një makinë ishte instaluar agjenti, serveri dhe konsola. Kur afronte fundi, agjenti thjesht ekzekutonte një skedar komandë, në të cilin dergohej shutdown.exe /s /m në serverat fqinj, dhe pastaj fikte sistemin e vet operacional. Të gjithë janë në rregull.
Pastaj erdhi koha makinave virtuale.

2. Të dhënat dhe refleksionet

Pra, çfarë kemi? Absolutisht asgjë – një server fizik me Windows Server 2008 R2 dhe një hipervizor me disa makina virtuale, ndërmjet të cilave ka edhe Windows Server 2019, edhe Windows Server 2003, dhe CentOS. Dhe gjithashtu UPS – APC Smart-UPS.

Kemi dëgjuar për NUT, por nuk kemi pasur kohë për ta studiuar, kemi përdorur vetëm atë që ishte në dorë, konkretisht PowerChute Business Edition.

Hipervizori janë të aftë të përfundojnë automatikisht punën e mašinave të tyre virtuale, vetëm duhet t'i thuhet se është koha. Ekziston një funksionalitet shumë i dobishëm, VMWare.PowerCLI, një zgjerim për Windows Powershell, i cili lejon lidhjen me hipervizorin dhe t'i transmetosh gjithçka që nevojitet. Ka shumë artikuj në internet për konfigurimin e PowerCLI.

3. Procesi

UPS u lidh fizikisht në portin com të serverit 2008, që ishte i pranishëm. Megjithatë, kjo nuk është thelbësore - mund të lidhemi përmes një konvertori interfejsesh (MOXA) me çdo server virtual Windows. Të gjitha veprimet e mëtejshme kryhen në makinën e lidhur me UPS-in - Windows Server 2008, përveç nëse shprehimisht është thënë ndryshe. Këtu vendosëm agentin PowerChute Business Edition. Këtu është momenti i parë delikat: shërbimi i agjentit duhet të aktivizohet nga përdoruesi, jo nga sistemi, përndryshe agjenti nuk do të mund të ekzekutojë skedarin cmd.

Më pas, instaluam .Net Framework 4.7. Këtu kërkohet një ripërtritje, edhe nëse framework-u nuk e kërkon qartë pas instalimit, ndryshe nuk do të vazhdojë. Pas kësaj, mund të vijnë përditësime, të cilat gjithashtu duhet të instalohen.

Më pas, instaluam PowerShell 5.1. Edhe këtu kërkohet një ripërtritje, edhe nëse nuk e kërkon.
Më vonë instaloni PowerCLI 11.5. Një version mjaft i ri, prandaj kërkesat e mëparshme. Mund ta shkarkoni përmes internetit, për këtë ka shumë artikuj, por ne e kishim tashmë të shkarkuar, ndaj thjesht i kopjuam të gjithë skedarët në dosjen Modules.

Kontrolluam:

Get-Module -ListAvailable

Ok, shohim, kemi instaluar:

Import-Module VMWare.PowerCLI

Po, konsola PowerShell sigurisht që është e hapur si Administrator.

Cilësimet e PowerShell.

  • Lejoni ekzekutimin e çdo skripti:

Set-ExecutionPolicy Unrestricted

  • Ose lejoni vetëm që të injoroni certifikatën e skriptit:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned 

  • Lejoni lidhjen PowerCLI me servera me certifikata të pavlefshme (të skaduara):

Set-PowerCLIConfiguration -InvalidCertificateAction ignore -confirm:$false

  • Shtypni daljen e mesazhit PowerCLI për lidhjen me programin e shkëmbimit të përvojës, përndryshe do të ketë shumë mesazhe të panevojshme në log:

Set-PowerCLIConfiguration -Scope User -ParticipateInCEIP $false

  • Ruani të dhënat e kredencialeve të përdoruesit për t'u lidhur në hostin VMWare, që të mos i ekspozoni shprehimisht në skript:

New-VICredentialStoreItem -Host address -User user -Password 'password'

Kontrolli do të tregojë kë keni ruajtur:

Get-VICredentialStoreItem

Mund të kontrolloni lidhjen gjithashtu: Connect-VIServer address.

Një skenar i tillë, për shembull: u lidhëm, fikëm, për çdo rast u çmontuam, mund të ketë variacione:


    Connect-VIserver -Server $vmhost 
    Stop-VMHost $vmhost -force -Confirm:$false 
    Disconnect-VIserver $vmhost -Confirm:$false

4. Default.cmd

Ai skedar komandues që aktivizohet nga agjenti APC. Ndodhet në “C:Program Files[ (x86)]APCPowerChute Business Editionagentcmdfiles”, dhe brenda:

«C:Windowssystem32WindowsPowerShellv1.0powershell.exe» -File «C:…shutdown_hosts.ps1»
Duket se gjithçka është konfiguruar dhe kontrolluar, madje e hapëm cmd – funksionon si duhet, e fik.

Aktivizojmë nga konsola APC kontrollin e skedarit komandues (aty është një buton Test) – nuk funksionon.

Ja momenti i sikletshëm, kur e gjithë puna e bëra nuk çoi në asgjë.

5. Katerzis

Shikojmë menaxherin e detyrave, shohim – cmd hëngri, powershell hëngri. E shohim me vëmendje – cmd *32 dhe, përkatësisht, powershell *32. Kuptojmë se shërbimi i agentit APC është 32-bit, dhe do të thotë se aktivizon konsolën përkatëse.

Aktivizojmë powershell x86 si administrator, e bëjmë njëherë tjetër instalimin dhe konfigurimin e PowerCLI nga pika 3.

Tani e ndryshojmë rreshtin e thirrjes së powershell:

"C:Windows<b>SysWOW64</b>WindowsPowerShellv1.0powershell.exe…

6. Fundi i lumtur!

Burimi: habr.com

Bli një hosting të besueshëm për faqet me mbrojtje DDoS, VPS VDS serverë 🔥 Bli një hosting të besueshëm për faqet me mbrojtje DDoS, VPS VDS serverë | ProHoster