Новости Статьи VMware Veeam StarWind Microsoft ИТ-ГРАД Citrix Symantec 5nine События Релизы Видео Контакты Авторы RSS
Виртуализация и виртуальные машины

Виртуализация vSphere, Hyper-V, XenServer и Red Hat

Более 4570 заметок о виртуализации и виртуальных машинах VMware, Microsoft, Citrix, Red Hat

VM Guru / News / REST API в продуктах VMware Fusion и VMware Workstation - как это работает.

REST API в продуктах VMware Fusion и VMware Workstation - как это работает.

18/07/2018

Реклама:



Пост:

Еще в настольной платформе виртуализации VMware Fusion 10 для Mac OS, вышедшей осенью прошлого года, появился программный интерфейс REST API, который позволяет управлять как самой платформой, так и виртуальными машинами, исполняемыми на ней. Совсем недавно, когда вышла версия VMware Workstation 2018 Tech Preview, в которой также появился новый REST API полностью идентичный таковому в VMware Fusion. Однако для Workstation он пока работает только для хостовой ОС Windows.

REST API позволяет управлять различными функциями виртуальных машин, например их inventory, питанием, клонированием, сетевым взаимодействием, получением IP и MAC-адресов, а также другими аспектами их функционирования. Все это позволяет проводить автоматизированные тесты в виртуальных машинах, когда их требуется клонировать и настраивать, а затем уничтожать по окончании теста. Эти функции пока доступны только для Windows.

Давайте посмотрим, как это работает. Сначала сконфигурируем доступ к REST API, задав логин и пароль для авторизации:

  • Чтобы настроить Credentials к REST API на машине с Workstation, нужно перейти в папку C:\Program Files (x86)\VMware\VMware Workstation и запустить там:
    vmrest.exe --config
  • На VMware Fusion нужно пойти в /Applications/VMware Fusion.app/Contents/Public и запустить там:
    ./vmrest -C

На Workstation вас попросят задать пользователя и пароль:

C:\Program Files (x86)\VMware\VMware Workstation>vmrest --config
VMware Workstation REST API
Copyright (C) 2018 VMware Inc.
All Rights Reserved

vmrest 1.1.0 build-8888902
Username:alex
New password:
Retype new password:
Processing...
Credential updated successfully

На Fusion это будет выглядеть вот так:

MacBook-Pro-alex:Public alex$ ./vmrest -C
VMware Fusion REST API
Copyright (C) 2015-2017 VMware Inc.
All Rights Reserved

vmrest 1.0.0 build 6754183
Username:alex
New password:
Retype new password:
Processing...
Credential updated successfully

После этого можно запускать REST API:

  • На Fusion это делается командой ./vmrest
  • На Workstation надо просто запустить vmrest.exe

После этого у вас на рабочей станции запустится веб-сервер, через который вы сможете получить доступ к REST API как через браузер, так и через сторонние REST-клиенты или системы, которые вы хотите интегрировать с Workstation или Fusion. На Workstation для доступа к веб-серверу на дефолтном порту используйте адрес:

http:\\127.0.0.1:8697

На Fusion ссылка аналогичная (можно писать 127.0.0.1 вместо localhost):

http:\\localhost:8697

Далее для обеих платформ процедура выглядит абсолютно одинаково, поэтому дальше мы не будем уточнять, где это исполняется.

Первое что вы увидите - это REST API Explorer, запущенный в интерфейсе Swagger, в котором показаны доступные для использования функции по работе с хостом и виртуальными машинами:

Тут вам не понадобится использовать Curl, PowerShell, Postman или другие инструменты, чтобы протестировать основные функции API.

Здесь все просто:

  • Host Networks Management - здесь можно посмотреть все виртуальные сети на хосте, а добавить, изменить или удалить форвардинг портов.
  • Maintenance - можно задать режим работы демона (можно его выключить для перехода в режим обслуживания).
  • VM Management - управление виртуальными машинами (получение их списка и информации о ВМ, задание их настроек, клонирование ВМ и удаление).
  • VM Network Adapters Management - управление сетевыми адаптерами ВМ (получение списка сетевых адаптеров и IP-адресов ВМ, а также создание, обновление или удаление сетевых адаптеров ВМ).
  • VM Power Management - получение состояния ВМ и управление ее питанием.
  • VM Shared Folders Management - монтирование, размонтирование или изменение конфигурации общих папок на хосте.

После запуска веб-интерфейса, нужно сначала авторизоваться, нажав Authorize в правом верхнем углу и введя логин и пароль, которые мы задали в самом начале:

Далее можно нажать на Show/Hide для некоторых пунктов и посмотреть доступные операции:

Обратите внимание на цветовое кодирование, оно поможет вам понимать, чем вы занимаетесь при тестировании API:

  • Методы GET будут подсвечены синим цветом - это абсолютно безопасно, так как они только читают данные.
  • Желтым цветом будут подсвечены методы PUT - это изменение каких-либо настроек.
  • Зеленые методы POST - это создание новых сущностей (например, сетевых адаптеров) или выполнение операций (например, клонирование ВМ).
  • Красные методы DELETE - удаление сущностей.

Каждую операцию можно раскрыть подробнее, нажав на соответствующую строчку. Например, раскроем GET /vms для VM Management:

Здесь объясняется модель данных JSON-массива, в которой ожидается прием параметров.

Если посмотреть ниже, то мы найдем кнопку TRY IT OUT!, по нажатию на которую мы получим ответ в блоке Responce Body, где будет ID виртуальных машин и путь к ним в хостовой системе:

В данном случае код ответа (Responce Code) был 200, но бывают и другие коды ответа, обратите на них внимание:

Давайте попробуем уже метод не чтения, а метод PUT (обновление настроек). Например, для PUT /vms/{id}. Здесь мы видим, что можно поменять число процессоров ВМ и объем выделенной памяти:

Если вы кликните справа на Example Value, то значение примера подставится в окошко parameters и вам останется лишь поменять числовые значения. После того, как вы измените параметры и нажмете try it out, в поле Responce body должна отобразиться новая конфигурация ВМ.

Также можно, например, создать сетевой адаптер для виртуальной машины с помощью метода POST:

Ну и затем удалить его с помощью метода DELETE (обратите внимание, что Responce code в этом случае будет 204, а не 200):

Кстати, имейте в виду, что удаление ВМ в данном случае произойдет без подтверждения, так что будьте осторожны.

Ну а дальше вы можете получить доступ к REST API Workstation или Fusion через любой REST-клиент, например, через PowerShell или Postman, но самый простой метод - это использовать curl. Как это сделать, вы можете прочитать вот в этой статье Вильяма Лама.

Реклама







Зал Славы Рекламодателя
Ближайшие события в области виртуализации:

11/09/2018:  Облака 2018: настало время PaaS
13/09/2018:  IDC Security Roadshow 2018
14/09/2018:  Big Data Conference 2018

Быстрый переход:
VMware IT-Grad 5nine Citrix Veeam StarWind Hardware VeeamON Nutanix vSphere RVTools Enterprise Security Code Offtopic Cisco vGate Microsoft Cloud SDRS Parallels IaaS HP VMFS PowerCLI VM Guru Oracle Red Hat Azure KVM VeeamOn 1cloud Docker Storage NVIDIA Partnership Dell Virtual SAN Virtualization VMTurbo vRealize VirtualBox Symantec Gartner Softline EMC Login VSI Xen Teradici Amazon NetApp VDI Linux Hyper-V IBM Google VSI Security Windows vCenter VMachines Webinar View VKernel Events Windows 7 Caravan Apple TPS Hyper9 Nicira Blogs Sun VMC Xtravirt Novell IntelVT Сравнение VirtualIron XenServer CitrixXen ESXi ESX ThinApp Books P2V Workspace Horizon Tools Manager UEM vROPs Labs VVols Workstation vSAN SDDC Virtual Appliance Update Backup vCloud DRS App Volumes OpenStack Forum PowerShell SRM HA LSFS Lifecycle Client vCSA Datacenter Workspace ONE Visio NSX Intel Agent Networking esxtop Book Photon VMworld Fusion Cloud Computing SSD Comparison Blast Performance Nested AWS Log Insight XenDesktop VSA vNetwork SSO Host Client VMDK VTL iSCSI Whitepaper Appliance VUM V2V Cache Support Обучение Web Client Mobile Automation Replication Desktop Fault Tolerance DR Vanguard SaaS Connector Event Free SQL VSAN Sponsorship Finance FT Converter XenApp Snapshots VCP vGPU Auto Deploy SMB RDM Mirage XenClient MP Video Operations SC VMM Certification VDP Partners PCoIP RHEV vMA Award Network USB Licensing Logs Server Demo vCHS Calculator Бесплатно vExpert Beta SAN Exchange MAP ONE DaaS Monitoring VPLEX UCS SDK Poster VSPP Receiver vMotion VDI-in-a-Box Deduplication Reporter vShield ACE Go nworks iPad XCP Data Recovery Sizing Pricing VMotion Snapshot FlexPod VMsafe Enteprise Monitor vStorage Essentials Live Migration SCVMM TCO Studio AMD-V VirtualCenter NFS ThinPrint Bug Troubleshooting Upgrade Director API Android Graphics Migration Diagram Air CLI Plugin DPM Memory SIOC Flex Mac Open Source SSH VAAI Chargeback Heartbeat MSCS Ports SVMotion Storage DRS Bugs Composer
Интересные плакаты:

Постер VMware vSphere PowerCLI 6.3:

Постер VMware ESXi 5.1:

Постер VMware Hands-on Labs 2015:

Постер VMware Platform Services Controller 6.0:

Постер VMware vCloud Networking:

Постер VMware NSX (референсный):

Постер VMware vCloud SDK:

Постер VMware vCloud Suite:

Постер VMware vCenter Server Appliance:

Порты и соединения VMware vSphere 6:

Порты и соединения VMware Horizon 7:

Порты и соединения VMware NSX:

Управление памятью в VMware vSphere 5:

Как работает кластер VMware High Availability:

Постер VMware vSphere 5.5 ESXTOP (обзорный):

Постер Veeam Backup & Replication v8 for VMware:

Постер Microsoft Windows Server 2012 Hyper-V R2:

 

Популярные статьи:
Как установить VMware ESXi. Инструкция по установке сервера ESXi 4 из состава vSphere.

Включение поддержки технологии Intel VT на ноутбуках Sony VAIO, Toshiba, Lenovo и других.

Как настроить запуск виртуальных машин VMware Workstation и Server при старте Windows

Как работают виртуальные сети VLAN на хостах VMware ESX / ESXi.

Что такое и как работает виртуальная машина Windows XP Mode в Windows 7.

Типы виртуальных дисков vmdk виртуальных машин на VMware vSphere / ESX 4.

Инфраструктура виртуальных десктопов VMware View 3 (VDI)

Сравнение Oracle VirtualBox и VMware Workstation.

Бесплатные утилиты для виртуальных машин на базе VMware ESX / ESXi.

Проектирование инфраструктуры виртуализации VMware vSphere 4.

Как использовать возможности VMware vSphere Management Assistant (vMA).

Как поднять программный iSCSI Target на Windows 2003 Server для ESX

Бесплатные программы для VMware ESX / ESXi в среде Virtual Infrastructure / vSphere (часть 2).

Новые возможности VMware vSphere 5.0 - официально.

Отличия VMware ESXi 4 free (бесплатного), ESXi 4 и ESX 4 в составе VMware vSphere.

Все ресурсы о виртуализации:
Интервью:

Alessandro Perilli
virtualization.info
Основатель

Ратмир Тимашев
Veeam Software
Президент


Купить:

VMware vSphere 6.5


Veeam Backup 9.5


Полезные ресурсы:


Видео компании VMware

Видео про Citrix Xen

Видео о виртуализации Microsoft

Утилиты для виртуальных машин Microsoft.

Книги на английском языке

Блоги на английском языке

Блоги на русском языке

Агрегация статей в твиттере VMC:


Copyright VM Guru 2006 - 2018, Александр Самойленко. Правила перепечатки материалов.