共用方式為


App Service登陸區域加速器的平臺自動化和 DevOps

本文提供平臺自動化和 DevOps 的設計考慮和建議,您可以在使用Azure App 服務登陸區域加速器時套用。 平臺自動化和 DevOps 提供使用基礎結構即程式碼將部署方法現代化的機會。

深入瞭解 平臺自動化和 DevOps 設計區域。

設計考量

自動化和 DevOps 是新式軟體發展的重要作法,App Service是建置和部署 Web 應用程式的強大平臺。 藉由使用自動化和 DevOps 技術,您可以簡化工作流程,並改善應用程式的品質和可靠性。

當您準備任何部署App Service時,請考慮下列事項。

  • 瞭解專案的需求和目標,讓您可以判斷最適合自動化的工具和方法。 此步驟牽涉到識別您想要自動化的工作,例如基礎結構布建、程式碼部署和測試。 它也牽涉到識別您將用來實作自動化的工具和技術。

  • 當您在 App Service 中設計自動化和 CI/CD 管線時,讓安全性成為最高優先順序。 安全性工作可能包括實作驗證和授權措施,以協助保護管線及其元件的存取。 它們也可以包括實作加密和其他安全性措施,以協助保護敏感性資料。

  • 請考慮持續整合和部署。 App Service支援各種原始檔控制系統的持續整合和部署,包括Azure Repos、GitHub 和 Bitbucket。 您可以使用這些工具將建置和部署程式自動化,以確保您的應用程式一律為最新且可用。

  • 請考慮自動化腳本。 App Service提供許多自動化腳本,包括 PowerShell、Azure CLI、Bicep 和 Azure Resource Manager (ARM) 範本。 您可以使用這些腳本來自動化一般工作,例如布建和調整資源。

  • 評估您是否需要使用自我裝載代理程式。 視您的網路設定而定,App Services 可能無法從公用網際網路取得。 如果不是,公用裝載的代理程式將無法用於部署。 規劃在這些案例中使用 自我裝載代理程式

  • 採用分支策略,協助您共同作業,同時提供彈性。 讓您的策略保持簡單、使用短期功能隔離,並允許透過手動和自動化程式碼分析的提取要求,修改回您的主要分支。

  • 請確定組建管線中的單元測試會檢查您的商務邏輯。 使用發行管線中的整合測試,檢查所有服務和資源在新版本之後是否一起運作。 使用自動化 UI 測試來檢查最重要的 UI 元素。 透過 k6 和 JMeter 等工具在預備環境中使用負載測試,檢查非功能性效能需求。

  • 監視和維護自動化和 CI/CD 管線。 此程式可以涉及實作記錄和監視工具來追蹤管線的效能和健康情況。 它也牽涉到實作定期檢閱和更新管線的程式,以確保其保持有效且有效率。

成功在App Service中實作平臺自動化和 CI/CD 管線的關鍵在於仔細規劃和設計解決方案,並考慮您要部署之應用程式的特定需求和需求。 藉由使用正確的方法,您可以建立可調整、安全且有效率的平臺,以部署和管理雲端中的應用程式。

設計建議

當您部署App Service時,請記住下列最佳做法。

  • 針對 CI/CD 管線使用 Azure DevOps。 Azure DevOps 提供完整的解決方案,可自動化應用程式的建置、測試和部署。

  • 使用管線或動作來:

    • 將整個小組套用實務的優點最大化。
    • 移除重新建立程式的大部分負擔。
    • 取得整體品質和靈活度的可預測性和深入解析。
  • 使用觸發程序和排程型管線及早且經常地進行部署。 觸發程式型管線可確保變更通過適當的驗證。 排程管線會管理變更環境中的行為。

  • 分隔基礎結構部署和應用程式部署。 核心基礎結構的變更頻率比應用程式少。 將每種部署類型視為個別的流程和管線。

  • 使用基礎結構作為 ARM 或 Bicep 範本等程式碼工具,將 Azure 資源的布建和管理自動化。 您可以使用 ARM 和 Bicep 範本將基礎結構定義為程式碼,讓您輕鬆地進行版本控制、共同作業,以及自動部署資源。

  • 將秘密和其他敏感性成品儲存在相關的秘密存放區 (,例如 Azure 金鑰保存庫或 GitHub 秘密) 。 允許動作和其他工作流程元件視需要讀取它們。

  • 藉由避免硬式編碼的組態和設定,致力於最大化部署並行。

  • 在管線早期包含弱點和秘密掃描工具,例如容器掃描器,以實作 移轉安全性

  • 設定部署策略,以實作藍色/綠色或 Canary 部署的原則,以將停機時間降到最低,並降低部署失敗的風險。 這麼做可讓您在將新版的應用程式逐步推出至小型使用者子集,再將它推出至整個使用者基底。

  • 使用App Service部署位置來實作藍色/綠色部署策略。 這麼做可讓您先在預備環境中驗證及測試部署,再將它們部署到生產環境。 此策略可協助您確保順暢且成功的部署、驗證應用程式變更,以及將停機時間降到最低。

  • 使用 Application Insights 監視和追蹤應用程式的效能和可用性。 Application Insights 提供應用程式的健全狀況和使用方式的即時深入解析。 它也可協助您快速診斷並解決所發生的問題。

  • 實作可協助通訊和共同作業的工具和程式,例如敏捷式開發方法和工具來追蹤和管理工作與相依性。 成功的平臺自動化、DevOps 和 CI/CD 程式依賴小組成員之間的有效共同作業和通訊。

使用 App Service 成功平臺自動化、DevOps 和 CI/CD 的關鍵,是設計和實作可調整、安全、妥善監視及共同作業的程式和系統。 這些建議可協助 IT 和雲端工程師確保其應用程式和 API 可提供最佳的效能和使用者體驗。