Zuzen ezazu VMWare ESXi hipervisorearen itzaltzea APC UPS bateriaren karga-maila kritikoa denean

Artikulu asko daude PowerChute Business Edition nola konfiguratu eta PowerShell-etik VMWare-ra konektatzeko moduari buruz, baina nolabait ezin izan dut hori guztia leku bakarrean aurkitu, puntu sotilen deskribapen batekin. Baina existitzen dira.

1. Istorio

Energiarekin nolabaiteko lotura dugun arren, batzuetan elektrizitatearekin arazoak sortzen dira. Hor sartzen da UPSa, baina bere pilek, ai, ez dute asko irauten. Zer egin? Itzali!

Zerbitzari guztiak fisikoak ziren arren, gauzak ondo zihoazen, PowerChute Business Edition-k lagundu zigun. Doan, 5 zerbitzaritarako, nahikoa zen. Agente bat, zerbitzari bat eta kontsola instalatu ziren makina batean. Amaiera hurbildu ahala, agenteak shutdown.exe /s /m inguruko zerbitzarietara bidali zuen komando-fitxategi bat besterik ez zuen exekutatu, eta ondoren bere OS itzali. Denak bizirik daude.
Gero makina birtualen garaia iritsi zen.

2. Aurrekariak eta hausnarketak

Orduan, zer daukagu? Ezer ez: zerbitzari fisiko bat Windows Server 2008 R2-rekin eta hipervisor bat hainbat makina birtual dituena, Windows Server 2019, Windows Server 2003 eta CentOS barne. Eta beste UPS bat - APC Smart-UPS.

NUT-en berri izan genuen, baina oraindik ez gara ikastera iritsi; esku artean genuena bakarrik erabili genuen, PowerChute Business Edition, alegia.

Hipervisoreak bere makina birtualak itzal ditzake; ordua dela esatea besterik ez da geratzen. Badago VMWare.PowerCLI gauza erabilgarria, hau Windows Powershell-erako luzapena da, hipervisorera konektatzeko eta behar duzun guztia kontatzeko aukera ematen duena. Artikulu asko ere badaude PowerCLI ezarpenei buruz.

3. Prozesua

UPS 2008ko zerbitzariaren com portura fisikoki konektatuta zegoen, zorionez hor zegoen. Hau garrantzitsua ez den arren, interfaze bihurgailu baten bidez (MOXA) konektatu ahal izan zen edozein Windows zerbitzari birtual batera. Gainera, ekintza guztiak UPS konektatuta dagoen makinan egiten dira - Windows Server 2008, esplizituki kontrakoa adierazten ez bada. PowerChute Business Edition agentea instalatu zen bertan. Hona hemen lehen puntu sotila: agente zerbitzua ez da sistematik abiarazi behar, erabiltzailetik baizik, bestela agenteak ezin izango du cmd fitxategia exekutatu.

Ondoren .Net Framework 4.7 instalatu genuen. Berrabiarazi behar da hemen, nahiz eta esparruak ez badu berariaz eskatzen instalatu ondoren, bestela ez da urrunago joango. Ondoren, eguneraketak etor daitezke oraindik, eta horiek ere instalatu behar dira.

Ondoren, PowerShell 5.1 instalatu genuen. Berrabiaraztea ere eskatzen du, galdetzen ez badu ere.
Ondoren, instalatu PowerCLI 11.5. Nahiko azken bertsioa, hortik aurreko baldintzak. Internet bidez egin dezakezu, honi buruzko artikulu asko daude, baina dagoeneko deskargatu dugu, beraz, fitxategi guztiak Moduluak karpetan kopiatu besterik ez dugu egin.

Egiaztatua:

Get-Module -ListAvailable

Ados, instalatu dugula ikusten dugu:

Import-Module VMWare.PowerCLI

Bai, Powershell kontsola Administratzaile gisa abiarazi da noski.

Powershell ezarpenak.

  • Baimendu edozein script exekutatzen:

Set-ExecutionPolicy Unrestricted

  • Edo script ziurtagiriei ez ikusi egin diezaiokezu soilik:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned 

  • Baimendu PowerCLI ziurtagiri baliogabeak (iraungitakoak) dituzten zerbitzarietara konektatzeko:

Set-PowerCLIConfiguration -InvalidCertificateAction ignore -confirm:$false

  • Ezabatu esperientzia trukatzeko programan sartzeari buruzko PowerCLI mezuaren irteera, bestela erregistroan beharrezkoa ez den informazio asko egongo da:

Set-PowerCLIConfiguration -Scope User -ParticipateInCEIP $false

  • Gorde erabiltzailearen kredentzialak VMWare ostalarian saioa hasteko, scriptean esplizituki ez erakusteko:

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

Egiaztatzeak nor gorde dugun erakutsiko du:

Get-VICredentialStoreItem

Konexioa ere egiaztatu dezakezu: Connect-VISserver helbidea.

Scripta bera, adibidez: konektatuta, itzalita, deskonektatuta badaezpada, aukera hauek posible dira:


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

4. Lehenetsia.cmd

APC agenteak abiarazten duen batch fitxategi bera. "C:Program Files[(x86)]APCPowerChute Business Editionagentcmdfiles"-en dago, eta barruan:

"C:Windowssystem32WindowsPowerShellv1.0powershell.exe" - "C:...shutdown_hosts.ps1" fitxategia
Badirudi dena konfiguratuta eta egiaztatuta zegoela, cmd ere abiarazi genuen - ondo funtzionatzen du, itzaltzen du.

Komando-fitxategiaren proba bat egiten dugu APC kontsolatik (proba botoia dago hor) - ez du funtzionatzen.

Hona hemen, egindako lan guztiak ezertarako balio ez duen momentu baldar hori.

5. Katarsia

Ataza-kudeatzaileari begiratzen diogu, cmd flashak, powershell flashak ikusten ditugu. Ikus dezagun hurbilagotik - cmd *32 eta, horren arabera, powershell *32. Hori ulertzen dugu APC agente-zerbitzua 32 bitekoa da, hau da, dagokion kontsola exekutatzen du.

Powershell x86 abiarazten dugu administratzaile gisa, eta PowerCLI 3. urratsetik berriro instalatu eta konfiguratzen dugu.

Beno, alda dezagun powershell deien linea:

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

6. Amaiera zoriontsua!

Iturria: www.habr.com

Gehitu iruzkin berria