除了建立雲端範本時所使用的 Cloud Assembly 雲端範本資源之外,您也可以自行建立自訂資源。

自訂資源是使用自訂資源中定義的生命週期動作透過 vRealize Automation Cloud 管理的 vRealize Orchestrator 或擴充性動作物件。觸發與特定生命週期動作相關聯的作業時,雲端範本服務會自動呼叫相應的 vRealize Orchestrator 工作流程或擴充性動作。此外,還可以透過選取可用作第 2 天作業的 vRealize Orchestrator 工作流程或擴充性動作來延伸資源類型的功能。

此使用案例使用 vRealize Orchestrator 程式庫中提供的內建工作流程。其中包括示範如何執行該程序的規範性值或字串。可以根據您的環境需求修改這些內容。

出於參考目的,此使用案例使用名為 DevOpsTesting 的專案。您可以將此範例專案取代為環境中的任何專案。

必要條件

  • 確認您已設定 vRealize Orchestrator 整合。請參閱在 Cloud Assembly 中設定 vRealize Orchestrator 整合
  • 確認您要用於建立、更新、銷毀和第 2 天動作的工作流程存在於 vRealize Orchestrator 中,並在其中成功執行。
  • vRealize Orchestrator 中,找到工作流程所使用的資源類型。此自訂資源中包括的工作流程必須全部使用相同的資源類型。在此使用案例中,資源類型為 AD:User。如需有關資源類型驗證的詳細資訊,請參閱Cloud Assembly 雲端範本的自訂資源類型
  • 透過使用 vRealize Orchestrator 整合中內建的 Active Directory 工作流程來設定 Active Directory 伺服器。
  • 確認您瞭解如何設定和部署機器雲端範本。

程序

  1. 建立 Active Directory 自訂資源以在群組中新增使用者。
    此步驟會將自訂資源作為資源類型新增至雲端範本設計畫布。
    1. Cloud Assembly 中,選取設計 > 自訂資源,然後按一下新增自訂資源
    2. 提供下列值。

      請記住,除了工作流程名稱之外,這些都是範例值。

      設定 範例值
      名稱 AD user

      這是顯示在雲端範本資源類型調色盤中的名稱。

      資源類型 Custom.ADUser

      資源類型必須以 Custom. 開頭,並且每個資源類型必須是唯一的。

      雖然文字方塊中未驗證是否包含 Custom.,但是如果您移除該字串,則會自動將其新增。

      此資源類型會新增至資源類型調色盤,以便您可以在雲端範本中使用。

    3. 若要在雲端範本資源類型清單中啟用此資源類型,請確認啟動選項是否已開啟。
    4. 選取範圍設定,使資源類型可供任何專案使用。
    5. 依據下,確認選取 vRO 詳細目錄作為生命週期動作提供者。
    6. 選取定義資源和第 2 天動作的工作流程。
      備註: 選取的第 2 天工作流程的輸入參數類型必須與外部類型相同。外部類型輸入不會顯示在使用者請求的第 2 天自訂表單中,因為它會自動繫結至自訂資源。
      設定 範例值
      生命週期動作 - 建立 選取在組織單位中建立需使用密碼的使用者工作流程。

      如果您有多個 vRealize Orchestrator 整合,請在您用來執行這些自訂資源的整合執行個體上選取工作流程。

      選取工作流程後,[外部類型] 下拉式功能表將變為可用,並且會自動設定為 AD:User

      備註: 如果共用外部來源類型,則只能使用一次此類型,並且每個專案只能使用一次。在此使用案例中,您將為所有專案提供相同的自訂資源。這表示您不能針對所有專案的任何其他資源類型使用 AD:User。如果您有其他工作流程需要 AD:User 類型,則必須為每個專案建立單獨的自訂資源。
      生命週期動作 - 銷毀 選取銷毀使用者工作流程。
      其他動作 選取變更使用者密碼工作流程。

      新增動作視窗中,新增動作的名稱,例如 password_change,然後按一下新增

      若要修改使用者在請求動作時所回應的動作請求表單,請按一下 請求參數資料行中的圖示。
      備註: 對於其他動作工作流程,請確認工作流程的輸入參數類型是否與外部類型相同。

      在此範例中,未適當套用更新工作流程。更新工作流程 (對已佈建的自訂資源進行變更) 的常見範例是縮小或擴充部署。

    7. 檢閱架構金鑰並在內容索引標籤中輸入值,以便您瞭解工作流程輸入,從而在雲端範本中設定輸入。
      架構會列出工作流程中定義的必要輸入值和可選輸入值。雲端範本 YAML 中包含所需的輸入值。

      在「建立使用者」工作流程中,accountNamedisplayNameouContainer 是必要的輸入值。其他架構內容不是必要的。還可以使用架構來確定要建立與其他欄位值、工作流程或動作的繫結的位置。此使用案例中不包括繫結。

    8. 若要完成建立自訂資源,請按一下建立
  2. 建立雲端範本,以在部署時將使用者新增至機器。
    1. 選取設計 > 雲端範本,然後按一下新增自 > 空白畫布
    2. 將雲端範本命名為 Machine with an AD user
    3. 選取 DevOpsTesting 專案,然後按一下建立
    4. 新增並設定 vSphere 機器。
    5. 從雲端範本設計頁面左側的自訂資源清單中,將 AD user 資源類型拖曳至畫布。
      備註: 可以透過以下方法選取自訂資源:向下捲動並從左窗格中選取該資源,或在 搜尋資源類型文字方塊中進行搜尋。如果未顯示自訂資源,請按一下 搜尋資源類型文字方塊旁的 [重新整理] 按鈕。
    6. 在右側編輯 YAML 程式碼,以新增必要的輸入值和密碼。
      在程式碼中新增 inputs 區段,以便使用者能夠提供所要新增的使用者名稱。在下列範例中,其中一些值是範例資料。您的值可能會有所不同。
      inputs:
        accountName:
          type: string
          title: Account name
          encrypted: true   
        displayName:
          type: string
          title: Display name   
        password:
          type: string
          title: Password
          encrypted: true 
        confirmPassword:
          type: string
          title: Password
          encrypted: true   
        ouContainer: 
          type: object
          title: AD OU container
          $data: 'vro/data/inventory/AD:OrganizationalUnit'
          properties:
              id:
                  type: string
              type:
                  type: string    
      
    7. resources 區段中,新增 ${input.input-name} 代碼以提示使用者選取。
      resources:
        Custom_ADUser_1:
          type: Custom.ADUser
          properties:
              accountName: '${input.accountName}'
              displayName: '${input.displayName}'
              ouContainer: '${input.ouContainer}'
              password: '${input.password}'
              confirmPassword: '${input.confirmPassword}'       
              
  3. 部署雲端範本。
    1. 在雲端範本設計工具頁面中,按一下部署
    2. 輸入部署名稱 AD User Scott
    3. 選取雲端範本版本,然後按下一步
    4. 完成部署輸入。
    5. 按一下部署
  4. 部署頁面上監控佈建請求,以確保使用者新增到 Active Directory 且部署成功。

下一步

當經過測試的雲端範本正常運作時,您可以開始在其他雲端範本中使用 AD user 自訂資源。