使用 持續交付 流程快速安全地為生產提供新價值。 您可以經常進行小的變更,以降低出現問題的風險。
其他因素會影響「生產環境的部署痛點」,包括您採用多個傳遞/部署環境。 多環境方法可讓您以更快的速度和頻率建置、測試和發行程式碼,讓您的部署盡可能簡單。 您可以消除手動額外負荷和手動發行的風險,而是使用針對不同環境的多階段程序來自動化開發。
常見的多環境架構包含四個層:
- 發展
- Test
- Staging
- 生產
在此架構中,您的產品會依序從開發 (您開發軟體變更的環境) 過渡到生產環境 (使用者直接與之互動的環境)。 您也可以引進使用者驗收測試 (UAT) 環境來驗證端對端商務流程。
| 環境 | Description |
|---|---|
| 發展 | 您的開發環境 (dev) 是開發軟體變更的地方。 |
| Test | 您的測試環境允許人工測試人員或自動化測試來嘗試新的和更新的程式碼。 開發人員必須先透過開發環境中的單元測試來接受新的程式碼和組態,才能允許這些項目進入一或多個測試環境。 |
| Staging | 預備是您在部署至生產環境之前立即進行最終測試的地方。 每個預備環境都應盡可能準確地反映實際的生產環境。 |
| UAT | 使用者驗收測試 (UAT) 可讓您的終端使用者或用戶端執行測試,以驗證/接受軟體系統,然後再將軟體應用程式移至您的生產環境。 |
| 生產 | 您的生產環境,有時稱為線上環境,是使用者直接與之互動的環境。 |
設計考量
將下列考慮套用至 Azure 登陸區域和 Azure 工作負載開發:
- 測試環境很重要,因為它們允許平台開發人員在部署到生產環境之前測試更改,從而降低與生產環境中交付相關的風險。
- 讓您的環境盡可能相似,可讓您在測試的第一階段輕鬆找到與環境相關的錯誤,從而提高開發和測試速度和可靠性。
- 如果環境的組態有差異,就會發生「組態漂移」,這可能會導致資料遺失、部署速度變慢和失敗。
- 您可以採用基礎架構即程式碼 (IaC) 來加速部署、改善環境一致性,並減少環境之間的「組態漂移」。
- 請考慮採用 Canary 或 Blue-Green Deployments 等方法,讓新功能僅供生產環境中的一組有限測試使用者使用,並協助縮短發佈至生產環境的時間。
- 使用測試結果檢查來控制程式碼從開發到生產的轉換。 您可以將這些控制項自動化,讓失敗的測試防止變更自動部署至下一個環境。
- 讓指定的使用者在將程式碼部署至生產環境之前檢閱提取要求。 請考慮使用具有 分支策略 的儲存庫來管理檢閱程序。
- 允許所有開發人員存取所有環境,避免孤島。
Workloads
若要瞭解如何管理工作負載的環境,請參閱企業 規模常見問題集。
Azure 登陸區域
當客戶想要測試新 Azure 原則指派、Azure RBAC 角色指派、Microsoft Entra 群組成員資格、Azure 資源建立等等的效果和結果時,通常會採用多個環境進行 Azure 登陸區域部署。
企業規模的測試方法 描述兩種不同的採用方法:
- 在 Canary 和生產環境中複製管理群組階層
- 沙箱訂閱
無論您採用哪種方法,您都應該始終:
- 採用至少一個環境進行測試。
- 將個別的服務主體用於測試和生產目的,以保護您的環境。
- 在將任何變更部署至特定環境之前,實作自動化檢查和核准變更,以驗證和核准變更