MYCSS

Показ дописів із міткою ipmitool. Показати всі дописи
Показ дописів із міткою ipmitool. Показати всі дописи

2023-04-04

Нотатка: IPMI Watchdog timer, скидання та встановлення через ipmitool

Сучасні серверні материнські плати мають можливість контролювати свій "живий" стан через спеціальний сторожовий таймер (Watchdog timer).

Налаштування Watchdog Timer у BIOS.
 

2017-11-26

Нотатка. Віддалене керування живленням сервера через IPMI.

Стався випадок коли локальний сервер шлюз маршрутизатор вимкнувся. І що робити?
Віддалений доступ при цьому заблокований.
Тому на всяк такий випадок, до з'ясування причини вимкнення, налаштував віддалений моніторинг стану живлення через  IPMI, і у випадку якщо він вимкнутий запускаю команду ввімкнення.
Для керування використовую  внутрішній сервер з freebsd, встановлюю пакунок ipmitool, і створюю запит:
ipmitool -H 192.168.1.1 -U admin -P admin chassis power status
Chassis Power is on

Тепер формую скрип котрий за розкладом cron кожні 15 хв. буде перевіряти чи ввімкнений сервер.
#!/bin/sh
>state=$(/usr/local/bin/ipmitool -H 192.168.1.1 -U admin -P admin chassis power status| grep 'is off')
if [ ! -z "$state" ]
then
 /usr/local/bin/ipmitool -H 192.168.1.1 -U admin -P admin chassis power on | /usr/bin/logger -p user.notice -t "Power control [GW was off]".
fi

Якщо потрібне керування з операційної системи Windwos то потрібен пакунок з проекту http://ipmiutil.sourceforge.net, завантажую ipmiutil-3.0.7-win64.zip.

Статус:
ipmiutil.exe reset -n  -N 192.168.1.1 -U admin -P admin
Ввімкнення:
ipmiutil.exe reset -u  -N 192.168.1.1 -U admin -P admin
Для безпеки рекомендую на сторінці керуванням BMC сервера додати спеціального користувача:

Користувачі iKVM
Спеціальний користувач для керування живленням
І використовувати цього користувача у запитах замість admin.

2017-09-30

Оновлення сторожового апаратного таймера Watchdog2 у pfSense через IPMI

З'ясував що версії pfSense версій 2.3.4, 2.4.0, не обробляє оновлення апаратного сторожового таймера материнської плати з Watchdog2.
Виправляв ось так:
Додати підтримку IPMI у ядро:
Додавання рядка ipmi_load="YES" до файлу /boot/loader.conf.local
/boot/loader.conf.local - ipmi_load="YES"

Потрібно перезавантажити систему і перевірити чи є підтримка IPMI з терміналу:
cat /var/log/dmesg.boot | grep ipmi

/var/log/dmesg.boot

З терміналу читаємо значення сенсорів:
ipmitool sensor

ipmitool sensor, перевірка наявності Watchdog2

Надалі необхідно оновити значення сенсора, це можна зробити за допомоги команди watchdog
$watchdog -d -t 300
shifted 549755813888
seconds_to_pow2ns: seconds: 300, ns 300000000000, power 39
Timeout for -t is 2^39 nanoseconds (in: 300 sec -> out: 549 sec 755813888 ns -> 549757 ticks)
Timeout is 2^39 nanoseconds

І повторювати її періодично, наприклад правилами планувальника cron:
Періодичне оновлення значення сенсора Watchdog2
Або можна запустити у фоновому режимі програму watchdogd.
watchdogd  -s 60 -t 300

Також можна скинути значення таймера виконавши  команду ipmitool:
$ipmitool mc watchdog reset
IPMI Watchdog Timer Reset -  countdown restarted!

Або визначити поточне значення таймера:
$ipmitool mc watchdog get
Watchdog Timer Use:     SMS/OS (0x44)
Watchdog Timer Is:      Started/Running
Watchdog Timer Actions: Hard Reset (0x01)
Pre-timeout interval:   0 seconds
Timer Expiration Flags: 0x08
Initial Countdown:      549 sec
Present Countdown:      545 sec

Або вимкнути таймер повністю:
$ipmitool mc watchdog off
Watchdog Timer Shutoff successful -- timer stopped

Тоді можна змінити cron на ipmitool mc watchdog reset:
ipmitool mc watchdog reset


Використано материнську плату Asus P10S-C/4L з модулем ASMB8-iKVM.
Налаштування Watchdog timer в BIOS через віддалене підключення iKVM.
Коли забув ти рідну мову, біднієш духом ти щодня...
When you forgot your native language you would become a poor at spirit every day ...

Д.Білоус / D.Bilous
Рабів до раю не пускають. Будь вільним!

ipv6 ready