在反覆開發雲端範本期間或擁有最終範本時,您可以使範本在 Service Broker 自助服務目錄中可用,以供取用者使用。若要進一步增強使用者體驗,您可以建立自訂請求表單。自訂表單比簡單範本輸入選項更強大。
首要事項
- 確認您具有支援範本的基礎結構。如果沒有,請從教學課程:在 Cloud Assembly 中設定和測試 vSphere 基礎結構和部署開始並繼續其他教學課程。
- 確認已將部分資源集區標記為
env:dev
和env:prod
。如需詳細資訊,請參閱教學課程:在 Cloud Assembly 中使用標籤管理 vSphere 資源。 - 確保您具有以下類似的可部署雲端範本。此教學課程從下列範本開始。
formatVersion: 1 inputs: installedOS: type: string title: Operating System description: Select the operating system. enum: - centos - ubuntu placement: type: string enum: - 'env:dev' - 'env:prod' default: 'env:dev' title: Select Placement for Deployment description: Target Environment resources: Cloud_vSphere_Disk_1: type: Cloud.vSphere.Disk properties: capacityGb: 1 Cloud_vSphere_Machine_1: type: Cloud.vSphere.Machine properties: image: '${input.installedOS}' installedOS: '${input.installedOS}' flavor: small constraints: - tag: '${input.placement}' tags: - key: db value: mysql networks: - network: '${resource.Cloud_NSX_Network_1.id}' tags: - key: db value: mysql attachedDisks: - source: '${resource.Cloud_vSphere_Disk_1.id}' Cloud_NSX_Network_1: type: Cloud.NSX.Network properties: networkType: existing tags: - key: NGINX value: web
步驟 1:將輸入新增至雲端範本
除了現有的作業系統類型輸入,此程序還會更新放置輸入並新增大小輸入。在 Service Broker 中自訂請求表單時,這些是在請求表單上自訂的三個欄位。
- 在 Cloud Assembly 中,選取 ,然後建立或開啟以上提供的範本。
範例範本可用來解釋不同的選項並包含範例值。根據您的環境進行調整。
- 新增大小變數,並在 [輸入] 區段中定義大小。
- 在 Cloud_vSphere_Machine_1 區段中,將變數新增至
flavor
內容。flavor: '${input.size}'
- 在 [輸入] 區段中,新增使用者輸入名稱大小,以便使用者可以選取部署大小。這有時稱為您為雲端區域定義的 T 恤大小。
size: type: string title: Deployment size description: Select the the deployment t-shirt size. enum: - small - medium - large
- 在 Cloud_vSphere_Machine_1 區段中,將變數新增至
- 使用描述性術語而非標籤字串更新放置輸入。
這些限制標籤將與您在教學課程:在 Cloud Assembly 中使用標籤管理 vSphere 資源中新增的功能標籤相符。
- 在 [輸入] 區段中,新增名為 placement 的使用者輸入,以便使用者可以選取開發或生產作為部署放置。
此範例使用
oneOf
屬性,可讓您在提交部署程序所需字串的同時顯示自然語言標籤。例如,env:dev
和env:prod
標籤。placement: type: string oneOf: - title: Development const: 'env:dev' - title: Production const: 'env:prod' default: 'env:dev' title: Select Deployment Placement description: Target Environment
- 在 [輸入] 區段中,新增名為 placement 的使用者輸入,以便使用者可以選取開發或生產作為部署放置。
- 請檢閱完整 YAML,以確保其類似下列範例。
formatVersion: 1 inputs: installedOS: type: string title: Operating system description: Select the operating system. enum: - centos - ubuntu placement: type: string oneOf: - title: Development const: 'env:dev' - title: Production const: 'env:prod' default: 'env:dev' title: Select Deployment Placement description: Target Environment size: type: string title: Deployment size description: Select the the deployment t-shirt size. enum: - small - medium - large resources: Cloud_vSphere_Disk_1: type: Cloud.vSphere.Disk properties: capacityGb: 1 Cloud_vSphere_Machine_1: type: Cloud.vSphere.Machine properties: image: '${input.installedOS}' installedOS: '${input.installedOS}' flavor: '${input.size}' constraints: - tag: '${input.placement}' tags: - key: db value: mysql networks: - network: '${resource.Cloud_NSX_Network_1.id}' tags: - key: db value: mysql attachedDisks: - source: '${resource.Cloud_vSphere_Disk_1.id}' Cloud_NSX_Network_1: type: Cloud.NSX.Network properties: networkType: existing tags: - key: NGINX value: web
- 按一下部署,確認請求的第二頁與下列範例類似,然後可以確認部署在部署後是否位於所選開發或生產資源集區。
步驟 2:對雲端範本進行版本設定和發行
當您擁有可部署範本時,現在可使其在 Service Broker 目錄中可用,以供其他使用者部署。若要使雲端範本可探索以便將其新增至目錄,必須發行此雲端範本。在此程序中,我們將對其進行版本設定以擷取範本快照,然後發行範本。
- 選取 ,然後在設計畫布中開啟範本。
- 按一下版本設定,然後輸入說明。
- 選取發行核取方塊,然後按一下建立。
發行雲端範本不會自動將其新增至 Service Broker。發行使其可探索,以便可以將其新增至目錄。
步驟 3:將雲端範本新增至 Service Broker 目錄
您可以使用 Service Broker 目錄將雲端範本提供給組織內的其他取用者,他們無需瞭解如何建立範本。他們可透過目錄部署範本。
您必須先將範本匯入至 Service Broker,才能將範本新增為目錄項目。您只能匯入已發行的雲端範本。
- 若要從 Cloud Assembly 開啟 Service Broker,請按一下右上角的應用程式功能表。
- 按一下 Service Broker。
- 匯入雲端範本。
- 在 Service Broker 中,選取 。
- 按一下新增,然後選取 VMware Cloud Templates。
- 輸入名稱。
對於本教學課程,輸入 Cloud Assembly DevProject。
- 對於專案,請選取在 Cloud Assembly 中建立的 Development Project。
- 按一下驗證。
系統必須指示至少已找到一個項目。
- 驗證後,按一下建立並匯入。
Cloud Assembly DevProject 會作為內容來源新增至清單中。
- 使雲端範本在目錄中可用。
- 選取 。
- 按一下新增原則,然後按一下內容共用原則。
- 輸入名稱。
對於本教學課程,輸入 DevProject Policy。
- 在範圍清單中,選取 Development Project。
- 在內容共用區段中,按一下新增項目。
- 在共用項目對話方塊中,選取
Cloud Assembly DevProject
,然後按一下儲存。 - 在使用者區段中,選取您希望能夠在目錄中查看該項目的專案使用者和群組。
- 按一下建立。
- 若要確認 Development Template 已新增至目錄,請按一下 。
- 按一下 Development Template 卡上的請求。
請注意,此處提供了您在雲端範本上看到的輸入。下一步是自訂請求表單。
步驟 4:建立範本的自訂表單
此自訂表單的目標是提供使用者根據 env:dev 或 env:prod 標籤選取作業系統和放置的表單。env:dev 選項允許使用者選取小型或中型,大型不是一個選項。但是,如果使用者選取 env:prod,則沒有選取大型的選項,大小會向使用者隱藏,但會包含在請求中。
- 若要在 Service Broker 中建立自訂表單,請選取 。
- 按一下 Development Template 項目左側的垂直省略號,然後按一下自訂表單。
- 自訂輸入選項。
- 在畫布中,按一下畫布中的欄位,然後按照下表指定的方式設定內容。
畫布欄位名稱 外觀 值 限制 作業系統 標籤和類型
- 標籤 = 作業系統
值選項
- 值選項 = 常數
- 值來源 =
centos|CentOS,ubuntu|Ubuntu
此範例使用值選項,將所有小寫作業系統名稱自訂為慣用的作業系統名稱。
選取部署放置 值選項
- 值選項 = 常數
- 值來源 =
env:dev|Development,env:prod|Production
部署大小 可見度
- 值來源 = 條件值
- 如果 [選取部署放置] 為 env:dev,則設定值 = 是
預設值
- 值來源 = 條件值
- 如果 [選取部署] 為 env:prod,則設定值 = 大型
值選項
- 值選項 = 常數
- 值來源 =
small|Small,medium|Medium
請注意,值來源不包含大型。已排除大型,因為它僅適用於生產且為所需值。大型值包含在部署請求中,無需使用者起始動作。
- 若要在目錄中開啟表單,請按一下啟用。
- 按一下儲存。
- 在畫布中,按一下畫布中的欄位,然後按照下表指定的方式設定內容。
- 若要提交至少一個小型開發請求和一個生產請求來確保正確結果,請在目錄中測試表單。
使用下列範例驗證結果。
- 透過提供名稱 (在此範例中為 Test small) 並選取 [CentOS]、[開發] 和 [小型] 選項,測試小型開發請求表單。
- 若要驗證小型開發部署,請選取 ,然後按一下 Test small 部署。
- 在 [拓撲] 索引標籤上,按一下 Cloud_vSphere_Machine,然後在右窗格中找到 [自訂內容] 區段。
要檢閱的一些值包括 cpuCount = 2 和 flavor = small。
- 透過輸入名稱 (在此範例中為 Test large) 測試生產請求表單,並選取 [CentOS] 和 [生產] 選項。
請注意,設定的表單既不顯示也不要求使用者選取大小。
- 若要驗證生產部署,請選取 ,然後按一下 Test large 部署。
- 在 [拓撲] 索引標籤上,按一下 Cloud_vSphere_Machine,然後在右窗格中找到 [自訂內容] 區段。
要檢閱的一些值包括 cpuCount = 8 和 flavor = large。
- 透過提供名稱 (在此範例中為 Test small) 並選取 [CentOS]、[開發] 和 [小型] 選項,測試小型開發請求表單。
步驟 5:控制目錄中的雲端範本版本
大多數情況下,您只想使最新的雲端範本在 Service Broker 目錄中可用。下列程序支援反覆開發,即發行一個版本的範本並將其新增至目錄,但現在您改善了範本並想要將目前版本取代為更新版本。
在步驟 2 中,您已對範本進行版本設定並發行,因此您很熟悉此流程。在步驟 3 中,您已將範本新增至目錄。當您執行反覆開發和使用最新版本更新目錄時,此程序會將兩個步驟結合在一起。
您可以選擇使多個版本在目錄中可用。
- 在 Cloud Assembly 中,對您現在要使其在目錄中可用的範本進行版本設定。
- 選取 ,然後在設計畫布中開啟範本。
- 按一下版本歷程記錄。
- 找到想要新增至目錄的版本,然後按一下版本。
- 輸入說明,選取發行核取方塊,然後按一下建立。
此時,您可以選擇在目錄中保留舊版本。如果想要多個版本,請忽略下一個步驟 - 取消發行版本。
- 若要僅使一個版本的範本在目錄中可用,請檢閱版本歷程記錄清單,然後對目錄中不需要的每個版本按一下取消發行。
- 若要使用最新版本更新 Service Broker 目錄並取代所有舊版本,您必須收集新版本。
- 在 Service Broker 中,選取 。
- 按一下本教學課程中使用的 Cloud Assembly DevProject 內容來源。
- 按一下驗證。
您應會看到一則項目已找到的訊息。
- 按一下儲存並匯入。
- 確認目錄是否顯示所需版本或沒有版本。
- 在 Service Broker 中,按一下 。
- 找到目錄項目,然後按一下請求。
- 在請求表單頂端,按一下版本並確認版本。
下列螢幕擷取畫面顯示 8。