Налаштування BIOS/UEFI сервера: продуктивність і завантаження
У BIOS/UEFI виділеного сервера налаштовують три речі: режим завантаження (UEFI чи Legacy) з правильним порядком пристроїв, профіль енергоспоживання процесора та поведінку при зникненні живлення. Решту чіпають лише з конкретної причини. Хибний порядок завантаження або ввімкнений глибокий C-state коштує дорожче за будь-яку оптимізацію ядра.
- Профіль живлення Performance замість Balanced знімає затримку розгону частоти — це помітно на базах даних та ігрових серверах.
- Опція Restore on AC Power Loss має стояти в Power On, інакше після збою живлення сервер залишиться вимкненим.
- Міняти налаштування віддалено безпечно лише через IPMI-консоль, доступ до неї коштує $5/міс і включений у Dedicated Enterprise US.
UEFI чи Legacy BIOS
На платформах Xeon E3-1230v5, E3-1270v6 та E5-2680v4 доступні обидва режими. UEFI обирають типово: він працює з дисками більшими за 2 TB без обхідних схем, вантажиться швидше та вміє Secure Boot. Legacy (CSM) лишають для старих образів і для систем, де завантажувач не зібраний під EFI.
Головне правило — не міняти режим після встановлення системи. Диск, розмічений під UEFI з розділом ESP, у режимі Legacy просто не знайде завантажувач, і ви отримаєте чорний екран із «no bootable device». Якщо перезбирати все ж таки треба, спершу прочитайте про rescue-режим: з нього завантажувач відновлюється за кілька команд.
# у якому режимі завантажена система
[ -d /sys/firmware/efi ] && echo UEFI || echo "Legacy BIOS"
# записи завантаження UEFI та їхній порядок
efibootmgr -v
# версія прошивки та дата
dmidecode -t bios | grep -E 'Version|Release Date'
# повний дамп BIOS у файл, щоб порівняти після оновлення
dmidecode -t bios,system,processor > /root/firmware-before.txt 2>&1
Які параметри і як ставити
| Параметр у меню | Значення | Що дає |
|---|---|---|
| Power Profile / OS Control | Performance або Max Performance | Процесор не йде в низькі частоти між запитами |
| C-States (C6, package C-state) | Вимкнути на latency-навантаженнях | Прибирає десятки мікросекунд на вихід ядра зі сну |
| Turbo Boost | Увімкнути | Приріст частоти на малопотокових задачах |
| VT-x / VT-d (IOMMU) | Увімкнути | Потрібні для KVM, Proxmox, прокидання NVMe і мережевих карт |
| NUMA / Node Interleaving | NUMA увімкнути, interleaving вимкнути | На двопроцесорному Enterprise US пам'ять лишається локальною |
| Restore on AC Power Loss | Power On | Сервер сам піднімається після збою живлення |
| Boot Mode | UEFI | Диски більші за 2 TB, швидке завантаження, Secure Boot |
Віртуалізація — окрема історія: без VT-d прокидання пристроїв у гостьові машини не запрацює взагалі. Що ще треба ввімкнути під гіпервізор, розібрано в статті про віртуалізацію на виділеному сервері.
Перевіряємо із системи, що налаштування застосувалися
Меню BIOS показує намір, а стан процесора видно лише з ОС. Три перевірки закривають майже всі випадки.
# поточний governor і частоти
cpupower frequency-info
grep . /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
# підтримка віртуалізації видна прапорцями vmx (Intel) або svm (AMD)
grep -c -E 'vmx|svm' /proc/cpuinfo
# IOMMU справді увімкнений, якщо каталог непорожній
ls /sys/kernel/iommu_groups/ | wc -l
# топологія NUMA
numactl --hardware
lscpu | grep -i -E 'numa|thread|core'
Порядок завантаження та віддалений доступ
На сервері в чужому дата-центрі немає клавіатури. Будь-яку зміну порядку завантаження треба робити так, щоб у вас лишився шлях назад.
Не вмикайте Secure Boot і не переставляйте Boot Mode «про всяк випадок». Secure Boot із самозібраним ядром або сторонніми модулями (ZFS, драйвери карт) блокує завантаження, а зміна Boot Mode на встановленій системі робить диск незавантажувальним. Ви отримаєте сервер, який не відповідає по SSH і не показує нічого, крім POST. Порядок безпечної роботи такий: спершу відкрийте IPMI-консоль і переконайтеся, що бачите екран, потім міняйте параметр, потім перезавантажуйтеся, не закриваючи консоль. Перевірка після перезавантаження: efibootmgr -v показує BootCurrent, що збігається з очікуваним записом, а journalctl -b -p err не містить помилок завантажувача.
Підключення до консолі й робота з віртуальними носіями описані в статті про IPMI та KVM-over-IP. Якщо ви заразом ставите систему з нуля, дивіться встановлення ОС через IPMI — там розібрано й вибір режиму розмітки.
Оновлення прошивки
Прошивку BIOS оновлюють з конкретного приводу: виправлення мікрокоду процесора, помилка з визначенням дисків, вимога гіпервізора.
Перед оновленням зніміть дамп налаштувань (dmidecode вище), запишіть значення, які міняли вручну, і заплануйте вікно. Після оновлення налаштування часто скидаються на заводські — зокрема Restore on AC Power Loss і параметри віртуалізації, через що гостьові машини не стартують. Заразом перевірте стан пам'яті: свіжий мікрокод змінює й обробку помилок ECC, а лічильники читаються так, як описано в статті про перевірку оперативної пам'яті.
Конфігурації процесорів за тарифами й те, які з них двосокетні, перелічені на сторінці виділених серверів.
Коротко
- UEFI типово; режим завантаження не міняють після встановлення системи.
- Профіль Performance, Turbo увімкнено, глибокі C-states вимкнено на задачах, чутливих до затримки.
- VT-x і VT-d обов'язкові під гіпервізор, IOMMU перевіряється каталогом
/sys/kernel/iommu_groups/. - Будь-які зміни робіть із відкритою IPMI-консоллю і перевіряйте результат з ОС, а не по пам'яті меню.