Files
vrcx/README.ru.md
T
Engelgardt23 5783b2c17d chore: cut GitHub, make vrcx Gitea-only
- relink README/CHANGELOG/pyproject to git.engelgardt23.ru; drop github build badge
- update-check + clone URL point to Gitea; rename GITHUB_REPO -> REPO
- port CI to .gitea/workflows (self-contained, publishes Gitea release)
- remove .github (workflow + issue templates)
2026-06-01 13:04:49 +03:00

6.5 KiB
Raw Permalink Blame History

vrcx

Последний релиз Лицензия: MIT Язык: en | ru

🇺🇸 English | 🇷🇺 Русский

vrcxVegman Remote Collect (расширенный). Портативная замена штатного YADRO VRC.exe: вытаскивает диагностические логи с сервера Vegman и, по желанию, с сервисной ОС SDS — параллельно, в единый архив, готовый отправить в саппорт.

Штатный VRC ходит только в BMC. На реальных инцидентах саппорту почти всегда нужны ещё и логи с ОС (lsiget, storcli, smartctl, journal). С vrcx это один двойной клик вместо беготни с флешкой.


Что делает

  • Параллельно опрашивает N BMC. Внутри каждого хоста — ещё одна SSH-сессия в сервисную ОС SDS, обе ветки идут одновременно.
  • IP SDS определяет сам: спрашивает у BMC по Redfish MAC хостового порта, ищет его в ARP-таблице ноутбука (предварительно прогревая её /24-пинг-свипом).
  • Каждый хост получает свои подпапки bmc/ и os/; готовые архивы складываются в общий archives/, а вся сессия упаковывается во внешний tar.gz одним кликом.
  • Если Собирать ещё и логи с ОС? — нет — получается набор файлов 1:1 совместимый с маршрутом саппорта по штатному VRC.

Скачать

Последний релиз: страница релизов. Архив: vrcx-portable-vX.Y.Z.zip.

Запуск

  1. Распакуй куда угодно.
  2. Двойной клик по vrcx.exe. При первом запуске выбери язык; выбор сохраняется в config.ini рядом с exe.
  3. Вставь один или несколько IP-адресов BMC через пробел, запятую или с новой строки. Заверши ввод пустой строкой.
  4. Введи логин BMC (по умолчанию admin) и пароль.
  5. Ответь на Собирать ещё и логи с ОС? — если да, введи логин/пароль SDS (по умолчанию sds/sds). vrcx сам найдёт IP SDS через Redfish→ARP; если не нашёл — спросит руками.
  6. Смотри живую таблицу: каждая строка показывает BMC ok/total | OS ok/total пока идёт сбор.

Ctrl+C — прерывание, неполная сессия удаляется.

Структура вывода

out/<ДДММГГГГ_ЧЧММСС>/
├── <bmc_ip>/
│   ├── bmc/        команды для BMC (inventory, sensors, sellog, Redfish, …)
│   └── os/         команды для SDS (lsiget, storcli, smartctl, journal, …)
├── <bmc_ip_2>/
│   ├── bmc/
│   └── os/
├── archives/
│   ├── dump_<bmc_ip>.tar.gz
│   └── dump_<bmc_ip_2>.tar.gz
├── vrc.log
└── err_out.log

out/<ДДММГГГГ_ЧЧММСС>.tar.gz   ← готовый бандл для саппорта

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

config.ini лежит рядом с exe и создаётся при первом запуске. Каждая опция снабжена комментарием (EN + RU). Что можно крутить:

Секция Ключ Дефолт Что делает
General language (спросит) en / ru
BMC default_user admin Enter на вопросе логина BMC примет это значение
OS collect_by_default no Сразу включать «Собирать ещё и логи с ОС?» как «да»
OS default_user sds Логин SDS по умолчанию
Discovery ping_sweep yes Прогревать ARP-таблицу /24-пингом, если IP SDS неизвестен
Run parallel_hosts 8 Макс. количество BMC, опрашиваемых параллельно

Что собирает

Источник Откуда
BMC Таблица в commands.py: команды YADRO CLI (bmc info version, lsinventory -j, health logs show sellog), journalctl-юниты, чтение файлов (/proc/cpuinfo, /etc/os-release, …), Redfish /redfish/v1/Systems.
SDS (ОС) Таблица в os_commands.py: lsigetlinux.sh, storcli64 /call show all, nvme list, smartctl -x по каждому диску, dmidecode, dmesg -T, journalctl -b, /var/log/messages, lspci, lsblk.

Добавить новый артефакт — одна строка в нужной таблице.

Совместимость

  • Структура вывода повторяет VRC v1.1b — маршрут саппорта по BMC-части не меняется.
  • Цель: серверы YADRO Vegman с OpenBMC + сервисная ОС SDS (база CentOS Stream 10).
  • Хост: Windows 10 / 11. Python ни на ноутбуке, ни на сервере не нужен.

Сборка из исходников

git clone https://git.engelgardt23.ru/engel/vrcx.git
cd vrcx
python -m pip install rich paramiko pyinstaller
python -m PyInstaller --onefile --console --name vrcx --icon dev/assets/icon.ico --paths dev/src dev/vrcx-launcher.py

Раскладка репозитория (dev/ / prod/ / old/) и релизный flow описаны в CONTRIBUTING.md.

Лицензия

MIT — см. LICENSE.