我想在 Amazon CloudWatch 中計算 Amazon Elastic Block Store (Amazon EBS) 磁碟區的平均輸送量和每秒讀寫次數 (IOPS)。
簡短說明
若要計算磁碟區的平均輸送量和 IOPS 數量,請使用包含 CloudWatch 指標的數學運算式。
若要監控 EBS 磁碟區中的資料,請建立 CloudWatch 警示,或者使用 AWSSupport-CalculateEBSPerformanceMetrics 自動化文件。自動化功能會使用 CloudWatch 指標來計算 EBS 磁碟區的彙總輸送量、IOPS 數量以及 I/O 大小。您可以計算單一 EBS 磁碟區的指標,也可以計算附加到 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體所有 EBS 磁碟區的指標。
解決方法
手動計算輸送量
請完成下列步驟:
- 開啟 CloudWatch 主控台。
- 在 Metrics (指標) 下,選擇 All metrics (所有指標)。
- 選擇 EBS namespace (EBS 命名空間),然後選擇 Per-Volume metrics (每個磁碟區指標)。
- 為 EBS 磁碟區選取下列指標:
若要計算平均 IOPS,請選取 VolumeReadOps、VolumeWriteOps 和 VolumeIdleTime。
若要計算平均輸送量,請選取 VolumeReadBytes、VolumeWriteBytes 和 VolumeIdleTime。
- 選擇 Graphed metrics (圖表化指標) 索引標籤。
- 針對 Statistic (統計資料),選擇 Sum (總和)。
- 針對 Period (期間),選擇您要檢視的時段期間。
- 請記下每個圖表化指標前面的指標 ID,例如 m1、m2、m3 等。
- 在 Add math (新增數學) 中,選擇 Start with empty expression (以空白運算式開始),然後輸入下列運算式以計算預期平均值。
若要計算平均 IOPS (以每秒運算次數為單位),請輸入:
(m1+m2)/(PERIOD(m1))
**注意:**在上述運算式中,m1 為 VolumeReadOps,而 m2 為 VolumeWriteOps。
若要在磁碟區作用中時,計算實際平均輸送量 (以每秒位元組為單位),請輸入:
(m1+m2)/(PERIOD(m1)-(IF(m3>59, 59, m3)))
**注意:**在上述運算式中,m1 為 VolumeReadBytes,m2 為 VolumeWriteBytes,而 m3 為 VolumeIdleTime。
若要計算平均輸送量 (以每秒位元組為單位),請輸入:
(m1+m2)/(PERIOD(m1))
**注意:**在上述運算式中,m1 為 VolumeReadBytes,而 m2 為 VolumeWriteBytes。
輸送量和 IOPS 以每秒為單位測量。因此,當 VolumeIdleTime 超過 59 秒時,以 VolumeIdleTime X Period 為基礎計算的指標資料點可能會產生高於預期的值。此外,由於微型爆量,輸送量平均值和 IOPS 可能與實際平均值不同。CloudWatch 不會以每秒的間隔彙總 EBS 磁碟區指標。如需更多資訊,請參閱如何識別 EBS 磁碟區是否出現微型爆量問題,並確保它不會影響效能?
使用自動化來計算輸送量
先決條件:
- 您必須有資源 ID 才能執行自動化文件。複製您要分析之資源的磁碟區 ID 或執行個體 ID。
- 請確定您的 AWS Identity and Access Management (IAM) 使用者或角色具有使用 AWSSupport-CalculateEBSPerformanceMetrics 執行手冊所需的權限。如需更多資訊,請參閱 AWSSupport-CalculateEBSPerformanceMetrics 的 Required IAM permissions (必要 IAM 權限) 一節。
使用 Systems Manager 主控台
若要執行 Systems Manager 執行手冊,請完成下列步驟:
- 於資源所在的 AWS 區域中開啟 Systems Manager 主控台。
- 在導覽窗格中,選擇 Documents (文件)。
- 在搜尋列中,輸入 CalculateEBSPerformanceMetrics。
- 選取 AWSSupport-CalculateEBSPerformanceMetrics 文件。
- 選擇 Simple execution (簡單執行)。
- 選擇 Execute (執行)。
- 自動化完成後,請在儀表板的 Outputs (輸出) 部分中檢視已分析的指標及其配額。
使用 AWS CLI
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請參閱 Troubleshooting errors for the AWS CLI (對 AWS CLI 錯誤進行疑難排解)。此外,請務必使用最新版 AWS CLI。
執行下列 start-automation-execution AWS CLI 命令:
aws ssm start-automation-execution --document-name "AWSSupport-CalculateEBSPerformanceMetrics" --document-version "\\$DEFAULT" --parameters '{"ResourceId":\["i-example12345"\], "StartTime":\["2021-06-09T13:30:10"\], "EndTime":\["2021-06-16T13:30:10"\], "Period":\["60"\], "AutomationAssumeRole":\[""\]}' --region us-east-1
**注意:**請將 i-example12345 替換為您要分析的資源 ID、將 2021-06-09T13:30:10 替換為您的開始時間、將 2021-06-16T13:30:10 替換為您的結束時間,並將 us-east-1 替換為您資源所在的區域。