本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
REL06-BP01 監控工作負載的所有元件 (產生)
使用 Amazon CloudWatch 或第三方工具監控工作負載的元件。使用 AWS Health Dashboard 監控 AWS 服務。
工作負載的所有元件都應該受到監控,包括前端、商業邏輯和儲存層。定義關鍵指標,描述如何從日誌中擷取指標 (如果需要),並設定調用對應警示事件的閾值。確保指標與工作負載的關鍵效能指標 (KPIs) 相關,並使用指標和日誌來識別服務降級的早期警告訊號。例如,與業務結果相關的指標,例如每分鐘成功處理的訂單數量,可以比技術指標更快地指出工作負載問題,例如CPU使用率。使用 AWS Health Dashboard 來個人化檢視 AWS 資源基礎 AWS 之服務的效能和可用性。
雲端監控提供新機遇。大多數雲端供應商已開發可自訂掛鉤,並提供洞見,以協助您監控工作負載的多個層面。Amazon 等 AWS 服務會 CloudWatch 套用統計和機器學習演算法,以持續分析系統和應用程式的指標、判斷正常基準,並以最少的使用者介入來確定表面異常。異常偵測演算法會考慮指標的季節性和趨勢變化。
AWS 提供大量監控和日誌資訊以供取用,可用於定義工作負載特定的指標、程序和採用機器學習技術, change-in-demand而不論 ML 專業知識為何。
此外,監控所有外部端點,以確保它們獨立於基本實作。此主動監控可透過綜合交易 (有時稱為使用者 Canary,但請別與 Canary 部署混淆) 加以完成,它會定期運行工作負載的用戶端執行的許多常見任務匹配動作。在持續時間中讓這些任務保持簡單扼要,並確定在測試期間不會讓工作負載超載。Amazon CloudWatch Synthetics 可讓您建立合成 Canary 來監控端點和 APIs。您也可以將綜合性 Canary 用戶端節點與 AWS X-Ray 主控台結合,以指出綜合性 Canary 在所選時段內發生錯誤、故障或限流率等問題。
預期成果:
從工作負載的所有元件中收集並使用關鍵指標,以確保工作負載的可靠性和最佳的使用者體驗。偵測工作負載未達成業務成果,可讓您快速宣告災難並從事件中復原。
常見的反模式:
-
僅監控工作負載的外部界面。
-
不會產生任何工作負載特定的指標,僅依賴工作負載使用 AWS 的服務提供給您的指標。
-
僅在工作負載中使用技術指標,而不監控與KPIs工作負載貢獻的非技術相關指標。
-
依賴生產流量和簡單的運作狀態檢查來監控和評估工作負載狀態。
建立此最佳實務的優勢:在工作負載中的所有層級進行監控,可讓您更快速地預測和解決構成工作負載的元件中的問題。
未建立此最佳實務時的曝險等級:高
實作指引
-
在可用的地方開啟日誌記錄。應從工作負載的所有元件中取得監控資料。開啟其他日誌記錄,例如 S3 Access Logs,並允許您的工作負載記錄工作負載特定資料。從 Amazon CPU、Amazon 、Amazon 、ECSEKSEC2Elastic Load Balancing 和 Amazon 等服務收集 AWS Auto Scaling、網路 I/O 和磁碟 I/O 平均值的指標EMR。如需AWS 將 CloudWatch 指標發佈至 的服務清單,請參閱發佈指標 AWS 的服務 CloudWatch。
-
檢閱所有預設指標,並探索任何資料收集漏洞。每個服務都會產生預設指標。收集預設指標可讓您進一步了解工作負載元件之間的相依性,以及元件可靠性和效能如何影響工作負載。您也可以 CloudWatch 使用 AWS CLI 或 來建立和發佈自己的指標API。
-
評估所有指標,以決定要針對工作負載中的每個 AWS 服務提醒哪些指標。您可以進行選擇,以選取對工作負載可靠性有重大影響的指標子集。專注於重要指標和閾值,可讓您調整提醒的數量,並協助將誤報率降至最低。
-
在調用提醒後,定義工作負載的提醒和復原程序。定義警示可讓您快速通知、升級和遵循從事件復原的必要步驟,並滿足您指定的復原時間目標 (RTO)。您可以使用 Amazon CloudWatch Alarms 來叫用自動化工作流程,並根據定義的閾值啟動復原程序。
-
探索如何使用綜合交易來收集有關工作負載狀態的相關資料。綜合監控遵循相同的路由並執行與客戶相同的動作,即使您的工作負載沒有任何客戶流量,也能持續驗證您的客戶體驗。透過使用綜合交易,您可以在客戶之前發現問題。
資源
相關的最佳實務:
相關文件:
-
使用者指南:
相關部落格:
相關範例和研討會: