應用程式開發和部署
檢查應用程式開發的模式和做法、設定 Azure Pipelines,以及實作網站可靠性工程 (SRE) 最佳做法。 SRE 是應用程式開發和部署、變更管理、監視和緊急回應的軟體工程方法。
規劃、訓練和證明
使用下列檢查清單和應用程式開發資源來規劃應用程式開發和部署。 您應該能夠回答下列問題:
- 您是否已備妥應用程式開發環境和設定工作流程?
- 您要如何建構專案資料夾以支援 Kubernetes 應用程式開發?
- 您是否已識別應用程式的狀態、組態和儲存體需求?
SRE 檢查清單
準備您的開發環境。 使用工具來設定環境,以建立容器並設定您的開發工作流程。
如需詳細資訊,請參閱
容器化您的應用程式。 熟悉端對端 Kubernetes 開發體驗,包括應用程式 Scaffolding、內部迴圈工作流程、應用程式管理架構、CI/CD 管線、記錄匯總、監視和應用程式計量。
若要深入了解,請參閱:
檢閱常見的 Kubernetes 案例。 Kubernetes 通常被視為提供微服務的平臺,但它正成為更廣泛的平臺。 如需常見 Kubernetes 案例的詳細資訊,例如批次分析和工作流程,請參閱 一般 Kubernetes 案例概觀(影片)。
為 Kubernetes 準備您的應用程式。 準備 Kubernetes 的應用程式檔案系統配置,並組織每週或每日發行。 瞭解 Kubernetes 部署程式如何啟用可靠、零停機的升級。
如需詳細資訊,請參閱
管理應用程式儲存體。 瞭解 Pod 的效能需求和存取方法,以便提供適當的儲存體選項。 規劃備份及測試連結儲存體的還原程式的方式。
若要深入了解,請參閱:
管理應用程式秘密。 使用金鑰保存庫來儲存和擷取金鑰和認證。 請勿將認證儲存在應用程式程式碼中。
如需詳細資訊,請參閱
部署至生產環境並套用最佳做法
當您準備應用程式以供生產環境使用時,請使用下列檢查清單。 您應該能夠回答下列問題:
- 您可以監視應用程式的所有層面嗎?
- 您是否已定義應用程式的資源需求? 調整需求如何?
- 您可以部署新版本的應用程式,而不會影響生產系統嗎?
SRE 最佳做法檢查清單
設定整備程度和活躍度健康情況檢查。 Kubernetes 會使用整備和即時性檢查,以瞭解應用程式何時準備好接收流量,以及何時需要重新開機。 當您未定義檢查時,Kubernetes 無法判斷您的應用程式是否正在執行。 如需詳細資訊,請參閱 即時性和整備檢查 。
設定記錄、應用程式監視和警示。 監視您的容器非常重要,特別是當您大規模執行生產叢集與多個應用程式時。 容器化應用程式的建議記錄方法是寫入標準輸出 (
stdout
) 和標準錯誤 (stderr
) 資料流程。如需詳細資訊,請參閱
定義應用程式的資源需求。 管理 Kubernetes 叢集中計算資源的主要方法是使用 Pod 要求和限制。 這些要求和限制會告知 Kubernetes 排程器要指派給 Pod 的計算資源。 如需詳細資訊,請參閱 定義 Pod 資源要求和限制 。
設定應用程式調整需求。 Kubernetes 支援水準 Pod 自動調整,以根據 CPU 使用率或其他選取計量來調整部署中的 Pod 數目。 若要使用自動調整程式,Pod 中的所有容器都必須定義 CPU 要求和限制。 若要深入瞭解,請參閱 設定水準 Pod 自動調整 。
使用自動化管線和 DevOps 部署應用程式。 程式碼認可至生產部署之間所有步驟的完整自動化,可讓小組專注于建置程式碼,並在手動步驟中移除額外負荷和潛在的人為錯誤。 部署新程式碼較快速且風險較低,可協助小組更靈活、更有生產力,且更有信心執行程式碼。
若要深入了解,請參閱:
優化和調整
現在應用程式已投入生產環境,請使用應用程式部署檢查清單來優化您的工作流程,並準備應用程式和小組來調整規模。 您應該能夠回答下列問題:
- 跨領域應用程式是否從您的應用程式中抽象化?
- 您是否能夠維護系統和應用程式的可靠性,同時仍會反覆運算新功能和版本?
應用程式部署檢查清單
部署 API 閘道。 API 閘道可作為微服務的進入點、將用戶端與微服務分離、新增另一層安全性,並藉由移除處理跨領域考慮的負擔來降低微服務的複雜性。 如需詳細資訊,請參閱 搭配部署在 Azure Kubernetes Service 中的微服務使用 Azure API 管理。
部署服務網格。 服務網格可為工作負載提供功能,例如流量管理、復原、原則、安全性、強身分識別和可觀察性。 您的應用程式會與這些作業功能分離,而服務網格會將它們移出應用層,並向下移至基礎結構層。
如需詳細資訊,請參閱
實作 SRE 做法。 SRE 是一種經過證實的方法,可維護重要的系統和應用程式可靠性,並以市集需求的速度反覆運算。
若要深入了解,請參閱: