Обновление Microsoft Windows Server с ролью VMware Horizon Connection Server

В связи с выходом новых версий Microsoft Windows Server (MS WS) приходится старые обновлять.

В один прекрасный день дошла очередь до серверов с ролью VMware Horizon Connection Server. С установленной MS WS 2012 R2 решили обновляться до 2016/2019/2022.

Запустили установку в режиме in-place upgrade и стали смотреть на проценты прогресса, а они встали в районе 40-50% и дальше не идут – подождали 3 часа, 6 часов, 12 часов, 20 часов… Поняли, что терпение наше кончилось и мы откатили ОС взад.

Анализ содержимого диска указал, что на сервере созданы профили для всех пользователей VDI – сотни и сотни.

Скачали и запустили любимую у владельцев терминальных ферм утилиту Profile Deletion Utility, исключив служебные и административные профили.

Заново запустили обновление и оно прошло штатно – за 30-40 минут.

VEBA и Python

Уже пару лет Уильям Лам развивает проект под названием vCenter Event Broker Appliance (VEBA), позволяющий выполнять скрипт при наступлении какого-либо события у “Event Provider”. В качестве Event Provider может выступать как vCenter, так и другие системы. В текущей версии 0.7.1 VEBA умеет выступать даже в качестве Webhook-системы для других систем. В качестве языков поддерживаются Python, Go и PowerShell.

Развертывание апплайнса выполняется стандартно. Из обязательных настроек тут только указание адреса vCenter (если вам интересен он), логин и пароль на чтение (для считывания событий). Опционально можно указать учетную запись для регистрации веб-плагина управления к VEBA, но у меня это не взлетело 🙂

Continue reading “VEBA и Python”

Python и ESXcli

Если вы захотите собирать информацию о версии драйвера и прошивки сетевого интерфейса ESXi, то можете воспользоваться пакетом от VMware, который нужно поставить на Linux. Есть отдельные версии для 7.0 и 6.7.

После этого Вам потребуется:

  1. подключить к Python библиотеку Subprocess;
  2. если vCenter использует недоверенный сертификат, то вам потребуется игнорировать эту ошибку. Один из вариантов – указать в команде отпечаток (thumbprint) сертификата vCenter, к которому подключены сервера ESXi (оптимально собирать информацию через него). Можно выполнить “esxcli -s <vcenter> -u <vcenter_login> -p <vcenter_password> -h <esxi>”, чтобы получить отпечаток.

Для вывода списка сетевых адаптеров с используемым драйвером и красивым названием воспользуемся командой esxcli -s <vcenter> -u <vcenter_login> -p <vcenter_password> -h <esxi> --thumbprint <vcenter_thumbprint> network nic list
Для вывода подробной информации по адаптеру, из которой можно взять версию драйвера и прошивки воспользуемся похожей командой ESXCLI network nic get -n vmnic7, например.

Вот пример скрипта, который делает “что-то похожее”:

Continue reading “Python и ESXcli”

Релиз RVTools 4.2.1

Rob de Veij выпустил обновление своей отличной утилиты инвентаризации VMware vSphere — RVTools версии 4.2.1.

В этой версии на вкладке vHealth компоненты vSphere Cluster Services (vCLS) vmx- и vmdk-файлы не показываются как зомби.

UPDATED. Версия 4.2.2 от 29 декабря 2021 года

  • Исправлено: Информация о HA не отображалась на вкладках vInfo и vCluster
  • Исправлено: кластерный правила не отображались на вкладке vInfo
  • Исправлено:  для vCLS ВМ, развернутых в vSphere 7.0 Update 3 используется паттерн имени vCLS-UUID, данные ВМ не отмечаются как зомби.

Как вкатиться в ИТ и стать Python-кодером

Как делать не стоит 🙂

    1. проучиться в ВУЗе на программиста/математика 5 лет, изучив C, Pascal, Prolog, List (хотя это-то нормальный пункт);
    2. 15 лет проработать Wind0ws-администратором, карабкаясь по профессиональной лестнице от переустановки рабочих станций – до дирижирования виртуальными серверами;
    3. последние лет пять писать постепенно усложняющиеся скрипты на PowerShell;
    4. года три назад начать занятия на курсе https://dlcourse.ai и бросить их из-за сложностей в математике (Back Propagation, например) и программировании (классы в Python ну вообще не зашли);
    5. начать изучение программирования на Coursera курса по Go… И бросить его из-за чрезвычайной сложности для начинающего программиста.
    6. посмотреть вдохновляющие лекции Ивана Бибилова (еще хвалят Хирьянова, но для меня изучение языка программирования по видеолекциям – так себе затея, имхо);
    7. вписаться в бесплатное соревнование для студентов от Яндекса – Тренировку по алгоритмам (вот это было самым крутым);
    8. написать на питоне свой скрипт синхронизации хостов и виртуальных машин из vSphere в Netbox (пока через Pyvmomi).

Как лучше, – спросите вы?

  1. “Поколение Python”: курс для начинающих на Степике. Отлично то, что есть онлайн-IDE (среда разработки) с автотестами: то есть, вы не только учите язык, но и проверяете себя на практике. Альтернативно, вы можете сесть за Python Tutorial, но практики не будет.
  2. Теперь вы знаете основы языка и можете вписаться в любую более сложную движуху. Можете выбрать курс “Поколение Python”: курс для продвинутых на Степике, а можете – тренировки Яндекса по алгоритмам. Кстати, у Яндекса есть программы стажировки по разным направлениям, причем они не ограничиваются только студентами (по крайней мере, так утверждают сотрудники Яндекса 🙂 )
    Но там очень жесткий отбор – например, в школу бэкенд разработки надо было за несколько часов решить 6 задач.
  3. Как вариант, вместо дальнейшей прокачки Python вы можете пойти в Go (ссылку на Курсеру кидал выше) или в Java. Есть мнение, что это более перспективные языки с точки зрения вашей будущей з/п.
  4. Нелишним будет подтянуть хотя бы основы Git. Там есть много полезного даже для сисадминов.

Выводы

Если вы – сисадмин и поступите так, как я написал, то ваша жизнь может заиграть новыми красками. О, сколько новых слов я сказал, когда:

  • узнал, что кабели в Netbox могут соединять как два устройства, так и устройство с “circuit”;
  • цвет кабеля в Netbox можно задать неправильно и это будет ломать API-запросы к нему;
  • узнал, что хост ESXi может не содержать vmnic5, но содержать vmnic7 (vmnic0, 1, 2, 3, 6, 7).

Зато помог коллегам вычистить конфликты серийников у хостов в Netbox.

Сбой расширения диска в Windows в VMware vSphere

Статья прислана читателем бложика.

Как знают почти все активно работающие с VMware, расширение дисков в VM Windows не представляет собой каких-то супер-сложностей – берется kb Increasing the size of a disk partition (1004071), удаляются снапшоты (со снапшотами диск не расширить, это ж придется не только файл дельту писать, но и дельту геометрии учитывать). Открываем статью MS Extend a data volume in Windows, далее-далее – готово. Если когда-то, давным-давно, сделали диск MBR или не с тем размером кластера NTFS, то страдаем – для размера по умолчанию в 4к – максимальный размер диска 16 ТБ – это много, но диски «под бекап» бывают и побольше.

Иногда ситуация идет иначе – Windows при попытке расширения диска выдает табличку «не шмогла», и машина встает в странное положение.

Проблема

Управление дисками показывает, что все сделано – Disk Managements (diskmgmt.msc) displays the correct, increased disk size.

Управление томами и просто проводник показывают старый размер – Share and Storage Management (storagemgmt.msc) does not show increased size of the disk.

В добавлении к этому перестают создаваться снапшоты (и включенной, и, главное, выключенной VM). Клон тоже не работает. Но все читается и копируется.

Проблема описана в kb – After running diskpart.exe to extend the disk size in Windows, the partition size does not get updated (1000630).

Лечение

Конечно, необходимо иметь бекап «на всякий случай», и, лучше всего, – проверенный бекап. Неплохо иметь и свободное место под клон, на котором попробовать решение из kb

Указанное по второй ссылке решение на PS – НЕ работает, и даже делает в чем-то хуже (то, которое Resize-Partition -DriveLetter $drive_letter -Size $size.SizeMax).

В остальном, лечение из kb помогает – diskpart – show disk – select disk – show volume – select volume и далее по kb. Главное не удивляться, что столкнуться с этим можно даже в конце 2021 года, даже на последних патчах до сих пор поддерживаемых версий Windows. Единственное, что мне было непонятно – почему снапшот выключенной машины не прошел? Но тут я сделал большую ошибку – не проверил процедуру с хоста и не сохранил логи хоста для дальнейшего анализа.

Видеоновости. VMware, октябрь 2021

Доклады о новинках на русском языке от сотрудников VMware:

Предыдущие обзоры и доклады по vSphere/vSAN 7.0

Трек по vSAN

Трек по обновлениям vSphere 7.0:

Big Memory or Project Capitola

Одним из грядущих “бутылочных” горлышек гипервизоров называют оперативную память. Это связано с несколькими причинами:

  • кризис производства полупроводников 2021;
  • в предыдущую десятилетку было построено так много заводов по производству DRAM, что их владельцы были вынуждены демпинговать в борьбе за потребителя;
  • оперативная память не успевает вслед за процессорами понижать техпроцесс, вследствие чего количество ОЗУ на сокет ограничено (например, 6 каналами и двумя DIMM-слотами на каждый в Xeon Skylake). Количество ОЗУ на ядро перестало расти в последние годы, а вскоре, возможно, начнет падать;
  • немаловажным аспектом также является и цена за гигабайт – в стоимости современного сервера ОЗУ дороже всего остального вместе взятого.

Continue reading “Big Memory or Project Capitola”

Veeam Ready

Многие знают, что для проверки совместимости оборудования с VMware vSphere существует VMware Compatibility Guide, размещенный по адресу https://www.vmware.com/go/hcl.

Но мало кто знает, что у Veeam запущена похожая программа для квалификации партнерских решений для обеспечения стандартов высокой производительности, функциональности и совместимости.

Имеет 4 категории Veeam Ready для участников Veeam Alliance Program (VAP)

  1. Veeam Ready – Repository (репозиторий)
    Партнеры VAP с первичными решениями для хранения резервных копий проходят квалификацию, выполнив или превысив функциональные тесты и тесты производительности для операций резервного копирования и восстановления.
  2. Veeam Ready – Object (объектное хранение)
    VAP-партнеры с S3-совместимыми решениями для хранения объектов проходят квалификацию, подтвердив совместимость с возможностями хранения объектов Veeam Backup & Replication.
  3. Veeam Ready – Object Immutability (неизменность объекта)
    VAP-партнеры с S3-совместимыми решениями для хранения объектов проходят квалификацию, подтвердив совместимость с использованием Veeam Backup & Replication возможностей S3 Object Lock в хранилищах объектов.
  4. Veeam Ready – Tape (хранение на лентах)
    Партнеры VAP с автономными решениями для хранения данных проходят квалификацию, проверив совместимость с функциями и операциями с лентой Veeam Backup & Replication.

Также имеется 4 программы для интеграционных решений:

  1. Veeam Integrated – “with Veeam”
    VAP-партнеры, которые разрабатывают решение для хранения данных для DR-нагрузок с использованием Veeam.
  2. Veeam Integrated – Object
    Партнеры VAP, предлагающие объектные системы хранения данных, для улучшения совместной работы с клиентами требуются определенные протоколы или настройки.
  3. Veeam Integrated – Deduplicating Storage
    VAP-партнеры с дедуплицирующими хранилищами для повышения эффективности совместной работы с клиентами необходимы определенные протоколы или настройки.
  4. Veeam Integrated – Universal Storage API
    Партнеры VAP с предложениями первичных систем хранения данных для виртуализации, физических серверов и рабочих нагрузок NAS  для совместной разработки интеграции моментальных снимков с Veeam.

Конечные заказчики легко и быстро могут узнать результат проверок на странице Veeam Alliance Technical Programs (переключайтесь между Veeam Ready и Veeam Integrated, пролистывайте примерно один экран до таблицы с фильтрами).

Заметки в базе знаний VMware по платформе vSphere 7.0 Update 3

Выпущено много новых заметок в базе знаний по проблемам, планам, принятым решениям по платформе VMware vSphere 7.0 Update 3 (либо описывается текущая проблема во всех версиях):

  • vSphere 7.0 Update 3 Critical Known Issues and Workarounds (86287)
  • vSphere 7.0 Update 3 Known Issues and Workarounds (86281)
  • vSphere Back-in-time release upgrade restriction (67077)
  • Virtual machine hardware versions (1003746)
  • Build numbers and versions of VMware vCenter Server (2143838)
  • Removal of Windows Update published PVSCSI driver version 1.3.18.0 (86053)
  • Understanding vSAN on-disk format versions and compatibility (2148493)
  • Interactive/Scripted ISO upgrade to 7.0 U3 failed with message about live VIB installation (85859)
  • ToolsRamdisk option is not available with ESXi 7.0.x releases (83782)
  • Failed to create a new Virtual Machine with virtual Trusted Platform Module (vTPM) device (85974)
  • /etc/hosts and /etc/resolv.conf do not support direct update from 7.0 U3. The content of the files are saved to configstore. They can only be updated by public cli or API (86015)
  • “Authentication failed, Lifecycle Manager server could not be contacted”, Access to Lifecycle Manager fails in vCenter 7.0 Update 3 when logged in with an Active Directory account (85962)
  • Intermittent 100% CPU Usage spikes on hosts with AMD EPYC Zen3 (Milan) CPUs (85071)
  • HPE Serviceguard for Linux Clustering (SGLX) with shared disks on VMware vSphere 7.x: Guidelines for supported configuration (Partner Verified and Supported) (85910)
  • Intel VMD is support plus additional support for RAID 1 for boot volumes (85889)
  • Backup speed are slow over NBD transport mode for VMs on high-latency storage (83401)
  • Intel NVM update tools do not work on Intel 1G igbn adapters (85983)
  • DRS Advanced option “MaxMemMBHeadroomPerHost” for Memory Headroom (86013)
  • vSphere Lifecycle Manager can show non-compliant status after rollup Remediation, new cluster creation or transition from Baseline-managed cluster to Image-managed cluster for few upgrade paths due to i40en/i40enu driver name change (85982)
  • “vSAN network alarm ‘RDMA Configuration Health'” warning is seen in vSAN over RDMA cluster when using async Intel icen driver (85947)
  • vSAN Health Service – vSAN HCL Health – NVMe device can be identified (85782)
  • vSAN Health Service – vSAN Network Health – Hosts with LACP issues (85886)
  • vSAN Health Service – vSAN Network Health – Hosts with duplicate IP addresses (85883)
  • vSAN Health Service – vSAN HCL Health – NVMe device is VMware certified (85852)
  • Unable to change vSAN File service configuration after creation (80028)
  • vSAN iSCSI first-time enablement with CHAP authentication fails with an internal error (86019)
  • vSphere Support for Intel’s Optane Persistent Memory (PMEM) (67645)
  • vCenter Server /storage/log filling up due to localhost_access.log and catalina.log in sso and lookupsvc log directories (85475)
  • “Error in method invocation Exception occurred while unzipping patch script, please retry after sometime” while patching VC 7.x (85797)
  • Clearing BACKUP_STORES certificates in the VCSA via shell script (82560)
  • File-based Backups via SFTP in vCenter 7.0 Update 2d failing with “General system error reported by backup server.” (85966)
  • WCP service fails to start in vCenter Server 7.x (82507)
  • Enabling and disabling vSAN over RDMA with unsupported driver/firmware versions for Intel E810* family NIC may lead to vSAN core dumps or ESXi Host PSOD (86077)
  • VMkernel might shut down virtual machines due to a vCPU timer issue (86075)
  • vCenter has a large number of localhost_access log files generated under /storage/log/vmware/eam/web/ (85249)
  • ESXi host fails with a backtrace NMI IPI: Panic requested by another PCPU (86100)
  • Workaround Instructions for CVE-2021-22048 (86292)
  • Guest OS Customization for Rocky Linux is not fully supported (86163)
  • vCenter upgrade from 7.0 update 2 to update 3.0 fails with could not find function “archive_build_segment_list” in file “/opt/vmware/vpostgres/13/lib/pg_addons.so” (86073)