ipmideck

Установка

Запустите ipmideck на своей стойке

Три шага от чистой машины до живой панели. Выберите Docker или pip, запустите, затем откройте мастер. Никаких файлов конфигурации для правки вручную.

Где взять

Опубликовано в PyPI и Docker Hub, с полным исходником на GitHub. Выберите то, что подходит под ваш способ работы.

Шаг 1

Установите и запустите

Два способа запустить ipmideck. Docker запускается одной командой. С pip вы устанавливаете пакет, затем запускаете сервер.

docker

Запустить контейнер

docker
docker run --network host devluigi06/ipmideck:latest

Работает с --network host, чтобы ipmideck доставал ваши BMC напрямую.

pip
  1. Установить пакет

    pip
    pip install ipmideck
  2. Запустить сервер

    cli
    ipmideck

Пакету pip нужен ipmitool на хосте. Голый ipmideck слушает на 0.0.0.0:3000.

Шаг 2

Откройте панель

http://<your-ip>:3000

your-ip обозначает адрес машины, на которой вы его запустили. Найдите его через ip addr в Linux, или в списке устройств вашего роутера.

Зайдите по адресу вашего сервера на порту 3000, затем пройдите мастер в приложении, чтобы добавить первый BMC. config.yaml пишется автоматически при первом запуске, так что настраивать вручную нечего.

Работает? Вы попадёте на вход ipmideck, затем в короткий мастер для добавления первого BMC.

Не видите?

Ничего не загружается? Освободите порт 3000, или перенесите ipmideck на другой порт: нажмите клавишу b в интерактивной консоли или задайте IPMIDECK_SERVER_PORT.

BMC нет в мастере? Он должен быть доступен по UDP 623. В Docker запускайте с --network host.

Поддерживаемое оборудование

ipmideck говорит на обычном IPMI 2.0, поэтому отвечает большинство серверных BMC. Поддержка разбита по уровням в зависимости от того, насколько тщательно протестирован каждый вендор.

Dell PowerEdge / iDRACПоддерживается / протестировано
IPMI 2.0. Полностью поддерживается и протестировано.
SupermicroЭкспериментально
IPMI 2.0. Работает, ещё не протестировано исчерпывающе.
HPE
HPE iLOЭкспериментально
IPMI 2.0. Экспериментально, ещё не протестировано исчерпывающе.
Lenovo XCCЭкспериментально
IPMI 2.0. Экспериментально, ещё не протестировано исчерпывающе.
IBM
IBM IMMЭкспериментально
IPMI 2.0. Экспериментально, ещё не протестировано исчерпывающе.

Конфигурация

продвинутое

Для начала это не нужно. ipmideck пишет data/config.yaml с разумными значениями по умолчанию при первом запуске. Это здесь на случай, если вы захотите узнать, где он лежит и как его менять.

где лежит config.yaml
Docker
/data/config.yaml. Образ задаёт IPMIDECK_DATA_DIR=/data, поэтому сохраняйте этот путь томом.
pip / исходник
Каталог данных рядом с установкой (в Linux это /data). Перенесите его через IPMIDECK_DATA_DIR.
Показать config.yaml по умолчанию
config.yaml
# data/config.yaml — auto-generated on first run
server:
  host: "0.0.0.0"
  port: 3000
  https: false
auth:
  enabled: true
  session_expiry: "24h"
  max_login_attempts: 5
ipmi:
  poll_interval: 30
  power_poll_interval: 30
  command_timeout: 30
data:
  retention_days: 365
  cleanup_interval: "24h"
logging:
  level: "info"
modules:
  sensors:
    enabled: true
  fanpilot:
    enabled: true
  power:
    enabled: true
  sel:
    enabled: true
  fru:
    enabled: true

Любую настройку можно переопределить во время выполнения переменной окружения с префиксом IPMIDECK_, это простой способ настроить ipmideck в Docker.

IPMIDECK_SERVER_PORT
HTTP-порт, к которому привязывается панель (по умолчанию 3000).
IPMIDECK_AUTH_ENABLED
Включите или отключите встроенный вход (по умолчанию true).
IPMIDECK_IPMI_POLL_INTERVAL
Секунды между опросами датчиков BMC (по умолчанию 30).
IPMIDECK_DATA_RETENTION_DAYS
Сколько дней истории датчиков хранить до очистки (по умолчанию 365).