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 來預配藍圖。
圖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://
類型:獲取
圖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公司網絡靶場?軟件為客戶提供可擴展的虛擬化平臺,用于網絡安全培訓、建模、模擬和高級分析。我們為多個客戶提供解決方案,包括美國國防部、新加坡網絡安全局 (CSA/SITSA) 和日本九州大學。
用戶單擊“開始”按鈕以預配實驗室或質詢。
Cyber Range軟件調用相應的vRA REST API。
REST API 調用相應的 vRA 藍圖。
vRealize 開始置備屬于特定藍圖的所有虛擬機。
vRealize Orchestrator 在虛擬機的生命周期內運行自定義腳本(如果有)。
REST API將狀態返回給Cyber Range軟件。
如果狀態檢查成功,它將顯示一個 Windows 或 Linux 圖標,該圖標啟用超鏈接以打開控制臺。
圖3.Cyber Range 通過 REST API 與 vRA 交互。
結論
vRealize 通過使用藍圖,在更直觀、用戶友好的環境中充當我們的鍛煉基礎設施的存儲庫。這有助于我們及時定制或添加更多內容,以滿足用戶需求。此外,vRealize Orchestrator 集成到我們的解決方案中,通過提供要應用于練習虛擬環境的常見自動化任務,利用大部分代碼進行配置。面向JavaScript,它可以幫助我們管理VMware解決方案中的任何自定義腳本,并針對不同的場景進行回收。此外,使用 vRA REST API 置備藍圖、獲取置備狀態或銷毀藍圖可顯著縮短軟件開發過程中的時間。
審核編輯:郭婷
-
API
+關注
關注
2文章
1499瀏覽量
61964 -
虛擬機
+關注
關注
1文章
914瀏覽量
28160
發布評論請先 登錄
相關推薦
評論