Serviceability в действии: реальные примеры разработки и улучшения процедур обслуживания IT-оборудования
Представьте, что у вас сломался сервер. Чтобы быстро починить его, сервисные инженеры должны легко добраться до внутренних компонентов, понять, что именно сломалось, и заменить или отремонтировать неисправную деталь. Если процесс ремонта простой, понятный и быстрый, это значит, что у продукта продуманный сервисный дизайн и он соответствует критериям serviceability.
Serviceability — это способность продукта или системы быть обслуживаемыми, то есть их ремонт, техническое обслуживание или обновление можно выполнить легко. Подробнее про это понятие мы уже писали — ссылку найдете в конце статьи. Я, Александр Чуриков, технический эксперт по продукту в YADRO, расскажу на реальных примерах, что делает сервер удобным для обслуживания и как инженеры обеспечивают быстрое и безошибочное восстановление работы систем.
Наша компания поставила оборудование с дисковым пространством объемом 4 эксабайта, что соответствует примерно 400 тысячам жестких дисков по 10 терабайт каждый. Примерно треть замен дисков выполняют наши клиенты самостоятельно, а две трети производят наши инженеры на выездах. Поскольку первый вариант быстрее (не нужно ждать специалиста), мы стремимся, чтобы у клиентов было больше опций в самостоятельном обслуживании систем.
Сервисное обслуживание в YADRO организовано по стандартной схеме, принятой в большинстве технологических компаний:
Уровень L1 отвечает за выполнение обслуживания по готовым инструкциям и замену компонентов систем.
Уровень L2 решает более сложные проблемы, опираясь на базу знаний.
Уровень L3 выявляет первопричины сложных проблем, решением нестандартных случаев и написанием статей для базы знаний.
Руководители YADRO подошли к процессам обслуживания более системно и создали отдел сервисного дизайна, который расширяет функционал L3, в котором я и работаю. Ключевые задачи отдела — формировать требования к продуктам в части их обслуживания и диагностики, разрабатывать эффективные сервисные процедуры.
Наша команда сервисного дизайна создала специальный фреймворк — своего рода чек-лист с более чем 200 пунктами. В документе описаны требования команды сервисного дизайна к разрабатываемым продуктам компании. Каждый пункт основан на опыте наших сервисных инженеров и реальных примерах. Когда мы разрабатываем новый продукт или развиваем существующий, менеджеры продукта наряду с функциональными требованиями используют наш фреймворк для выработок требований к сервисному обслуживанию.
Сегодня мы посмотрим на некоторые пункты фреймворка — интересные как для разработчиков, так и для клиентов.
Защитный экран для PCIe Switch
В системе TATLIN.ARCHIVE есть PCIe Switch — это такой «разветвитель» для PCIe-шины: одна линия входит, а семь выходят. Когда мы начали обслуживать эти устройства в полевых условиях и вытаскивать блок с PCIe Switch, столкнулись с проблемой — на нижней стороне платы терялись компоненты. Это изменение реализует одно из требований фреймворка к часто извлекаемым компонентам.
Тройник PCIe Switch для шины PCIe. Левый рисунок — вид сверху, правый — снизу. Красные стрелки указывают на то, что отваливалось.
В лаборатории все работало без проблем, но в реальных условиях, когда к одному блоку подключено 60 кабелей (около 15 килограммов), он прогибался и задевал корпус.
15 кг проводов на одну сторону
Мы нашли решение — теперь устройства выпускаются с защитным экраном, который предотвратил эту проблему.
Решение для защиты дисковой корзины — экран
Не режем пальцы и кабели
Одно из требований, важных для обслуживания оборудования, — исключать острые края, чтобы не резаться. Когда вы поднимаете сервер весом 20 кг, его острые края становятся довольно ощутимыми. Опасны они и для кабелей: когда инженер задвигает полку с острой задней стенкой, он может случайно перерезать кабель. Потому что полка с дисками весит 130 кг, и когда ее задвигают в шкаф легко не заметить, что она уперлась во что-то.
Сверху — острый край дисковой полки, снизу — шнур, который им повредили. На фото отсутствует фаска.
Теперь, при создании металлических корпусов серверов мы не режем их, а многократно сгибаем, что позволяет получить гладкую и приятную на ощупь поверхность. Также добавилась фаска, которая препятствует повреждению элементов, находящихся рядом с дисковой полкой.
Гладкая поверхность дисковой полки с фаской на задней крышке, которая не режет провода
Решение без зацепов
Еще один важный момент: ничего не должно цепляться за стойки. Все замки на нашем оборудовании утоплены, а наклейки расположены так, чтобы не мешать задвижению оборудования в шкаф.
Пример утопленного замка
Наклейки на оборудовании
Почему наклейки с информацией так важны? Чтобы разобраться в обозначениях, не придется открывать ноутбук и изучать документацию. Это значительно упрощает процесс обслуживания.
На дисковых полках есть разметка с номерами слотов. Ранее сервисным инженерам приходилось наклонять голову, чтобы прочитать номера, — это неудобно. Тогда мы начали печатать цифры так, чтобы инженер мог увидеть их без лишних движений.
Слева — пример нумерации дисковых полок до изменений: чтобы разобраться, приходилось наклонять голову и догадываться, как все расположить. Справа — обновленный вариант: все удобно и понятно.
На серверах также много наклеек, которые показывают расположение блока питания, оперативной памяти, процессора и других внутренних элементов.
Наклейки на сервере для удобного использования
Четкая и ясная маркировка на серверах VEGMAN G2 позволяет легко устанавливать внутренние элементы с первого раза — например, плату расширения Riser или разъем. Компоненты помечены яркими синими метками, которые указывают, что их можно заменить только при выключении устройства. Riser «B» легко узнать благодаря яркой маркировке.
Синяя маркировка на серверах VEGMAN G2
Легко разобрать и собрать
Один из главных критериев serviceability — все должно разбираться без использования инструментов. Когда мы разбираем ноутбук на хорошо освещенном монтажном столе, то все болтики будут на виду, и собрать его обратно проще.
Но если мы попытаемся открутить даже пару винтов в дата-центре, где шумно и часто темно, то они обязательно закатятся под пол или потеряются. Поэтому у нас есть одно требование: или оборудование разбирается без отвертки, или используются невыпадающие винты. Так, в TATLIN.UNIFIED все компоненты, вышедшие из строя, меняются без инструментов.
Так выглядят компоненты TATLIN.UNIFIED
Есть несколько винтов, которые не выпадают, — они подпружинены и легко закручиваются благодаря насечке.
Маркировка кабелей
Рассмотрим задачу, которую мы решали несколько лет назад. У нас есть верхний кабель для интерфейсного порта BMC, к этому порту снаружи сервера подключают монитор и клавиатуру. Кабель присоединяется без ключа.
Пример отсутствия маркировки кабелей
Кабель можно вставить вверх, вниз и даже перевернуть. В итоге есть шесть вариантов подключения, и лишь один правильный. При этом о неправильном подключении мы узнаем, только включив сервер — он не будет работать.
Кроме того, есть еще одна сложность с этим кабелем. Обычно в инструкции пишут: «Подключайте черный кабель к первому пину». Но проблема в том, что в этом шлейфе два черных кабеля, и непонятно, какой именно должен идти к первому пину. Чтобы разобраться, нужно изучить детально руководство. В нем было указано, что кабели нужно подключать сверху вниз: сначала черный, потом красный, затем зеленый. Было описано только словами, без визуализации.
Сейчас каждый комплекс сопровождается четкой и понятной схемой подключения.
Схема каблирования
Схема включает все разъемы, их маркировку и цвета проводов. Для каждого контроллера используются провода определенного цвета, что делает подключение интуитивно понятным. Разъемы на полках пронумерованы и, точно совпадают с обозначениями на схеме.
Пример маркированных кабелей
Это было большим достижением — обозначить питание для каждого шлейфа разными цветами.
Как поднять и не уронить полку
Все устройства, которые занимают 4U или больше, обязательно должны быть оснащены ручками. Это значительно облегчает работу, особенно когда нужно вытащить дисковую полку даже пустую — поддерживать 30-килограммовый объект снизу очень сложно.
Так выглядят ручки на дисковых полках
Также у нас появилось правило: установка и демонтаж полки должны проводиться без установленных в нее дисков. Это связано с тем, что одна полка весит 30 кг, а с дисками 130 кг. При такой нагрузке ее сложно точно совмещать с направляющими рельсами.
На заре моей карьеры, когда я еще был сервисным инженером, многие вещи приходилось делать вручную. Например, обновлять прошивку экспандеров. Чтобы добраться до них, нужно было достать дисковую полку СХД из стойки, перевернуть ее и снять верхнюю крышку. Среди инженеров это трудозатратное действие в шутку называлось «почесать пузико». Потом эту прошивку начали делать прямо на производстве, и необходимость в процедуре отпала.
Инсталляция в стойку
Мы обнаружили интересную проблему с полками: они плохо вставляются в стойку.
Дисковая полка въезжает в стойку не до конца
Начали разбираться в причинах. У нас полка шириной 450 миллиметров — это максимально допустимая ширина для стойки. Однако эта конкретная стойка оказалась уже, чем положено, — всего 451 миллиметр. В итоге нам пришлось переставлять рельсы, чтобы оборудование встало правильно.
Большинство стоек, которые я видел, шире 451 миллиметра — возможно, нам встретился какой-то некорректный экземпляр. Но теперь, при подготовке площадки для установки, мы учитываем не только глубину рельсов направляющих стоек, но и ширину этих стоек.
Правильная индикация
Стереотипное представление центров обработки данных (ЦОД), которое можно встретить в фильмах или на фотостоках, обычно такое: оборудование мигает разноцветными огнями, как новогодняя елка.
В реальности такой «калейдоскоп» не нужен. Когда оборудование работает, оно должно светиться зеленым цветом. Есть даже специальная должность — инженер-обходчик, который следит за индикацией.
Индикация в реальном ЦОДе
Если индикатор горит зеленым, значит, все в порядке. Если оранжевым или желтым, нужно сообщить об этом вышестоящему инженеру. Синий цвет, согласно стандарту VITA 40–2020, означает, что требуется обслуживание.
Однако некоторые вендоры, например, коллеги из Dell, используют синий цвет для индикатора нормальной работы сервера. Это приводит к путанице, поскольку яркие синие лампочки могут резать глаза и плохо видны в темноте. Мы ориентируемся на стандарт ANSI/VITA 40–2020, где указано, что означает каждый цвет и какая длина волны соответствует каждому сигналу. Например, синий цвет загорается, когда оборудование готово к обслуживанию, — это сигнал для инженера, что необходимо провести работы с конкретным сервером или дисковой полкой. В стандарте также описаны режимы индикации, когда оборудование в режиме ожидания или выключено, и частота загорания лампочек.
Обновление программного обеспечения
Системы хранения данных запускаются один раз после пуско-наладочных работ (ПНР), а потом работают непрерывно в течение всего срока эксплуатации. Поэтому все обновления должны проходить без отключения системы и потери доступа к данным — быстро и бесшовно.
Чтобы исключить непредвиденные ситуации в ходе обновления, мы перед процедурой проводим проверку системы по специально разработанным алгоритмам.
Команда для проверки системы
Во время обновления всегда работает хотя бы один контроллер, и клиент продолжает пользоваться данными без перебоев. Процесс апгрейда в СХД может быть непростым из-за последовательного обновления контроллеров. Подробнее про лучшие практики и алгоритм обновления уже писали.
Логирование
Вернемся в прошлое: 20 лет назад при настройке почты Exchange я устанавливал максимальное ограничение размера письма на 30 MБ. Спустя 20 лет эти значения все еще актуальны.
Идеально, если при возникновении проблемы клиент отправляет сообщение с приложенными логами. Если размер логов — 10 МБ, наш сервер быстро их обработает.
Размеры файлов и время передачи данных
Но, если логи весят 50 ГБ, их загрузка может занять неделю. К этому времени проблема уже будет решаться другими способами, например, с помощью обновлений.
Мы установили требования к размеру логов: если они превышены, это рассматривается как ошибка программного обеспечения, и проблема эскалируется на решение разработчикам ПО.
Мониторинг состояния СХД
Мониторинг — это важный момент. С помощью него можно отслеживать состояние СХД и настроить систему оповещений о проблемах.
Интерфейс мониторинга TATLIN.UNIFIED
В TATLIN.UNIFIED встроена поддержка протоколов SNMP для систем мониторинга и SMTP для оповещения по email. Кроме того, чтобы проще интегрировать СХД в инфраструктуру клиента существуют шаблоны для распространенных систем мониторинга.
Например, в стандартной конфигурации пула 8+2, если выходит из строя один диск, клиент может этого не заметить, потому что данные все еще доступны. О поломке второго диска он тоже не узнает, если система мониторинга не настроена. А вот выход из строя третьего диска уже может привести к потере данных, что не останется незамеченным. И эту проблему можно было предотвратить, настроив мониторинг и alert-систему.
Хороший сервисный дизайн — это не только про удобство инженеров, но и про спокойствие пользователей оборудования. Важно, чтобы процесс обслуживания был продуман до мелочей, чтобы и у специалистов, и у клиентов не возникало лишних сложностей.
Подробнее о том, из кого состоит команда, отвечающая за сервисный дизайн в YADRO, и как она работает, читайте в этой статье.