Не так давно, мені вдалося попрацювати з новими для мене серверами Supermicro віддалене управління якими здійснюється за допомогою інтерфейсу IPMI. У даній статті я постараюся розкрити основні моменти в налаштування IPMI на серверах Supermciro, покажу основні пункти меню інтерфейсу IPMI, а також розповім про додаткові утиліти, командах і способах моніторингу сервера за допомогою ipmi.
зміст:
- Первинна настройка IPMI консолі і знайомство з інтерфейсом
- Управління сервером через утиліту IPMICFG від SuperMicro
- Моніторинг заліза на сервері SuperMicro через IPMI і утиліту IPMICFG
IPMI (Intelligent Platform Management Interface) - інтелектуальний інтерфейс управління платформою, призначений для автономного моніторингу та управління функціями, вбудованими безпосередньо в апаратне і вбудоване програмне забезпечення серверних платформ. (Інформація взята з офіційного джерела). IPMI реалізується у вигляді окремого контролера сервера, який не залежить від операційної системи, BIOS, CPU півночі і дозволяє дистанційно керувати фізичним обладнанням.
Первинна настройка IPMI консолі і знайомство з інтерфейсом
Налаштування IPMI починається з настройки IP адреси інтерфейсу, який потрібно вказати в BIOS. Якщо сервер встановлено в офісі, це може бути сірий IP-адреса, якщо ж ваше обладнання розміщується в датацентрі, то напевно ви використовуєте білий статичний IP-адресу.
На серверах Supermicro в BIOS можна потрапити, натиснувши кнопку "Del"При завантаженні сервера, я не буду загострювати на цьому увагу і відразу перейду до інтерфейсу самого BIOS.
Як бачите на скріншоті, я увійшов в пункт меню IPMI і активував можливість конфігурації Lan для інтерфейсу (Update IPMI Lan Configuration = Yes, Configuration Address Source = Static), вказав IP-адреса, маску підмережі і основний шлюз.
Застосувати налаштування можна натиснувши кнопку F4, після чого відбудеться перезавантаження сервера.
Якщо ви все зробили правильно, то ввівши в браузері, вказаний для інтерфейсу IPMI IP, у вас відкриється авторизація:
Тепер пройдемо по основних моментах.
При покупці нового сервера, в IPMI вже створений користувач ADMIN з паролем ADMIN, саме з цими даними ми і авторізуемся. Я завжди рекомендую створювати нового користувача, а стандартного видаляти або змінювати у нього пароль, так залишати такий логін і пароль, вкрай небезпечно. Створити нового користувача або поміняти паролі / привілеї у поточних, можна в меню Configuration -> Users.
Рестарт інтерфейсу IPMI можна зробити з меню Maintenance -> Unit Reset.
Монтування iso образу ОС для установки на сервер виконується в меню Virtual Media -> CD-ROM Image.
У мене iso образи ОС зберігаються на сервері Samba в тій же підмережі що і інтерфейси IPMI серверів. Я вказую адресу сервера Samba, шлях до образу установчого ISO з ОС, після чого монтую ISO образ і приступаю до установки операційної системи.
Вилучену графічну Java консоль сервера (KVM-over-IP) Можна відкрити через Remote Control -> Console Redirection.
Консоль в цілому зручна, але після установки ОС, для роботи з сервером я зазвичай використовую ssh клієнти. Іноді є моменти коли, це неможливо, наприклад якщо у вас не працює або ще не налаштована мережа на сервері або ж є якісь проблеми з доступом. Саме тоді на допомогу і приходить Remote Console.
Ніяких окремих налаштувань в самій консолі робити не потрібно, хочу лише додати, що вона має вбудовану клавіатуру, яку можна викликати з меню Virtual Media -> Virtual Keyboard.
Порада. Після тривалої роботи з серверами SUpermicro, я виявив один неприємний баг. Після установки операційної системи Centos 7 і установки KVM на неї, пропадає можливість використовувати Remote Console. Поки сервер в процесі завантаження, консоль відповідає і можна пройти в Bios або побачити завантаження ядра ОС. Але як тільки операційна система завантажилася, відео в консолі пропадає. Шляхом експериментів мені вдалося перемогти цей баг. Потрібно в завантаження ядра додати параметр завантаження nomodeset. Для цього після установки ОС потрібно виконати команду:grubby --args "nomodeset" --update-kernel / boot / vmlinuz-'uname -r '
Після цього, Remote Console працює справно.
Управління сервером через утиліту IPMICFG від SuperMicro
Для управління серверами через IPMI компанія SuperMicro розробляє власну утиліту IPMICFG.
Завантажити файл IPMICFG можна за допомогою команди:
wget ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_1.30.0_build.190710.zip
На момент публікації файл був з такою назвою, я рекомендую заходити на репозиторій SuperMicro за посиланням ftp://ftp.supermicro.com/utility/IPMICFG/ і копіювати url актуального файлу.
Розпакуємо скачаний файл в директорію якій перебуваємо:
unzip IPMI * .zip
Далі створюємо символічне посилання для зручності запуску утиліти:
ln -s /root/IPMI*/Linux/64bit/IPMICFG-Linux.x86_64 / usr / local / sbin / ipmicfg
Тепер ми можемо запускати утиліту за допомогою команди ipmicfg
(Символічного посилання). Розглянемо базові можливості утиліти ipmicfg.
Якщо виконати команду ipmicfg -help
ми отримаємо список всіх можливих параметрів утиліти.
Розберемо основні команди:
ipmicfg -help
- повна довідка по утиліті;ipmicfg -m
- перегляд поточного IP і mac-адреси для IPMI;ipmicfg -k
- перегляд маски підмережі;ipmicfg -g
- перегляд заданого шлюзу;ipmicfg -fd
- скидання IPMI до заводських налаштувань;ipmicfg -user list
- перегляд створених користувачів і їх привілеїв.
Ви можете змінити IP адресу, маску і шлюз інтерфейсу IPMI:
ipmicfg -m 192.168.1.200
ipmicfg -k 255.255.255.0
ipmicfg -g 192.168.1.1
Створити нового користувача IPMI і його пароль:
ipmicfg -user add
За допомогою утиліти робимо наступне:
ipmicfg -user add 6 test 123456 4
Тим самим ми створили користувача test з паролем 123456 і привілеями адміністратора.
Список користувачів IPMI і їх привілеї в системі можна вивести командами:
ipmicfg -user list
ipmicfg -user help
Як вже бачите на скріншоті, користувач test створений.
Щоб змінить (скинути) пароль користувача IPMI, ісползайте команду:
ipmicfg -user setpwd
І приведу ще пару прикладів використання даної утиліти:
ipmicfg -hostname [value]
- задати hostname для ipmi інтерфейсу;ipmicfg -r
- перезавантаження IPMI.
Моніторинг заліза на сервері SuperMicro через IPMI і утиліту IPMICFG
Моніторинг сервера SuperMicro через IPMI
Через IPMI моніторити температуру і роботу заліза сервера SuperMicro досить просто. Повна інформація про залозі сервера міститься в пункті System -> Hardware Information.
Інформацію станом процесора, оперативної пам'яті і вентиляторах, можна подивитися перейшовши у вкладку Server Health -> Sensor Readings.
Для зручності перегляду, можна змінювати категорії відображення датчиків, наприклад, температури:
Або датчики напруги:
Так як в даний момент на нашому сервері немає проблем, ні з температурою, ні з напругою, все датчики знаходяться в зеленій зоні. Якщо на сервері піднімається температура або є проблеми з напругою, зелені прямокутники забарвлюватимуться в червоний колір, що послужить сигналом для перевірки вашого сервера.
Моніторинг за допомогою утиліти ipmicfg
Перевірка стану блоків живлення:
[Root @ ~] # ipmicfg -pminfo
[SlaveAddress = 78h] [Module 1] Item | Value ---- | ----- Status | [STATUS OK] (00h) Input Voltage | 217.5 V Input Current | 1.06 A Main Output Voltage | 12.28 V Main Output Current | 17.93 A Temperature 1 | 23C / 73F Temperature 2 | 21C / 70F Fan 1 | 2064 RPM Fan 2 | 2032 RPM Main Output Power | 220 W Input Power | 228 W PMBus Revision | 0x22 PWS Serial Number | P2K4FCH02LT0125 PWS Module Number | PWS-2K04F-1R PWS Revision | REV1.0 Current Sharing Control | PEC error [SlaveAddress = 7Ah] [Module 2] Item | Value ---- | ----- Status | [STATUS OK] (00h) Input Voltage | 217.5 V Input Current | 1.09 A Main Output Voltage | 12.30 V Main Output Current | 18.09 A Temperature 1 | 24C / 75F Temperature 2 | 22C / 72F Fan 1 | 2064 RPM Fan 2 | 2064 RPM Main Output Power | 223 W Input Power | 234 W PMBus Revision | 0x22 PWS Serial Number | P2K4FCH02LT0126 PWS Module Number | PWS-2K04F-1R PWS Revision | REV1.0 Current Sharing Control | PEC error
Подивитися температуру процесора можна командою:
ipmicfg -nm oemgettemp
Так само можна перевірити в якому режимі працюють вентилятори і змінити режим, якщо це необхідно.
Перевірка стану та конфігурації вентилятора
[Root @ ~] # ipmicfg -fan
Current Fan Speed Mode is [PUE2 Optimal Mode] Supported Fan modes: 0: Standard 1: Full 3: PUE2 Optimal 4: Heavy IO
Зміна режиму роботи кулера: ipmicfg -fan
наприклад, ipmicfg -fan 3
Інформація про версію і прошивці IPMI:
[Root @ ~] # ipmicfg -nm deviceid
Device ID = 50h Firmware Version = 4.1.4.54 IPMI Version = 2.000000 Manufacturer ID = 57 01 00 Product ID Minor Ver = Greenlow platform Implemented DCMI version = DCMI not implemented / enabled Firmware implemented version = NM Revision 4.0 Image Flag = operational image 1 raw = 50 01 04 14 02 21 57 01 00 09 0b 04 05 40 01
І подивитися всі сенсори можна командою ipmicfg -sdr
При виведенні ми бачимо, що є додаткові стовпці, в яких відображена інформація про ліміти нижнього і верхнього меж.
Так само існує ще не мала кількість утиліт, які можна використовувати для моніторингу та автоматизувати цей процес, наприклад, з nagios. В даний момент загострювати на цьому увагу ми не будемо, так як мета статті розповісти основні моменти в роботі з IPMI. Якщо вас зацікавить тема моніторингу, ви можете залишити свої побажання та можливо в подальшому ми висвітлимо і цю тему. Сподіваюся, дана стаття виявиться для вас корисною!