Пример работы с IPMI

Процесс установки zabbix а так же дополнительных различных вспомогательных программ
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 847
Стаж: 5 лет 6 месяцев
Откуда: Вологодская область
Поблагодарили: 37 раз
Контактная информация:

Пример работы с IPMI

Сообщение Артём Мамзиков »

Для выполнения проверок по IPMI Zabbix сервер должен быть изначально сконфигурирован с поддержкой IPMI.
Мы уже собирали с поддержкой Установка Заббикс 4.2 на Debian 9 Stretch x64
Zabbix IPMI мониторинг работает только с устройствами, имеющими поддержку IPMI (HP iLO, DELL DRAC, IBM RSA, Sun SSP и т.п.).
Узел сети всегда опрашивается только одним IPMI поллером одновременно, уменьшая количество открытых подключений к BMC контроллерам.
Можно безопасно увеличивать количество IPMI поллеров, не беспокоясь о перегрузке BMC контроллеров.
Процесс IPMI менеджер автоматически запускается, если запускается хотя бы один IPMI поллер.

Устанавливаем если не установлено ipmitool

Код: Выделить всё

apt-get install ipmitool
По умолчанию, Zabbix сервер не запускает IPMI поллеры, в файл конфигурации сделайте следующие настройки

Код: Выделить всё

nano /usr/local/etc/zabbix_server.conf
StartIPMIPollers=3

Сохраните файл, после чего перезапустите zabbix_server.

Код: Выделить всё

service zabbix-server restart
Смотрите также известные проблемы по IPMI проверкам.
Показать
Показать
IPMI проверки не будут работать со стандартным пакетом библиотеки OpenIPMI на Debian до 9 (stretch) версии и Ubuntu до 16.04 (xenial). Чтобы исправить проблему, пересоберите OpenIPMI библиотеку с включенным OpenSSL, как обсуждалось в ZBX-6139
Скачиваем 2 пакета

Код: Выделить всё

wget http://ftp.br.debian.org/debian/pool/main/o/openipmi/openipmi_2.0.16-1.4_i386.deb

Код: Выделить всё

wget http://ftp.br.debian.org/debian/pool/main/o/openipmi/libopenipmi-dev_2.0.16-1.4_i386.deb
Или загружаем

Код: Выделить всё

apt-get source openipmi
Переходим в папку

Код: Выделить всё

cd openipmi-2*
Отредактируйте файл

Код: Выделить всё

nano debian/rules
Найдите ./configure в разделе "config.status:"
CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) \

Добавить --with-openssl в ./configure:
CFLAGS="$(CFLAGS)" ./configure --with-openssl --host=$(DEB_HOST_GNU_TYPE) \

Также удалите --without-openssl, если он существует
Необязательно: если вы хотите отладить библиотеку openipmi, закомментируйте строки dh_strip, dh_compress.
Сохраните файл

Собираем пакет

Код: Выделить всё

dpkg-buildpackage
Переходим на директорию назад Устанавливаем пакеты

Код: Выделить всё

dpkg -i openipmi*.deb libopenipmi*.deb
Перезапускаем заббикс сервер

Код: Выделить всё

service zabbix-server restart
Оф мануал Проверки IPMI
Обнаружения IPMI датчиков. Поддерживается с Zabbix 5.0.0.
Оф мануал Обнаружение IPMI сенсоров

На наблюдаемом Узле включаем IPMI производим настройки.
ipmi_authtype Алгоритм аутентификации IPMI.
целое число
-1 - по умолчанию
0 - none
1 - MD2
2 - MD5
4 - straight
5 - OEM
6 - RMCP+

ipmi_privilege Уровень привилегий IPMI
целое число
1 - callback обратный вызов
2 - пользователь (по умолчанию)
3 - оператор
4 - админ
5 - OEM
ipmi_username Имя пользователя для IPMI проверок.
ipmi_password Пароль для IPMI проверок.

Переходим в zabbix
В Узле сети указываем
Интерфейсы IPMI: IP/DNS Порт: 623
Пример Узла IPMI
Пример Узла IPMI
Далее во вкладке IPMI указываем параметры аутентификации
Пример Узла IPMI Аунтификации
Пример Узла IPMI Аунтификации
Подключаем необходимый шаблон к узлу
Пример Узла IPMI Шаблон
Пример Узла IPMI Шаблон
Элементы данных
Пример Узла IPMI Элементы данных
Пример Узла IPMI Элементы данных
Часть элементов данных не поддерживается sensor data is not available , так как этих элементов на сервере просто нет, а шаблон делается для всех компонентов в узле деактивируем не рабочие элементы данных.
Начиная с 5 версии zabbix поддерживается Обнаружение элементов данных и на мониторинг встают только рабочие существующие элементы данных.
Можно обнаружение сделать и на более старых версиях с обработкой через скрипт.


Как проверить какие данные доступны через IPMI и создать шаблон если его нет.
Просмотреть можно в ssh например при помощи следующих команд:

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль chassis power status

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor list

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor get 'ИМЯ_СЕНСОРА'

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor get fan1

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sdr

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sdr elist full

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль user list

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль chassis status

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль chassis power status

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sel list
Более подробно какие еще есть команды для утилиты ipmitool ниже во 2 сообщении.

Как работает IPMI в ZABBIX и какие есть нюансы

Пример Настроек шаблона
Шаблон для мониторинга серверов с BMC через IPMI, которые работают без каких-либо внешних скриптов.
Все показатели собираются одновременно, благодаря массовому сбору данных Zabbix.
Он собирает показатели путем удаленного опроса BMC с помощью агента IPMI.

Учетные данные для доступа к BMC (по умолчанию: none)
Системные макросы
{$IPMI.USER}
{$IPMI.PASSWORD}

Пример:
Ключ: ipmi.fan.rpm
IPMI датчик: с которого забирать метрику например 'FAN MOD 1A RPM' на Dell Poweredge
По умолчанию, необходимо указать ID датчика. id: - чтобы указать ID датчика;
Также имеется возможность использования префиксов до самого значения: name: - чтобы указать полное имя датчика.
Эта опция может быть полезна в ситуациях, когда датчики можно отличить, только указав полное имя.


Обычные элементы данных:
Имя: P1_DIMM_A1 Температура
Ключ: ipmi.system.temp_p1dimma1
IPMI датчик: P1_DIMM_A1 Temp

Имя: Напряжение +1.5V
Ключ: impi.system.15v
IPMI датчик: 1.5V

Имя: Питание
Ключ: power
IPMI датчик: power

Имя: ВЕНТИЛЯТОР MOD 1A RPM
Ключ: ipmi.sensor.FAN_MOD_1A_RPM
IPMI датчик: FAN MOD 1A RPM

Имя: Напряжение
Ключ: Voltage
IPMI датчик: Voltage


Время ожидания неактивности IPMI сессии для LAN равняется 60 +/-3 секунд.
Если вы хотите избежать лишнего сканирования BMC, рекомендуется установить интервал опроса IPMI элементов данных
ниже времени ожидания неактивности IPMI сессии, настроенного в BMC.

Поиск дискретных датчиков IPMI, в конфигурации Zabbix сервер установить DebugLevel=4 , перезапустить службу заббикс сервер (перечитать) ждём некоторое время
и в логе файла заббикс сервера ищем строки с Added sensor

Код: Выделить всё

grep 'Added sensor' zabbix_server.log
Пример 3х строк
8358:20130318:111122.171 Added sensor: host:'192.168.1.12:623' id_type:0 id_sz:16 id:'P1 Therm Ctrl %' reading_type:0x1 ('threshold') type:0x1 ('temperature') full_name:'(3.1).P1 Therm Ctrl %'
8358:20130318:111122.170 Added sensor: host:'192.168.1.12:623' id_type:0 id_sz:15 id:'CPU Therm Trip' reading_type:0x3 ('discrete_state') type:0x1 ('temperature') full_name:'(7.1).CPU Therm Trip'
8358:20130318:111122.174 Added sensor: host:'192.168.1.12:623' id_type:0 id_sz:14 id:'BB +1.05V PCH' reading_type:0x1 ('threshold') type:0x2 ('voltage') full_name:'(7.1).BB +1.05V PCH'
8358:20130318:111122.172 Added sensor: host:'192.168.1.12:623' id_type:0 id_sz:13 id:'System Fan 2' reading_type:0x1 ('threshold') type:0x4 ('fan') full_name:'(29.1).System Fan 2'
8358:20130318:111122.170 Added sensor: host:'192.168.1.12:623' id_type:0 id_sz:7 id:'CATERR' reading_type:0x3 ('discrete_state') type:0x7 ('processor') full_name:'(r0.32.3.0).CATERR'
8358:20130318:111122.171 Added sensor: host:'192.168.1.12:623' id_type:0 id_sz:16 id:'Power Unit Stat' reading_type:0x6f ('sensor specific') type:0x9 ('power_unit') full_name:'(21.1).Power Unit Stat'

"тип_чтения"("reading_type").
Для расшифровки кода "reading_type" используйте раздел "Table 42-1, Event/Reading Type Code Ranges" из спецификации.
Большинство датчиков из нашего примера имеют "reading_type:0x1", означающих "порог" датчика.
"Table 42-3, Sensor Type Codes" показывает, что
"type:0x1" - датчик температуры,
"type:0x2" - датчик напряжения,
"type:0x4" - датчик частоты вращения вентилятора системы охлаждения и так далее.
Пороговые датчики иногда называют "аналоговыми" датчиками, так как они измеряют непрерывные параметры,
такие как температуру, напряжение, частоту вращения в минуту.

Другой пример - датчик с
"тип_чтения" "reading_type:0x3".
"Table 42-1, Event/Reading Type Code Ranges" говорит, что коды типов чтения
02h-0Ch означают "Общий Дискретный" датчик.
Дискретные датчики имеют до 15 возможных состояний (другими словами - до 15 значащих бит).
К примеру, для датчика 'CATERR' с
"type:0x7" "Table 42-3, Sensor Type Codes" показывает, что этот тип обозначает "Процессор"
и значение отдельных битов: 00h (наименьший значащий бит) - IERR (внутренняя ошибка процессора), 01h - Перегрев процессора и т.д.

Для датчиков с "reading_type:0x6f".
Для этих датчиков "Table 42-1, Event/Reading Type Code Ranges" советует использовать "Table 42-3,
Sensor Type Codes" для расшифровки значений битов.
Например, датчик 'Power Unit Stat' имеет тип
"type:0x9", который означает "Блок питания".
Смещение 00h означает "Выключено/Обесточено". Другими словами, если младший значащий бит равен 1, то сервер выключен.
Для проверки этого бита можно воспользоваться функцией band с маской '1'. Выражение триггера может выглядеть следующим образом:
bitand(last(/www.example.com/Power Unit Stat,#1),1)=1


Совместное сообщение от промоутеров IPMI (Dell, Hewlett Packard Enterprise, NEC, Intel Corporation):
Никаких дальнейших обновлений спецификации IPMI не планируется и не следует ожидать. Разработчики IPMI рекомендуют поставщикам оборудования и ИТ-менеджерам рассмотреть более современный интерфейс управления системами, который может обеспечить лучшую безопасность, масштабируемость и функциональные возможности для существующих центров обработки данных и поддерживаться на необходимых платформах и устройствах. Стандарт DMTF Redfish (от redfish.dmtf.org) является примером одного из таких интерфейсов.
Примечания:
Приведенное выше утверждение относится только к спецификации IPMI и не должно оказывать влияния на существующие реализации IPMI.
Стандарт Redfish использует значение идентификатора группы IPMI 0x52 (ASCII ‘R’).

Для расшифровки типов датчиков IPMI и их состояний, скачайте копию спецификаций IPMI 2.0
intel ipmi-specifications
ipmi-second-gen-interface-spec-v2-rev1-1
second-gen-interface-spec-v2.pdf
Скачать
ipmi-second-gen-interface-spec-v2-rev1-1.zip
ipmi-second-gen-interface-spec-v2-rev1-1.zip
(5.34 МБ) 20 скачиваний

Заметки о именах дискретных датчиков в OpenIPMI-2.0.16, 2.0.17, 2.0.18 и 2.0.19
Имена дискретных датчиков в OpenIPMI-2.0.16, 2.0.17 и 2.0.18 зачастую имеют дополнительный символ "0" (или какую-то другую цифру или символ), добавленный в конце имени.
Например, тогда как ipmitool и OpenIPMI-2.0.19 отображают имена датчиков как
"PhysicalSecurity" или "CATERR", в OpenIPMI-2.0.16, 2.0.17 и 2.0.18 эти имена - "PhysicalSecurity0" или "CATERR0", соответственно.
Zabbix сервера, использующего OpenIPMI-2.0.16, 2.0.17 и 2.0.18, добавьте к их именам "0" в поле IPMI датчик для элементов данных IPMI агента.
При обновлении OpenIPMI-2.0.19 и выше, элементы данных с такими IPMI дискретными датчиками перейдут в состояние "НЕ ПОДДЕРЖИВАЕТСЯ"
IPMI датчик (удалить '0' в конце)
Некоторые IPMI агенты предоставляют одновременно пороговые и дискретные датчики под одним именем.
предпочтение всегда отдаётся пороговому датчику.

ipmi_available число доступность IPMI агента
0, HOST_AVAILABLE_UNKNOWN - неизвестно
1, HOST_AVAILABLE_TRUE - доступен
2, HOST_AVAILABLE_FALSE - недоступен
ipmi_error - строка сообщение об ошибке IPMI агента или пустая строка

Удаленные команды через IPMI
В случае использования удаленных команд через IPMI нужно использовать следующий синтаксис:
<команда> [<значение>]
где
<команда> - одна из IPMI команд без пробелов
<значение> - 'on', 'off', 'power off', 'reset' или любое положительное целое число. <значение> - опциональный параметр.
Использовать команду IPMI 'reboot' для перезагрузки некоторого удаленного сервера, если он не отвечает на запросы

Известные проблемы
Показать
Описание: Если BMC имеет датчик с пустым пороговым значением, мы получаем ошибку LLD "Не удается создать триггер...".
Требования
Версия Zabbix: 7.0 и выше.
Протестированные версии
Этот шаблон был протестирован на: HP iLO, DELL DRAC, IBM RSA

Конфигурация
Вы можете установить макросы {$IPMI.USER} и {$IPMI.PASSWORD} в шаблоне для использования на уровне хоста.
{$IPMI.USER} Этот макрос используется для доступа к BMC. Он может быть переопределен на уровне хоста или связанного шаблона.
{$IPMI.PASSWORD} Этот макрос используется для доступа к BMC. Он может быть переопределен на уровне хоста или связанного шаблона.
{$IPMI.SENSOR_TYPE.MATCHES} Этот макрос используется при обнаружении датчиков. Он может быть переопределен на уровне хоста или связанного шаблона. По умолчанию: .*
{$IPMI.SENSOR_TYPE.NOT_MATCHES} Этот макрос используется при обнаружении датчиков. Он может быть переопределен на уровне хоста или связанного шаблона. По умолчанию: invalid/недействительный

ipmi_authtype Алгоритм аутентификации IPMI.
целое число
-1 - по умолчанию
0 - none
1 - MD2
2 - MD5
4 - straight
5 - OEM
6 - RMCP+

ipmi_privilege Уровень привилегий IPMI
целое число
1 - callback обратный вызов
2 - пользователь (по умолчанию)
3 - оператор
4 - админ
5 - OEM
ipmi_username Имя пользователя для IPMI проверок.
ipmi_password Пароль для IPMI проверок.

Главный обычный элемент, который получает все датчики со значениями для LLD и зависимых элементов из BMC.
Имя: IPMI get item
Тип: IPMI agent
Ключ: ipmi.get
Хост: 127.0.0.1:623

Зависимое LLD правило обнаружения от главного элемента
Имя: Обнаружение правило для ipmi.get
Тип: Зависимый элемент
Ключ: ipmi.sensor.discovery
От элемента: IPMI get item
LLD Макрос {#SENSOR_ID} JSONPatch $.id

Прототип элемента данных
Имя: IPMI значение для датчика {#SENSOR_ID}
Тип: Зависимый элемент
От элемента: IPMI get item
Ключ: ipmi_sensor[{#SENSOR_ID}]
Тип: Числовой
Предобработка JSONPath
$.[?(@.id=='{#SENSOR_ID}')].value.first()
Когда начнется обнаружение, будет создано по одному элементу для каждого датчика IPMI.
Этот элемент вернет целочисленное значение данного датчика.


Обнаружение дискретных датчиков Открытие дискретных датчиков IPMI.
Тип: Зависимый элемент
Ключ: ipmi.discrete.discovery
Прототип Элемента данных
Имя: IPMI: {#SENSOR_ID} Описание: Это состояние дискретного датчика IPMI. Тип: Зависимый элемент Ключ: ipmi.state_text[{#SENSOR_ID}]
Предварительная обработка:
JSON Path: $.[?(@.id=='{#SENSOR_ID}')].state.text.first()
Discard unchanged with heartbeat: 1d

Прототипы триггеров для обнаружения дискретных датчиков
Имя:IPMI: значение {#SENSOR_ID} изменилось
Описание: Триггер информирует об изменениях в состоянии дискретного датчика IPMI. Проблема, вызванная этим триггером, может быть устранена вручную.
Выражение:
last(/Chassis by IPMI/ipmi.state_text[{#SENSOR_ID}],#1)<>last(/Chassis by IPMI/ipmi.state_text[{#SENSOR_ID}],#2)


Обнаружение пороговых датчиков правил LLD
Имя: Обнаружение пороговых датчиков
Описание: Обнаружение пороговых датчиков IPMI.
Тип: Зависимый элемент
Ключ: ipmi.sensors.discovery

Прототипы элементов для обнаружения пороговых датчиков
Имя IPMI: {#SENSOR_ID}, {#SENSOR_UNIT}
Описание: Это состояние порогового датчика IPMI.
Тип: Зависимый элемент
Ключ: ipmi.value[{#SENSOR_ID}]
Предобработка:
JSON Path: $.[?(@.id=='{#SENSOR_ID}')].value.first()
Discard unchanged with heartbeat: 1h


Прототипы Триггеров для обнаружения пороговых датчиков
Имя:IPMI: значение {#SENSOR_ID} ниже некритического минимума
Описание: Триггер информирует о том, что достигнуто значение, меньшее нижнего некритического порога.
Выражение: min(/Chassis by IPMI/ipmi.value[{#SENSOR_ID}],5m)<{#SENSOR_LO_WARN}
Зависит от:
IPMI: значение {#SENSOR_ID} ниже критического минимума
IPMI: значение {#SENSOR_ID} ниже невосстанавливаемого минимума

Имя: IPMI: значение {#SENSOR_ID} ниже критического минимума
Описание: Триггер информирует о том, что достигнуто значение, меньшее нижнего критического порога.
Выражение: min(/Chassis by IPMI/ipmi.value[{#SENSOR_ID}],5m)<{#SENSOR_LO_CRIT}
Зависит от:
IPMI: значение {#SENSOR_ID} ниже невосстанавливаемого минимума

Имя: IPMI: значение {#SENSOR_ID} ниже невосстанавливаемого минимума
Описание: Триггер информирует о том, что достигнуто значение, меньшее нижнего порога, который невозможно восстановить.
Выражение: min(/Chassis by IPMI/ipmi.value[{#SENSOR_ID}],5m)<{#SENSOR_LO_DISAST}

Имя: IPMI: значение {#SENSOR_ID} превышает некритический максимум
Описание: Триггер информирует о том, что достигнуто значение, превышающее верхний некритический порог.
Выражения: min(/Chassis by IPMI/ipmi.value[{#SENSOR_ID}],5m)>{#SENSOR_HI_WARN}
Зависит от:
IPMI: значение {#SENSOR_ID} превышает критический максимум
IPMI: значение {#SENSOR_ID} превышает невосстанавливаемый максимум

Имя: IPMI: значение {#SENSOR_ID} превышает критический максимум
Описание: Триггер информирует о том, что достигнуто значение, превышающее верхний критический порог.
Выражение: min(/Chassis by IPMI/ipmi.value[{#SENSOR_ID}],5m)>{#SENSOR_HI_CRIT}
Зависит от:
IPMI: значение {#SENSOR_ID} превышает невосстанавливаемый максимум

Имя: IPMI: значение {#SENSOR_ID} превышает невосстанавливаемый максимум
Описание: Триггер информирует о том, что достигнуто значение, превышающее верхний порог, который невозможно восстановить.
Выражение: min(/Chassis by IPMI/ipmi.value[{#SENSOR_ID}],5m)>{#SENSOR_HI_DISAST}
Пример данных:
Получим таблицу:
Sensor Name | Reading | Unit | Status | Lower Non-Recoverable | Lower Critical | Lower Non-Critical | Upper Non-Critical | Upper Critical | Upper Non-Recoverable

1.Имя сенсора | 2.Значение | 3.Единицы измерения (Тип) | 4.Статус | 5.Нижний критический порог выхода из строя | 6.Нижний критический порог | 7.Нижний (некритическое) порог возврата в нормальное состояние | 8.Верхний (некритический) порог возврата в нормальное состояние| 9.Верхний критический порог | 10.Верхний критический выхода из строя

root@ZABBIXSERVER:~# ipmitool -I lanplus -L USER -H 192.168.175.263 -U Логин -P Пароль sensor
VBAT | 0.376 | Volts | nr | 1.701 | 1.913 | 2.125 | 3.503 | 3.715 | 3.821
P12V_BP | 12.028 | Volts | ok | 9.844 | 10.624 | 11.404 | 12.652 | 13.276 | 14.056
P3V3_SYS | 3.257 | Volts | ok | 2.658 | 2.872 | 3.129 | 3.471 | 3.642 | 3.856
PVNN_PCH | 0.987 | Volts | ok | 0.759 | 0.847 | 0.952 | 1.058 | 1.128 | 1.216
P1V05_PCH | 1.040 | Volts | ok | 0.811 | 0.899 | 1.005 | 1.111 | 1.181 | 1.269
P5V_SYS | 5.023 | Volts | ok | 4.033 | 4.363 | 4.759 | 5.287 | 5.551 | 5.881
P12V_AUX | 12.028 | Volts | ok | 9.844 | 10.624 | 11.404 | 12.652 | 13.276 | 14.056
P1V8_PCH | 1.804 | Volts | ok | 1.477 | 1.594 | 1.711 | 1.898 | 1.968 | 2.108
PVCCIN_CPU0 | 1.804 | Volts | ok | 1.336 | 1.453 | 1.570 | 1.991 | 2.108 | 2.225
PVCCIN_CPU1 | 1.804 | Volts | ok | 1.336 | 1.453 | 1.547 | 1.991 | 2.108 | 2.225
PVCCIO_CPU0 | 1.023 | Volts | ok | 0.723 | 0.811 | 0.899 | 1.093 | 1.181 | 1.269
PVCCIO_CPU1 | 1.023 | Volts | ok | 0.723 | 0.811 | 0.899 | 1.093 | 1.181 | 1.269
PVDDQ_ABCD_CPU0 | 1.234 | Volts * unspeci | ok | 0.952 | 1.040 | 1.146 | 1.269 | 1.322 | 1.410
PVDDQ_EFGH_CPU0 | 1.234 | Volts * unspeci | ok | 0.952 | 1.040 | 1.146 | 1.269 | 1.322 | 1.410
PVDDQ_ABCD_CPU1 | 1.234 | Volts * unspeci | ok | 0.952 | 1.040 | 1.146 | 1.269 | 1.322 | 1.410
PVDDQ_EFGH_CPU1 | 1.234 | Volts * unspeci | ok | 0.952 | 1.040 | 1.146 | 1.269 | 1.322 | 1.410
PSU0_Status | 0x0 | discrete | 0x0180| na | na | na | na | na | na
PSU0_VIN | 224.000 | Volts | ok | 0.000 | 64.000 | 84.000 | 480.000 | 492.000 | 510.000
PSU0_IIN | 0.700 | Amps | ok | 0.000 | 0.000 | 0.000 | 17.000 | 17.500 | 25.500
PSU0_PIN | 168.000 | Watts | ok | 0.000 | 0.000 | 0.000 | 1596.000 | 1603.000 | 1617.000
PSU0_Fan1 | 6480.000 | RPM | ok | 0.000 | 0.000 | 0.000 | 20400.000 | 20400.000 | 20400.000
PSU0_Temp1 | 39.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 55.000 | 60.000 | 65.000
PSU1_Status | 0x0 | discrete | 0x0180| na | na | na | na | na | na
PSU1_VIN | 224.000 | Volts | ok | 0.000 | 64.000 | 84.000 | 480.000 | 492.000 | 510.000
PSU1_IIN | 0.700 | Amps | ok | 0.000 | 0.000 | 0.000 | 17.000 | 17.500 | 25.500
PSU1_PIN | 168.000 | Watts | ok | 0.000 | 0.000 | 0.000 | 1596.000 | 1603.000 | 1617.000
PSU1_Fan1 | 6560.000 | RPM | ok | 0.000 | 0.000 | 0.000 | 20400.000 | 20400.000 | 20400.000
PSU1_Temp1 | 25.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 55.000 | 60.000 | 65.000
PCH_TEMP | 45.000 | degrees C | ok | na | na | na | 85.000 | 95.000 | 105.000
CPU0_TJMAX | 103.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 110.000 | 111.000 | 112.000
CPU1_TJMAX | 103.000 | % degrees C | ok | 0.000 | 0.000 | 0.000 | 110.000 | 111.000 | 112.000
CPU0_Temp | 44.000 | degrees C | ok | na | na | na | 90.000 | 95.000 | 100.000
CPU1_Temp | 43.000 | degrees C | ok | na | na | na | 90.000 | 95.000 | 100.000
MB_Temp1 | 33.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 55.000 | 60.000 | 65.000
MB_Temp2 | 32.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 55.000 | 60.000 | 65.000
MB_Temp3 | 32.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 55.000 | 60.000 | 65.000
FAN1A | 5782.000 | RPM | ok | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN1B | na | RPM | na | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN2A | 5488.000 | RPM | ok | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN2B | na | RPM | na | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN3A | 5782.000 | RPM | ok | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN3B | na | RPM | na | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN4A | 4802.000 | RPM | ok | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
FAN4B | na | RPM | na | 0.000 | 490.000 | 980.000 | 16660.000 | 16954.000 | 17248.000
PowerUnit | 0x0 | discrete | 0x0280| na | na | na | na | na | na
FAN1_Prsnt | 0x0 | discrete | 0x0080| na | na | na | na | na | na
FAN2_Prsnt | 0x0 | discrete | 0x0080| na | na | na | na | na | na
FAN3_Prsnt | 0x0 | discrete | 0x0080| na | na | na | na | na | na
FAN4_Prsnt | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU0_Prsnt | 0x0 | discrete | 0x8080| na | na | na | na | na | na
CPU1_Prsnt | 0x0 | discrete | 0x8080| na | na | na | na | na | na
ChassisIntrusion | 0x0 | discrete | 0x8080| na | na | na | na | na | na
CPU0_PROCHOT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU1_PROCHOT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU0_THERMALTRIP | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU1_THERMALTRIP | 0x0 | discrete | 0x0080| na | na | na | na | na | na
PCH_HOT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU0_PVCCIN_VRHO | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU1_PVCCIN_VRHO | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU0_PWR_ALERT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU1_PWR_ALERT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
P0_PVDDQ_ABCD_VR | 0x0 | discrete | 0x0080| na | na | na | na | na | na
P0_PVDDQ_EFGH_VR | 0x0 | discrete | 0x0080| na | na | na | na | na | na
P1_PVDDQ_ABCD_VR | 0x0 | discrete | 0x0080| na | na | na | na | na | na
P1_PVDDQ_EFGH_VR | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU0_MEMHOT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU1_MEMHOT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
AC_LOSS | 0x0 | discrete | 0x0080| na | na | na | na | na | na
SMB_M2_SSD1_ALER | 0x0 | discrete | 0x0080| na | na | na | na | na | na
SMB_M2_SSD2_ALER | 0x0 | discrete | 0x0080| na | na | na | na | na | na
SMB_I350_ALERT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
SML1_PMBUS_ALERT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
PSU0_ALERT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
PSU1_ALERT | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU_ERR | 0x0 | discrete | 0x0080| na | na | na | na | na | na
CPU_CATERR | 0x0 | discrete | 0x0080| na | na | na | na | na | na

nr(Not Reading/нет данных)
0x0 – Текущее значение считываемое с сенсора. Для дискретных сенсоров это значение обычно представлено в шестнадцатеричном формате.
discrete – Тип сенсора. В данном случае это дискретный сенсор, что означает, что он измеряет не аналоговое значение, а дискретное состояние (например, включено/выключено, нормально/ошибка).
0x0180 – Состояние сенсора в шестнадцатеричном формате, которое может требовать дальнейшей расшифровки в зависимости от документации производителя оборудования. Это может означать различные статусы, такие как предупреждение, ошибка или нормальная работа.
na – В данном случае пороговые значения не применимы для дискретных сенсоров, поэтому они обозначены как na (not applicable).
Пример ipmitool запроса sensor
Пример ipmitool запроса sensor
Макросы
{$PRIVILEGESIPMI} ADMINISTRATOR
{HOST.CONN} 192.168.175.55
{$PORTIPMI} 623
{$LOGINIPMI} admin
{$PASSIPMI} admin
ipmitool -I lanplus -L {$PRIVILEGESIPMI} -H {HOST.CONN} -p {$PORTIPMI} -U {$LOGINIPMI} -P {$PASSIPMI} sensor

При желании можно LLD собрать обнаружение
1.Имя сенсора - в имя элемент данных и имя триггера
2.Значение - Текущее значение получаем в элемент данных для мониторинга
3.Единицы измерения - В элемент данных (тип данных элемента если через api создание, фильтр при обнаружении, группа)
4.Статус, состояние сенсора (если недоступен na - элемент не создаем или деактивированный, фильтр для обнаружения ,для дискретных возможно мониторить)

Триггер
5.Нижний критический порог выхода из строя - Высокая
10.Верхний критический выхода из строя - Высокая
6.Нижний критический порог - Средняя
9.Верхний критический порог - Средняя

7.Нижний (некритическое) порог возврата в нормальное состояние - Восстановление
8.Верхний (некритический) порог возврата в нормальное состояние - Восстановление


{#IPMISENSORNAME} в имя
{#IPMIUNIT} в единицы измерения
{#IPMISTATUS} в описание

Триггер Высокая
<={#LOWERNONRECOVERABLE}
>={#UPPERNONRECOVERABLE}
Возврат
>={#LOWERNONCRITICAL}
<={#UPPERNONCRITICAL}

Триггер Средняя
<={#LOWERCRITICAL}
>={#UPPERCRITICAL}
Возврат
>={#LOWERNONCRITICAL}
<={#UPPERNONCRITICAL}

Пример
P3V_BAT_SENSE | 3.132 | Volts | ok | 1.701 | 1.913 | 2.125 | 3.503 | 3.715 | 3.821
JSON:
[
{"{#IPMISENSORNAME}":"P3V_BAT_SENSE","{#IPMIUNIT}":"Volts","{#IPMISTATUS}":"ok","{#LOWERNONRECOVERABLE}":"1.701","{#LOWERCRITICAL}":"1.913","{#LOWERNONCRITICAL}":"2.125","{#UPPERNONCRITICAL}":"3.503","{#UPPERCRITICAL}":"3.715","{#UPPERNONRECOVERABLE}":"3.821"}
]


Только кулера RPM
root@ZABBIXSERVER:~# ipmitool -I lanplus -L USER -H 192.168.175.263 -U Логин -P Пароль sensor|grep RPM

root@ZABBIXSERVER:~# ipmitool -I lanplus -L USER -H 192.168.175.263 -U Логин -P Пароль sdr
Ответ
Показать
VBAT | 0.38 Volts | nr
P12V_BP | 12.03 Volts | ok
P3V3_SYS | 3.26 Volts | ok
PVNN_PCH | 0.99 Volts | ok
P1V05_PCH | 1.04 Volts | ok
P5V_SYS | 5.02 Volts | ok
P12V_AUX | 12.03 Volts | ok
P1V8_PCH | 1.80 Volts | ok
PVCCIN_CPU0 | 1.80 Volts | ok
PVCCIN_CPU1 | 1.80 Volts | ok
PVCCIO_CPU0 | 1.02 Volts | ok
PVCCIO_CPU1 | 1.02 Volts | ok
PVDDQ_ABCD_CPU0 | 1.23 Volts * un | ok
PVDDQ_EFGH_CPU0 | 1.23 Volts * un | ok
PVDDQ_ABCD_CPU1 | 1.23 Volts * un | ok
PVDDQ_EFGH_CPU1 | 1.23 Volts * un | ok
PSU0_Status | 0x00 | ok
PSU0_VIN | 226 Volts | ok
PSU0_IIN | 0.70 Amps | ok
PSU0_PIN | 168 Watts | ok
PSU0_Fan1 | 6400 RPM | ok
PSU0_Temp1 | 38 degrees C | ok
PSU1_Status | 0x00 | ok
PSU1_VIN | 226 Volts | ok
PSU1_IIN | 0.70 Amps | ok
PSU1_PIN | 168 Watts | ok
PSU1_Fan1 | 6320 RPM | ok
PSU1_Temp1 | 25 degrees C | ok
PCH_TEMP | 44 degrees C | ok
CPU0_TJMAX | 103 degrees C | ok
CPU1_TJMAX | 103 % degrees C | ok
CPU0_Temp | 44 degrees C | ok
CPU1_Temp | 40 degrees C | ok
MB_Temp1 | 33 degrees C | ok
MB_Temp2 | 32 degrees C | ok
MB_Temp3 | 30 degrees C | ok
FAN1A | 4900 RPM | ok
FAN1B | no reading | ns
FAN2A | 4900 RPM | ok
FAN2B | no reading | ns
FAN3A | 4900 RPM | ok
FAN3B | no reading | ns
FAN4A | 4900 RPM | ok
FAN4B | no reading | ns
PowerUnit | 0x00 | ok
FAN1_Prsnt | 0x00 | ok
FAN2_Prsnt | 0x00 | ok
FAN3_Prsnt | 0x00 | ok
FAN4_Prsnt | 0x00 | ok
CPU0_Prsnt | 0x00 | ok
CPU1_Prsnt | 0x00 | ok
ChassisIntrusion | 0x00 | ok
CPU0_PROCHOT | 0x00 | ok
CPU1_PROCHOT | 0x00 | ok
CPU0_THERMALTRIP | 0x00 | ok
CPU1_THERMALTRIP | 0x00 | ok
PCH_HOT | 0x00 | ok
CPU0_PVCCIN_VRHO | 0x00 | ok
CPU1_PVCCIN_VRHO | 0x00 | ok
CPU0_PWR_ALERT | 0x00 | ok
CPU1_PWR_ALERT | 0x00 | ok
P0_PVDDQ_ABCD_VR | 0x00 | ok
P0_PVDDQ_EFGH_VR | 0x00 | ok
P1_PVDDQ_ABCD_VR | 0x00 | ok
P1_PVDDQ_EFGH_VR | 0x00 | ok
CPU0_MEMHOT | 0x00 | ok
CPU1_MEMHOT | 0x00 | ok
AC_LOSS | 0x00 | ok
SMB_M2_SSD1_ALER | 0x00 | ok
SMB_M2_SSD2_ALER | 0x00 | ok
SMB_I350_ALERT | 0x00 | ok
SML1_PMBUS_ALERT | 0x00 | ok
PSU0_ALERT | 0x00 | ok
PSU1_ALERT | 0x00 | ok
CPU_ERR | 0x00 | ok
CPU_CATERR | 0x00 | ok
Имя датчика подставляем в элемент данных
Ключ: ipmi.sensor.FAN1A
IPMI датчик: FAN1A
Пример шаблона
Пример шаблона
Пример Элемента данных
Пример Элемента данных
Пример IDRAC
root@ZABBIXSERVER:~# ipmitool -I lanplus -L USER -H 192.168.175.268 -U Логин -P Пароль sensor
Ответ
Показать
Temp | na | | na | na | na | na | na | na | na
Temp | na | | na | na | na | na | na | na | na
Temp | na | | na | na | na | na | na | na | na
Temp | na | | na | na | na | na | na | na | na
Ambient Temp | 27.000 | degrees C | ok | na | 3.000 | 8.000 | 45.000 | 50.000 | na
Planar Temp | na | | na | na | 3.000 | 8.000 | 90.000 | 95.000 | na
CMOS Battery | 0x0 | discrete | 0x0080| na | na | na | na | na | na
VCORE PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
VCORE PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
0.75 VTT PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
0.75 VTT PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
CPU VTT PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.5V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.8V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
5V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
MEM CPU2 FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
5V Riser PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
MEM CPU1 FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
VTT CPU2 FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
VTT CPU1 FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
0.9V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
CPU2 1.8 PLL PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
CPU1 1.8 PLL PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.1 FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.0 LOM FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.0 AUX FAIL | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Heatsink Pres | 0x0 | discrete | 0x0180| na | na | na | na | na | na
iDRAC6 Ent Pres | 0x0 | discrete | 0x0280| na | na | na | na | na | na
USB Cable Pres | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Stor Adapt Pres | na | discrete | na | na | na | na | na | na | na
Riser Presence | 0x0 | discrete | 0x0180| na | na | na | na | na | na
FAN MOD 1A RPM | 3720.000 | RPM | ok | na | 720.000 | na | na | na | na
FAN MOD 1B RPM | na | | na | na | 720.000 | na | na | na | na
FAN MOD 2A RPM | 3720.000 | RPM | ok | na | 720.000 | na | na | na | na
FAN MOD 2B RPM | na | | na | na | 720.000 | na | na | na | na
FAN MOD 3A RPM | 3720.000 | RPM | ok | na | 720.000 | na | na | na | na
PFault Fail Safe | na | discrete | na | na | na | na | na | na | na
FAN MOD 3B RPM | na | | na | na | 720.000 | na | na | na | na
FAN MOD 4A RPM | 3720.000 | RPM | ok | na | 720.000 | na | na | na | na
Presence | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Presence | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Presence | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Presence | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Presence | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Status | 0x0 | discrete | 0x8080| na | na | na | na | na | na
Status | 0x0 | discrete | 0x8080| na | na | na | na | na | na
Status | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Current | 1.000 | Amps | ok | na | na | na | na | na | na
Current | 0.680 | Amps | ok | na | na | na | na | na | na
Voltage | 218.000 | Volts | ok | na | na | na | na | na | na
Voltage | 218.000 | Volts | ok | na | na | na | na | na | na
Status | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Status | 0x0 | discrete | 0x0180| na | na | na | na | na | na
OS Watchdog | 0x0 | discrete | 0x0080| na | na | na | na | na | na
SEL | na | discrete | na | na | na | na | na | na | na
Intrusion | 0x0 | discrete | 0x0080| na | na | na | na | na | na
PS Redundancy | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Fan Redundancy | 0x0 | discrete | 0x0180| na | na | na | na | na | na
CPU Temp IF | na | discrete | na | na | na | na | na | na | na
System Level | 399.000 | Watts | ok | na | na | na | 917.000 | 966.000 | na
Power Optimized | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Drive | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Drive A | na | discrete | na | na | na | na | na | na | na
Drive B | na | discrete | na | na | na | na | na | na | na
Cable SAS A | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Cable SAS B | 0x0 | discrete | 0x0180| na | na | na | na | na | na
DKM Status | 0x0 | discrete | 0x0080| na | na | na | na | na | na
ECC Corr Err | na | discrete | na | na | na | na | na | na | na
ECC Uncorr Err | na | discrete | na | na | na | na | na | na | na
I/O Channel Chk | na | discrete | na | na | na | na | na | na | na
PCI Parity Err | na | discrete | na | na | na | na | na | na | na
PCI System Err | na | discrete | na | na | na | na | na | na | na
SBE Log Disabled | na | discrete | na | na | na | na | na | na | na
Logging Disabled | na | discrete | na | na | na | na | na | na | na
Unknown | na | discrete | na | na | na | na | na | na | na
CPU Protocol Err | na | discrete | na | na | na | na | na | na | na
CPU Bus PERR | na | discrete | na | na | na | na | na | na | na
CPU Init Err | na | discrete | na | na | na | na | na | na | na
CPU Machine Chk | na | discrete | na | na | na | na | na | na | na
Memory Spared | na | discrete | na | na | na | na | na | na | na
Memory Mirrored | na | discrete | na | na | na | na | na | na | na
Memory RAID | na | discrete | na | na | na | na | na | na | na
Memory Added | na | discrete | na | na | na | na | na | na | na
Memory Removed | na | discrete | na | na | na | na | na | na | na
Memory Cfg Err | na | discrete | na | na | na | na | na | na | na
Mem Redun Gain | na | discrete | na | na | na | na | na | na | na
PCIE Fatal Err | na | discrete | na | na | na | na | na | na | na
Chipset Err | na | discrete | na | na | na | na | na | na | na
Err Reg Pointer | na | discrete | na | na | na | na | na | na | na
Mem ECC Warning | na | discrete | na | na | na | na | na | na | na
Mem CRC Err | na | discrete | na | na | na | na | na | na | na
USB Over-current | na | discrete | na | na | na | na | na | na | na
POST Err | na | discrete | na | na | na | na | na | na | na
Hdwr version err | na | discrete | na | na | na | na | na | na | na
Mem Overtemp | na | discrete | na | na | na | na | na | na | na
Mem Fatal SB CRC | na | discrete | na | na | na | na | na | na | na
Mem Fatal NB CRC | na | discrete | na | na | na | na | na | na | na
OS Watchdog Time | na | discrete | na | na | na | na | na | na | na
Non Fatal PCI Er | na | discrete | na | na | na | na | na | na | na
Fatal IO Error | na | discrete | na | na | na | na | na | na | na
MSR Info Log | na | discrete | na | na | na | na | na | na | na
Temp | na | | na | na | na | na | na | na | na
Temp | na | | na | na | na | na | na | na | na
Temp | na | | na | na | na | na | na | na | na
ROMB Battery | 0x0 | discrete | 0x0080| na | na | na | na | na | na
FAN MOD 4B RPM | na | | na | na | 720.000 | na | na | na | na
FAN MOD 5B RPM | na | | na | na | 720.000 | na | na | na | na
FAN MOD 5A RPM | 3720.000 | RPM | ok | na | 720.000 | na | na | na | na
Ambient Temp | na | | na | na | na | na | na | na | na
Ambient Temp | na | | na | na | na | na | na | na | na
vFlash | na | discrete | na | na | na | na | na | na | na
iDRAC6 Upgrade | na | discrete | na | na | na | na | na | na | na
Пример шаблон idrac ipmi
Пример шаблон idrac ipmi
Пример Элемент данных idrac ipmi
Пример Элемент данных idrac ipmi
А может быть и так ключ записан
Пример шаблон idrac ipmi 2
Пример шаблон idrac ipmi 2
Пример Элемент данных idrac ipmi 2
Пример Элемент данных idrac ipmi 2
Пример mib файлов для ipmi
IPMI-Supermicro-MIB.zip
IPMI-Supermicro-MIB.zip
(42.75 КБ) 17 скачиваний
SMT_MIB.zip
SMT_MIB.zip
(27.78 КБ) 17 скачиваний
Исходники ipmi zabbix-server
src-zabbix4.2.8.-ipmi.zip
src-zabbix4.2.8.-ipmi.zip
(34.34 КБ) 18 скачиваний
количество слов: 4283
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 847
Стаж: 5 лет 6 месяцев
Откуда: Вологодская область
Поблагодарили: 37 раз
Контактная информация:

Пример работы с IPMI

Сообщение Артём Мамзиков »

Параметры IPMItool и краткое описание команд
IPMI-Описание в текстовом документе.zip
IPMI-Описание в текстовом документе.zip
(75.61 КБ) 18 скачиваний
В следующих таблицах приведены краткие сведения о поддерживаемых параметрах и командах IPMItool:

Примечание: Интерфейс IPMI TLS (orcltls) поддерживается начиная с прошивки Oracle ILOM версии 3.2.8 и
более поздних версий. Для более высокого уровня безопасности вы всегда должны указывать интерфейс
IPMI TLS (-I или cltls) при выполнении команд Oracle ILOM из утилиты IMPItool.
Дополнительные сведения об использовании интерфейса IPMI TLS от Oracle см. в следующих разделах:
Служба и интерфейс IPMI TLS и настройка доступа к управлению IPMI для повышения безопасности.

-o [тип изделия] Выберите тип OEM для поддержки. Обычно это включает в себя незначительные изменения в коде, позволяющие обойти причуды в различных BMC от разных производителей.
Используйте -o list, чтобы просмотреть список текущих поддерживаемых типов OEM.

-O [выбранный oem] Откройте выбранный файл и прочитайте описания событий OEM SEL, которые будут использоваться при составлении списков SEL.

-p [порт] Порт TLS TCP-соединения удаленного сервера равен 443 (по умолчанию).
Для IPMI версий 2.0 и 1.5 TCP-соединением UDP удаленного сервера является порт 623 (по умолчанию).

-P [пароль] Пароль удаленного сервера указывается в командной строке. Если поддерживается, то он будет скрыт в списке процессов.
Примечание: Указывать пароль в качестве параметра командной строки не рекомендуется.

-R [количество] Установите количество повторных попыток для интерфейса lan или интерфейса lanplus (по умолчанию=4).

-S [sdr_cache_file] Используйте локальный файл для удаленного SDR-кэша. Использование локального кэша SDR может значительно повысить производительность команд, которым для выполнения своих функций требуется знание всего SDR. Локальный кэш SDR из удаленной системы может быть создан с помощью команды sdr dump.

-t [целевой адрес] Выбирает используемый интерфейс IPMI.
Поддерживаемые интерфейсы, которые скомпилированы в, видны в выходных данных справки по использованию.

-U [имя пользователя] Имя пользователя удаленного сервера, по умолчанию - NULL user.

-d N Используйте номер устройства N, чтобы указать устройство /dev/ipmiN (или /dev/ipmi/N или /dev/ipmidev/N), которое будет использоваться для внутриполосной связи BMC.
Используется для настройки на определенный BMC в многоузловой системе с несколькими BMC через интерфейс драйвера устройства IPMI. Значение по умолчанию равно 0.

-v Увеличьте уровень детализации выходных данных. Этот параметр может быть указан несколько раз, чтобы увеличить уровень отладочных выходных данных.
Если задать его три раза, вы получите шестнадцатеричные данные всех входящих и исходящих пакетов.

-V Отобразить информацию о версии.

--no-cert-check Отключает проверку подлинности SSL-сертификата, если указан интерфейс orcltls IPMI.

--cert-dir [путь] Расположение доверенных SSL-сертификатов на хост-сервере SP.

sunoem sshkey set Настройте SSH-ключ для удаленного пользователя оболочки.

ipmitool sunoem sshkey del Удалите SSH-ключ у удаленного пользователя оболочки.

ipmitool sunoem led get Считайте состояние светодиода.

ipmitool sunoem led set Установите состояние светодиода.

ipmitool sunoem cli Вводите команды Oracle ILOM CLI так, как если бы вы использовали ILOM CLI напрямую. Следует использовать интерфейс lan или интерфейс lanplus.

ipmitool sunoem CLI force Доступный начиная с Oracle ILOM 3.0.10, параметр force может быть вызван в качестве аргумента команды sunoem CLI.

ipmitool raw Выполните необработанные команды IPMI.

ipmitool lan print Выведите текущую конфигурацию для данного канала.

ipmitool lan set (1) (2) Установите заданный параметр на заданном канале.

ipmitool chassis status Отображать информацию о состоянии высокого уровня системного корпуса и основной подсистемы питания.

ipmitool chassis power Выполните команду управления шасси, чтобы просмотреть и изменить состояние питания.

ipmitool chassis identify Управляйте подсветкой идентификации на передней панели. Значение по умолчанию - 15. Используйте 0 для выключения.

ipmitool chassis restart_cause Запросите у шасси причину последнего перезапуска системы.

ipmitool chassis bootdev (1) Запросите загрузку системы с альтернативного загрузочного устройства при следующей перезагрузке.

ipmitool chassis bootparam (1) Установите параметры загрузки хоста.

ipmitool chassis selftest Отобразите результаты самотестирования BMC.

ipmitool power Верните результаты самотестирования BMC.

ipmitool event Отправьте предопределенное событие в системный журнал событий.

ipmitool sdr Запросите в BMC записи данных датчиков (SDR) и извлеките информацию о датчиках заданного типа, затем запросите каждый датчик и выведите его название, показания и статус.

ipmitool sensor Перечислите датчики и пороговые значения в широком табличном формате.

ipmitool fru print Считайте все инвентарные данные о заменяемых в полевых условиях устройствах (FRU) и извлекайте такую информацию, как серийный номер, номер детали, бирки активов и короткие строки, описывающие шасси, плату или продукт.

ipmitool sel Просмотрите системный журнал событий Oracle ILOM SP (SEL).

ipmitool pef info Запросите BMC и распечатайте информацию о функциях, поддерживаемых PEF.

ipmitool pef status Выведите текущий статус PEF (последнюю запись SEL, обработанную BMC, и так далее).

ipmitool pef list Выведите текущий список PEF (последнюю запись SEL, обработанную BMC, и так далее).

ipmitool user Отобразите сводную информацию об идентификаторе пользователя, включая максимальное количество идентификаторов пользователей, количество включенных пользователей и количество определенных фиксированных имен.

ipmitool session Получите информацию об указанных сеансах. Вы можете идентифицировать сеансы по их идентификатору, по номеру дескриптора, по их активному статусу или с помощью ключевого слова “все” для указания всех сеансов.

ipmitool firewall (1) Включать или отключать отдельные команды и командные подфункции;
определять, какие команды и командные подфункции могут быть сконфигурированы в данной реализации.

ipmitool set (1) Установите параметры среды выполнения, включая имя хоста сеанса, имя пользователя, пароль и уровень привилегий.

ipmitool exec Выполните команды IPMItool из имени файла. Каждая строка представляет собой законченную команду.

Чтобы просмотреть список датчиков на управляемом устройстве, введите:

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_Имя-узла_или_IP -U username -P password sdr list
Чтобы просмотреть сведения об одном датчике на управляемом устройстве, введите:

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username -P password sensor get /SYS/T_AMB
Управление функциями включения, выключения питания и завершения работы хоста
Чтобы включить питание хоста на управляемом устройстве, введите: включение питания шасси.

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username -P password chassis power on
Чтобы отключить питание хоста на управляемом устройстве, введите: отключение питания шасси

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username -P password chassis power off
Чтобы включить цикл питания хоста на управляемом устройстве, введите: цикл питания шасси

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username -P password chassis power cycle
Чтобы корректно отключить питание хоста на управляемом устройстве, введите: chassis power soft.

Код: Выделить всё

ipmitool -I [orcltls|lanplus]-H SP_hostname_or_IPaddress -U username -P password chassis power soft
Отображение деталей железа изготовления FRU

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username  -P password fru print
Отображение журнала событий Oracle ILOM или аудита

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username -P password sunoem cli "show /SP/logs/audit/list"

Код: Выделить всё

ipmitool -I [orcltls|lanplus] -H SP_hostname_or_IPaddress -U username -P password sel list

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль chassis power status

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor list

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor get 'ИМЯ_СЕНСОРА'

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sdr

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sdr elist full

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль user list

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль chassis status

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль chassis power status

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sel list

Код: Выделить всё

ipmitool -I lanplus -L USER -H хост -p Порт -U логин -P пароль sensor get fan1


ИМЯ
ipmitool - утилита для управления устройствами с поддержкой IPMI

КРАТКИЙ ОБЗОР
ipmitool [ <параметры> ] <команда> [ <подкоманды и дополнительные опции> ]

<параметры> := [ <общие-параметры> | <условные-параметры> ]
Принимается любой признанный вариант. Условные параметры могут быть проигнорированы или их использование отложено до тех пор, пока shell или exec не обработают соответствующую команду.

<общие-параметры> := [ -h | -V | -v | -I <интерфейс> | -H <адрес> |-d <N> | -p <порт> | -c | -U <имя пользователя> | -L <privlvl> | -l <lun> | -m <локальный адрес> |-N <сек> | -R <количество> | <параметр пароля> | <oem-опция> | <bridge-опции> ]

<условные параметры> := [ <параметры локальной сети> | <параметры lanplus> | <команда-параметры> ]
Наведение мостов:
<параметры моста> := -t <целевой адрес> [ -b <канал> |[ -T <адрес> | -B <канал> ] ]

Параметры, используемые с -I lan:
<параметры локальной сети> := [ -A <authtype> ]

Опции, используемые с -I lanplus:
<lanplus-опции> := [ -C <набор шифров> | <ключ-опция> ]

Группы опций, устанавливающие одинаковое значение:
<ключ-опция> := [ -k <ключ> | -K | -y <шестнадцатеричный ключ> | -Y ]
<параметр пароля> := [ -f <файл пароля> | -a | -P <пароль> | -E ]
<oem-опция> := [ -o <oemtype> | -g | -s ]

Параметры, используемые с определенной командой <command-options>:
<параметры-sdr> := [ -S <sdr_cache_file> ]
<параметры-sel> := [ -O <sel_oem> ]
<параметры-sol> := [ -e <sol_escape_char> ]

Код: Выделить всё

ipmitool [ -h | -V | -v | -I <интерфейс> | -H <адрес> |-d <N> | -p <порт> | -c | -U <имя пользователя> | -L <privlvl> | -l <lun> | -m <локальный адрес> |-N <сек> | -R <количество> | <параметр пароля> |<oem-опция> | <bridge-опции> ]|[ -A <authtype> ] | [ -C <набор шифров> | <ключ-опция> ]
<ключ-опция> := [ -k <ключ> | -K | -y <шестнадцатеричный ключ> | -Y ]
<параметр пароля> := [ -f <файл пароля> | -a | -P <пароль> | -E ]
<oem-опция> := [ -o <oemtype> | -g | -s ]
Параметры, используемые с определенной командой <command-options>:
<параметры-sdr> := [ -S <sdr_cache_file> ]
<параметры-sel> := [ -O <sel_oem> ]
<параметры-sol> := [ -e <sol_escape_char> ]

ОПИСАНИЕ
Эта программа позволяет вам управлять функциями интерфейса интеллектуального управления платформой (IPMI) либо локальной системы, через драйвер устройства ядра, либо удаленной системы, используя IPMI версии 1.5 и IPMI версии 2.0.
Эти функции включают печать информации FRU, конфигурацию локальной сети, датчик показания и дистанционное управление питанием шасси.

Для управления IPMI локальным системным интерфейсом требуется установка и настройка совместимого драйвера ядра IPMI.
В Linux этот драйвер называется OpenIPMI и включен в стандартные дистрибутивы.
В Solaris этот драйвер называется BMC и включен в Solaris 10.
Для управления удаленной станцией требуется включить и настроить интерфейс IPMI-over-LAN.
В зависимости от конкретных требований каждой системы может оказаться возможным включить интерфейс локальной сети с помощью ipmitool через системный интерфейс.

ОПЦИИ:

-a запрос пароля удаленного сервера.

-A <authtype> Укажите тип аутентификации, который будет использоваться при активации сеанса локальной сети IPMIv1.5.
Поддерживаемые типы - NONE, PASSWORD, MD2, MD5 или OEM.

-b <канал> Установите целевой канал для мостового запроса.

-B <канал> Установите транзитный канал для соединенного запроса (двойной мост).

-c Представьте выходные данные в формате CSV (переменная, разделенная запятыми). Это доступно не для всех команд.

-C <набор шифров> Алгоритмы аутентификации, обеспечения целостности и шифрования удаленного сервера, используемые для
Соединения IPMIv2.0 lanplus. Смотрите таблицу 22-19 в спецификации IPMIv2.0. Значение по умолчанию равно 3, которое определяет аутентификацию RAKP-HMAC-SHA1, целостность HMAC-SHA1-96 и алгоритмы шифрования AES-CBC-128.

-d N Используйте номер устройства N для указания /dev/ipmiN (или /dev/ipmi/N или /dev/ipmidev/N)
устройство для использования для внутриполосной BMC-связи. Используется для настройки на определенный BMC в многоузловой системе с несколькими BMC через интерфейс драйвера устройства ipmi. Значение по умолчанию равно 0.

-e <sol_escape_char> Используйте указанный символ для экранирующего символа сеанса SOL. По умолчанию используется ~ но это может конфликтовать с сеансами ssh.

-E Пароль удаленного сервера задается переменной окружения IPMI_PASSWORD или IPMITOOL_PASSWORD. Пароль IPMITOOL_PASSWORD имеет приоритет.

-f <пароль к файлу> Указывает файл, содержащий пароль удаленного сервера. Если этот параметр отсутствует или если password_file пуст, пароль по умолчанию будет равен NULL.

-g устарел. Используйте: -o intelplus

-h Получите базовую справку по использованию из командной строки.

-H <адрес> Адрес удаленного сервера, может быть IP-адресом или именем хоста. Этот параметр обязателен для интерфейсов lan и lanplus.

-i [интерфейс] Выбирает используемый интерфейс IPMI. Поддерживаемые интерфейсы, которые скомпилированы в, видны в выходных данных справки по использованию.
Попытка автоматического обнаружения не предпринимается. Смотрите описание -I для получения дополнительной информации.

-I <интерфейс> Выбирает используемый интерфейс IPMI. Поддерживаемые интерфейсы, которые скомпилированы в, видны в выходных данных справки по использованию.
-I [интерфейс] Сначала попробуйте использовать наиболее безопасный интерфейс (orcltls).
Если BMC не поддерживает интерфейс, попробуйте использовать следующий наиболее защищенный интерфейс, пока не появится указанный интерфейс.
Поддерживаемые интерфейсы, которые скомпилированы в, видны в выходных данных справки по использованию.
Если указан интерфейс lanplus или интерфейс локальной сети, проверка сертификата отключается при попытке использования интерфейса orcltls.
Примечание: Если параметр -I не указан, включено автоматическое определение и включена проверка сертификата при попытке подключения к интерфейсу orcltls.

-k <ключ> Используйте прилагаемый ключ Kg для аутентификации по протоколу IPMIv2.0. По умолчанию не используется никакой ключ Kg.

-K Считывает ключ Kg из переменной окружения IPMI_KGKEY.

-l <лунь> Установите конечный lun для необработанных команд.

-L <привлвл> Принудительный уровень привилегий сеанса. Может быть ОБРАТНЫЙ ВЫЗОВ, ПОЛЬЗОВАТЕЛЬ, ОПЕРАТОР, АДМИНИСТРАТОР CALLBACK, USER, OPERATOR, ADMINISTRATOR.
Значение по умолчанию - АДМИНИСТРАТОР. Это значение игнорируется и всегда устанавливается равным ADMINISTRATOR в сочетании с целевым адресом -t.

-m <локальный адрес> Установите локальный IPMB-адрес. Локальный адрес по умолчанию равен 0x20 или установлен автоматически (не должно быть необходимости изменять его для нормальной работы) обнаруживается на платформах PICMG, когда -m не указано. Для нормальной работы не должно быть необходимости изменять локальный адрес.

-M <адрес> Установите транзитный локальный адрес для запроса моста. (двойной мост)

-N <сек> Укажите количество секунд между повторными передачами сообщений lan/lanplus. Значения по умолчанию составляет 2 секунды для lan и 1 секунду для интерфейсов lanplus. Команда raw использует исправленные значение 15 секунд. Команда sol использует фиксированное значение в 1 секунду.

-o <тип изделия> Выберите тип OEM для поддержки. Обычно это связано с незначительными взломами в коде чтобы обойти причуды в различных BMC от разных производителей. Используйте -o list, чтобы просмотреть список текущих поддерживаемых типов OEM.

-O <sel oem> Откройте выбранный файл и прочитайте описания событий OEM SEL, которые будут использоваться во время SEL объявления. Смотрите примеры формата файла в разделе contrib dir.

-p <порт> UDP-порт удаленного сервера для подключения. Значение по умолчанию - 623.

-P <пароль> Пароль удаленного сервера указывается в командной строке. Если поддерживается, то он будет скрыт в списке процессов. Обратите внимание! Указание пароля в командной строке этот вариант не рекомендуется.

-R <количество> Установите количество повторных попыток для интерфейса lan/lanplus (по умолчанию=4). Команда raw использует
фиксированное значение одной попытки (без повторных попыток). Команда hpm использует фиксированное значение в 10 повторных попыток.

-s Устарело. Использование: -o супермикро/supermicro

-S <sdr_cache_file> Используйте локальный файл для удаленного SDR-кэша. Использование локального кэша SDR может значительно повысьте производительность команд, которым для выполнения своих функций требуется знание всего SDR.
Локальный SDR-кэш из удаленной системы может быть создан с помощью команда sdr dump.

-t <целевой адрес> Соедините запросы IPMI с удаленным целевым адресом. Значение по умолчанию - 32. The -L привлвл параметр всегда игнорируется, а значение устанавливается равным ADMINISTRATOR.

-T <адрес> Установите транзитный адрес для запроса моста (двойной мост).

-T <адрес отправления_адрес> Установите транзитный адрес для запроса моста. (двойной мост)

-U <имя пользователя> Имя пользователя удаленного сервера, по умолчанию - NULL user.

-v Увеличьте уровень детализации выходных данных. Этот параметр может быть указан несколько раз, чтобы увеличьте уровень отладочных выходных данных. Если задать его три раза, вы получите шестнадцатеричные данные всех входящих и исходящих пакетов. Используя его пять раз, вы получите подробную информацию по запросу и ожидаемый ответ обрабатывается. Команды hpm targetcap compprop прерывают upgstatus откат rollbackstatus selftestresult увеличивает уровень детализации

-V Отображать информацию о версии.

-y <hex ключ> Используйте прилагаемый ключ Kg для аутентификации по протоколу IPMIv2.0.
Ожидается, что ключ будет в шестнадцатеричном формате
формат и может использоваться для указания ключей с непечатаемыми символами. Например, '-k PASSWORD' и '-y 50415353574F5244' эквивалентны.
По умолчанию не используется никакой ключ Kg.

-Y Запрос на ввод ключа Kg для аутентификации по протоколу IPMIv2.0.

-z <размер> Измените размер канала связи. (OEM)

Если способ ввода пароля не указан, то ipmitool запросит у пользователя пароль. Если в командной строке пароль не введен, пароль удаленного сервера по умолчанию будет равен NULL.


БЕЗОПАСТНОСТЬ
Перед включением интерфейса IPMI LAN необходимо рассмотреть несколько вопросов безопасности.
Удаленная станция имеет возможность управлять состоянием питания системы, а также иметь возможность
для сбора определенной информации о платформе. Для снижения уязвимости настоятельно рекомендуется
что локальный интерфейс IPMI должен быть включен только в "надежных" средах, где система
безопасность не является проблемой или там, где есть выделенная защищенная "сеть управления".

Кроме того, настоятельно рекомендуется, чтобы вы не включали IPMI для удаленного доступа без
установка пароля и что этот пароль не должен совпадать с любым другим паролем в этой системе.

При изменении пароля IPMI на удаленном компьютере с интерфейсом локальной сети IPMIv1.5
новый пароль отправляется по сети в виде открытого текста. Это можно было бы наблюдать и затем
использовать для атаки на удаленную систему. Таким образом, рекомендуется использовать управление паролями IPMI
может быть выполнено только через интерфейс IPMIv2.0 lanplus или системный интерфейс на локальной станции.

Для IPMI версии 1.5 максимальная длина пароля составляет 16 символов. Пароли длиннее 16 символы будут усечены.
Для IPMI версии 2.0 максимальная длина пароля составляет 20 символов; более длинные пароли усекаются.


КОМАНДЫ:
Cправка Это можно использовать для получения справки командной строки по командам ipmitool.
Он также может быть помещен в конце команд, чтобы получить справку по использованию опции.
справка ipmitool
Команды:
bmc ----------Устарел. Используйте mc
channel -----Настройка каналов контроллера управления
chassis -------Получите статус шасси и установите режим питания
dcmi ---------Интерфейс управления центром обработки данных
delloem -----Управляет OEM-расширениями Dell.
echo ---------Используется для преобразования строк в стандартный вывод в скриптах
ekanalyzer -Запустите анализатор FRU-Ekeying с использованием файлов FRU
event -------Отправка событий в MC
exec ---------Запускает список команд из файла
firewall -----Настройка встроенного брандмауэра
fru -----------Печать встроенного FRU и сканирование в поисках локаторов FRU
fwum --------Обновляет IPMC с помощью Kontron OEM Firmware Update Manager
gendev ------Устройство чтения/записи gendev, связанное с универсальными локаторами устройств sdr
hpm ---------Обновляет компоненты HPM с помощью файла PICMG HPM.1
i2c -----------Отправляет основную команду I2C на запись-чтение и выводит ответ
ime ----------Обновление/запрос прошивки Intel ME
isol -----------Настройка и подключение Intel IPMIv1.5 Serial-over-LAN
kontronoem -Управляем OEM-расширениями Kontron
lan ------------Настройка каналов локальной сети
mc ------------Статус контроллера управления и глобальные возможности
pef ------------Настройка фильтрации событий платформы (PEF)
picmg --------Запускает расширенную команду PICMG/ATA
power --------Быстрый доступ к командам питания шасси
raw -----------Отправьте необработанный запрос IPMI и распечатайте ответ
sdr ------------Печать записей и показаний хранилища данных датчиков
sel ------------Печать системного журнала событий (SEL)
sensor --------Печать подробной информации о датчике
session -------Печать информации о сеансе
set ------------Установить переменную времени выполнения для shell и exec
shell ----------Запускает интерактивную оболочку IPMI
sol ------------Сконфигурируйте и подключите IPMIv2.0 по последовательной сети
spd -----------Печать информации SPD с удаленного устройства I2C
sunoem ------Управляет расширениями Sun OEM
tsol -----------Настраивает и подключает Tyan IPMIv1.5 по последовательной сети
user ----------Настраивает пользователей контроллера управления

Код: Выделить всё

channel

       authcap <номер канала> <максимальный priv>

       Отображает информацию о возможностях проверки подлинности выбранного
       канал с указанным уровнем привилегий.

       Возможные уровни привилегий следующие:
         1 Уровень обратного вызова
         2 Уровень пользователя
         3 Уровень оператора
         4 Уровень администратора
         5 Уровень владения OEM
         15 Нет доступа
							
       info [номер канала]

       Отображает информацию о выбранном канале.  Если канал не указан
       на нем отобразится информация об используемом в данный момент канале.

             > ipmitool channel info
             Информация о канале 0xf:
             Тип носителя канала: Системный интерфейс
             Тип протокола канала: KCS
             Поддержка сеанса: без сеанса
             Количество активных сеансов : 0
             Идентификатор поставщика протокола : 7154

       getaccess <номер канала> [<идентификатор пользователя>]

       Настройте данный идентификатор пользователя по умолчанию для данного номера канала.  Когда
       данный канал впоследствии используется, пользователь неявно идентифицируется по заданному идентификатору пользователя.

                 setaccess <номер канала> <идентификатор пользователя> [<вызов=вкл.|выкл.>]
                            [<ipmi=вкл.|выкл.>] [<ссылка=вкл.|выкл.>] [<привилегия=уровень>]

                 Настройте информацию о доступе пользователя к данному каналу для данного идентификатор пользователя.

                 getciphers <ipmi|sol> [<канал>]

                 Отображает список наборов шифров, поддерживаемых для данного приложение (ipmi или sol) на данном канале.
количество слов: 969
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 847
Стаж: 5 лет 6 месяцев
Откуда: Вологодская область
Поблагодарили: 37 раз
Контактная информация:

Пример работы с IPMI

Сообщение Артём Мамзиков »

Код: Выделить всё

chassis  шасси

       status

       Информация о состоянии, относящаяся к питанию, кнопкам, охлаждению, приводам и неисправностям.
       power
               status
               on
               off
               cycle
               reset
               diag
               soft

       identify [<seconds>|force] 

       Определите интервал.
       Значение по умолчанию - 15 секунд.
       0 - Выкл.
       принудительное включение на неопределенный срок

       policy политика
       Что делать, когда питание будет восстановлено?
              list           Отобразите доступные параметры.
                  always-on  Всегда включенный
                  previous   Предыдущий
                  always-off Всегда выключенный
              restart_cause  Причина последнего перезапуска.

              poh Включайте питание в течение нескольких часов.
              bootdev
                     none        Не меняйте порядок загрузки устройств.
                     pxe         Принудительная загрузка PXE.
                     disk        Принудительная загрузка с жесткого диска по умолчанию.
                     safe        Принудительно загрузитесь с жесткого диска по умолчанию, запросите безопасный режим.
                     diag        Принудительная загрузка из диагностического раздела.
                     cdrom       Принудительная загрузка с CD/DVD.
                     bios        Принудительно загрузитесь в BIOS Setup.
                     floppy      Принудительная загрузка с дискеты/основного съемного носителя.

              bootparam загрузочный параметр
                     force_pxe   Принудительная загрузка PXE
                     force_disk  Принудительная загрузка с жесткого диска по умолчанию
                     force_safe  Принудительная загрузка с жесткого диска по умолчанию, запрос безопасного режима
                     force_diag  Принудительная загрузка из диагностического раздела
                     force_cdrom Принудительная загрузка с CD/DVD
                     force_bios  Принудительная загрузка в BIOS Setup	 
              selftest самопроверка

Код: Выделить всё

dcmi

    discover Эта команда используется для обнаружения поддерживаемых возможностей в DCMI.
	
	power <command> Параметрами команды лимита питания платформы являются:
	
	     reading   Получите от системы показания, связанные с питанием.
		 get_limit Получите настроенные ограничения мощности.
		 set_limit  <parameter> <value> Установите параметр ограничения мощности.
		         Возможными параметрами/значениями являются:
		         action <No Action | Hard Power Off & Log Event to SEL | Log Event to SEL>
		         Исключительные действия воспринимаются как
		         "Никаких действий","Жесткое отключение питания система и регистрировать события в SEL", или "Регистрировать события только в SEL"
		         limit <number in Watts> Запрашиваемый предел мощности в Ваттах.
		         correction <number in milliseconds> Ограничение по времени коррекции в миллисекундах.
		         sample <number in seconds> Период выборки статистики в секундах.
		 
         activate   Активируйте установленный предел мощности.
	     deactivate Отключите установленный предел мощности.
		 
    sensors                    Выводит на печать доступные датчики DCMI.
	asset_tag                  Печатает тег ресурса платформы.
	set_asset_tag  <string>    Устанавливает тег ресурса платформы
	get_mc_id_string           Получаем строку идентификатора контроллера управления.
	set_mc_id_string  <string> Установите строку идентификатора контроллера управления.  Максимальная длина составляет 64 байта включая нулевой терминатор.
	thermalpolicy  [<get | set>] Получить/установить политику ограничения температуры.

          Используются следующие команды:
		  Get  <entityID> <instanceID>
		  Получите предельные значения температуры.
          EntityId - это физический объект, с которым связан датчик или устройство с. идентификатор экземпляра - это конкретный экземпляр объекта.
		  Сущность Экземпляр может находиться в одном из двух диапазонов: относительный к системе или устройству-родственник.
		  Например, система с четырьмя процессорами могла бы использовать значение экземпляра сущности, равное "0", для идентификации первого процессора
		  
		  Set  <entityID> <instanceID>
		  Установите предельные значения температуры.
          EntityId - это физический объект, с которым связан датчик или устройство с.  идентификатор экземпляра - это конкретный экземпляр объекта.
		  Сущность Экземпляр может находиться в одном из двух диапазонов: относительный к системе или устройству-родственник.
		  Например, система с четырьмя процессорами могла бы использовать значение экземпляра сущности, равное "0", для идентификации первого процессора.
		  
    get_temp_reading Получите показания датчика температуры.
	get_conf_param   Получите параметры конфигурации DCMI.
	set_conf_param <parameters> Установите параметры конфигурации DCMI.
	    Параметрами конфигурации являются:
		activate_dhcp Активация/перезапуск DHCP
		dhcp_config   Обнаружьте конфигурацию DHCP.
		init          Установите начальный интервал ожидания DHCP в секундах.  Рекомендуемый значение по умолчанию - четыре секунды.
		timeout       Установите интервал ожидания контакта с DHCP-сервером в секундах. Рекомендуемый тайм-аут по умолчанию составляет две минуты.
		retry         Установите интервал повторных попыток подключения к DHCP-серверу в секундах.  Рекомендуемый тайм-аут по умолчанию составляет шестьдесят четыре секунды.
    oob_discover Сообщение Ping/Pong для обнаружения DCMI.

Код: Выделить всё

delloem Команды dell oem предоставляют информацию о функциях, специфичных для Dell.

	setled {b:d.f} {state..}
	      Устанавливает светодиоды объединительной платы привода для устройства.
          {b:d.f } = PCI-адрес устройства (например, 06:00.0)
          {state} = одно или несколько из следующих состояний:
                    online | present | hotspare | identify | rebuilding | fault | predict | critical | failed

	lcd
         set {mode}|{lcdqualifier}|{errordisplay}
		 
		 Позволяет установить режим работы ЖК-дисплея и пользовательскую строку.
		 
		 lcd set mode
            {none}|{modelname}|{ipv4address}|{macaddress}|{systemname}|{servicetag}|{ipv6address}|
            {ambienttemp}|{systemwatt}|{assettag}|{userdefined}<text>
		    Позволяет установить режим отображения жидкокристаллического дисплея на любой из предыдущих параметры.

		 lcd set lcdqualifier
             {watt}|{btuphr}|{celsius}|{fahrenheit}
              Позволяет настроить устройство для режима температуры окружающей среды в системе.

    	lcd set errordisplay
             {sel}|{simple}
             Позволяет настроить отображение ошибки.

		lcd info
		 Отображает информацию на жидкокристаллическом экране.
		
		lcd set vkvm
              {active}|{inactive}
			  Позволяет установить статус vKVM на активный или неактивный. Когда он
			  активен и сеанс продолжается, на жидкокристаллическом дисплее появляется сообщение.

		lcd status
		 Отображает состояние ЖК-дисплея для дисплея vKVM, активного или неактивного, и переднего
         Режим доступа к панели (просмотр и изменение, только для просмотра или отключен).

	mac Отображает информацию о системных сетевых адаптерах.
		
		mac list Отображает MAC-адрес сетевой карты и состояние всех сетевых адаптеров. Он также отображает MAC-адрес DRAC/iDRAC.

	mac get <NIC number> Отображает MAC-адрес и статус выбранной сетевой карты.
		
	lan  Отображает информацию о локальной сети.

		lan set
               <Mode>
			Устанавливает режим выбора сетевой карты (выделенный, совместно используемый с iom 1, совместно используемый с
            lom2, совместно используемый с iom 3, совместно используемый с lo 4, совместно используемый при отработке отказа
            lom 1, совместно используемый с отработкой отказа lom2, совместно используемый с отработкой отказа iom3, совместно используемый с
            отказоустойчивый lom 4, совместно используемый с отработкой отказа все lom, совместно используемые с отработкой отказа Нет).
			
		lan get
			Возвращает текущий режим выбора NICE (выделенный, совместно используемый с lo 1,
			совместно используемый с lom2, совместно используемый с iom 3, совместно используемый с iom 4, совместно используемый с
            отработка отказа lom1, совместно используемая с отработкой отказа lom2, совместно используемая с отработкой отказа
            iom3, совместно используемый при отработке отказа lom 4,совместно используемый при отработке отказа всех lom,совместно используемый
            с отказоустойчивостью нет).


		lan get active Возвращает текущую активную сетевую карту (выделенную, LOM1, LOM2, LOM3 или LOM4).
		
	powermonitor Отображает статистику отслеживания энергопотребления
		
		powermonitor clear cumulativepower Сбросьте суммарные показания мощности.
		
		powermonitor clear peakpower Сбросьте показания пиковой мощности.
		
		powermonitor powerconsumption <watt>|<btuphr> Отображает потребляемую мощность в ваттах или btuphr.
		
		powermonitor powerconsumptionhistory <watt>|<btuphr> Отображает историю энергопотребления в ваттах или btuphr.
		
		powermonitor getpowerbudget <watt>|<btuphr> Отображает предельную мощность в ваттах или btuphr.
		
		powermonitor setpowerbudget <val><watt|btuphr|percent> Позволяет установить предельную мощность в ваттах, БТЕ/час или процентах.
		
		powermonitor enablepowercap Позволяет установить ограничение мощности.
        
		powermonitor disablepowercap Отключает установленный предел мощности.
		
	vFlash info Card Показывает расширенную информацию о SD-карте.

Код: Выделить всё

echo Для повторения строк в стандартный вывод в скриптах.

Код: Выделить всё

ekanalyzer <command> <xx=filename1> <xx=filename2> [<rc=filename3>] ...

	NOTE : Эта команда может поддерживать максимум 8 файлов в командной строке
	
	filename1 : двоичный файл, в котором хранятся данные FRU носителя или модуля AMC
	
	filename2 : двоичный файл, в котором хранятся данные FRU модуля AMC.
                 Эти двоичные файлы могут быть сгенерированы с помощью команды: ipmitool fru считывает <id> <filename>

    filename3 : файл конфигурации, используемый для настройки идентификатора устройства на носителе или OEM GUID. Этот файл является необязательным.
	
	xx : указывает тип файла. Оно может принимать следующее значение:
		 oc : Устройство на носителе
         a1 : Слот AMC A1
         a2 : Слот AMC A2
         a3 : Слот AMC A3
         a4 : Слот AMC A4
         b1 : Слот AMC B1
         b2 : Слот AMC B2
         b3 : Слот AMC B3
         b4 : Слот AMC B4
         sm : Менеджер по полкам
	
   	Доступными командами для ekanalyzer являются:
	print [<carrier | power | all>]
		carrier (default) <oc=имя файла1> <oc=имя файла2> ...
		Отображение физической связи "точка-точка" между операторами связи и AMC модули.
		Пример:
		> ipmitool ekanalyzer print carrier oc=fru oc=carrierfru
		Из файла носителя: fru
		    Количество отсеков AMC, поддерживаемых оператором связи: 2
            Топология AMC-слота B1:
              Порт 0 =====> На несущем устройстве идентификатор 0, порт 16
              Порт 1 =====> На несущем устройстве идентификатор 0, порт 12
              Порт 2 =====> Слот AMC B2, порт 2
			Топология AMC-слота B2:
			  Порт 0 =====> На несущем устройстве идентификатор 0, порт 3
			  Порт 2 =====> Слот AMC B1, порт 2
		*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
		Из файла Carrier: carrierfru
           В топологии с идентификатором несущего устройства 0:
              Порт 0 =====> Слот AMC B1, порт 4
              Порт 1 =====> Слот AMC B1, порт 5
              Порт 2 =====> Слот AMC B2, порт 6
              Порт 3 =====> Слот AMC B2, порт 7
           Топология AMC-слота B1:
              Порт 0 =====> Слот AMC B2, порт 0
           Топология AMC-слота B1:
              Порт 1 =====> Слот AMC B2, порт 1
           Количество отсеков AMC, поддерживаемых оператором связи: 2
		
		 power <xx=имя_файла1> <xx=имя_файла2> ...
		      Отображение информации о питании между модулями carrier и AMC.
			  
		all <xx=имя файла> <xx=имя файла> ...
		Отображать как физическое подключение, так и источник питания каждого носителя и модули AMC.
		
	 frushow <xx=filename>
	 Преобразуйте двоичный файл FRU в удобочитаемый текстовый формат. Используйте опцию -v для получения дополнительной отображаемой информации
	 
	 summary [<match | unmatch | all>]

		match (default) <xx=имя файла> <xx=имя файла> ...
				Отображать только совпадающие результаты повторного ввода между оператором на носителе устройство и модуль AMC или между 2 модулями AMC. Пример:

			   > ipmitool ekanalyzer summary match oc=fru b1=amcB1 a2=amcA2
			   Устройство на носителе vs слот AMC B1 Слот AMC B1 порт 0 ==> Устройство на носителе 0 порт 16
                    Соответствующий результат
                    -С идентификатора устройства на носителе 0
                    -Идентификатор канала 11 || Полоса 0: включить
                    -Тип соединения: AMC.2 Ethernet
                    -Расширение типа соединения: 1000BASE-BX (SerDes Gigabit) Ethernet-канал
                    -Идентификатор группы ссылок: 0 || Ссылка Asym. Совпадение: точное совпадение
                    - В слот AMC B1
                    -Идентификатор канала 0 || Полоса 0: включить
                    -Тип соединения: AMC.2 Ethernet
                    -Расширение типа соединения: 1000BASE-BX (SerDes Gigabit) Ethernet-канал
                    -Идентификатор группы ссылок: 0 || Ссылка Asym. Совпадение: точное совпадение
					*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
				Разъем AMC B1 порт 1 ==> Встроенное устройство 0 порт 12
                    Соответствующий результат
                    - С идентификатора устройства на носителе 0
                    -Идентификатор канала 6 || Полоса 0: включить
                    -Тип соединения: AMC.2 Ethernet
                    -Расширение типа соединения: 1000BASE-BX (SerDes Gigabit) Ethernet-канал
                    -Идентификатор группы ссылок: 0 || Ссылка Asym. Совпадение: точное совпадение
                    - В слот AMC B1
					-Идентификатор канала 1 || Полоса 0: включить
                    -Тип соединения: AMC.2 Ethernet
                    -Расширение типа соединения: 1000BASE-BX (SerDes Gigabit) Ethernet-канал
                    -Идентификатор группы ссылок: 0 || Ссылка Asym. Совпадение: точное совпадение
					*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
				Встроенное устройство в сравнении со слотом AMC A2
                    Разъем AMC A2 порт 0 ==> Встроенное устройство 0 порт 3
                     Соответствующий результат
                     - С идентификатора устройства на носителе 0
                     -Идентификатор канала 9 || Полоса 0: включить
                     -Тип соединения: AMC.2 Ethernet
                     -Расширение типа соединения: 1000BASE-BX (SerDes Gigabit) Ethernet-канал
                     -Идентификатор группы ссылок: 0 || Ссылка Asym. Совпадение: точное совпадение
                     - В слот AMC A2
                     -Идентификатор канала 0 || Полоса 0: включить
                     -Тип соединения: AMC.2 Ethernet
                     -Расширение типа соединения: 1000BASE-BX (SerDes Gigabit) Ethernet-канал
                     -Идентификатор группы ссылок: 0 || Ссылка Asym. Совпадение: точное совпадение
					 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
			    Слот AMC B1 против слота AMC A2
                      Разъем AMC A2 порт 2 ==> Разъем AMC B1 порт 2
                      Соответствующий результат
                      - Из слота AMC B1
                      -Идентификатор канала 2 || Полоса 0: включить
                      -Тип соединения: Хранилище AMC.3
                      -Расширение типа соединения: SCSI с последовательным подключением (SAS/SATA)
                      -Идентификатор группы ссылок: 0 || Ссылка Asym. Соответствие: интерфейс FC или SAS {точное совпадение}
                      - В слот AMC A2
                      -Идентификатор канала 2 || Полоса 0: включить
                      -Тип соединения: Хранилище AMC.3
                      -Расширение типа соединения: SCSI с последовательным подключением (SAS/SATA)
                      -Идентификатор группы ссылок: 0 || Ссылка Asym. Соответствие: интерфейс FC или SAS {точное совпадение}
					 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
		 unmatch <xx=имя файла> <xx=имя файла> ...
		 Отображение непревзойденных результатов повторного сопоставления между операторами на носителе
         устройство и модуль AMC или между 2 модулями AMC
		 all <xx=filename> <xx=filename> ...
		 Отображать как совпадающий результат, так и несопоставимые результаты повторного ввода совпадения
         между двумя платами или двумя модулями.

Код: Выделить всё

event <предопределенный номер события N>
	 Отправьте заранее определенное тестовое событие в системный журнал событий.  Следующие события
     включены в качестве средства для проверки функциональности системного журнала событий
     компонент BMC (запись будет добавляться каждый раз при выполнении команды event N выполняется).
	 
	 В настоящее время поддерживаются следующие значения для N:
     1 Температура: Верхняя критическая: Повышается
     2 Порог напряжения: Ниже критического: Понижается
     3 Память: Корректируемый ECC

     ПРИМЕЧАНИЕ: Эти предопределенные события, скорее всего, не приведут к "точному" выбору
     записи для конкретной системы, поскольку они не будут корректно привязаны к
     действительному номеру датчика, но их достаточно для проверки корректной работы SEL.
	 
	 file <filename>
     Записи журнала событий, указанные в <имя файла>, будут добавлены к системному событию Лог.
     Формат каждой строки в файле следующий:
		<{EvM Revision} {Sensor Type} {Sensor Num} {Event Dir/Type} {Event  Data  0} {Event Data 1} {Event Data 2}>[# COMMENT]
     например: 0x4 0x2 0x60 0x1 0x52 0x0 0x0 # Порог напряжения: Ниже критического: Опускаюсь все ниже
	 
	 EvM Revision - "Редакция сообщения о событии" равна 0x04 для сообщений, которые соответствуют
     со спецификацией IPMI 2.0 и 0x03 для сообщений, соответствующих спецификации IPMI 1.0.
	 
	 Sensor Type - Указывает тип или класс события.
	 
	 Sensor Num - Представляет собой "sensor" в контроллере управления, который сгенерировал сообщение о событии.
	 
	 Event  Dir/Type - Это поле кодируется направлением события как наивысшее
     бит (бит 7) и тип события в качестве младших 7 бит.  Направление события равно 0 для событие подтверждения и 1 для события отмены подтверждения.

	 Смотрите спецификацию IPMI 2.0 для получения более подробной информации об определениях для каждое поле.

	<sensorid> <list>
	   Получите список всех возможных состояний датчика и предварительно заданное состояние датчика
       Сочетания клавиш, доступные для конкретного датчика.   сенсорид - это персонаж
       строковое представление датчика и должно быть заключено в двойные кавычки, если оно содержит пробелы.   
       Для получения списка, включающего строки sensorid, можно использовать несколько различных команд, включая ipmitool sensor list
       представляющие датчики в данной системе.
	   
	   ipmitool -I open event "PS 2T Fan Fault" list
	   Обнаружение неисправности датчика PS 2T вентилятора... 
       Состояние датчика в порядке:
       Состояние Ослабленное
       Состояние Утверждаемое
       Ярлыки состояния датчика:
       Присутствует отсутствует
       Утверждать деассертировать
       Ограничить nolimit
       сбой без сбоя
       да нет
       вкл выкл
       вверх вниз
	
	<sensorid> <sensor state> [<direction>]
	  Сгенерируйте пользовательское событие на основе существующей информации с датчиков.  Необязательный
      направлением события может быть либо assert (по умолчанию), либо deassert.
	  
	      > ipmitool event "PS 2T Fan Fault" "State Asserted"
		  Обнаружение неисправности датчика PS 2T вентилятора... ok
          0 | Отметка времени предварительной загрузки | Неисправность вентилятора PS 2T | Подтвержденное состояние
		  
		  > ipmitool event "PS 2T Fan Fault" "State Deasserted"
		  Обнаружение неисправности датчика PS 2T вентилятора... ok
          0 | Отметка времени предварительной загрузки | Неисправность вентилятора PS 2T | Состояние отключено

Код: Выделить всё

exec <filename>
     Выполните команды ipmitool из имени файла.  Каждая строка представляет собой законченную команду.   
     Синтаксис команд определен в разделе "КОМАНДЫ" на этой странице руководства.  Каждый
     строка может содержать необязательный комментарий в конце строки, разделенный символом `#' символ.
     например, командный файл с двумя строками:
	 sdr list # get a list of sdr records
     sel list # get a list of sel records

Код: Выделить всё

firewall
     Эта команда поддерживает встроенную функцию брандмауэра.  Он может быть использован для добавления или
     удалите ограничения, основанные на безопасности, для определенных команд/командных подфункций или
     перечислите текущие ограничения брандмауэра встроенного ПО, установленные для любых команд.  Для каждого
     команда брандмауэра встроенного по, перечисленная ниже, может содержать параметры, которые заставляют
     команду выполняться с повышенной степенью детализации в определенном LUN, для
     конкретный NetFn, для конкретной команды IPMI и, наконец, для конкретной команды
     подфункция (смотрите приложение H в спецификации IPMI 2.0 для получения списка любых
     номеров подфункций, которые могут быть связаны с конкретной командой).
       Синтаксис параметров и зависимости следующие:
	   [<channel H>] [<lun L> [ <netfn N> [<command C [<subfn S>]]]]
	 
	 Обратите внимание, что если указано "netfn <N>", то также должно быть указано "lun <L>"; если
     указано "command <C>", то также должно быть указано "netfn <N>" (и, следовательно, "lun <L>") и так далее.
	 
	 "канал/channel <H>" является необязательным и автономным параметром.   Если не указано,
     запрошенная операция будет выполнена на текущем канале.  Обратите внимание, что команда
     поддержка может варьироваться от канала к каналу.
	  
	 Команды брандмауэра встроенного ПО:
     info [<Parms as described above>]
	 Перечислите информацию о встроенном брандмауэре для указанного LUN, NetFn и команды
     (если имеется) на текущем или указанном канале.  Перечисленная информация
     включает поддерживаемые, настраиваемые и разрешенные биты для указанного
     команда или команды.
	 
	 Некоторые примеры использования:
	 
	 info [<channel H>] [<lun L>]
     Эта команда выведет список сведений о встроенном брандмауэре для всех сетевых сетей
     для указанного LUN либо на текущем, либо на указанном канале.
	 info [<channel H>] [<lun L> [ <netfn N> ]
	 Эта команда выведет всю информацию о команде для одного
     Пара LUN/NetFn.
     info [<channel H>] [<lun L> [ <netfn N> [<command C] ]]
	 При этом выводится подробная, удобочитаемая информация, показывающая
     поддерживаемые, настраиваемые и разрешенные биты для указанной команды в
     указанной паре LUN/NetFn.  Информация будет напечатана о каждом из них из командных подфункций.
	 info [<channel H>] [<lun L> [ <netfn N> [<command C [<subfn S>]]]]
	 Распечатайте информацию для конкретной подфункции
	 
  enable [<Parms as described above>]
  Эта команда используется для включения команд для заданной комбинации NetFn/LUN на указанном канале.

  disable [<Parms as described above>] [force]
  Эта команда используется для отключения команд для данной комбинации NetFn/LUN
  по указанному каналу.   При использовании "силы" следует соблюдать большую осторожность
  параметр, позволяющий не отключать команду "Set Command Enables".
  
  reset [<Parms as described above>]
  Эта команда может быть использована для возврата брандмауэра встроенного ПО в исходное состояние
  где включены все команды и командные подфункции.

Код: Выделить всё

fru

    print
	Считайте все данные инвентаризации полевых сменных устройств (FRU) и извлекайте такие
    информация в виде серийного номера, номера детали, тегов активов и коротких строк
    описание корпуса, платы или продукта.
	
	read <fru id> <fru file>
	идентификатор fru - это цифровой идентификатор FRU (смотрите выходные данные "fru print").  fru-файл - это
    абсолютный путь к файлу, в который нужно записать двоичные FRU-данные
    относящийся к указанному объекту FRU.

    write <fru id> <fru file>
	идентификатор fru - это цифровой идентификатор FRU (смотрите выходные данные "fru print").  fru-файл - это
    абсолютный путь к файлу, из которого извлекаются двоичные FRU-данные
    перед загрузкой его в указанный FRU.

    upgEkey <fru id> <fru file>
	Обновите местоположение FRU с несколькими записями.  идентификатор fru - это цифровой идентификатор FRU (смотрите
    выходные данные "fru print").  fru-файл - это абсолютный путь к файлу из
    который извлекает двоичные данные FRU для загрузки в указанную мультирекорд
    Сущность FRU.
	
	edit <fru id>
	Эта команда обеспечивает интерактивное редактирование некоторых поддерживаемых записей, а именно
    Запись активации носителя PICMG.  идентификатор fru - это цифровой идентификатор FRU (см.
    вывод 'fru print'); значение по умолчанию равно 0.
	
	edit <fru id> field <section> <index> <string>
	Эта команда может быть использована для присвоения строке поля нового значения.  Он заменяет
    данные FRU, найденные по адресу index в указанном разделе с предоставленными строка.

        fru id /идентификатор fru - это цифровой идентификатор FRU (смотрите выходные данные "fru print").
	
	    <section> это строка, которая ссылается на инвентарную информацию FRU
              Складские помещения и могут относиться к:
	        c Область информации о шасси для инвентаризации FRU
            b Информационная зона инвентарной доски FRU
            p Область информации о товаре на складе FRU
	
	    <index>/<индекс> указывает номер поля.  Нумерация полей начинается с первого
        введите поле "текст на английском языке". Например, в информационной области <board>/<плата> поле "0"
        - это <Board  Manufacturer>/<Производитель платы>, а поле "2" - <Board Serial Number>/<Серийный номер платы>; смотрите IPMI
        Определение хранилища информации FRU управления платформой v1.0 R1.1 для полевых места.
	
	    <string>/<строка> должна быть той же длины, что и заменяемая строка, и должна быть 8-разрядной в формате ASCII (0xCx).
	
	edit <fru id> oem iana <record> <format> [<args>]
	Эта команда редактирует данные, найденные в области множественной записи. Поддержка OEM-производителей
    количество конкретных записей ограничено.

Код: Выделить всё

fwum Обновите IPMC с помощью Kontron OEM Firmware Update Manager.
     info Отображение информации о текущей прошивке.
	 status Показывает состояние каждого банка встроенного ПО, присутствующего в аппаратном обеспечении.
	 download <filename> Загрузите указанную прошивку.
	 upgrade [filename] Установите обновление встроенного ПО.  Если указано имя файла, то файл будет
       загружается первым, в противном случае используется последняя загруженная прошивка.
	 rollback Попросите IPMC выполнить откат к предыдущей версии.
	 tracelog Отобразить журнал обновления встроенного ПО.

Код: Выделить всё

gendev
      list Перечислите все общие локаторы устройств.
	  read <sdr name> <file> Считывание в файл eeprom, указанный универсальными локаторами устройств.
	  write <sdr name> <file> Запись из файла eeprom, заданного универсальными указателями устройств

Код: Выделить всё

hpm Агент обновления PICMG HPM.1
    check Проверьте информацию о цели.
	check <filename> Отобразите на экране как существующую целевую версию, так и версию изображения.
	download <filename> Загрузите указанную прошивку.
	upgrade <filename> [all] [component <x>] [activate]
	   Обновите встроенное ПО, используя действительный файл образа HPM.1.  Если опция
       не указана, сначала проверяются версии встроенного ПО и выполняется установка встроенного ПО
       обновляется только в том случае, если они отличаются друг от друга.
       all Обновите все компоненты, даже если версии встроенного ПО совпадают (используйте это только после использования команды "check/проверить").

       component <x>
         Обновите только данный компонент из данного файла.
           компонент 0 - BOOT/ЗАГРУЗКА
           компонент 1 - RTK

      activate Немедленно активируйте новую прошивку.
	
  activate Активируйте только что загруженную прошивку.
  targetcap Получите целевые возможности обновления.

  compprop <id> <select>
    Получите указанные свойства компонента. Допустимый идентификатор компонента: 0-7.  Выбрать можно одно из следующих:
    0 - Общие свойства
    1 - Текущая версия встроенного ПО
    2 - Строка описания
    3 - Откат версии встроенного по
    4 - Отложенная версия встроенного ПО
	
  abort Прервите текущее обновление встроенного ПО.
  upgstatus Показывает статус последней длительной команды.
  rollback Выполните ручной откат встроенного ПО IPM-контроллера.
  rollbackstatus Отобразить статус отката.
  selftestresult Запросите результаты самотестирования.

Код: Выделить всё

i2c <i2caddr> <read bytes> [<write data>]
 Эта команда может использоваться для выполнения необработанных команд I2C с основным режимом записи-чтения Команда IPMI.

Код: Выделить всё

ime
   help Информация об использовании печати
   info Отображает информацию о механизме управляемости (ME)
   update <file> Обновите встроенное по ME с помощью указанного файла образа
                 ПРЕДУПРЕЖДЕНИЕ Вы ДОЛЖНЫ использовать поддерживаемое изображение, предоставленное поставщиком вашей платы
   rollback Выполните ручной откат встроенного по ME

Код: Выделить всё

isol
    info Получение информации о Intel IPMI версии 1.5 Serial-Over-LAN конфигурация.
	set <parameter> <value>  Настройте параметры для Intel IPMI версии 1.5 Serial-over-LAN.
    Допустимыми параметрами и значениями являются:
	  enabled            true, false.
	  privilege-level    user, operator, admin, oem.
	  bit-rate           9.6, 19.2, 38.4, 57.6, 115.2.
	  
   activate
    Приводит к переходу ipmitool в режим Intel IPMI v1.5 Serial Over LAN.  RMCP+
    установлено подключение к BMC, терминал переведен в режим raw, и пользователь
    входные данные отправляются на последовательную консоль на удаленном сервере. На выходе СОЛ
    режим полезной нагрузки отключается, и терминал возвращается в исходное состояние настройки.
	
	Для управления сеансом SOL предусмотрены специальные управляющие последовательности:
	
	   ~.        Прервать соединение
       ~^Z       Приостановить работу ipmitool
       ~^X       Приостановите работу ipmitool, но не восстанавливайте tty при перезапуске
       ~B        Отправить перерыв
       ~~        Отправьте экранирующий символ, набрав его дважды
       ~?        Выведите поддерживаемые управляющие последовательности
	   
	   Обратите внимание, что экранирующие символы распознаются только сразу после перевода строки.

Код: Выделить всё

kontronoem  Команды OEM, специфичные для устройств Kontron.
     setsn Установите серийный номер FRU.
	 setmfgdate  Установите дату изготовления FRU.
	 nextboot <boot device> Выберите следующий порядок загрузки на Kontron CP6012.

Код: Выделить всё

lan
   Эти команды позволят вам настроить каналы IPMI LAN с сетевой
   информацией, чтобы их можно было использовать с интерфейсами ipmitool lan и lanplus.
   ПРИМЕЧАНИЕ: Чтобы определить, на каком канале расположен интерфейс локальной сети, выполняйте команду
   "информационный номер канала" до тех пор, пока не наткнетесь на действительный канал локальной сети 802.3.  Для пример:

   > ipmitool -I open channel info 1
       Channel 0x1 info:
       Channel Medium Type   : 802.3 LAN
       Channel Protocol Type : IPMB-1.0
       Session Support       : session-based
       Active Session Count  : 8
       Protocol Vendor ID    : 7154

     print [<channel>] Выведите текущую конфигурацию для данного канала.   Значение по умолчанию
      выведет информацию о первом найденном канале локальной сети.
	 
	 set <channel number> <command> <parameter>
	   Установите заданную команду и параметр на указанном канале.  Действительный
       параметры команды/параметра следующие:
	   ipaddr <x.x.x.x>                      Установите IP-адрес для этого канала.
	   netmask <x.x.x.x>                     Установите сетевую маску для этого канала.
	   macaddr <xx:xx:xx:xx:xx:xx>           Установите MAC-адрес для этого канала.
	   defgw ipaddr <x.x.x.x>                Установите IP-адрес шлюза по умолчанию.
	   defgw macaddr <xx:xx:xx:xx:xx:xx>     Установите MAC-адрес шлюза по умолчанию.
	   bakgw ipaddr <x.x.x.x>                Установите IP-адрес резервного шлюза.
	   bakgw macaddr <xx:xx:xx:xx:xx:xx>     Установите MAC-адрес шлюза резервного копирования.
	   password <pass>                       Установите нулевой пароль пользователя.
	   snmp <community string>               Установите строку сообщества SNMP.
	   user                                  Включите режим доступа пользователя для userid 1 (выполните команду "пользователь", чтобы
                                             отобразить информацию об идентификаторах пользователей для данного канала).
	   access <on|off>                       Установите режим доступа к каналу локальной сети.
	   alert <on|off>                        Включите или отключите оповещение PEF для этого канала.
	   ipsrc <source>                        Установите источник IP-адреса:
	                                         none      неуточненный
                                             static    настроенный вручную статический IP-адрес
                                             dhcp address получено с помощью BMC, выполняющего DHCP
                                             bios address загружается BIOS или системным программным обеспечением
	   arp respond <on|off>                  Установите сгенерированные BMC ответы ARP.
	   arp generate <on|off>                 Установите BMC, сгенерированный безвозмездными ARPS.
	   arp interval <seconds>                Установите произвольный интервал ARP, сгенерированный BMC.
	   vlan id <off|id>                      Отключите работу VLAN или включите VLAN и установите идентификатор.
                                             ID: значение идентификатора виртуальной локальной сети в диапазоне от 1 до 4094 включительно.
	   vlan priority <priority>              Установите приоритет, связанный с кадрами VLAN.
                                             Идентификатор: приоритет кадров виртуальной локальной сети от 0 до 7 включительно
	   auth <level,...> <type,...>           Установите допустимые типы аутентификации для заданного уровня аутентификации.
                                             Уровни: обратный вызов, пользователь, оператор, администратор
                                             Типы: нет, md2, md5, пароль, oem
	   cipher_privs <privlist>
	   
	     Соотносит номера наборов шифров с максимальным уровнем привилегий, которому
         разрешено их использовать.  Таким образом, наборы шифров могут быть ограничены
         пользователями с заданным уровнем привилегий, так что, например,
         администраторы должны использовать более надежный набор шифров, чем
         обычные пользователи.

         Формат privlist выглядит следующим образом.  Каждый символ представляет собой
         уровень привилегий и позиция символа идентифицируют шифр
         номер люкс.   Например, первый символ представляет собой шифр
         набор 0, второй представляет набор шифров 1, и так далее.   список привилегий
         длина должна составлять 15 символов.

         Символы, используемые в privlist, и связанные с ними уровни привилегий являются:
         X Неиспользуемый набор шифров
         c ОБРАТНЫЙ ВЫЗОВ
         u ПОЛЬЗОВАТЕЛЬ
         o ОПЕРАТОР
         a АДМИНИСТРАТОР
         O OEM
          Итак, чтобы установить максимальную привилегию для набора шифров 0 для пользователя и набора
          1 для АДМИНИСТРАТОРА выполните следующую команду:
		 > ipmitool -I interface lan set channel cipher_privs uaXXXXXXXXXXXXX
		 
	 alert print [<channel>] [<alert destination>]
     Распечатайте информацию о предупреждении для указанного канала и пункта назначения.  По
     умолчанию будут напечатаны все оповещения для всех адресатов оповещений в первом найденном
     Канал локальной сети.
	 
	 alert set <channel number> <alert destination> <command> <parameter>
	 Установите оповещение для данного канала локальной сети и пункта назначения.   Пункты назначения оповещения
     перечислены с помощью команды "печать оповещения по локальной сети".   Допустимая команда/параметр
     варианты следующие:
	       ipaddr <x.x.x.x>             Установите IP-адрес оповещения.
	       macaddr <xx:xx:xx:xx:xx:xx>  Установите MAC-адрес оповещения.
	       gateway <default | backup>   Установите шлюз канала, который будет использоваться для оповещений.
	       ack <on | off>               Включите или выключите подтверждение оповещения.
	       type <pet | oem1 | oem2>     Установите тип назначения как PET или OEM.
	       time <seconds>               Установите тайм-аут подтверждения или интервал отмены повторной попытки.
	       retry <number>               Установите количество повторных попыток оповещения.
	   
	  stats get [<channel number>] Извлеките информацию об IP-соединениях по указанному каналу.  По
      умолчанию будет получена статистика по первому найденному каналу локальной сети.
	  
	  stats clear [<channel number>]
	  Сбросьте всю статистику IP/UDP/RMCP до 0 на указанном канале.  Значение по умолчанию
      очистит статистику по первому найденному каналу локальной сети.

Код: Выделить всё

mc | bmc
    reset <warm|cold> Дает команду BMC выполнить сброс в режим "теплый" или "холодный" режим.
	guid Отобразите глобальный уникальный идентификатор контроллера управления.
	info Отображает информацию об оборудовании BMC, включая версию устройства, версию
     встроенного ПО, поддерживаемую версию IPMI, идентификатор производителя и другие сведения
     о поддержке дополнительных устройств.
	 
	watchdog Эти команды позволяют пользователю просматривать и изменять текущее состояние сторожевого таймера.
	
	     get    Отображает текущие настройки сторожевого таймера и состояние обратного отсчета.
		 reset  Сбросьте сторожевой таймер в его самое последнее состояние и перезапустите таймер обратного отсчета.
		 off    Отключите запущенный в данный момент сторожевой таймер обратного отсчета.
		 
    selftest Проверьте базовую работоспособность BMC, выполнив команду Получить результаты самотестирования командуйте и сообщайте о результатах.
	getenables Отображает список включенных в данный момент опций для BMC.
	
	setenables <option>=[on|off]
	Включает или отключает данную опцию.  Эта команда поддерживается только через
    системный интерфейс в соответствии со спецификацией IPMI.   В настоящий момент
    поддерживаемые значения для параметра включают:
         recv_msg_intr  Прерывание очереди приема сообщений
         event_msg_intr Полное прерывание буфера сообщений о событиях
         event_msg      Буфер сообщений о событиях
         system_event_log  Ведение журнала системных событий
         oem0           Опция, определяемая OEM #0
         oem1           Опция, определяемая OEM #1
         oem2           Опция, определяемая OEM #2

     getsysinfo <argument> Извлекает системную информацию из bmc для заданного аргумента.
       Определения аргументов приведены в разделе setsysinfo
	   
	 setsysinfo  <argument> <string>
	 Сохраняет строку системной информации в bmc для заданного аргумента
         Возможными аргументами являются:
	     primary_os_name     Имя основной операционной системы
         os_name             Название операционной системы
         system_name         Системное имя сервера
         delloem_os_version  Запущенная версия операционной системы
         delloem_URL         URL-адрес веб-сервера BMC
количество слов: 1436
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 847
Стаж: 5 лет 6 месяцев
Откуда: Вологодская область
Поблагодарили: 37 раз
Контактная информация:

Пример работы с IPMI

Сообщение Артём Мамзиков »

Код: Выделить всё

chassis
       status              Отображает информацию о состоянии системы на высоком уровне шасси и основная подсистема питания.
	   poh                 Эта команда вернет счетчик часов включения питания.
	   identify <interval> Управляйте подсветкой идентификации на передней панели.   Интервал по умолчанию равен 15
        секунд.  Используйте 0 для выключения.  Используйте "принудительно" для включения на неопределенный срок.
	   restart_cause       Запросите у шасси причину последнего перезапуска системы.
	   selftest            Проверьте базовую работоспособность BMC, выполнив самотестирование Get
       командуйте результатами и сообщайте о результатах.
       policy              Установите политику питания шасси на случай сбоя питания.
	           list        Верните поддерживаемые политики.
	           always-on   Включите, когда питание будет восстановлено.
			   previous    Возвращается в предыдущее состояние при восстановлении питания.
			   always-off  Оставайтесь выключенным после восстановления питания.
	   power Выполняет команду управления шасси для просмотра и изменения состояния питания.
               status      Показывает текущее состояние питания шасси.
			   on          Включите питание шасси.
			   off         Переведите питание шасси в режим плавного выключения (состояние S4/S5).  ПРЕДУПРЕЖДЕНИЕ: Это
                           команда не инициирует полное завершение работы операционной системы
                           систему перед отключением питания системы.
			   cycle       Обеспечивает интервал отключения питания не менее 1 секунды.  Никаких действий
                           должно произойти, если питание шасси находится в состоянии S4/S5, но
                           рекомендуется сначала проверить состояние питания и только после этого подавать питание
                           команда цикла, если питание системы включено или находится в режиме пониженного ожидания
                           состояние, отличное от S4/S5.
			   reset       Эта команда выполнит полный сброс
			   diag        Отправляйте диагностическое прерывание (NMI) непосредственно на процессор(ы).
			   soft        Инициируйте мягкое выключение операционной системы через ACPI.  Это можно сделать в
                           несколькими способами, обычно имитируя перегрев или
                           имитируя нажатие кнопки включения.  Это необходимо для того, чтобы там
                           должна быть поддержка операционной системой ACPI и какой-то
                           демон, наблюдающий за событиями, чтобы эта мягкая сила заработала.
						   
	   bootdev <device> [<clear-cmos=yes|no>] [<options=help,...>]
	           Запросите загрузку системы с альтернативного загрузочного устройства на следующем
               перезагрузить.  Опция clear-cmos, если она включена, даст команду BIOS
               чтобы очистить его CMOS при следующей перезагрузке.  Для
               изменения настроек загрузочного устройства могут быть использованы различные опции.  Запустите "bootdev none options=help" для
               список доступных модификаторов/опций загрузочного устройства.

               В настоящее время поддерживаются следующие значения для <устройства>:
			   none   Не меняйте загрузочное устройство
               pxe    Принудительная загрузка PXE
               disk   Принудительная загрузка с загрузочного устройства BIOS по умолчанию
               safe   Принудительная загрузка с загрузочного устройства BIOS по умолчанию, запрос безопасного режима
               diag   Принудительная загрузка из диагностического раздела
               cdrom  Принудительная загрузка с CD/DVD
               bios   Принудительная загрузка в BIOS setup
               floppy Принудительная загрузка с дискеты/основного съемного носителя
			   
      bootparam Получите или установите различные параметры загрузки системы.
	      get <param #> Получить параметр загрузки. Поддерживаемые в настоящее время значения для <param #> являются:
		  0 - Выполняется установка
          1 - Переключатель служебных разделов
          2 - Проверка служебного раздела
          3 - Сброс допустимого бита флага загрузки BMC
          4 - Подтверждение информации о загрузке
          5 - Загрузочные флаги
          6 - Информация об инициаторе загрузки
          7 - Почтовый ящик инициатора загрузки
		  
		  set <option> [value ...] Установите параметр загрузки.
		  В настоящее время поддерживаются следующие значения для <option>:
		       force_pxe    Принудительная загрузка PXE
			   force_disk   Принудительная загрузка с жесткого диска по умолчанию
		       force_safe   Принудительная загрузка с жесткого диска по умолчанию, запрос безопасного режима
			   force_diag   Принудительная загрузка из диагностического раздела
		       force_cdrom  Принудительная загрузка с CD/DVD
			   force_bios   Принудительная загрузка в BIOS setup

Код: Выделить всё

pef
   info    Эта команда запросит BMC и напечатает информацию о поддерживаемых PEF функциях.
   status  Эта команда выводит текущее состояние PEF (последняя запись SEL, обработанная BMC, и т.д.).
   policy  Эта команда выводит список записей таблицы политики PEF.   Каждая запись политики
           описывает пункт назначения оповещения.   Набор политик - это набор таблиц
           записи.  Действия оповещения PEF ссылаются на наборы политик.
		   
   list   Эта команда выводит список записей таблицы PEF.  Каждая запись PEF связывает датчик
          событие к действию.  Когда PEF активен, каждое событие платформы вызывает BMC
          чтобы просмотреть эту таблицу на предмет записей, соответствующих событию, и возможных действий, которые необходимо
          предпринять.   Действия выполняются в порядке приоритета (более высокая критичность первый).

Код: Выделить всё

picmg <properties>
          Запустите расширенную команду PICMG/ATA. Свойства Get PICMG могут использоваться для получения и
          печати информации об основной версии расширения, идентификатора PICMG, идентификатора устройства FRU и максимального
          Идентификатор устройства FRU.

    addrinfo Получите адресную информацию.   Эта команда может возвращать информацию об
     аппаратном адресе, адресе IPMB-0, идентификаторе FRU, идентификаторе сайта/сущности и сайте/сущности Тип.
	 
    frucontrol <fru id> <options> Установите различные параметры управления:
	           0x00 - Холодный сброс
               0x01 - Теплый сброс
               0x02 - Плавная перезагрузка
               0x03 - Ошибка диагностического прерывания
               0x04 - Приостановлено [только AMC]
               0x05-0xFF - Холодный сброс
	
	activate <fru id>   Активируйте указанный FRU.
	deactivate <fru id> Деактивируйте указанный FRU.
	policy get <fru id> Получите политику активации FRU.
	policy set <fru id> <lockmask> <lock>
	 Установите политику активации FRU.  маска блокировки равна 1 или 0 для указания действия с
     битом блокировки деактивации или активации соответственно.   блокировка равна 1 или 0 для
     установки/снятия заблокированного бита.

    portstate set|getall|getgranted|getdenied <parameters>
	  Получите или установите различные состояния порта.  Подробные сведения о параметрах см. в разделе Использование.

Код: Выделить всё

power <chassis power command>
Быстрый доступ к командам питания шасси.  Инструкции по использованию приведены в командах питания шасси информация.

Код: Выделить всё

raw <netfn> <cmd> [<data>]
Это позволит вам выполнять необработанные команды IPMI.   Например, для запроса POH счетчик с помощью необработанной команды:
    > ipmitool -v raw 0x0 0xf
	  RAW REQ (netfn=0x0 cmd=0xf data_len=0)
      RAW RSP (5 bytes)
      3c 72 0c 00 00

     Обратите внимание, что драйвер OpenIPMI, предоставляемый ядром Linux, Note  отклонит запрос Get
     Команды Message, Send Message и Read Event Message Buffer, поскольку они обрабатывают внутреннюю последовательность сообщений.

Код: Выделить всё

sdr
    get <id> ... [<id>]   Печатает информацию для записей данных датчика, указанных в идентификаторе датчика.
	info                  Эта команда запросит у BMC информацию о хранилище записей данных датчиков (SDR).
    type [<sensor type>]  Эта команда отобразит все записи из хранилища SDR определенного
                          тип.  Запустите со списком типов (или просто без типа), чтобы просмотреть список
                          доступных типов.  Например, для запроса всех датчиков температуры:
		   > ipmitool sdr type Temperature
            Baseboard Temp   | 30h | ok  |  7.1 | 28 degrees C
            FntPnl Amb Temp  | 32h | ok  | 12.1 | 24 degrees C
            Processor1 Temp  | 98h | ok  |  3.1 | 57 degrees C
            Processor2 Temp  | 99h | ok  |  3.2 | 53 degrees C
			
	list | elist [<all|full|compact|event|mcloc|fru|generic>]

           Эта команда считает записи данных датчика (SDR) и извлекает датчик
           информацию заданного типа, затем запросите каждый датчик и выведите его название,
           чтение и статус.   Если вызывается как список, то он также будет печатать датчик
           номер, идентификатор объекта и экземпляр, а также заявленные дискретные состояния.

           Выходные данные по умолчанию будут отображать только полные и компактные типы датчиков, чтобы увидеть
           , что все датчики используют тип all с помощью этой команды.

            Допустимыми типами являются:
			all     Все записи SDR (датчик и локатор)
			full    Полная запись с датчика
			compact Компактная запись с датчика
			event   Запись датчика только для событий
			mcloc   Запись локатора управляющего контроллера
			fru     Запись локатора FRU
			generic Общие записи SDR
			
	entity <id>[.<instance>]
            Отображает все датчики, связанные с объектом.  Получите список допустимых сущностей
            идентификаторы в целевой системе путем выдачи команды sdr elist.  Список всех
            идентификаторы сущностей можно найти в спецификациях IPMI.
	dump <file>
            Сохраняет необработанные SDR-данные в файл.  Затем этот файл данных можно использовать в качестве локального
            Кэш SDR удаленно управляемой системы с параметром -S <файл>
            в командной строке ipmitool.   Это может значительно повысить производительность всей системы
            интерфейс или удаленная локальная сеть.
    fill sensors
	        Создайте хранилище SDR для текущей конфигурации.   Выполнит команду "Очистить хранилище SDR", так что будьте осторожны.
	fill file <filename>
			Заполните хранилище SDR, используя записи, хранящиеся в двоичном файле данных. Будет
            выполните команду "Очистить хранилище SDR", поэтому будьте осторожны.

Код: Выделить всё

sel
   ПРИМЕЧАНИЕ: Время записи в журнал системных событий (SEL) отображается как "Отметка времени предварительной инициализации", если
   необходимо установить часы SEL.  Убедитесь, что часы SEL точны, вызвав
   команды sel time get и sel time set <строка времени>.
   
   info          Эта команда запросит у BMC информацию о системном журнале событий (SEL) и его содержание.
   clear         Эта команда очистит содержимое SEL.  Это невозможно отменить, так что будьте осторожны
   list | elist  Когда эта команда вызывается без аргументов, отображается все содержимое системного журнала событий.  При вызове как list (расширенный список) он будет
                 также используйте записи записи данных датчика для отображения идентификатора датчика, вызвавшего каждое событие.   Обратите внимание, что это может занять много времени в
                 системном интерфейсе.
				 
		 <count> | first <count>
		 Отображает первое количество (наименее последних) записей в SEL.  Если считать
         равно нулю, отображаются все записи.
		 
		 last <count> Отображает количество последних (most-recent) записей в SEL.  Если количество равно нулю, отображаются все записи.
		 
   delete <SEL Record ID> ... <SEL Record ID>  Удалите одну или несколько записей о событиях SEL.
   add <filename ID>   Считайте записи о событиях из файла и добавляйте их в SEL.   Новые записи в SEL
                       область, добавленная в SEL после последней записи в SEL.  Добавленная запись
                       относится к типу 2 и автоматически помечается временем.
   get <SEL Record ID> Распечатайте информацию по указанной записи записи SEL.
   save <file>         Сохраняйте записи SEL в текстовый файл, который можно вернуть обратно в файл событий
                       команда ipmitool.   Это может быть полезно для тестирования генерации событий путем
                       создания соответствующего файла сообщений о событиях платформы на основе существующих
                       события.   Пожалуйста, ознакомьтесь с доступной справкой по команде "файл события ..." для
                       описание формата этого файла.
					   
   writeraw <file>	   Сохраните записи SEL в файл в необработанном двоичном формате. Этот файл может быть возвращен команде sel readraw ipmitool для просмотра.
   readraw <file>      Считывание и отображение записей SEL из двоичного файла.  Такой файл может быть создан используя команду sel writeraw ipmitool.
   time
       get              Отображает текущее время на часах SEL.
	   set <time string> Устанавливает часы SEL. В будущих записях SEL будет использоваться время, установленное этим
                         команда. <строка времени> имеет вид "ММ/ДД/ГГГГ ЧЧ:ММ:СС". Обратите
                         внимание, что часы указаны в 24-часовой форме. Рекомендуется
                         сбросить значение SEL перед установкой времени.

Код: Выделить всё

sensor
      list                Перечисляет датчики и пороговые значения в широком табличном формате.
      get <id> ... [<id>] Печатает информацию для датчиков, указанных по названию.
	  thresh <id> <threshold> <setting> Это позволяет вам установить определенное пороговое значение датчика.  Датчик указан по названию
	  	    Допустимыми пороговыми значениями являются:
            unr  Верхняя часть, не подлежащая восстановлению
            ucr  Верхний критический
            unc  Верхний некритический
            lnc  Более низкий некритический
            lcr  Более низкий критический
            lnr  Меньший невозмещаемый
	  thresh <id> lower <lnr> <lcr> <lnc>
	  Это позволяет вам установить все нижние пороговые значения для датчика одновременно.
      Датчик указан по названию, а пороговые значения перечислены в порядке
      уменьшения невосстанавливаемого, уменьшения критического и уменьшения некритического значения.
	  
	  thresh <id> upper <unc> <ucr> <unr>
      Это позволяет вам установить все верхние пороговые значения для датчика одновременно.
      Датчик указан по имени, а пороговые значения перечислены в порядке
      возрастания: Верхнее некритическое, Верхнее критическое и верхнее невосстанавливаемое.

Код: Выделить всё

session
     info <active|all|id 0xnnnnnnnn|handle 0xnn>
	 Получите информацию об указанном сеансе (сеансах).  Вы можете идентифицировать сеансы
     по их идентификатору, по номеру дескриптора, по их активному статусу или с помощью
     ключевого слова "все/all" для указания всех сеансов.

Код: Выделить всё

set
   hostname <host>    Имя хоста сеанса.
   username <user>    Имя пользователя сеанса.
   password <pass>    Пароль сеанса.
   privlvl <level>    Принудительный уровень привилегий сеанса.
   authtype <type>    Принудительный тип аутентификации.
   localaddr <addr>   Локальный IPMB-адрес.
   targetaddr <addr>  Удаленный целевой IPMB-адрес.
   port <port>        Удаленный порт RMCP.
   csv [level]        Включите вывод в формате, разделенном запятыми.  Воздействует на следующие команды: user,
                      channel, isol, sunoem, sol, sensor, sdr, sel, session.
   verbose [verbose]  Уровень детализации.

Код: Выделить всё

shell
     Эта команда запустит интерактивную оболочку, которую вы можете использовать для отправки нескольких
     ipmitool отправляет команды в BMC и просматривает ответы.  Это может быть полезно вместо
     того, чтобы каждый раз запускать полную команду ipmitool.  Некоторые команды будут использовать
     Данные датчиков записываются в кэш, и вы увидите заметное улучшение скорости, если эти
     команды могут повторно использовать один и тот же кэш в сеансе оболочки.  Сеансы локальной сети будут
     периодически отправляйте команду keepalive, чтобы предотвратить тайм-аут сеанса IPMI.

Код: Выделить всё

sol
    info [<channel number>]
    Извлеките информацию о конфигурации последовательного соединения по локальной сети на указанном канале.
	Если канал не указан, будут отображены данные конфигурации SOL для используемого в данный момент канала.
	
    payload <enable | disable | status> <channel number> <userid>
	Включать, отключать или показывать статус полезной нагрузки SOL для пользователя на указанном канале.
	
	set <parameter> <value> [<channel>]
	Настройте параметры для последовательного подключения по локальной сети.  Если канал не указан, он будет
    отобразите данные конфигурации SOL для используемого в данный момент канала.
    Обновления параметров конфигурации автоматически защищаются вместе с обновлениями
    к параметру set-in-progress.
	
	   Допустимыми параметрами и значениями являются:
	   set-in-progress  установить-завершить установку-в процессе фиксации-записи
	   enabled              true false
	   force-encryption     true false
	   force-authentication true false
	   privilege-level      user operator admin oem пользователь оператор администратор
	   character-accumulate-level Десятичное число, заданное с шагом в 5 миллисекунд
	   character-send-threshold   Десятичное число
	   retry-count                Десятичное число.  0 указывает на отсутствие повторных попыток после передачи пакета.
	   retry-interval             Десятичное число с шагом в 10 миллисекунд.   0 указывает на то, что повторные попытки должны отправляться последовательно.
	   non-volatile-bit-rate      последовательный, 19.2, 38.4, 57.6, 115.2. Установка этого значения в последовательный
       указывает, что BMC должен использовать настройку, используемую IPMI по последовательный канал.
       volatile-bit-rate          последовательный, 19.2, 38.4, 57.6, 115.2. Установка этого значения в последовательный
       указывает, что BMC должен использовать настройку, используемую IPMI по последовательный канал.
	   
	activate [usesolkeepalive | nokeepalive] [instance=<number>]
	Приводит к переходу ipmitool в режим последовательного подключения по локальной сети и доступен только тогда, когда
    используя интерфейс lanplus.  К BMC подключается RMCP+,
    терминал переводится в режим raw, и пользовательский ввод отправляется на последовательную консоль на
    удаленный сервер.  При выходе режим полезной нагрузки SOL деактивируется, и терминал возвращается к своим первоначальным настройкам.
    Если экземпляр указан, он будет активирован с использованием заданного номера экземпляра.
    Значение по умолчанию равно 1.
    Для управления сеансом SOL предусмотрены специальные управляющие последовательности:
	  ~.   Прервать соединение
      ~^Z  Приостановить работу ipmitool
      ~^X  Приостановите работу ipmitool, но не восстанавливайте tty при перезапуске
      ~B   Отправить перерыв
      ~~   Отправьте экранирующий символ, набрав его дважды
      ~?   Выведите поддерживаемые управляющие последовательности
	  Обратите внимание, что экранирующие символы распознаются только сразу после перевода строки. 

    deactivate [instance=<number>]
	Отключает режим последовательного подключения по локальной сети на BMC.  Выход из режима последовательного подключения по локальной сети
    должна автоматически вызывать отправку этой команды в BMC, но в
    случае непреднамеренного выхода из режима SOL эта команда может оказаться необходимой чтобы сбросить состояние BMC.
	Если указан экземпляр, он деактивирует указанный номер экземпляра.  Значение по умолчанию равно 1.

Код: Выделить всё

spd <i2cbus> <i2caddr> [<channel>] [<axread>]
Эта команда может использоваться для считывания данных SPD (Serial Presence Detect) с помощью I2C Основная команда записи-чтения IPMI.

Код: Выделить всё

sunoem
      led   Эти команды предоставляют способ получения и установки состояния светодиодов на солнечном
            Сервер микросистем.  Используйте "sdr list generic", чтобы получить список устройств, которые
            являются управляемыми светодиодами.  Параметр ledtype является необязательным и не является обязательным
            указывать в командной строке, если только это не требуется аппаратным обеспечением.
			
		 get <sensorid> [<ledtype>]
		 Получить статус конкретного светодиода, описанного общей записью локатора устройства в SDR.
		 Идентификатор датчика all получит статус всех доступных светодиодов.
		 
		 set <sensorid> <ledmode> [<ledtype>]
		 Установите состояние конкретного светодиода, описываемого универсальным указателем устройства
         запись в SDR.   Идентификатор датчика all установит статус всех
         доступные светодиоды для указанного режима работы и типа светодиода.
		 
		 Режим светодиода необходим для выполнения заданных операций:
		       OFF         Выключен
               ON          постоянно Включен
               STANDBY     ОЖИДАНИЯ 100 мс включено 2900 мс выключено частота мигания
               SLOW        МЕДЛЕННАЯ частота мигания 1Гц
               FAST        БЫСТРАЯ частота мигания 4 Гц
			   
	   Тип светодиода является необязательным:
	            OK2RM       Ok для удаления
                SERVICE     Требуется сервисное обслуживание
                ACT         Активация
                LOCATE      Локально
				
	 fan speed <0-100> Установите скорость вращения системного вентилятора (рабочий цикл ШИМ).
	     sshkey
		  set <userid> <keyfile>
		  Эта команда позволит вам указать SSH-ключ, который будет использоваться для
          конкретный пользователь в сервисном процессоре.  Этот ключ будет
          использоваться для входа CLI в SP, а не для сеансов IPMI.  Смотреть
          доступные пользователи и их идентификаторы пользователей в "списке пользователей / user list" команда.
		  
		  del <userid>
	      Эта команда удалит SSH-ключ для указанного идентификатора пользователя.
		  
	tsol
	    Эта команда позволяет устанавливать последовательные сеансы по локальной сети с помощью Tyan IPMIv1.5
        SMDC, такой как M3289 или M3290.  Команда по умолчанию, выполняемая без аргументов, будет
        установите сеанс SOL по умолчанию обратно на локальный IP-адрес.  Необязательные аргументы могут быть
        указаны в любом порядке.
		
		<ipaddr>
		Отправьте IP-адрес получателя в SMDC, который он будет использовать для отправки последовательного трафика.
        По умолчанию это определяет локальный IP-адрес и устанавливает двусторонний
        сеанс.  Формат ipaddr - XX.XX.XX.XX
		
		port=NUM Настройте UDP-порт для приема последовательного трафика.  По умолчанию это значение равно 6230.
		
		ro|rw  Настройте сеанс SOL как доступный только для чтения или для записи.  По умолчанию сеансы доступны для чтения и записи.

Код: Выделить всё

user
    summary  Отображает сводную информацию об идентификаторах пользователей, включая максимальное количество
    идентификаторов пользователей, количество включенных пользователей и количество определенных фиксированных имен.
	
	list    Отображает список пользовательской информации для всех определенных идентификаторов пользователя.
	
	set
	   name <userid> <username>  Задает имя пользователя, связанное с заданным идентификатором пользователя.
	   password <userid> [<password>] Устанавливает пароль для данного идентификатора пользователя.  Если пароль не указан,
       пароль сбрасывается (устанавливается значение нулевого пароля).   Будьте осторожны, когда
       удаление паролей из учетных записей уровня администратора.
	   disable <userid> Отключает доступ к BMC по заданному идентификатору пользователя.
	   enable <userid>  Разрешает доступ к BMC по заданному идентификатору пользователя
	   priv <userid> <privilege level> [<channel number>]  Установите уровень привилегий пользователя на указанном канале.  Если канал не указан, будет использоваться текущий канал.
	   test <userid> <16|20> [<password>] Определите, был ли пароль сохранен в виде 16 или 20 байт.
ОТКРЫТЫЙ ИНТЕРФЕЙС
Открытый интерфейс ipmitool использует драйвер устройства ядра OpenIPMI. Этот драйвер
присутствует во всех современных ядрах 2.4 и 2.6, и он должен присутствовать в последних версиях Linux
распределительные ядра. Существуют также исправления ядра драйвера IPMI для разных ядер
версии доступны на домашней странице OpenIPMI.

Требуемые модули ядра различаются для ядер 2.4 и 2.6. Следующее ядро
для работы ipmitool модули должны быть загружены в ядро на базе версии 2.4:

ipmi_msghandler Обработчик входящих и исходящих сообщений для интерфейсов IPMI.
ipmi_kcs_drv Драйвер интерфейса в стиле контроллера клавиатуры IPMI (KCS) для обработчика сообщений.
ipmi_devintf Интерфейс символьного устройства Linux для обработчика сообщений.

Для работы ipmitool в ядре на базе версии 2.6 должны быть загружены следующие модули ядра:
ipmi_msghandler Обработчик входящих и исходящих сообщений для интерфейсов IPMI.
ipmi_si Драйвер системного интерфейса IPMI для обработчика сообщений. Этот модуль поддерживает
различные системные интерфейсы IPMI, такие как KCS, BT, SMIC и даже SMBus в ядрах 2.6.
ipmi_devintf Интерфейс символьного устройства Linux для обработчика сообщений.

Как только необходимые модули будут загружены, появится запись динамического символьного устройства, которая
должна существовать в /dev/ipmi0. Для систем, использующих devfs или udev, это будет отображаться в /dev/ipmi/0.

Чтобы создать узел устройства, сначала определите, какой динамический основной номер ему был присвоен ядром, заглянув в /proc/devices и проверив запись ipmidev. Обычно, если это
первое динамическое устройство, то основным номером будет 254, а второстепенным номером для первого системного интерфейса будет 0, поэтому вы должны создать запись устройства с помощью:
mknod /dev/ipmi0 c 254 0

ipmitool включает в себя несколько примеров сценариев инициализации, которые могут выполнять эту задачу автоматически при запуске.
Для того чтобы ipmitool использовал интерфейс устройства OpenIPMI, вы можете указать его в командной строке:
ipmitool -я открываю <команду>


ИНТЕРФЕЙС BMC
Интерфейс ipmitool bmc использует драйвер устройства bmc, предоставляемый Solaris 10 и выше.
Чтобы заставить ipmitool использовать этот интерфейс, вы можете указать его в
командной строке:
ipmitool -I bmc <команда> С драйвером bmc связаны следующие файлы:
/platform/i86pc/kernel/drv/bmc 32-разрядный модуль ядра ELF для драйвера bmc.
/platform/i86pc/kernel/drv/amd64/bmc 64-разрядный модуль ядра ELF для драйвера bmc.
/dev/bmc


ИНТЕРФЕЙС IPMI
Интерфейс ipmitool ipmi использует драйвер устройства ядра Solaris 9 IPMI. Это было
заменен интерфейсом bmc в Solaris 10. Вы можете указать ipmitool использовать это
интерфейс, указав его в командной строке.
ipmitool -I lipmi <выражение>


ИНТЕРФЕЙС ЛОКАЛЬНОЙ СЕТИ
Локальный интерфейс ipmitool взаимодействует с BMC по локальному соединению Ethernet с помощью
UDP под IPv4. Дейтаграммы UDP отформатированы так, чтобы содержать сообщения запроса/ответа IPMI
с заголовками сеанса IPMI и заголовками RMCP.

IPMI-over-LAN использует версию 1 протокола удаленного управления (RMCP) для поддержки
управление до ОС и без ОС. RMCP - это протокол запроса-ответа, предоставляемый с использованием UDP
дейтаграммы на порт 623.

Интерфейс локальной сети представляет собой многосессионное соединение для проверки подлинности; сообщения, доставляемые на
BMC может (и должен) быть аутентифицирован с помощью протокола вызова/ответа с помощью любого
прямой пароль/ключ или алгоритм дайджеста сообщений MD5. ipmitool попытается подключиться
с уровнем привилегий администратора, поскольку это требуется для выполнения функций питания шасси.

Вы можете указать ipmitool использовать интерфейс локальной сети с параметром -I lan:

Код: Выделить всё

ipmitool -I lan -H <имя хоста> [-U <имя пользователя>] [-P <пароль>] <команда>
Имя хоста должно быть указано в командной строке, чтобы использовать интерфейс локальной сети с
ipmitool. Поле пароль является необязательным; если вы не вводите пароль в команде
строка, ipmitool попытается подключиться без аутентификации. Если вы укажете пароль
он будет использовать аутентификацию MD5, если поддерживается BMC и прямым паролем /ключом
в противном случае, если только это не переопределено параметром командной строки.


ИНТЕРФЕЙС LANPLUS
Как и интерфейс lan, интерфейс lanplus взаимодействует с BMC по сети Ethernet
Подключение к локальной сети с использованием UDP по протоколу IPv4. Разница в том, что интерфейс lanplus использует
протокол RMCP+, как описано в спецификации IPMI версии 2.0. RMCP+ позволяет улучшить
проверка подлинности и целостности данных, а также шифрование и возможность переноса
несколько типов полезной нагрузки. Для поддержки Generic Serial Over LAN требуется RMCP+, поэтому
команда активации ipmitool sol требует использования интерфейса lanplus.

При установлении сеанса RMCP+ используется симметричный протокол вызова-ответа, называемый RAKP
(Протокол обмена ключами с удаленной аутентификацией), который позволяет согласовывать множество вариантов.
ipmitool пока не позволяет пользователю указывать значение каждой опции, по умолчанию
используются наиболее очевидные настройки, отмеченные как требуемые в спецификации версии 2.0. Идентификация
HMAC и integrity создаются с использованием SHA1, а шифрование выполняется с помощью AES-CBC-128.
Логины на уровне ролей пока не поддерживаются.

ipmitool должен быть связан с библиотекой OpenSSL, чтобы выполнить шифрование
функционирует и поддерживает интерфейс lanplus. Если требуемые пакеты не найдены, они
не будут скомпилированы и поддерживаться.

Вы можете указать ipmitool использовать интерфейс lanplus с параметром -I lanplus:

Код: Выделить всё

ipmitool -I lanplus -H <имя хоста> [-U <имя пользователя>] [-P <пароль>] <команда>
Имя хоста должно быть указано в командной строке, чтобы использовать интерфейс локальной сети с
ipmitool. За исключением параметров -A и -C, остальная часть командной строки
опции идентичны тем, которые доступны для интерфейса локальной сети.

Параметр -C позволяет указать алгоритмы аутентификации, целостности и шифрования
использовать для сеанса lanplus на основе идентификатора набора шифров, найденного в IPMIv2.0
спецификация приведена в таблице 22-19. Набор шифров по умолчанию равен 3, который определяет
Аутентификация RAKP-HMAC-SHA1, целостность HMAC-SHA1-96 и шифрование AES-CBC-128 алгоритмы.


СВОБОДНЫЙ ИНТЕРФЕЙС
free интерфейс ipmitool использует драйверы FreeIPMI libfreeipmi.
Вы можете указать ipmitool использовать интерфейс FreeIPMI с параметром -I:
ipmitool -I free <команда>


ИНТЕРФЕЙС IMB
Интерфейс ipmitool imb поддерживает интерфейс Intel IMB (Intel Inter-module Bus) через устройство /dev/imb.
Вы можете указать ipmitool использовать интерфейс IMB с параметром -I:
ipmitool -I imb <команда>


ПРИМЕРЫ
Пример 1: Список удаленных датчиков
>

Код: Выделить всё

ipmitool -I lan -H 1.2.3.4 -f passfile sdr list
Baseboard 1.25V | 1.24 Volts | ok
Baseboard 2.5V | 2.49 Volts | ok
Baseboard 3.3V | 3.32 Volts | ok

Пример 2: Отображение состояния удаленного датчика
>

Код: Выделить всё

ipmitool -I lan -H 1.2.3.4 -f passfile sensor get "Baseboard 1.25V"
Запись о местоположении датчика...
Sensor ID : Baseboard 1.25V (0x10)
Sensor Type (Analog) : Voltage
Sensor Reading : 1.245 (+/- 0.039) Volts
Status : ok
Lower Non-Recoverable : na
Lower Critical : 1.078
Lower Non-Critical : 1.107
Upper Non-Critical : 1.382
Upper Critical : 1.431
Upper Non-Recoverable : na

Пример 3: Отображение состояния питания удаленного шасси
>

Код: Выделить всё

ipmitool -I lan -H 1.2.3.4 -f passfile chassis power status
Chassis Power is on

Пример 4: Управление питанием на удаленном шасси
>

Код: Выделить всё

ipmitool -I lan -H 1.2.3.4 -f passfile chassis power on
Chassis Power Control: Up/On

АВТОР
Дункан Лори <duncan@iceblink.org >

СМОТРИТЕ ТАКЖЕ
Домашняя страница IPMItool http://ipmitool.sourceforge.net
Особенности интерфейса управления интеллектуальной платформой http://www.intel.com/design/servers/ipmi
Домашняя страница OpenIPMI http://openipmi.sourceforge.net
Домашняя страница FreeIPMI http://www.gnu.org/software/freeipmi/


Источник
количество слов: 1076
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 847
Стаж: 5 лет 6 месяцев
Откуда: Вологодская область
Поблагодарили: 37 раз
Контактная информация:

Пример работы с IPMI

Сообщение Артём Мамзиков »

Источник

Согласно этой спецификации установленный соответствующие индивидуальые шестнадцатеричные значения таковы:
Таблица 14-1. Значения датчика Power Unit Stat
Номер бита Описание
00h Отключение питания/ Выключение питания
01h Полный цикл отключения/ включения питания
02h Отключение питания 240 ВА
03h Блокировка отключения питания
04h Утрата переменного питания/ потеря входной мощности (пропал источник энергии для блока питания)
05h Отказ программного управления питанием (данное устройство не ответили на запрос включения)
06h Выявлен отказ блока питания
07h Предсказуемый сбой

Просмотр описания первого бита, значения 0, подразумевает что устройство работает и не сообщает о проблемах. Двоичное значение 1 означает что устройство отключено. Мы могли бы сравнивать получаемое значение с 0 и это сообщало бы нам что с этим устройством всё отлично, но что если вы пожелаете проверить прочие биты, например, предсказанного отказа? Если бы был установлен только этот бит, данный элемент возвращал бы 128. Как уже упоминалось ранее, дискретные элементы возвращают некое десятичное представление имеющегося двоичного значения. Изначальным значением является 10000000 (или 07h в предыдущей таблице), где установлено значение восьмого бита, исчисляемого с самого последнего значимого. Кстати, по этой причине мы также оставили для данного элемента поле Type of information в виде Numeric (unsigned), а Data type как Decimal - хотя действительное значение кодируется двоичным представлением, причём само значение передаётся в виде некого десятичного целого.

Таким образом,для проверки предсказанного отказа мы можем сравнить полученное значение со 128, не так ли? Нет, не совсем. Если данная система выключена и сообщает предсказанное значение, его первоначальным двоичным значением может быть 128 10000001, а в десятичном представлении как 129. Ещё больший беспорядок начинается когда мы начинаем здесь включать прочие биты. Именно по этой причине невозможно применять на этот раз соответствие значения для таких элементов - в некоторых ситуациях какое- то значение может означать что установлены все биты и для каждой возможной комбинации должна иметься запись сопоставления значения. Да, и мы не можем просто проверять что система отключена просто сверяясь со значением 1 - значение 129 и целый ряд иных значений также может означать это.

Раз мы не можем сопоставлять самое последнее значение неким простым образом, можем ли мы вообще разумным образом проверять такие дискретные значения? К счастью да; Zabbix предоставляет функцию побитового триггера, именуемую как band(), которая изначально была реализована специально для мониторинга десятичного датчика.

Применение побитовых функций триггера
Такая специальная функция band() является чем- то аналогичным самой простой функции last(), однако вместо того чтобы просто возвращать самый последний значащий бит, она применяет некую битовую маску и побитовый AND к полученному значению и возвращает получаемый результат такой операции. Если мы желаем проверить самый последний значащий бит, то что позволит нам узнать включено ли наше устройство, так это применение маски битов 1. Предположим что также установлены и прочие биты и мы могли бы получить от наблюдаемой системы значение 170. В двоичном виде это было бы 10101010. Побитовое AND умножало бы все биты вниз как это показано в соответствующей колонке:

Таблица 14-2. Побитовое AND с установленной маской
Десятичное значение Двоичное значение
Значение 170 10101010

Побитовое AND (помножаемое вниз)
Маска 1 00000001
Результат 0 00000000

Для функции переключателя band() установлен следующий синтаксис:
band(#number|seconds,mask)

Замечание
Она также имеет третий параметр, time shift - мы уже обсуждали сдвиг по времени в Главе 6, Выявление проблем при помощи триггеров.

Когда мы представляем себе двоичное представление, нам приходится применять в Zabbix десятичные числа. В данном случае это просто - значение выражения переключателя будет таким:
{host:item.band(#1,1)}=1

Мы проверяем самое последнее битовое значение, полученное с #1, применяем десятичную маску 1, и проверяем установлен ли самый последний бит.

В качестве более сложного примера, давайте допустим что мы желаем проверить другие биты (начиная с самых последних значащих) 3 и 5 и мы получим значение 110 (в десятичном представлении):

Таблица 14-3. Побитовое AND с установленной маской
Десятичное значение Двоичное значение
Значение 110 01101110

Побитовое AND (помножаемое вниз)
Маска 20 00010100

Результат 4 00000000

Простым способом представления операции с усатновленной маской было бы что все биты, которые соответствуют в маске 0, устанавливаются в 0, а все прочие передаются как есть. В данном случае мы интересуемся установкой двух битов, 3 и 5, а потому выражеие будет таким:
{host:item.band(#1,20)}=20

В нашем значении был установлен лишь бит 3 и получаемым значением будет 4, что не соответствует 20 - ни один бит не установлен, а потому выражение триггера вычисляется как FALSE. Если бы мы хотели установлен ли бит 3 и при этом сброшен бит 5, мы бы сравнивали получаемый результат с 4, А если вы желаете проверить что бит 3 сброшен, а бит 5 установлен, мы бы выполняли сравнение с 16 - так как в двоичном виде это 00010000.

Теперь давайте вернёмся к проверки установки для значения бита предсказания - это был восьмой бит, а потому нашей маской должна быть 10000000 и нам следует проводить сравнение с 10000000. Однако они оба должны быть представлены в десятичном формате, а потому нам следует установить и значение маски, и значение сравниваемого значения в 128.

Давайте вооружившись этим знанием создадим в имеющемся интерфейсе триггер:
Перейдите к Configuration | Hosts, после IPMI host кликните по Triggers, а затем кликните по Create trigger/
В поле Name введите Power unit predictive failure on {HOST.NAME}, а затем кликните по Add сразу после Expression.
После поля Item кликните по Select, а затем выберите Power Unit Stat.
Установите в ниспадающем меню Function установите Bitwise AND of last (most recent) T value and mask = N, в ведите 128 и в поле Mask, и в поле N, а затем кликните по Insert. Результирующим выражением триггера должно быть следующее:
{IPMI host:Power_Unit_Stat.band(,128)}=128

Вы заметили что самый первый параметр опущен? Как и в случае с функцией last(), пропуск параметра эквивалентен установке в #1, как и в предыдущих примерах. Это выражение триггера будет игнорировать самые последние 7 значащих бити проверит установлен ли результат в двоичное 10000000 или десятичное 128.

Побитовое сравнение также допустимо и для функции count(). В данном случае имеющийся синтаксис слегка более сбивает с толку: и сам параметр и маска должны определяться во втором параметре, разделяемые слэшем. Если заданные шаблон и маска эквивалентны, значние маски может быть опущено. Для прояснения этого давайте попробуем рассмотреть некоторые примеры.

Скажем, чтобы вычислить сколько значений имеют установленным восьмой бит на протяжении предыдущих 10 минут, выражение для нашей функции должно быть таким:
count(10m,128,band)

Наши шаблон и маска были теми же самыми, а потому мы можем опустить часть маски. Наше предыдущее выражение эквивалентно такому:
count(10m,128/128,band)

Если бы мы пожелали вычислить сколько значений имеют установленным 5 бит при не взведённом 3 бите в течении последних 10 минут, выражение в части функции обязано выглядеть следующим образом:
count(10,16/20,band)

Здесь значением шаблона является 16 или 10000, а маска 20 или 10100.
Остерегайтесь добавлить слишком много элементов IPMI в отдельную систему - очень просто перегрузить контроллер IPMI.

Совет
В выпуске Zabbix 4.0 теперь в поле датчика IPMI можно применять id: и name: -
name: позволяет нам определять сам датчик по его полному названию вместо его короткого названия
id: даёт нам величины параметра для определения значения конкретного датчика, который мы намерены отслеживать
Все эти сведения запросто можно обнаружить в файле журнала Zabbix. Для этого лучше будет запустить сервер Zabbix с уровнем отладки 4.

Выводы
Хотя он и не настолько широко распространён как SNMP, IPMI может предоставлять независимый от программного обеспечения мониторинг оборудования для определённых устройств, как правило серыеров. Он становится всё более и более популярным в качестве решения внеполосного мониторинга и управления, которое способно помочь нам с отслеживанием аппаратных средств для совместимых устройств.

Zabbix поддерживает отслеживание обычных датиков, например, напряжения, RPM и температуры, а также дискретных датчиков, которые имеют возможность упаковывать много сведений в единственном целом значении. Для дешифрации той информации, клторая скрыта в этом целом, Zabbix предлагает специальную функцию триггера с названием band(), которая делает возможным побитовое маскирование и установление соответствие особым битам.
количество слов: 200
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 847
Стаж: 5 лет 6 месяцев
Откуда: Вологодская область
Поблагодарили: 37 раз
Контактная информация:

Пример работы с IPMI

Сообщение Артём Мамзиков »

Шаблон IPMI Обнаружение датчиков LLD
Добавлены обнаружения
СКАЧАТЬ
IPMI Обнаружение датчиков.zip
IPMI Обнаружение датчиков.zip
(10.67 КБ) 12 скачиваний
Предыдущая версия
СКАЧАТЬ
IPMI Обнаружение датчиков.zip
IPMI Обнаружение датчиков.zip
(3.21 КБ) 12 скачиваний
Пример Макросов
{$PRIVILEGESIPMI} ADMINISTRATOR
{HOST.CONN} IP-узла
{$PORTIPMI} 623
{$LOGINIPMI} admin
{$PASSIPMI} admin
IPMI Обнаружение датчиков Макросы
IPMI Обнаружение датчиков Макросы
Правила обнаружения
Обнаружение датчиков IPMI Без Триггеров Оставшиеся датчики Прототипы элементов данных 1 Прототипы триггеров Прототипы графиков Прототипы узлов сети shell.sh[ipmitool -I lanplus -L {$PRIVILEGESIPMI} -H {HOST.CONN} -p {$PORTIPMI} -U {$LOGINIPMI} -P {$PASSIPMI} sensor] 3h Внешняя проверка Активировано

Обнаружение датчиков IPMI Прототипы элементов данных 1 Прототипы триггеров 2 Прототипы графиков Прототипы узлов сети shell.sh[ipmitool -I lanplus -L {$PRIVILEGESIPMI} -H {HOST.CONN} -p {$PORTIPMI} -U {$LOGINIPMI} -P {$PASSIPMI} sensor] 3h Внешняя проверка Активировано

Скрипт shell.sh

Код: Выделить всё

#!/bin/bash
$1
IPMI Обнаружение датчиков Правила обнаружения
IPMI Обнаружение датчиков Правила обнаружения
Ключ: shell.sh[ipmitool -I lanplus -L {$PRIVILEGESIPMI} -H {HOST.CONN} -p {$PORTIPMI} -U {$LOGINIPMI} -P {$PASSIPMI} sensor]

Обнаружение датчиков IPMI
1.Имя сенсора - в имя элемент данных и имя триггера
2.Значение - Текущее значение получаем в элемент данных для мониторинга
3.Единицы измерения - В элемент данных (и тип данных элемента если через api создание)
4.Статус, состояние сенсора (если недоступен na - элемент не создаем или деактивированный, для дискретных возможно мониторить)

Триггер
6.Нижний некритический порог - Предупреждение
5.Нижний критический порог
7.Нижний порог возврата в нормальное состояние - Восстановление

8.Верхний некритический порог - Предупреждение
9.Верхний критический порог - Средняя/Высокая
10.Верхний порог возврата в нормальное состояние - Восстановление

Дискретные датчики и в статусе na не обнаруживаются задано в фильтрах правила
Если не установлены пороги которые используются для триггеров na меняется на 0 для того что бы правило обнаружения не ушло в ошибку и создало триггер. В дальнейшем укажите пороговые значения для сенсоров.

Предобработка

Код: Выделить всё

var lines = value.split('\n');
    var result = lines.map(function(line) {
        var data = line.split('|').map(function(item) {
            return item.trim();
        });

        return {
            "{#IPMISENSORNAME}": data[0],
            "{#IPMIUNIT}": data[2],
            "{#IPMISTATUS}": data[3],
            "{#LOWERNONRECOVERABLE}": data[4] === "na" ? "0" : data[4],
            "{#LOWERCRITICAL}": data[5] === "na" ? "0" : data[5],
            "{#LOWERNONCRITICAL}": data[6] === "na" ? "0" : data[6],
            "{#UPPERNONCRITICAL}": data[7] === "na" ? "0" : data[7],
            "{#UPPERCRITICAL}": data[8] === "na" ? "0" : data[8],
            "{#UPPERNONRECOVERABLE}": data[9] === "na" ? "0" : data[9]
        };
    });

//return JSON.stringify(result);
// Читаемый вид перенос строк
return JSON.stringify(result).replace(/\[/g,"[\n").replace(/\},/g,"},\n").replace(/\}]/g,"}\n]");
Фильтры
A and B
A {#IPMISTATUS} Не соответствует na
B {#IPMIUNIT} Не соответствует discrete

Тесты предобработки
IPMI Обнаружение датчиков Правила обнаружения Обнаружение датчиков IPMI
IPMI Обнаружение датчиков Правила обнаружения Обнаружение датчиков IPMI
Прототипы элементов данных
IPMI Обнаружение датчиков Правила обнаружения Прототип элемента данных
IPMI Обнаружение датчиков Правила обнаружения Прототип элемента данных
Прототипы триггеров:
Средняя Сенсор {#IPMISENSORNAME}
Зависит от:
IPMI Обнаружение датчиков: Сенсор {#IPMISENSORNAME}
Проблема: {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}<={#LOWERCRITICAL} or {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}>={#UPPERCRITICAL}
Восстановление: {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}>={#LOWERNONCRITICAL} or {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}<={#UPPERNONCRITICAL} Да

Высокая Сенсор {#IPMISENSORNAME} Проблема: {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}<={#LOWERNONRECOVERABLE} or {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}>={#UPPERNONRECOVERABLE}
Восстановление: {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}>={#LOWERNONCRITICAL} or {IPMI LLD:ipmi.sensor.["{#IPMISENSORNAME}"].last()}<={#UPPERNONCRITICAL} Да
IPMI Обнаружение датчиков Правила обнаружения Прототипы триггеров
IPMI Обнаружение датчиков Правила обнаружения Прототипы триггеров
IPMI Обнаружение датчиков Правила обнаружения Прототип триггера
IPMI Обнаружение датчиков Правила обнаружения Прототип триггера

Обнаружение датчиков IPMI Без Триггеров Оставшиеся датчики
Отличие в фильтрах, предобработке, нет прототипов триггеров, макрос имени изменен добавлена d {#IPMISENSORNAMED} и тип данных текст

Предобработка

Код: Выделить всё

var lines = value.split('\n');
    var result = lines.map(function(line) {
        var data = line.split('|').map(function(item) {
            return item.trim();
        });

        return {
            "{#IPMISENSORNAMED}": data[0],
            "{#IPMIUNIT}": data[2],
            "{#IPMISTATUS}": data[3],
            "{#LOWERNONRECOVERABLE}": data[4],
            "{#LOWERCRITICAL}": data[5],
            "{#LOWERNONCRITICAL}": data[6],
            "{#UPPERNONCRITICAL}": data[7],
            "{#UPPERCRITICAL}": data[8],
            "{#UPPERNONRECOVERABLE}": data[9]
        };
    });

//return JSON.stringify(result);
// Читаемый вид перенос строк
return JSON.stringify(result).replace(/\[/g,"[\n").replace(/\},/g,"},\n").replace(/\}]/g,"}\n]");
Фильтры
A or B
A {#IPMISTATUS} Совпадает na
B {#IPMIUNIT} Совпадает discrete
количество слов: 354
Ответить Вложения 24 Пред. темаСлед. тема

Вернуться в «Установка Заббикс и Дополнений»