Выбор правильного SDK для автоматизации операций виртуальной инфраструктуры VMware vSphere
Не так давно мы писали о нововведениях VMware в средствах автоматизации виртуальной инфраструктуры VMware vSphere в 2023 году. Ключевой элемент в процессе использования средств автоматизации для платформы vSphere - это пакет разработки ПО Software Development Kit (SDK).
VMware vSphere предоставляет разнообразный выбор SDK для автоматизации рабочих процессов. Пользователи часто задаются вопросом выбора SDK для автоматизации конкретных задач. Вот некоторые рекомендации по использованию различных SDK для задач автоматизации.
Выбор SDK
Основные API vSphere разделены на три категории на основе используемого протокола. Библиотеки наборов инструментов для разработки программного обеспечения vSphere также классифицируются на основе них.
- vSphere Web Services (VIM) API - это популярные API, охватывающие большую часть инфраструктуры vSphere с использованием протокола SOAP. pyvmomi, govmomi и vSphere Management Java SDK широко используют эти API. Все устаревшие функции, предшествующие vSphere 6.5, доступны только в этих SDK.
- vSphere Automation API - API автоматизации vSphere следует архитектуре REST на основе ресурсов, которая была введена в vSphere 6.5. VMware vSphere Automation SDK оптимизированы для разработки приложений с использованием этих API. Эти SDK доступны только на языках Java и Python и используют протокол-последователь JSON RPC. Некоторые популярные функции, такие как библиотека контента, тегирование, vSphere с Kubernetes и т.д., доступны только на этой платформе SDK. Несколько важных замечаний здесь:
- Функции, такие как управление виртуальными машинами, управление хостами и кластерами, и другие функции, представленные до vSphere 6.5, также частично доступны в vSphere Automation API.
- Хотя название этого SDK гласит "SDK автоматизации vSphere", оно не ограничивается только vSphere. У них есть клиентские байндинги для VMware Cloud и NSX on VMware Cloud. Это может быть использовано для автоматизации архитектуры Software Defined Datacenter (SDDC).
- Virtual Infrastructure JSON API (VI JSON API) - для разработчиков, которым не нравятся тонкости SOAP, эти API предоставляют интерфейсы REST для всех указанных выше API веб-служб vSphere (VIM). В настоящее время с этими API не связано никаких SDK.
Давайте сосредоточимся только на SDK, основанных на vSphere Web Services (VIM) API и vSphere Automation API. Нам нужно убедиться, что клиентские байндинги функций vSphere доступны с правильными SDK. Руководство по API и документация по языку программирования SDK могут быть хорошей отправной точкой. Для более быстрого понимания вы можете обратиться к таблице ниже, чтобы определить подходящие SDK и руководства по программированию.
Основные функции vSphere в пакетах разработки SDK:
![](https://vm-guru.com/content_images/vmware-vsphere-sdk-features.png)
Если вы заинтересованы в создании байндингов к языку программирования на других языках с использованием сторонних инструментов, вы можете использовать WSDL, поставляемые в vSphere Management SDK, или использовать спецификации VI JSON.
При выборе SDK учитывайте ваши навыки в языке программирования, конкретные требования вашего проекта и наличие ресурсов и примеров для выбранного SDK. Кроме того, имейте в виду, что VMware может выпускать обновления и новые SDK, выводить SDK из эксплуатации, поэтому рекомендуется проверять официальную документацию для получения самой последней информации.
Таги: VMware, vSphere, API, SDK
Нововведения VMware в средствах автоматизации виртуальной инфраструктуры VMware vSphere в 2023 году
В этом году компания VMware серьезно взялась за доработку своих фреймворков по автоматизации операций в виртуальной инфраструктуре. Это было обусловлено тем, что исторически у VMware накопилось большое количество средств автоматизации, которые когда-то были привязаны к специфическим продуктам и интерфейсам, потом эти продукты эволюционировали, объединялись в различные линейки, а старые интерфейсы продолжали тянуться за разными решениями, управлять которыми до сих пор можно несколькими разными способами, а с учетом различных платформ и вспомогательных сервисов таких способов становится слишком много. Таги: VMware, API, SDK, PowerCLI, OpenAPI, Automation, vSphere
Доступен SDK for WebRTC redirection для решения VMware Horizon
Как вы знаете, компания VMware постоянно улучшает механизмы перенаправления мультимедиа-контента для виртуальных рабочих столов в решении VMware Horizon. Это необходимо для того, чтобы видео и аудио контент рендерился на стороне клиента, что существенно повышает качество пользовательского опыта.
Мы уже писали о решениях optimization packs для Microsoft Teams и Skype for Business, которые значительно повышают качество видеозвонков и конференций при их использовании в виртуальных десктопах. Также VMware сделала и оптимизации для таких решений, как Zoom, Cisco WebEx, Cisco Jabber, Avaya и многих других за счет использования Horizon Session Enhancement SDK и RDP VC Bridge SDK.
При этом сейчас набирает обороты применение протокола WebRTC для так называемых unified communications (UC), где провайдеры приложений, такие как RingCentral, Intermedia, IPC, Genesys, Cloud9, Vonage, Amwell, BlueJeans, 8x8 Inc и многие другие позволяют встраивать свои решения в различные кастомные приложения для коммуникации пользователей.
Для этого нужна поддержка протокола WebRTC на уровне решения VMware Horizon, которая, собственно, на днях и была анонсирована в виде пакета разработки Horizon with SDK for WebRTC redirection:
![](https://vm-guru.com/content_images/vmware-horizon-webrtc-redirection-sdk.png)
Теперь любой разработчик ПО, зарегистрированный в программе Horizon Access, может получить доступ к SDK, с помощью которого он может добавить поддержку WebRTC в свое приложения и получить значительное улучшение пользовательского опыта при коммуникациях с использованием виртуальных десктопов Horizon.
Напомним, что VMware уже сделала функцию Browser Content Redirection для браузерных приложений, которую успешно внедрили в такие решения, как Microsoft Teams Web client, Google Hangout, Cisco Webex Web client, Zoom Web client и другие. Теперь же и любой желающий может использовать эти оптимизации.
SDK for WebRTC redirection представляет собой JavaScript, который подцепляется к вашему приложению в виртуальном десктопе и включает стек поддержки WebRTC. После этого вызовы WebRTC API будут перенаправляться к вашему движку WebRTC media engine при использовании Horizon Client. В SDK есть дополнительные ресурсы в виде описаний и примеров кода, которые вы можете использовать для разработки приложений, использующих перенаправление аудио, видео и экрана в локальную машину по стандарту WebRTC. Для SDK поддерживаются обе платформы - Horizon Enterprise и Horizon Cloud Services.
Для получения более подробной информации о программе EUC Integration вы можете посетить вот эту страницу. Таги: VMware, Horizon, EUC, SDK, WebRTC
VMware vSphere 8 и пакеты разработки (SDK) - где их скачать?
Многие администраторы и разработчики, вовлеченные в управление виртуальной инфраструктурой VMware vSphere и использующие ее компоненты, а также другие решения VMware, часто планируют разработку сценариев и программ для автоматизации различных операций в виртуальной среде. Для этого VMware предоставляет комплект пакетов разработки (Software Development Kits, SDK), которые стандартизируют разработку сторонних решений на различных языках (Java, .NET, Perl, Python, Ruby и других).
Первое, что надо посетить в этом случае - это единая страница для всех VMware SDK:
![](https://vm-guru.com/content_images/vmware-vsphere-sdk-1.png)
Вторая страница - это комплект SDK, в том числе от партнеров и в рамках различных программ для разработчиков. Находится она здесь.
![](https://vm-guru.com/content_images/vmware-vsphere-sdk-2.png)
Что касается специальных программ для разработчиков (например, партнеров по программе Technology Alliance Partner, TAP), то информация о них доступна на этой странице (так называемые Gated SDK).
![](https://vm-guru.com/content_images/vmware-vsphere-sdk-4.png)
Кроме того, некоторые SDK, до выхода vSphere 8, были доступны только в соответствующих репозиториях на GitHub. Теперь их перенесли в единый центр загрузки. Вот их новые страницы:
Также разработчикам следует обратить внимание и на страницу Developer Tools:
![](https://vm-guru.com/content_images/vmware-vsphere-sdk-3.png)
Таги: VMware, vSphere, SDK, Developers
Новое на VMware Labs - Cloud Automation Services SDK for Python.
На сайте проекта VMware Labs появилась новая интересная штука - пакет разработки для автоматизации облачных сервисов Cloud Automation Services SDK for Python.
![](https://vm-guru.com/content_images/vmware-cloud-automation-sdk.gif)
Данный SDK представляет собой набор классов Python, предназначенных для автоматизации различных операций на уровне компонентов Cloud Assembly, Service Broker и Code Stream API при разработке новых инструментов, дополняющих средства управления облачной средой.
Для начала работы вам понадобится:
Установка пакета проста:
- Клонируем гит-репозиторий командой
git clone https://github.com/vmware/caspyr
- В склонированной папке устанавливаем модули командой
python3 setup.py install
- Смотрим примеры использования в официальном репозитории
P.S. На момент написания этой заметки репозиторий на GitHub был еще недоступен - видимо надо немного подождать. Таги: VMware, Labs, SDK, Python, Cloud, Automation
Полезное средство для разработки собственных плагинов к vSphere - VMware HTML Client SDK.
Недавно мы писали о новых возможностях тонкого клиента vSphere HTML5 Web Client, для которого в последнее время было выпущено сразу несколько значимых обновлений. Однако немногие знают, что в состав дистрибутива этого клиента включено и средство разработки VMware HTML Client SDK, которое позволяет создавать собственные плагины к этому продукту для управления платформой vSphere.
Чтобы загрузить SDK, нужно на странице загрузки HTML5 Web Client выбрать пункт html-client-sdk-xxxx.zip:
![](https://www.vm-guru.com/content_images/vmware-vsphere-html-client-sdk-1.png)
В состав данного дистрибутива входят библиотеки, примеры плагинов, документация и различные утилиты, которые позволяют вам начать разрабатывать собственные интерфейсные расширения для HTML5 Web Client.
Кстати, эти расширения будут совместимы как с новым vSphere Client (на базе HTML5), так и с новым vSphere Web Client (на базе технологии Flex):
![](https://www.vm-guru.com/content_images/vmware-vsphere-html-client-sdk-2.png)
HTML Client SDK Fling построен на базе существующего программного интерфейса HTML Bridge API, что позволяет перенести существующие плагины для Flex на базе HTML Bridge в новую среду для HTML5.
В комплекте с утилитой поставляется подробная информация по развертыванию и эксплуатации, приведенная в документе "Getting Started with HTML Client SDK Fling":
![](https://www.vm-guru.com/content_images/vmware-vsphere-html-client-sdk-3.png)
Там описана настройка HTML SDK, а также инструкции по регистрации плагинов на сервере vCenter и созданию простого учебного плагина:
![](https://www.vm-guru.com/content_images/vmware-vsphere-html-client-sdk-4.png)
В документе описаны 4 примера использования (chassisA, chassisB, globalview-html, vsphere-wssdk), которые представляют собой демонстрации таких сущностей, как портлеты, вкладки, действия, объекты и списки:
![](https://www.vm-guru.com/content_images/vmware-vsphere-html-client-sdk-5.png)
![](https://www.vm-guru.com/content_images/vmware-vsphere-html-client-sdk-6.png)
Также VMware HTML Client SDK содержит различные утилиты в виде исполняемых сценариев, которые вы можете использовать для создания новых типовых проектов. Они находятся в следующей директории:
…\html-client-sdk\tools\Plugin generation scripts
и называются create-html-plugin.sh для Mac OS и create-html-plugin.bat для Windows OS. Также есть новые скрипты для создания папки с составляющими пакета для плагина. Эти скрипты называются build-plugin-package.sh, и они появляются, когда созданы сервисы pluginName-ui и pluginName.
Болеее подробно о VMware HTML Client SDK можно узнать, загрузив утилиту со странички HTML5 Web Client. Таги: VMware, Web Client, SDK, HTML Client, vCenter, Plugins, vSphere
Новый документ - Intel Data Plane Development Kit with VMware vSphere.
Компании VMware и Intel в партнерстве выпустили новый документ "Intel Data Plane Development Kit with VMware vSphere" (DPDK), который описывает работу с данной библиотекой приложений Linux User Space. Она позволяет на высоком уровне работать с подсистемой ввода-вывода и сетевого взаимодействия и на программном уровне обрабатывать то, что ранее необходимо было делать только на аппаратном для высоконагруженных систем, например, Application-specific integrated circuits (ASICs) и Field programmable gate arrays (FPGAs).
Данный DPDK с использованием техник паравиртуализации позволяет напрямую обращаться к аппаратным функциям оборудования или виртуальных устройств VMware vSphere.
![](https://www.vm-guru.com/content_images/vmware-intel-dpdk-1.png)
Решение DPDK with VMware vSphere может быть использовано для миграции систем (обычно в сфере телекома и какого-то необычного сетевого взаимодействия), которые раньше были жестко завязаны на аппаратные функции "железа", на платформу VMware vSphere.
При использовании DPDK можно взаимодействовать со следующими механизмами VMware vSphere:
- Виртуальный сетевой адаптер VMXNET3
- Коммутаторы vSwitch и Virtual Distributed Switch
- Прямой проброс устройств через VMware vSphere DirectPath I/O или технологию SR-IOV
Стандартная реализация паравиртуализационного взаимодействия гостевой ОС через vSwitch и VDS выглядит так:
![](https://www.vm-guru.com/content_images/vmware-intel-dpdk-2.png)
Если речь идет о пробросе устройств напрямую в ОС, то схема выглядит следующим образом:
![](https://www.vm-guru.com/content_images/vmware-intel-dpdk-3.png)
Больше интересных подробностей можно узнать в самом документе. Таги: VMware, Intel, DPDK, SDK, Linux, ESXi, VMachines, Performance, P2V
StarWind iSCSI SAN SDK и другие пакеты разработки от StarWind.
Многие из вас знают продукты StarWind iSCSI SAN и StarWind Native SAN for Hyper-V, предназначенные для создания отказоустойчивых хранилищ виртуальных машин для платформ VMware и Hyper-V. Но немногие знают что компания выпускает целых 3 SDK, которые могут помочь разработчикам интегрировать сторонние решения с продуктами StarWind.
![](https://www.vm-guru.com/content_images/starwind-sdk.png)
Вот эти пакеты:
StarWind iSCSI SAN SDK
Это основной SDK, позволяющий использовать функциональность продуктов StarWind. С его помощью можно:
- Добавлять функции iSCSI Target в собственные приложения.
- Реализовать базовые типы устройств (ImageFile-based virtual disk, virtual DVD, RAM-based virtual disk, bridge to physical devices)
- Разрабатывать собственные SCSI-устройства с нужной функциональностью
- Соединять физические устройства с удаленными машинами (SPTI)
Более подробно о StarWind iSCSI SAN SDK можно почитать тут.
StarWind Deduplication SDK
Как понятно из названия, этот SDK позволяет использовать механизмы дедупликации StarWind. Это технология in-line дедупликации данных (то есть во время резервного копирования, а не после) на уровне блоков, которая уже надежно зарекомендовала себя в продуктах StarWind. Она позволяет добиться коэффициента дедупликации данных до 20 к 1, использует регулируемый размер блока (под разные задачи хранилищ) и позволяет использовать кэширование на SSD-накопителях и в оперативной памяти.Об этом средстве мы уже упоминали вот тут.
SDK включает в себя библиотеку кода, примеры использования и документацию по API. Более подробно о StarWind Deduplication SDK можно почитать тут.
StarWind Log-Structured File System (LSFS) SDK
LSFS - это файловая система, предназначенная для хранения нескольких файлов виртуальных устройств (в первую очередь, устройств - образов виртуальных дисков), которая оптимизирована для высокой производительности при нагрузках типа "random access" (что характерно как раз для виртуальных машин).
StarWind LSFS SDK предоставляет:
- Слой хранения файлов, которые поддерживает высокую скорость ввода-вывода при случайной записи
- Технологию снапшотов
- Технологию Thin Provisioning для экономии дискового пространства хранилищ
- Технологию дедупликации
Более подробно о StarWind LSFS SDK можно почитать тут.
Таги: StarWind, SDK, Storage, iSCSI
Как использовать возможности VMware vSphere Management Assistant (vMA).
Компания VMware предоставляет пользователям бесплатное средство VMware vSphere Management Assistant (vMA), которое позволяет централизованно управлять хост-серверами VMware ESX за счет автоматизации операций системных администраторов. По-сути, vSphere Management Assistant представляет собой "вынесенную" за пределы серверов ESX сервисную консоль (консольную ОС), которая для виртуальной инфраструктуры присутствует в единственном экземпляре, но централизованно исполняет сценарии на хостах... Таги: VMware, vSphere, Management Assistant, vMA, ESX, Обучение, VIMA, SDK, CLI
vSphere SDK (VI SDK) для Java и C#.
Коллеги, тем из вас, кто героически разрабатывает софт под платформу VMware Virtual Infrastructure / vSphere, могут быть интересны следующие материалы... Таги: VMware, vSphere, SDK, ESX
|