Постоянный читатель прислал свои мысли о выборе гипервизоров и убедительной победе vSphere 7.0, несмотря на все грабли ;).
С чего все началось
Недавно у наших коллег появилось осознание, что:
- самым старым серверам в продуктивной среде уже 8 и больше лет,
- поддержки и запчастей на них нет,
- нагрузка по памяти под 90%, но ее там очень немного,
- установлена максимально возможная для этих серверов ESXi 6.5 , на тот момент 17477841 (сейчас 18071574).
Поэтому было решено:
- начать закупку новых серверов,
- обновить, где возможно, до ESXi 7.0 для единообразия.
Серверы, в основном, производства HPE и Huawei, на каких-то задачах используются серверы Supermicro. Предлагают закупать Dell, HPE, Lenovo. У Huawei сейчас все сложно, а присматриваться к линейке Kunpeng на Arm сейчас нет времени. Хотя под Arm есть и MS Server, и ESXi.
Почему ESXi, а не что-то еще
Все достаточно прозаично – сложившийся опыт эксплуатации и «люди со знанием в наличии». Мгновенно перейти «на что-то еще» нельзя, поддерживать две разные системы (например, ESXi и KVM) – потребует увеличить бюджет отдела на:
- Людей, которые могут, умеют и практикуют KVM – то есть утроить штат – оставить старые кадры, набрать (не мгновенно) новые кадры, и выделить людей со стороны сервисов / разработки, которые вместо текущей работы будут заниматься тестами «вообще». Автотестов у нас маловато и не все вылезает так быстро, как хотелось бы.
- Тестовые стенды сначала под «посмотреть», потом под пробную миграцию, замеры скорости и тому подобное(а на KVM может быть больно в дисковых операциях).
Затем – после решения вопроса денег и людей (новые люди – новое штатное расписание – новые начальники), придется:
- Долго и нудно искать подходящий оркестратор и разбираться в нем (Openstack, а еще? Если Openstack, то какой – ванильный или вендорский? Если вендорский, то чей? FusionSphere OpenStack, например – плюсы, минусы?
- Искать и пробовать – как работает бекап и восстановление?
- Поиметь проблемы со скоростью, как описанные, так и не очень.
- Я не перечисляю вопросы с импортозамещением у кого оно есть (в данном случае – нет), регуляторами (сертификацией средств защиты инофрмации) и прочей отраслевой спецификой. Граждане, попадающие под требования 187-2017-КИИ и ГОСТ Р 57580 знают, о чем речь.
Отдельно придется рассмотреть новые процедуры «поибэ», сбор и хранение логов и удаленный доступ для поддержки. В ESXi процесс понятен и передача support bundle «наружу» согласована с ИБ, а как быть с новыми системами?
Тоже самое придется тестировать и учить при выборе Hyper-V. Да, он надежен, совместим с массой программ резервного копирования, диски переедут без особых усилий, но все равно это требует времени и ресурсов, в том числе на изучение счётчиков производительности \Hyper-V Hypervisor Logical Processor(_total)\% Guest Run Time, Total Run Time, % Hypervisor Run Time, или же, если у вас некролаба – HKLM\SYSTEM\CurrentControlSet\Services\VMSMP\Parameters /v BelowTenGigVmqEnabled /t REG_DWORD /d 1 /f, сверху (если хорошая лаба) – все обмазать RoCEv2 в смеси с Dynamic Virtual Machine Multi-Queue (Dynamic VMMQ or d.VMMQ) и заполировать Switch Embedded Teaming (SET) и так далее.
В остатке – переезд ради переезда ценой в удвоение бюджета ИТ ради снижения стоимости лицензий? На общем фоне даже временная аренда новых площадей для руководства и хотя бы трети нового штата (2/3 на удаленке) обойдется ООО «Скрудж и Марли» чуть дороже лицензий.
Отличия ESXi 7.0 от 6.7 и процедуры подготовки
Такие очевидные вещи, как обновление прошивок и проверку пары прошивка-драйвер пропущу, но напомню про инструменты. Как показывает недавний опыт – не все с этим знакомы. Для Huawei – это раздел Intelligent Servers, FusionServer iDriver и SmartKit, для HPE ситуация традиционна – обязательная подписка, доступ к Service Pack for ProLiant (SPP), Oneview, OpenView, HPE Smart Update Manager (SUM), для Dell – работа с OpenManage. Даже у Supermicro есть – Supermicro Update Manager (SUM). Пропущу и рассказ про обязательную проверку старых серверов и процессоров через HCL.
Особое внимание надо уделить следующему:
Сети, которые Ethernet. В 7.0 и далее сменилась модель использования драйверов, и просто так поставить в дистрибутив старые линуксовые драйвера больше нельзя. Проверяйте HCL, проверяйте прошивки, смотрите в Community Networking Driver for ESXi.
Сети, которые storage area network (SAN). В связи с очень, очень странной политикой (почти монопольной) Brocade – оценивайте санкционные риски при использовании FC-Brocade (да и Cisco тоже). Возможно, со сменой серверов – можно рассмотреть и смену SAN с FC на Ethernet 10/25/100 G. Плюсы – меньшая привязка к вендору. Минусы – придется изучить массу нововведений для разгрузки центрального процессора и такую же массу дополнений к самому Ethernet. Тут и старые DCB, TSO-LRO, и lossless Ethernet, и RDMA м SR-IOV и RoCE (RDMA over Converged Ethernet) – много новых терминов, некоторые из них могут вызвать абсолютно неожиданные проблемы.
Сети вообще. Уже много лет идет переход на10/25 сети, а люди все равно умудряются собирать Etherchannel, совершенно не понимаю никак он работает, ни зачем он нужен, ни что такое beacon, ни его применимость. Потом получают проблемы в сети и страдают. Граждане, грамотно планируйте сеть, не усложняйте ее без существенных обоснований. Читайте официальную открытую бесплатную документацию.
Диски или новая боль. Много лет у ESXi был огромный плюс –гипервизор отлично работал с 4-8 Гб USB флешки или SD. USB/SD была нужна только на запуске, затем гипервизор жил в памяти – и настроить надо было только логирование, дампы, бекап и профили. Умерла флешка – не беда, поставили новую, обновили, восстановили из бекапа или из профиля. Но они особо и не умирали (кроме как в случае перегрева). В ESXi 7.0 ситуация изменилась – USB все еще можно, но лучше не надо: The recommended ESXi 7.0 install options are the following: A local disk of 138 GB or larger. The disk contains the boot partition, ESX-OSData volume and a VMFS datastore. A device that supports the minimum of 128 Terabytes Written (TBW) (ссылка).
Резервное копирование. При планировании перехода, проверяйте, что ваше ПО резервного копирования работает с новыми ESXi и vCenter до начала любых работ.
TLS. Тоже имейте в виду, что 1.0 и 1.1 уже не модно – You can use the TLS Configuration utility to enable or disable TLS versions on vCenter Server systems. As part of the process, you can disable TLS 1.0, and enable TLS 1.1 and TLS 1.2. Or, you can disable TLS 1.0 and TLS 1.1, and enable only TLS 1.2. (документация)
Ansible / Terraform / etc. Если вы работаете с этими инструментами, сразу смотрите «что изменилось».
Опыт коллег, или с чем столкнулись в тестах при обновлениях на vCenter 7.0
Сначала еще раз – почему нельзя обновить только хосты до ESXi 7 – и оставить старый вцентр 6.7? Потому! Смотрите VMware Product Interoperability Matrix.
Что нового, кроме отсутствия Flash? Вот обзорная статья, от себя добавлю , что не все функции 1:1 перенесли из Flash клиента. Я не записал, с чем коллеги столкнулись – то ли с монтированием FDD image, то ли с захватом сетевого трафика, какие-то не очень типичные операции. Проверять надо все ручные операции, надеюсь у вас есть их каталог.
vCenter 7 добавляет vSphere Cluster Services (vCLS). Это минимально возможные виртуальные машины «для служебных задач». Вот эта фраза в документации – ESXi host can be of any older version that is compatible with vCenter server 7.0 Update 1 – немного расходится с практикой, иногда эти VM отрабатывают нормально, иногда не могут запуститься. На этот счет есть заметка Demo Time: How to delete the vCLS VMs. Вопрос можно начать изучать отсюда – Workaround for ESXi-Arm in vSphere 7.0 Update 1.
В чистой установке vCenter 7.0 проблем вроде бы меньше, но это субъективное мнение – на vmware полно kb со словами “no workaround” и “will be fixed soon”.
Обновление – VUM / vLCM. Согласно сайту, все сделали только более лучше – We greatly improved lifecycle management in vSphere 7. The new innovations for lifecycle management in vSphere 7 make it easy for customers to have consistent and up-to-date systems. На практике в тестовом сегменте VUM вообще умер, и далее пришлось выполнять kb 2147284 Resetting VMware Update Manager Database on a vCenter Server Appliance 6.5/6.7/7.0 . Вместе с ним умерли задачи с проверкой Baseline хостов по расписанию, точнее задачи в расписании остались – а baseline уже нет. Пересоздали, конечно.
Бекап средствами vCenter. При последнем срочном обновлении до vCenter Server 7.0 U2b (17958471) умер встроенный бекап. Проблема «умирания» была связана с порядком запуска служб, состоянием VMware Directory Service (vmdir), проверкой «кто там запустился и в каком статусе», лечение связано с исправлениями в конфиге – куда не стоит заходить без наличия активной поддержки (потому что, бекапа, фактически, уже нет).
Проблемы могут быть и при самом апгрейде, например описанные в статье VCSA 7.0 Update 2 Upgrade Issue – Exception occurred in install precheck phase, с ручным НЕ РЕКОМЕНДОВАННЫМ исправлением через shell.