Сервер упал ночью, а смена полдня ищет причину? Почему на одном процессоре неисправность находят быстрее

Три часа ночи. Сервер перезагрузился сам и завис на проверке памяти. В журнале BMC - ошибка памяти. Дальше начинается то, за что дежурные не любят свою работу:
- виноват модуль? Не факт: ту же ошибку даёт слот или контроллер памяти в процессоре;
- чтобы проверить, инженер едет на площадку и переставляет модуль;
- ошибка плавающая, и перестановки идут неделю;
- смена живёт с телефоном под подушкой.
Часть этой работы создаёт сама конструкция двухпроцессорного сервера. Разберём, какая именно, и что меняется, когда процессор один.
Краткая выжимка
- В двухпроцессорном сервере у каждой неисправности есть лишний подозреваемый: второй процессор и шина между процессорами.
- В ITPOD-SR201-S12R-NV-G2 процессор один. Вся память и все слоты PCIe подключены к нему, межпроцессорной шины нет.
- Первую диагностику дежурный проводит из браузера: BMC отвечает, даже когда сервер выключен.
- Парк настраивается одинаково через Redfish и Ansible, без захода в каждый сервер.
ITPOD-SR201-S12R-NV-G2 со снятой крышкой: один процессор, 12 модулей памяти вокруг него, шесть вентиляторов и воздуховоды
Почему в двухпроцессорном сервере неисправность ищут дольше
В двухпроцессорном сервере каждый модуль памяти и каждый слот PCIe принадлежит одному из двух процессоров. К вопросу «что сломалось» добавляется второй: «на какой половине». Этот вопрос и съедает ночь.
Три типичных случая:
| Симптом | Подозреваемые в сервере 2P | Как проверяют |
|---|---|---|
| Ошибка памяти | модуль, слот, контроллер памяти одного из двух процессоров | переставляют модуль к другому процессору и перезагружают |
| Карта теряет линк | карта или линии PCIe одного из процессоров | переносят карту в слот другого процессора |
| Приложение тормозит без явной поломки | данные в памяти одного процессора, а считает другой | ищут, на каком процессоре живут потоки и память |
Третий случай особенно коварен. Это не поломка, а NUMA: память соседнего процессора отвечает медленнее своей. Симптом похож на неисправность, и сначала его надо от неё отличить.
Что такое домен отказа
Домен отказа - это набор компонентов, которые проверяют вместе, чтобы найти причину сбоя. Чем больше в нём связей, тем дольше поиск.
| Сервер с двумя процессорами | ITPOD-SR201-S12R-NV-G2 | |
|---|---|---|
| Процессоров | два | один |
| Межпроцессорная шина | есть | нет |
| Память | у двух процессоров | 12 каналов у одного процессора |
| Линии PCIe | у двух процессоров | 128 линий PCIe 5.0 у одного процессора |
| NUMA-узлов по умолчанию | два | один, режим NPS1 |
| Перестановка между процессорами при поиске | бывает нужна | не нужна |
Что это даёт в три часа ночи:
- подозреваемых меньше: модуль, слот и один процессор;
- модуль проверяют в соседнем канале того же процессора;
- карту проверяют в соседнем слоте;
- вопроса «на какой половине» нет.
Что дежурный видит без выезда на площадку
В ITPOD-SR201-S12R-NV-G2 стоит выделенный BMC с отдельным портом. BMC — это маленький компьютер внутри сервера. Он следит за датчиками и даёт доступ к серверу, даже когда сервер выключен или ОС не загрузилась.
Поэтому первую диагностику проводят из дома, а не по дороге в ЦОД.
| Возможность BMC | Что это даёт дежурному |
|---|---|
| Веб-интерфейс | диагностика из браузера без дополнительного ПО |
| KVM с доступом в BIOS | экран сервера и настройки BIOS как за локальным монитором |
| Virtual Media по CIFS, NFS и HTTPS | установка ОС с образа по сети, без флешки на площадке |
| Журнал событий | срабатывания датчиков видны сразу |
| Журнал аудита | кто, через какой интерфейс и с какого IP что менял |
| SNMPv3 и 77 датчиков | состояние сервера и каждого из 12 отсеков в привычном мониторинге |
| SNMP-трапы до 8 получателей | алерт уровня Info, Warning или Critical приходит сам |
| Redfish 1.15.1, IPMI 2.0 и DCMI | работают скрипты и системы мониторинга, которые уже есть в ЦОДе |
Выезд нужен в одном случае: заменить руками неисправный модуль или карту. Время на замену зависит от того, что сломалось. А часы поиска причины сервер сокращает конструкцией.
вид сзади: порт BMC, четыре райзера со слотами PCIe и два блока питания
Как настроить парк серверов одинаково
Парк ITPOD-SR201-S12R-NV-G2 настраивают по подходу Infrastructure as Code. Redfish даёт программный доступ к каждому BMC, а Ansible применяет одни и те же настройки ко всем серверам.
Что задают через Redfish:
- включение, выключение и перезагрузку;
- порядок загрузки;
- DNS и NTP сети управления;
- учётные записи.
Что это даёт:
- Одинаковые узлы. Сервер на замену встаёт с теми же настройками, что соседи, а не с теми, что вспомнил инженер в четыре утра.
- История изменений. Конфигурация лежит в репозитории, и видно, кто что менял.
- Безопасный мониторинг. Система мониторинга читает датчики и потребление по Redfish под учётной записью только на чтение. Права администратора ей не нужны.
Как диагностику автоматизирует Cloudflare
У Cloudflare серверы стоят в 310 с лишним городах, и отказы железа для них — норма. Поэтому они автоматизировали диагностику (Cloudflare, 25.03.2024):
- Система проверяет, отвечает ли сервер по IPMI.
- Загружает тестовый образ, который проверяет процессор, память и накопители.
- Автоматика читает результат.
- Сломанный сервер выключается до замены.
Вывод Cloudflare: на масштабе выигрывает сервер, отказ которого дёшево диагностировать.
Свою систему такого уровня пишут немногие. Но основу можно собрать на Ansible поверх Redfish: опрос датчиков, перезагрузка, загрузка с образа через Virtual Media.
Чего один процессор не решает
Честные оговорки:
- Отказ процессора останавливает сервер целиком. Запасного процессора внутри нет. Отказоустойчивость строят на уровне кластера: нагрузка переезжает на соседние узлы. Для Kubernetes и гипервизоров с живой миграцией это обычный режим.
- Не всё делится на узлы. Если задаче нужно больше памяти, чем помещается в 12 слотов, или больше 192 ядер на узел, двухпроцессорный сервер остаётся правильным выбором.
ITPOD-SR201-S12R-NV-G2 коротко
| Параметр | Значение |
|---|---|
| Процессор | 1 × AMD EPYC 9005 (Turin), до 192 ядер с AMD EPYC 9965, TDP до 500 Вт |
| Память | 12 слотов DDR5 RDIMM, до 6400 MT/s; подтверждённая конфигурация 12 × 96 ГБ = 1152 ГБ |
| Слоты | до 10 слотов PCIe 5.0, из них до 6 × x16, и слот OCP 3.0 x16 |
| Накопители | 12 отсеков спереди под NVMe, SAS или SATA; ОС на RAID-карте с двумя M.2 NVMe |
| Охлаждение | радиатор Standard до 360 Вт или EVAC Plus до 500 Вт; 6 вентиляторов с горячей заменой |
| Питание | 2 блока 800 / 1300 / 1600 / 2200 Вт, горячая замена, 1 + 1 |
| Управление | BMC: веб-интерфейс, KVM, Virtual Media, Redfish 1.15.1, IPMI 2.0, SNMPv3, журнал аудита |
| Условия | классический ЦОД, 5–35 °C |
Часто задаваемые вопросы
Что такое домен отказа в сервере? Набор компонентов, которые проверяют вместе при поиске сбоя. В ITPOD-SR201-S12R-NV-G2 это один процессор, его память и его слоты, без межпроцессорной шины.
Чем односокетный сервер удобнее в эксплуатации? Неисправность ищут без перестановки модулей и карт между процессорами. Вопроса «на какой половине сломалось» нет.
Можно ли зайти в BIOS сервера удалённо? Да. BMC даёт KVM с доступом в BIOS прямо из браузера.
Какие протоколы управления поддерживает ITPOD-SR201-S12R-NV-G2? Веб-интерфейс, Redfish 1.15.1, IPMI 2.0 и DCMI, SNMPv3, SNMP-трапы.
Как настроить много серверов одинаково? Через Redfish и Ansible. Настройки описывают один раз и применяют ко всему парку.


