PowerShell, SCSILunPath и Datastore Name

Обратился ко мне за советом постоянный читатель: помоги, говорит, с моим iSCSI-массивом NetApp. Пытаюсь вывести Get-SCSILunPath, так там ни имени датастора, ни IP-адреса “таргета” в SanId нет 🙁

Посмотрел – и действительно так: в отличие, например, от Huawei, NetApp не выводит IP-адрес IQN-Target в выводе атрибутов Get-SCSILunPath. Да и привязать CanonicalName вида naa.thebeststoragearray к датастору с первого взгляда не удается…

Continue reading “PowerShell, SCSILunPath и Datastore Name”

PowerShell, REST и Excel

Обнаружили проблему: командлет Get-OrgVdcNetwork почему-то не выводит часть сетей orgVDC. Опытным путем выяснили, что ему не нравятся Shared-сети, то есть сети доступные из нескольких orgVDC.

Для решения проблемы решили воспользоваться REST API от vCloud Director.

А чтобы было не скучно, решили вывод сетей делать сразу в файл Excel, чтобы уменьшить количество ручной работы.

Оригинал PoSH-скрипта я положил на гитхаб, тут его приведу для наглядности (хотя с отступами при копипасте беда).

Скрипту понадобится список vCloud Director’ов в файле vcd_list.txt.

  1. скрипт запрашивает учетные данные для подключения к vCD;
  2. скрипт считывает список vCloud Director’ов из текстового файла;
  3. создает Excel-файл, а на нем одноименный лист по каждому vCD;
  4. заполняет список сетей по vCD на листе;
  5. сохраняет результат в файле orgvdcnet.xlsx

Что стоило бы доделать – проверку на наличие установленного Excel (например, тут – $ExcelApplication = new-object -comobject excel.application). Если Excel нет, то делать вывод в CSV-файлы по старинке…

Февральские патчи ESXi 2022 года

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

Занимались аудитом и обслуживанием очередной пары фирм, попутно обновляли VMware  – увидели много интересного.

Первая фирма, обновления 7.0.1 – 7.0 Update 2e build 19290878.

Опять какие-то проблемы с iSCSI. На одном сервере полностью поменялся IQN, причем с изменением даже имени. После этого по возвращении сервер не увидел СХД, пришлось настраивать. На аналогичном втором сервере потерялся target, но IQN остался тот же.

Как оказалось, проблема описана в интернете, НО что-то не находится в VMware release notes: Continue reading “Февральские патчи ESXi 2022 года”

Релиз RVTools 4.3.1

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

В этой версии используется VMware vSphere Management SDK 7.0U3, а также есть другие изменения:

  • Новая вкладка “vSource”: отображается информация о сервере, на котором запущена веб-служба SDK, используемая RVTools для сбора всех данных. Это ваш сервер vCenter или хост ESX.
  • На вкладке vHost появилась новая колонка: Host UUID.
  • Свойства Health: новые флажки для включения или отключения сообщений о состоянии безопасности и производительности.
  • На всех связанных страницах вкладки VM столбец UUID был заполнен значением SMBIOS UUID, которое не является уникальным. Теперь столбец заполняется уникальным 128-битным значением UUID, специфичным для VirtualCenter.
  • На вкладке vHealth: новые советы по производительности дискового ввода-вывода и памяти.
  • Исправлено: на вкладке vInfo не отображалось значение Video RAM.
  • Исправлено: RVToolsMergeExcelFiles, когда один из xlsx файлов не содержит ВМ, то в объединенный xlsx добавлялась дополнительная строка заголовка.

Релиз VMware vSphere 7.0 Update 3с

VMware vSphere 7.0 Update 3 вернулся!

В официальном списке KB обещают, что исправлены причины отзыва:

Summary KB Impact Fix / Workaround
ESXi 7.0 Update 3 hosts can experience a PSOD when virtual machines on a VMFS6 thin disk execute UNMAP/TRIM functions. 86100 Potential ESXi host crash This issue is resolved in ESXi 7.0 Update 3c.
Starting with vSphere 7.0 Update 3, the inbox i40enu network driver for ESXi changes name back to i40en.  This can result in ESXi failing to update with the error: “host returned esxupdate code –1″ 85982 Upgrade Blocking This issue is resolved in ESXi 7.0 Update 3c.
In vCenter 7.0 Update 3 FIPS compliance was enabled by default; This has the impact of blocking the SMB protocol; VAMI backup fails using SMB Protocol on vCenter 7.0 U3 with the error: “Path not exported by remote file system” 86069 BCDR Impacting This issue is resolved in vCenter Server 7.0 Update 3c.
Enabling vSphere HA might fail or never complete on hosts that were upgraded to ESXi 7.0 Update 3. 86191 Environmental Stability This issue is resolved in ESXi 7.0 Update 3c.

Выпустили официальный список KB, обязательный к ознакомлению и применению:

Knowledge Base article title Knowledge Base article link
Upgrading vCenter Server 7.0 fails during precheck with “Host(s) were found in the vCenter Inventory, that are potentially problematic for a vCenter upgrade” KB86447
Using the dual_driver_check.py script KB87258
Converting an ESXi cluster to be vLCM image managed fails in vCenter Server 7.0u3c with “The following host(s) have an ESXi version higher than ESXi 7.0 U2a and lower than ESXi 7.0 U3c” KB87308
Enabling vSphere HA might fail or never complete on hosts with ESXi 7.0u2c/u2d and 7.0u3/u3a KB87299
Critical baseline may remain Non-compliant after first remediation KB87451
Platform Configuration Error: /usr/sbin/esxupdate returned with exit status: 32″, ESXi 7.0 Upgrade fails if the environment had migrated from NSX-V to NSX-T using NSX V2T migration KB87423
Workaround Instructions For CVE-2021-22045 on VMware ESXi Hosts KB87249
Upgrading to vCenter Server 7.0 U3c using the CLI fails during precheck with “Installation failed. Retry to resume from the current state. Or please collect the VC support bundle”‘ KB87319

Почему-то не упомянули в таблицах KB эти фиксы:

Обновление 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, данные ВМ не отмечаются как зомби.

Сбой расширения диска в 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. Единственное, что мне было непонятно – почему снапшот выключенной машины не прошел? Но тут я сделал большую ошибку – не проверил процедуру с хоста и не сохранил логи хоста для дальнейшего анализа.