AWSSupport-TroubleshootOpenSearchHighCPU - AWS Systems Manager 自動化手冊參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWSSupport-TroubleshootOpenSearchHighCPU

Description

AWSSupport-TroubleshootOpenSearchHighCPURunbook 提供自動化的解決方案,可從 Amazon OpenSearch 服務網域收集診斷資料,以對 CPU 高問題進行疑難排解。

它是如何工作的?

AWSSupport-TroubleshootOpenSearchHighCPU執行手冊有助於疑難排解 Amazon OpenSearch 服務網域中的 CPU 使用率過高。

執行手冊執行下列步驟:

  • 針對提供的 Amazon OpenSearch 服務網域執行 DescribeDomainAPI,以取得叢集中繼資料。

  • 檢查 Amazon OpenSearch 服務網域是公有網域還是以 Amazon 虛擬私人雲端為基礎 AWS CloudFormation,並在的協助下建立公用或以 Amazon V AWS Lambda PC 為基礎的函數。

  • Lambda 函數會從 Amazon OpenSearch 服務網域擷取診斷資料。

  • 使用 AWS Step Functions 狀態機器協調多個 Lambda 函數執行,以收集更全面的資料。

  • 依預設,將收集的資料存放在 Amazon CloudWatch 日誌群組中 24 小時。

  • 刪除建立的資源 ( CloudWatch 記錄群組除外)。

必要的 IAM 許可

AutomationAssumeRole參數需要下列動作才能成功使用 runbook。

  • cloudformation:CreateStack

  • cloudformation:CreateStack

  • cloudformation:DescribeStacks

  • cloudformation:DescribeStackEvents

  • cloudformation:DeleteStack

  • lambda:CreateFunction

  • lambda:DeleteFunction

  • lambda:InvokeFunction

  • lambda:GetFunction

  • lambda:TagResource

  • es:DescribeDomain

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeVpcs

  • ec2:DescribeNetworkInterfaces

  • ec2:CreateNetworkInterface

  • ec2:DescribeInstances

  • ec2:AttachNetworkInterface

  • ec2:DeleteNetworkInterface

  • logs:CreateLogGroup

  • logs:PutRetentionPolicy

  • logs:TagResource

  • states:CreateStateMachine

  • states:DeleteStateMachine

  • states:StartExecution

  • states:TagResource

  • states:DescribeStateMachine

  • states:DescribeExecution

  • iam:PassRole

  • iam:CreateRole

  • iam:DeleteRole

  • iam:GetRole

  • iam:PutRolePolicy

  • iam:DeleteRolePolicy

  • ssm:DescribeAutomationExecutions

  • ssm:GetAutomationExecution

LambdaExecutionRole參數需要下列動作才能成功使用 runbook:

  • es:ESHttpGet

  • ec2:CreateNetworkInterface

  • ec2:DescribeNetworkInterfaces

  • ec2:DeleteNetworkInterface

  • logs:CreateLogStream

  • logs:PutLogEvents

Lambda 執行角色授予函數存取此手冊所需 AWS 服務和資源的權限。如需更多詳細資訊,請參閱 Lambda 執行角色

注意

ec2:DeleteNetworkInterface有當您的ec2:DescribeNetworkInterfaces OpenSearch 服務叢集是以 Amazon 虛擬私人雲端為基礎 ec2:CreateNetworkInterface,以允許 Lambda 函數建立和管理 Amazon VPC 網路界面時,才需要、和。如需詳細資訊,請參閱將輸出網路連線至 Amazon VPC 和 Lambda 執行角色中的資源。

指示

請依照下列步驟設定自動化操作:

  1. 瀏覽至主 AWS Systems Manager 控台中的 AWSSupport-TroubleshootOpenSearchHigh CPU

  2. 選擇 Execute automation (執行自動化)。

  3. 對於輸入參數,請輸入以下內容:

    • AutomationAssumeRole (選擇性):

      (IAM) 角色的 Amazon 資源名稱 AWS Identity and Access Management (ARN),可讓 Systems Manager 自動化代表您執行動作。如果未指定角色,Systems Manager 自動化會使用啟動此 runbook 的使用者的權限。

    • DomainName (必填):

      您要針對 CPU 過高問題進行疑難排解的 Amazon OpenSearch 服務網域名稱。

    • LambdaExecutionRoleForOpenSearch (必填):

      要連接至 Lambda 函數的 IAM 角色的 ARN。Lambda 函數使用此角色的登入資料,將請求簽署到 Amazon OpenSearch 服務網域。如果在 Amazon OpenSearch 服務網域上啟用了精細的存取控制,則必須將此角色對應至少具有「cluster_monitor」權限的 OpenSearch 服務儀表板後端角色。

    • DataRetentionDays (選擇性):

      保留從 Amazon OpenSearch 服務網域收集的診斷資料的天數。依預設,資料會保留 24 小時 (一天)。您可以選擇保留資料最多 30 天。

    • NumberOfDataSamples (選擇性):

      要從 Amazon OpenSearch 服務網域收集的資料樣本數量。依預設,會收集 5 個資料樣本。您最多可以收集 10 個樣本,並針對每個樣本集合叫用 Lambda 函數。

  4. 如果您已在 OpenSearch Service 叢集上啟用精細的存取控制,請確定LambdaExecutionRole角色 arn 已對應至少cluster_monitor具有權限的角色。

  5. 選取執行。

  6. 自動化啟動。

  7. 自動化工作流程簿執行下列步驟:

    • 並行檢查:

      確保只有一個執行此手冊針對指定的 Amazon OpenSearch 服務域。如果 runbook 找到另一個針對相同網域名稱的執行,則會傳回錯誤並結束。

    • getDomainConfig:

      取得目標 OpenSearch 服務網域的組態詳細資訊。

    • 佈建資源:

      規定資源使用的數據收集 AWS CloudFormation.

    • waitForStack創作:

      等待 AWS CloudFormation 堆棧完成。

    • describeStackResources:

      描述 AWS CloudFormation 堆疊並取得狀態機器的 ARN。

    • runStateMachine:

      透過執行 Step Functions 函數狀態機器叫用資料收集器 Lambda 函數一或多次。

    • describeErrorsFromStackEvents:

      描述錯誤 AWS CloudFormation 堆疊中的錯誤。

    • unstageOpenSearch高 CPU 自動化:

      刪除AWSSupport-TroubleshootOpenSearchHighCPU AWS CloudFormation 堆疊。

    • describeErrorsFromStackDeletion:

      說明刪除 AWS CloudFormation 堆疊時遇到的錯誤。

    • 最終狀態:

      返回工作AWSSupport-TroubleshootOpenSearchHighCPU簿的最終輸出。

  8. 完成後,請檢閱「輸出」區段以取得執行的詳細結果。

    • 最終狀態。 FinalOutput:

      提供儲存診斷資料的 CloudWatch 記錄群組。

參考

Systems Manager Automation

AWS 服務文件