本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
REL11-BP07 建構您的產品以滿足可用性目標和運作時間服務層級協議 (SLAs)
建構您的產品,以符合可用性目標和運作時間服務層級協議 (SLAs)。如果您發佈或私下同意可用性目標或運作時間 SLAs,請確認您的架構和操作程序是設計來支援這些目標。
預期結果:每個應用程式都有一個已定義的可用性和SLA效能指標目標,可以監控和維護這些指標,以滿足業務結果。
常見的反模式:
-
設計和部署工作負載,而不設定任何 SLAs。
-
SLA 指標設定過高,沒有理由或業務需求。
-
在SLAs未考量相依性及其基礎 的情況下進行設定SLA。
-
建立應用程式設計而未考慮彈性的共同責任模型。
建立此最佳實務的優勢:根據關鍵彈性目標設計應用程式,可協助您達成業務目標和客戶期望。這些目標可協助推動應用程式設計程序,評估不同的技術和考慮各種權衡。
未建立此最佳實務時的曝險等級:中
實作指引
應用程式設計必須將多元的要求納入考慮,這些要求是從業務、營運和財務目標衍生而來。在營運要求內,工作負載必須有特定彈性指標目標,才能適當地監控和支援。彈性指標不應該在部署工作負載之後設定或衍生。它們應該在設計階段期間定義,協助引導各種決策和權衡。
-
每個工作負載都應該有自己的一組彈性指標。這些指標可能與其他業務應用程式不同。
-
降低相依性對可用性有正面影響。每個工作負載都應考慮其相依性及其 SLAs。一般而言,選取可用性目標等於或大於工作負載目標的相依性。
-
請考慮鬆散耦合設計,讓您的工作負載在可行時不論是否有相依性受損,都可以正確操作。
-
減少控制平面相依性,特別是復原或降級期間。評估針對任務關鍵性工作負載靜態穩定的設計。使用資源節省來增加工作負載中這些相依性的可用性。
-
透過SLAs減少平均偵測時間 (MTTD) 和平均修復時間 (),可觀測性和儀表對於實現至關重要MTTR。
-
較不頻繁的故障 (較長的 )MTBF、較短的故障偵測時間 (較短的 MTTD) 和較短的維修時間 (較短的 MTTR) 是用來改善分散式系統可用性的三個因素。
-
建立和符合工作負載的彈性指標,是任何有效設計的基礎。這些設計必須考慮到設計複雜性、服務相依性、效能、擴展和成本的權衡。
實作步驟
-
請考慮下列問題,檢閱和記載工作負載設計:
-
控制平面用於工作負載的哪個地方?
-
工作負載如何實作容錯能力?
-
擴展、自動擴展、備援和高可用性元件的設計模式是什麼?
-
資料一致性和可用性的要求是什麼?
-
資源節省或資源靜態穩定性是否有任何考慮?
-
服務相依性是什麼?
-
-
在與利益相關者合作時,根據工作負載架構定義SLA指標。考慮工作負載使用SLAs的所有相依性。
-
設定SLA目標後,請最佳化架構以符合 SLA。
-
設定將符合 的設計後SLA,請實作操作變更、程序自動化和 Runbook,這些也會專注於減少 MTTD和 MTTR。
-
部署後,請在 上監控和報告 SLA。
資源
相關的最佳實務:
相關文件:
相關服務: