Перейти до основного вмісту

Налаштування apcupsd для зупинення VM в EXSi

Стандартно, для моніторингу і керування ДБЖ при роботі з сервером VMware 5.5 пропонується налаштувати спеціальну VMware vSphere Management Assistant (vMA), але тоді треба ще ДБЖ з модулем network mamagement.
(https://communities.vmware.com/docs/DOC-9308)

Але можна встановити Ubuntu як VM, на ній налаштувати apcupsd і тоді керувати ESXi. На цій VM можна ще багато інших задач моніторингу і керування виконувати.

Спочатку встановлюємо Ubuntu 16, налаштовуємо мережеве з'єднання.
Завантажуємо модуль керування ДБЖ apcupsd, якщо потрібно через WEB інтерфейс слідкувати за станом ДБЖ, то треба додатково встановити модулі apcupsd-cgi та WEB сервер за допомогою:
# apt-get install apcupsd apcupsd-cgi apache2

Для керування ESXi будемо використовувати plink, тому треба встановити putty-tools за допомогою:
# apt-get install putty-tools

Підключаємо кабель керування ДБЖ до сервера за допомогою COM чи USB. Налаштовуємо підключення ДБЖ до сервера в /etc/apcupsd/apcupsd.conf.
В /etc/default/apcupsd вказуємо ISCONFIGURED=yes, щоб apcupsd міг запускатись.

Вказуємо, що apcupsd треба запускати при старті і запускаємо (в Ubuntu 16) за допомогою:
# systemctl enable apcupsd.service
# systemctl start apcupsd.service

Перевіряємо підключення і роботу за допомогою:
# apcaccess.

Щоб ESXi могла коректно зупинити усі VM треба в них обов'язково встановити vmware-tools.

Тепер створюємо в /etc/apcupsd скрипт doshutdown
наступного змісту
#!/bin/sh
export HOME=/home/user
plink -ssh -2 -pw password root@xxx.xxx.xxx.xxx "/sbin/shutdown.sh && /sbin/poweroff"
exit 99

Код виходу має значення
exit code 99 - apccontrol stops after this script, so no shutdown of this host. this is for testing purposes
exit code 0 - apccontrol continues with shutdown after this script

А ключовий рядок у скрипті це "export HOME=/home/user" , бо без нього plink не хоче працювати. Вручну якщо запустити doshutdown, то все працює, а якщо коли станеться відключення енергії, коли apcupsd виконує apccontrol, скрипт doshutdown виконується, але plink не працює.

Відповідь знайшов в
https://ubuntuforums.org/archive/index.php/t-2249211.html


Авжеж, погано, що у цьому випадку, прямо в скрипті вказується пароль. Можна спробувати створити публічний ключ rsa, записати його на ESXi в /etc/ssh/authorized_keys і налаштувати вхід без паролю.

З PuTTY 0.71 з міруквань безпеки plink перед з'єднанням вимагає натиснути клавіш Enter.
Щоб цього уникнути треба до plink додати параметр -no-antispoof або -batch.


Пораду знайшов тут
https://stackoverflow.com/questions/57735695/how-to-submit-plink-access-granted-press-return-to-begin-session-prompt-autom


Ще кілька варіантів налаштування є в
https://gist.github.com/gschora/a10f0692e6e691aa1af8

https://habr.com/ru/sandbox/101324/
http://yakim.org.ua/articles/servers/158-ups-esxi.html
http://thehelpfulhacker.net/2012/11/02/graceful-ups-shutdowns-for-your-esxi-server-with-centos/
https://communities.vmware.com/docs/DOC-9531
http://serverfault.com/questions/462993/vmware-esxi-shutdown-triggered-by-apc-ups-connected-via-usb

Коментарі

Популярні дописи з цього блогу

Подключение Cisco 7911/7912 по SIP к Asterisk

Аппарат Cisco IP Phone 7911 по-умолчанию настроен на использование протокола SCCP. Можно в Asterisk указать использование модулей SCCP, но для единообразия удобнее использовать SIP. Для использования протокола SIP в аппарате Cisco 7911 нужно обновить программное обеспечение.  Код обновления для загрузки в аппарат нужно скачать с сервера Cisco: http://tools.cisco.com/support/downloads/pub/Redirect.x?mdfid=278875240 Самое последнее обновление (на данный момент версия 9.3) может не работать c Asterisk, с  версии 9.X Cisco переходит на использование только TCP для SIP соединений. Поэтому для использования UDP удобнее скачать обновление версии 8.5.2 или 8.5.4. Может понадобится  вначале   установить обновление 8.5.2, а затем 8.5.4. Например, для обновления с SCCP11.8-2-2SR-4S надо вначале установить 8.5.2 Обновление будет производится с сервера  TFTP, поэтому д ля начала нужно настроить сервер DHCP, TFTP. Причем в DHCP нужно настроить опцию 150, которая используется для указания аппа

Панель инструментов Remmina в полноэкранном режиме Ubuntu 12.04

Пакет Remmina 0.9.99 (протокол RDP) в системе Ubuntu 12.04 используется как клиент для доступа к терминальному серверу. Обнаружено странное поведение панели инструментов в полноэкранном режиме на терминальном сервере- панель инструментов исчезает и невозможно перейти в другое окно или закрыть сеанс. Для сворачивания окна можно использовать комбинацию клавиш CTRL+F9. Комбинации клавиш задаются в настройках Remmina, а CTRL нужно, чтобы комбинацию не перехватил терминальный сервер. В настройках Remmina есть параметр "Спрятать панель инструментов в полноэкранном режиме". Но иногда, даже если не указан этот параметр, меню не отображается. Можно, не закрывая терминальную сессию, изменить этот параметр на противоположный и после возврата в сессию, меню начнет появляться. В следующий раз перед открытием новых сессий в Remmina нужно правильно указать значение этого параметра. Размер иконок в панели инструментов можно изменить через основное меню Remmina

Изменение размера бумаги LibreOffice(OpenOffice)

Если при установке Ubuntu указать локаль «USA», то размер бумаги по-умолчанию установится «Letter». Если потом через «Система- Администрирование- Локализации» изменить локаль на «Украинский» («Русский»), изменится язык системы, формат даты, но размер бумаги по-умолчанию и единица измерения останутся прежними.  Совет нашел в http://www.nixp.ru/recipes/%D0%9A%D0%B0%D0%BA-%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D1%8C-%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80-%D0%B1%D1%83%D0%BC%D0%B0%D0%B3%D0%B8-%D0%B2-OpenOffice-org-%D0%BF%D0%BE-%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E-%28libpaper%29.html Нужно в терминале запустить sudo dpkg-reconfigure libpaper1 В открывшемся списке выбрать формат А4. Можно напрямую в файле конфигурации (/etc/papersize) указать размер А4. Проверить можно в LibreOffice(OpenOffice) через меню «Формат-Страница». Еще в LibreOffice(OpenOffice) нужно изменить единицу измерения через «Сервис- Параметры- LibreOffice Writer- Общие»