使用 DevTest Labs 的 Azure Pipelines 架構

重要

搭配 DevTest Labs 的 CI/CD 是 使用 Azure DevOps 設計 CI/CD 管線的變體。 本文著重于部署至 DevTest Labs 預備環境的詳細資料。

DevTest Labs 可讓您使用可重複使用的範本和成品來布建 Windows 和 Linux 環境。 這些環境對於開發人員很有用,但也可以在 CI/CD 管線中用於布建預備環境。 請參閱Azure DevTest Labs案例,以查看 DevTest 實驗室是否適合您的案例。

本文說明使用 Azure Pipelines 使用持續整合 (CI) 和持續部署 (CD) 做法部署應用程式變更的高階 DevOps 工作流程。 DevTest Labs 環境用於預備環境。

架構

使用 Azure Pipelines 針對預備環境使用Azure DevTest Labs的 CI/CD 管線架構圖表。

下載這個架構的 Visio 檔案

資料流程

本節假設您已閱讀Azure Pipelines 基準架構,並只著重于將工作負載部署至暫存Azure DevTest Labs的詳細資料。

  1. PR 管線 - 與基準相同

  2. CI 管線 - 與基準相同

  3. CD 管線觸發程式 - 與基準相同

  4. CD 建立 DevTest Labs 預備環境 - 此步驟會建立作為預備環境的 DevTest Labs 環境。 此步驟包括:

    • 在預備訂用帳戶中建立Azure DevTest Labs環境。
    • 將 ARM 範本部署至 DevTest Labs 環境。 虛擬機器映射可以儲存在共用映射庫中。
    • 執行任何部署後步驟,以正確設定預備環境。
  5. CD 發行至暫存 - 與基準相同,但有一個例外狀況。 預備環境是 DevTest Labs 環境。

  6. CD 發行至生產環境 - 與基準相同

  7. 監測 - 與基準相同

單元

本節假設您已閱讀Azure Pipelines 基準架構元件一節,並只著重于將工作負載部署至預備環境Azure DevTest Labs的詳細資料。

  • Azure DevTest Labs是一項服務,可用來建立、使用和管理用於開發、測試和部署的環境。 此服務可讓您以符合成本效益的方式輕鬆地部署預先設定的環境。

替代方案

  • 除了在 CD 程式中建立 DevTest Labs 預備環境,您也可以在管線外部預先建立環境。 這會有加速管線的正面優點。 這個替代方案會停止在管線完成之後終止環境的能力,增加成本。

  • 在 VM 映射產生器與共用映射庫無法運作的情況下,您可以設定映射處理站,從 CI/CD 管線建置 VM 映射,並將其自動散發至任何註冊到這些映射的Azure DevTest Labs。 如需詳細資訊,請參閱 從 Azure DevOps 執行映射處理站

  • 除了預備環境之外,也可以建立並部署至 作為 CD 管線的一部分。 這些環境可支援效能測試和使用者接受度測試等活動。

考量

本節假設您已閱讀Azure Pipelines 基準架構中的考慮一節,並只著重于將工作負載部署至暫存Azure DevTest Labs的詳細資料。

成本最佳化

卓越營運

  • 請考慮在預備和生產環境之外實作環境,以啟用復原、手動接受度測試和效能測試等專案。 使用暫存作為復原環境的行為,可讓您無法將該環境用於其他用途。

下一步