Переводим серверную стойку на 10 GbE: DAC-кабели, HP ProCurve 5406zl и бэкапы которые перестали мешать
Заменяем 1 GbE uplink серверной стойки на 10 GbE: DAC-кабели вместо оптики, HP ProCurve 5406zl в ядре. Бэкапы и репликация ВМ больше не давят на продакшн.
Цены на 10 GbE-карты и коммутаторы в 2011 году опустились до уровня, при котором переход оправдан для корпоративного сегмента
Год назад 10-гигабитный коммутатор в серверную стойку стоил столько, что разговор заканчивался на первой же цифре в КП. Сейчас всё иначе: карты и коммутаторы подешевели настолько, что у нас наконец появился реальный повод провести работу, которую мы откладывали.
Рассказываем, как это было у одного из клиентов.
Откуда взялась проблема
Серверная стойка: несколько физических хостов ESXi, NAS под общее хранилище, отдельный бэкап-сервер с Veeam. Всё это жило на 1 GbE - по одному аплинку на каждый хост, агрегация через обычный 1G-коммутатор доступа.
В спокойное время сеть справлялась. Проблема вылезала по ночам: Veeam запускал задачи резервного копирования, параллельно vCenter делал репликацию нескольких ВМ на резервный сайт, и в итоге гигабитный аплинк стойки занимался под завязку. Пинги к продакшн-ВМ в эти окна ползли вверх, несколько раз фиксировали таймауты у приложений.
Решение в лоб - разносить окна бэкапов и репликации - помогло, но лишь частично. Хранилище всё равно тянуло трафик к серверам и обратно по той же 1G-магистрали. Рост числа ВМ делал ситуацию только хуже.
Выбор железа
Брать дорогую оптику (SFP+) не хотелось: пробросить 10G между соседними стойками через медные DAC-кабели (Direct Attach Copper) дешевле и проще. DAC-кабель - это пассивный твинаксиальный кабель с SFP+-трансиверами на концах. До 7 метров работает без усилителей, никакой оптики, никаких дополнительных блоков питания для трансиверов.
В итоге взяли:
- HP ProCurve 5406zl с 10G-модулями - в роль ядра стойки. Шасси с модульной архитектурой, под наш масштаб хватает с запасом.
- 10G-карты Intel X520 в серверы - хорошая поддержка в VMware, стабильные драйверы.
- DAC-кабели 3м для соединения серверов с коммутатором.
По деньгам вышло заметно дешевле, чем аналогичная схема на оптике. В 2009-м такой набор стоил бы втрое дороже.
Как переключали
Делали поэтапно, без остановки продакшна. Схема простая: поднимаем 10G-порт на коммутаторе, втыкаем карту в первый хост, проверяем связность, мигрируем ВМ через vMotion на этот хост, переключаем оставшиеся.
Несколько нюансов, которые съели время:
Jumbo frames. По умолчанию MTU 1500, для хранилища хотелось 9000. Выставили jumbo frames на ProCurve, на vSwitch в ESXi, на NAS - и пропустили сетевой адаптер iDRAC на одном из серверов. Полчаса разбирались с фрагментацией, пока не нашли.
Прерывания и CPU. На старых 1G-картах Intel interrupts были выставлены в auto. На X520 пришлось явно настраивать распределение очередей (Receive Side Scaling) через ESXi - иначе весь трафик ложился на одно ядро и теряли часть пропускной способности.
LACP не трогали. Решили не усложнять конфигурацию агрегацией - 10G на хост для нас достаточно, а разобраться с хэш-алгоритмами LACP под vSwitch - отдельная история. Пусть всё работает в простом режиме.
Что получили
После переключения бэкапные окна перестали быть событием. Veeam делает своё дело ночью, репликация ВМ идёт параллельно - и продакшн-трафик этого просто не замечает. Мониторинг в Zabbix больше не рисует пики latency на сетевых интерфейсах хостов в 3 ночи.
Скорость резервного копирования выросла ощутимо: узкое место теперь не сеть, а дисковая подсистема бэкап-сервера. Следующий вопрос - что с ней делать, но это уже другая задача.
Репликация ВМ на резервный сайт теперь укладывается в RPO, который мы согласовали с клиентом. Раньше при росте нагрузки окно репликации ползло и иногда не успевало завершиться до утра.
Что не решилось
Аплинк из стойки в ядро сети клиента по-прежнему 1G - там своя история с коммутаторами этажей и бюджетом. Внутри стойки теперь просторно, но на выходе всё ещё бутылочное горлышко. Пока клиента это устраивает: серверный трафик наружу у них скромный, основная нагрузка как раз внутри стойки - между хостами и хранилищем.
Кроме того, NAS подключён к ProCurve двумя 1G-портами в LACP - 10G-карты для него в этот бюджет не вошли. Реальная полоса к хранилищу - 2G, что пока не является узким местом, но при росте числа ВМ придётся думать.
Если ваша серверная инфраструктура выросла из 1G-стека и бэкапы начали конкурировать с продакшном за полосу - мы занимаемся именно такими историями в рамках сопровождения ИТ-инфраструктуры.