APC UPS batareyasining zaryadlash darajasi juda muhim bo'lsa, VMWare ESXi gipervizorini to'g'ri o'chirish

PowerChute Business Edition-ni qanday sozlash va PowerShell-dan VMWare-ga qanday ulanish haqida ko'plab maqolalar mavjud, ammo men bularning barchasini bir joyda, nozik nuqtalarning tavsifi bilan topa olmadim. Lekin ular mavjud.

1. Kirish

Energiya bilan qandaydir aloqamiz borligiga qaramay, ba'zida elektr energiyasi bilan bog'liq muammolar paydo bo'ladi. Bu erda UPS o'ynaydi, lekin uning batareyalari, afsuski, uzoq davom etmaydi. Nima qilish kerak? O'chirib qo'yish!

Barcha serverlar jismoniy bo'lsa-da, ishlar yaxshi ketayotgan edi, PowerChute Business Edition bizga yordam berdi. Bepul, 5 ta server uchun, bu juda etarli edi. Bir mashinada agent, server va konsol o'rnatildi. Oxiriga yaqinlashganda, agent shutdown.exe /s /m ni qo'shni serverlarga yuboradigan buyruq faylini bajardi va keyin uning OS ni o'chirib qo'ydi. Hamma tirik.
Keyin virtual mashinalar vaqti keldi.

2. Fon va aks ettirish

Xo'sh, bizda nima bor? Hech narsa yo'q - Windows Server 2008 R2 o'rnatilgan bitta jismoniy server va Windows Server 2019, Windows Server 2003 va CentOS kabi bir nechta virtual mashinalari bo'lgan bitta gipervisor. Va yana bir UPS - APC Smart-UPS.

Biz NUT haqida eshitgan edik, lekin uni hali oΚ»rganishga ulgurmadik; biz faqat qoΚ»limizdagi narsadan foydalandik, yaΚΌni PowerChute Business Edition.

Gipervisor o'zining virtual mashinalarini o'zi o'chirib qo'yishi mumkin; qolgan narsa unga vaqt kelganligini aytishdir. VMWare.PowerCLI shunday foydali narsa bor, bu hipervisorga ulanish va unga kerak bo'lgan hamma narsani aytib berish imkonini beruvchi Windows Powershell uchun kengaytma. Shuningdek, PowerCLI sozlamalari haqida ko'plab maqolalar mavjud.

3. Jarayon

UPS jismonan 2008 yil serverining com portiga ulangan edi, xayriyatki, u erda edi. Garchi bu muhim bo'lmasa-da - interfeys konvertori (MOXA) orqali istalgan virtual Windows serveriga ulanish mumkin edi. Bundan tashqari, barcha harakatlar UPS ulangan mashinada amalga oshiriladi - Windows Server 2008, agar boshqacha ko'rsatilmagan bo'lsa. Unga PowerChute Business Edition agenti o'rnatildi. Mana birinchi nozik nuqta: agent xizmati tizimdan emas, balki foydalanuvchi tomonidan ishga tushirilishi kerak, aks holda agent cmd faylini bajara olmaydi.

Keyin biz .Net Framework 4.7 ni o'rnatdik. Bu yerda qayta ishga tushirish talab qilinadi, agar ramka o'rnatishdan so'ng uni aniq so'ramasa ham, aks holda u boshqa ketmaydi. Keyinchalik, yangilanishlar hali ham kelishi mumkin, ular ham o'rnatilishi kerak.

Keyin PowerShell 5.1 ni o'rnatdik. Shuningdek, qayta ishga tushirishni talab qiladi, agar u so'ramasa ham.
Keyin PowerCLI 11.5 ni o'rnating. Juda yangi versiya, shuning uchun oldingi talablar. Siz buni Internet orqali qilishingiz mumkin, bu haqda ko'plab maqolalar mavjud, ammo biz uni allaqachon yuklab oldik, shuning uchun biz barcha fayllarni Modules papkasiga ko'chirdik.

Tekshirildi:

Get-Module -ListAvailable

OK, biz o'rnatganimizni ko'ramiz:

Import-Module VMWare.PowerCLI

Ha, Powershell konsoli, albatta, Administrator sifatida ishga tushiriladi.

Powershell sozlamalari.

  • Har qanday skriptni bajarishga ruxsat bering:

Set-ExecutionPolicy Unrestricted

  • Yoki faqat skript sertifikatlarini e'tiborsiz qoldirishga ruxsat berishingiz mumkin:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned 

  • PowerCLI-ga yaroqsiz (muddati o'tgan) sertifikatlarga ega serverlarga ulanishga ruxsat bering:

Set-PowerCLIConfiguration -InvalidCertificateAction ignore -confirm:$false

  • Tajriba almashish dasturiga qo'shilish haqidagi PowerCLI xabarining chiqishini to'xtating, aks holda jurnalda juda ko'p keraksiz ma'lumotlar bo'ladi:

Set-PowerCLIConfiguration -Scope User -ParticipateInCEIP $false

  • VMWare xostiga kirish uchun foydalanuvchi hisob ma'lumotlarini skriptda aniq ko'rsatmaslik uchun saqlang:

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

Tekshirish orqali biz kimni saqlaganimiz ko'rsatiladi:

Get-VICredentialStoreItem

Shuningdek, ulanishni tekshirishingiz mumkin: Connect-VIServer manzili.

Skriptning o'zi, masalan: ulangan, o'chirilgan, o'chirilgan, faqat quyidagi variantlar mumkin:


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

4. Standart.cmd

APC agenti tomonidan ishga tushirilgan bir xil ommaviy ish fayli. U β€œC:Program Files[(x86)]APCPowerChute Business Editionagentcmdfiles”da joylashgan va ichida:

"C: Windowssystem32WindowsPowerShellv1.0powershell.exe" -Fayl "C:...shutdown_hosts.ps1"
Hamma narsa sozlangan va tekshirilganga o'xshaydi, biz hatto cmd-ni ishga tushirdik - u to'g'ri ishlaydi, uni o'chiradi.

Biz APC konsolidan buyruq fayli sinovini o'tkazamiz (u erda Sinov tugmasi mavjud) - u ishlamayapti.

Mana, barcha bajarilgan ishlar hech narsaga olib kelmagan o'sha noqulay daqiqa.

5. Katarsis

Biz vazifa menejeriga qaraymiz, biz cmd miltillovchilarini, powershell fleshlarini ko'ramiz. Keling, batafsil ko'rib chiqaylik - cmd *32 va shunga mos ravishda powershell *32. Biz buni tushunamiz APC agent xizmati 32 bitli, ya'ni u mos keladigan konsolni boshqaradi.

Biz powershell x86-ni administrator sifatida ishga tushiramiz va PowerCLI-ni 3-bosqichdan yana o'rnatamiz va sozlaymiz.

Keling, powershell qo'ng'iroq liniyasini o'zgartiraylik:

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

6. Baxtli yakun!

Manba: www.habr.com

a Izoh qo'shish