0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用vRealize Automation REST API置备虚拟机以进行软件开发

星星科技指导员 来源:ADI 作者:Moinul Islam 2022-12-23 09:54 次阅读

VMware vRealize Automation (vRA),以前称为vCloud Automation Center,是由VMware, Inc.开发的虚拟环境自动化软件,vRealize 提供了一个安全的门户,用户可以在其中请求新的IT服务并管理特定的云和IT资源。使用 vRealize REST(具象状态传输)API,应用程序开发人员可以在虚拟、物理和云环境中置备和自动化虚拟机/物理机。

本文面向希望使用 vRealize Automation REST API 以编程方式配置和管理 vRealize Automation 的软件工程师和应用程序开发人员。

本文逐步介绍如何使用 vRealize Automation REST API 置备蓝图,包括如何使用 REST API 服务和资源、创建用于身份验证和授权的 HTTP 持有者令牌,以及构造 REST API 服务调用。本文演示的步骤如下:

从蓝图部署虚拟机。

通过部署监视请求的状态。

最后,在该过程结束时返回有关已置备虚拟机的网络信息

目标受众

本文适用于应用程序开发人员、创建客户端应用程序、Web 界面、连接到 vAPI 端点以使用 VMware vSphere Automation SDK for REST 服务的 Web 服务的软件工程师,以及希望使用 vRA 管理其资源但希望资源置备适合其当前流程的任何人。

为什么选择 vRealize Automation,而不是 vCloud Director (vCD)

VMware宣布vCloud Director将不再是vCloud Suite 6.x代许可证的一部分。对于企业客户来说,vCloud Director 正处于生命周期的尽头阶段。vCloud Director 将继续通过云捆绑包中的 VMware 服务提供商计划 (VSPP) 提供。vRealize Automation 是当前使用 vCloud Director 的用户的预期继任者。vRealize Automation 可加速应用和计算服务的部署和管理。

为什么 REST API over SOAP

SOAP(简单对象访问协议)和 REST 都是 Web 服务通信协议。REST 通过单独、一致的接口运行,以访问命名资源。当您通过互联网公开公共 API 时,它最常使用。另一方面,SOAP 将应用程序逻辑的组件公开为服务而不是数据。

REST 允许更多种类的数据格式,而 SOAP 只允许 XML。

再加上 JSON(通常可以更好地处理数据并提供更快的解析),REST 通常被认为更容易使用。

REST 为浏览器客户端提供了更好的支持,因为它的输出是 JSON 格式的。

REST 提供了卓越的性能,特别是通过缓存未更改且非动态的信息。

它是雅虎、eBay、亚马逊甚至谷歌等主要服务最常使用的协议。

REST 通常速度更快,使用更少的带宽。与现有网站集成也更容易,无需重构站点基础结构。这使开发人员能够更快地工作,而不是花时间从头开始重写站点。相反,他们可以简单地添加功能。

蓝图

蓝图是包含一台或多台物理、虚拟或云计算机(包括网络配置和相应的生命周期信息)的方案的规范。在典型的软件开发过程中,用户调用 REST API 来预配蓝图。

pYYBAGOlCmuAcPoYAAK2iTAe4kA331.png?h=270&hash=47590F13D43C0B7BD1561365F9A747733FD77729&la=en&imgver=1

图1.典型的简单蓝图。

vRealize Automation: REST API

目录服务 REST API 旨在供服务目录的使用者使用;例如,想要请求目录项的最终用户将是此 API 的使用者。当最终用户请求目录项时,将调用目录使用者 REST API。

我们开发中使用的威廉希尔官方网站 适用于希望以编程方式管理 vRealize Automation 以置备用于软件开发的虚拟机的开发人员。使用 vRA REST API 请求目录项的过程可以通过以下五个步骤完成:

步骤 1:获取用于身份验证的 HTTP 持有者令牌

URL: https:///identity/api/tokens

类型:获取

类型:邮政

标头:内容类型:应用程序/JSON

步骤 2:使用蓝图名称获取蓝图 ID

URL: https:///catalog-service/api/consumer/entitledCatalogIt ems?$filter=name+eq+'name'

类型:获取

标头:内容类型:应用程序/json,
授权:
持有者<令牌>,
接受:应用程序/json

步骤 3:获取请求目录项所需的 JSON 模板

URL: https:///catalog-service/api/consumer/entitledCatalogItems/{id}/requests/template

类型:获取

标头:内容类型:应用程序/json,
授权:
持有者<令牌>,
接受:应用程序/json

步骤 4:请求目录项

URL: https:///catalog-service/api/consumer entitledCatalogItems/{id}/requests

类型:邮政

正文:从请求模板收到的 json 响应(上一步)

步骤 5:检查请求的状态

URL: https://

类型:获取

poYBAGOlCmyAIHSlAAC0mz00WhU568.png?h=270&hash=34E6A37ACFEB8D2597FEF9B18FF145830563FE71&la=en&imgver=1

图2.请求和部署蓝图的五个步骤。

REST 客户端程序

任何可以发送 HTTPS 请求的客户端应用程序都是使用 vRealize Automation API 开发 REST 应用程序的合适工具。一些常用的开源软件是:

CURL(命令行工具和库):curl.haxx.se

邮递员申请:getpostman.com

接口参考

vRealize Automation API 参考列出了所有 REST API 服务调用。它作为 Swagger 文档提供,可通过以下任一方式获得:

如果 vRealize 已安装在本地:https://{服务器}/vco/api/docs/index.html

VMware Web 资源:pubs.vmware.com/vra-62/index.jsp#com.vmware.vra.restapi.doc/index.html

网络靶场:ADI公司的真实软件

什么是网络靶场?

ADI公司网络靶场™软件为客户提供可扩展的虚拟化平台,用于网络安全培训、建模、interwetten与威廉的赔率体系 和高级分析。我们为多个客户提供解决方案,包括美国国防部、新加坡网络安全局 (CSA/SITSA) 和日本九州大学。

用户单击“开始”按钮以预配实验室或质询。

Cyber Range软件调用相应的vRA REST API。

REST API 调用相应的 vRA 蓝图。

vRealize 开始置备属于特定蓝图的所有虚拟机。

vRealize Orchestrator 在虚拟机的生命周期内运行自定义脚本(如果有)。

REST API将状态返回给Cyber Range软件。

如果状态检查成功,它将显示一个 Windows 或 Linux 图标,该图标启用超链接以打开控制台。

pYYBAGOlCm6AKW93AAIrQu2nit8471.png?h=270&hash=D7BD74727730F58A78A75C05C41954DAF140D4ED&la=en&imgver=1

图3.Cyber Range 通过 REST API 与 vRA 交互。

结论

vRealize 通过使用蓝图,在更直观、用户友好的环境中充当我们的锻炼基础设施的存储库。这有助于我们及时定制或添加更多内容,以满足用户需求。此外,vRealize Orchestrator 集成到我们的解决方案中,通过提供要应用于练习虚拟环境的常见自动化任务,利用大部分代码进行配置。面向JavaScript,它可以帮助我们管理VMware解决方案中的任何自定义脚本,并针对不同的场景进行回收。此外,使用 vRA REST API 置备蓝图、获取置备状态或销毁蓝图可显著缩短软件开发过程中的时间。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • API
    API
    +关注

    关注

    2

    文章

    1499

    浏览量

    61975
  • 虚拟机
    +关注

    关注

    1

    文章

    914

    浏览量

    28163
收藏 人收藏

    评论

    相关推荐

    什么是虚拟机虚拟机真的那么好用吗?

    在日新月异的科技世界中,虚拟化威廉希尔官方网站 如同一座桥梁,连接着现实与数字的鸿沟,为我们打开了全新的计算维度。虚拟机,这一概念,自其诞生以来,就以其独特的魅力和强大的功能,深深地影响了软件开发、系统测试和云
    的头像 发表于 07-06 08:05 463次阅读
    什么是<b class='flag-5'>虚拟机</b>?<b class='flag-5'>虚拟机</b>真的那么好用吗?

    如何创建虚拟机

    实战开发--开发环境安装(五)1、下载软件vmware和ubuntu-20.04.1-desktop-amd64.iso2、创建虚拟机完整步骤3、安装嵌入式linux所需的工具包4、安
    发表于 12-16 07:45

    虚拟仪器软件开发平台

    虚拟仪器软件开发平台:2.1  虚拟仪器软件开发平台介绍2.1.1 概述软件可完成数据分析与处理、结果表达与输出。同一硬件平台,
    发表于 06-22 12:30 0次下载

    Dalvik虚拟机进程模型分析

    Android是集操作系统、中间件和关键应用为一体的运行与移动设备上的软件包。Dzlvik虚拟机是Google自主开发的代号为Dalvik的Java虚拟机威廉希尔官方网站 。Google自主
    发表于 03-20 10:00 10次下载
    Dalvik<b class='flag-5'>虚拟机</b>进程模型分析

    如何逐步使用vRealize Automation REST API来部署蓝图

    本文适用于需要创建客户端应用程序、Web界面、Web服务(连接到vAPI端点以使用VMware vSphere Automation SDK进行REST服务)的应用程序开发人员和
    的头像 发表于 11-20 10:47 5696次阅读

    瑞萨电子推出“R-Car 虚拟化支持包”用于虚拟机软件

    在设计第三代 R-Car SoC 时,已经将虚拟机软件的使用列入考虑。 Arm CPU内核、图形内核、视频/音频 IP 以及其他功能都支持虚拟化。过去,软件开发商如果想使用这些功能,必
    的头像 发表于 08-02 14:30 3002次阅读
    瑞萨电子推出“R-Car <b class='flag-5'>虚拟</b>化支持包”用于<b class='flag-5'>虚拟机</b><b class='flag-5'>软件</b>

    VMware软件虚拟机和PLC通讯的连接方法

    现在虚拟机应该说主流的用的比较多的还是使用VMware软件虚拟机,所以我就以VMware软件虚拟机应该如何和PLC通讯做一个简单的说明!
    的头像 发表于 09-30 14:29 2.4w次阅读

    REST API是什么,如何使用REST端口

    /服务器) 模型对资源进行增删改查操作。而其中客户端和服务器是分离的,而知行之桥中的REST端口就是作为REST API中的客户端,对服务器发起操作请
    的头像 发表于 02-17 18:00 9309次阅读
    <b class='flag-5'>REST</b> <b class='flag-5'>API</b>是什么,如何使用<b class='flag-5'>REST</b>端口

    使用vRealize Automation REST API置备虚拟机进行软件开发

      本文面向希望使用 vRealize Automation REST API 编程方式配置和管理 v
    的头像 发表于 12-02 11:34 746次阅读

    CANoe与虚拟机

    行Linux系统(如Ubuntu/Debian)的虚拟机进行开发,因为它提供了与嵌入式平台相似的可访问的接口和组件。Vector提供的CANoe软件
    的头像 发表于 12-15 10:32 2060次阅读
    CANoe与<b class='flag-5'>虚拟机</b>

    虚拟机linux怎么编写程序

    虚拟机Linux上编写程序是一项非常常见且有用的任务。无论是开发一个简单的脚本、一个Web应用程序还是一个复杂的软件项目,Linux提供了强大的工具和环境来帮助你进行编程。本文将详细
    的头像 发表于 11-17 10:08 1790次阅读

    vm虚拟机linux系统怎么编程

    不同的操作系统之间切换,并在Linux系统中进行编程和开发。 以下是使用虚拟机在Linux系统中进行编程的详细步骤: 1.安装虚拟机
    的头像 发表于 11-17 10:10 1945次阅读

    虚拟机如何运行c程序

    虚拟机(Virtual Machine,VM)是一种模拟了物理计算机的软件,可以在计算机上创建虚拟的硬件平台,使得用户可以在其中运行操作系统和应用程序。在虚拟机中运行C程序需要
    的头像 发表于 11-17 10:14 4910次阅读

    怎么安装linux虚拟机

    在计算机领域,虚拟机是一种软件程序,它允许在主操作系统上运行多个虚拟操作系统。Linux虚拟机开发、测试和学习等环境中得到广泛应用。本文将
    的头像 发表于 11-23 10:50 1095次阅读

    什么是虚拟机?什么是虚拟化?

    在日新月异的科技世界中,虚拟化威廉希尔官方网站 如同一座桥梁,连接着现实与数字的鸿沟,为我们打开了全新的计算维度。虚拟机,这一概念,自其诞生以来,就以其独特的魅力和强大的功能,深深地影响了软件开发、系统测试和云计算等多个领域。即使目前你还不了
    的头像 发表于 09-04 14:55 875次阅读