本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWSSupport-TroubleshootOpenSearchHighCPU
Description
AWSSupport-TroubleshootOpenSearchHighCPU
Runbook 提供自動化的解決方案,可從 Amazon OpenSearch 服務網域收集診斷資料,以便對高CPU
它是如何工作的?
AWSSupport-TroubleshootOpenSearchHighCPU
執行手冊有助於疑難排解 Amazon OpenSearch 服務網域中的高CPU使用率。
執行手冊執行下列步驟:
-
DescribeDomainAPI針對提供的 Amazon OpenSearch 服務網域執行,以取得叢集中繼資料。
-
檢查 Amazon OpenSearch 服務域是公共或VPC基於 Amazon 的,並在的幫助下 AWS CloudFormation,創建一個VPC基於公共或 Amazon 的 AWS Lambda 功能。
-
Lambda 函數會從 Amazon OpenSearch 服務網域擷取診斷資料。
-
使用 AWS Step Functions 狀態機器協調多個 Lambda 函數執行,以收集更全面的資料。
-
依預設,將收集的資料存放在 Amazon CloudWatch 日誌群組中 24 小時。
-
刪除建立的資源 ( CloudWatch 記錄群組除外)。
文件類型
自動化
擁有者
Amazon
平台
Linux,macOS, Windows
參數
必要的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 服務叢集是VPC以 Amazon 為基礎 ec2:CreateNetworkInterface
,以允許 Lambda 函數建立和管理 Amazon VPC 網路界面時,才需要、和。如需詳細資訊,請參閱將輸出網路連線至 Amazon VPC 和 Lambda 執行角色中的資源。
指示
請依照下列步驟設定自動化操作:
-
導覽至主 AWS Systems Manager 控台TroubleshootOpenSearchHighCPU中的 AWSSupport-
。 -
選擇 Execute automation (執行自動化)。
-
對於輸入參數,請輸入以下內容:
-
AutomationAssumeRole (選擇性):
() 角色的 Amazon 資源名稱 AWS Identity and Access Management (ARNIAM),可讓 Systems Manager 自動化代表您執行動作。如果未指定角色,Systems Manager 自動化會使用啟動此 runbook 的使用者的權限。
-
DomainName (必填):
您要針對高CPU問題進行疑難排解的 Amazon OpenSearch 服務網域名稱。
-
LambdaExecutionRoleForOpenSearch(必填):
要附加至 Lambda 函數ARN的IAM角色。Lambda 函數使用此角色的登入資料,將請求簽署到 Amazon OpenSearch 服務網域。如果在 Amazon OpenSearch 服務網域上啟用了精細的存取控制,則必須將此角色對應至少具有「cluster_monitor」權限的 OpenSearch 服務儀表板後端角色。
-
DataRetentionDays (選擇性):
保留從 Amazon OpenSearch 服務網域收集的診斷資料的天數。依預設,資料會保留 24 小時 (一天)。您可以選擇保留資料最多 30 天。
-
NumberOfDataSamples (選擇性):
要從 Amazon OpenSearch 服務網域收集的資料樣本數量。依預設,會收集 5 個資料樣本。您最多可以收集 10 個樣本,並針對每個樣本集合叫用 Lambda 函數。
-
-
如果您已在 OpenSearch Service 叢集上啟用精細的存取控制,請確定
LambdaExecutionRole
角色 arn 已對應至少cluster_monitor
具有權限的角色。 -
選取執行。
-
自動化啟動。
-
自動化工作流程簿執行下列步驟:
-
checkConcurrency:
確保只有一個執行此手冊針對指定的 Amazon OpenSearch 服務域。如果 runbook 找到另一個針對相同網域名稱的執行,則會傳回錯誤並結束。
-
getDomainConfig:
取得目標 OpenSearch 服務網域的組態詳細資訊。
-
provisionResources:
規定使用的資源收集數據 AWS CloudFormation。
-
waitForStack創作:
等待 AWS CloudFormation 堆棧完成。
-
describeStackResources:
描述 AWS CloudFormation 堆疊並取得ARN狀態機器。
-
runStateMachine:
透過執行 Step Functions 函數狀態機器叫用資料收集器 Lambda 函數一或多次。
-
describeErrorsFromStackEvents:
描述錯誤 AWS CloudFormation 堆疊中的錯誤。
-
unstageOpenSearchHighCPUAutomation:
刪除
AWSSupport-TroubleshootOpenSearchHighCPU
AWS CloudFormation 堆疊。 -
describeErrorsFromStackDeletion:
說明刪除 AWS CloudFormation 堆疊時遇到的錯誤。
-
finalStatus:
返回工作
AWSSupport-TroubleshootOpenSearchHighCPU
簿的最終輸出。
-
-
完成後,請檢閱「輸出」區段以取得執行的詳細結果。
-
finalStatus.FinalOutput:
提供儲存診斷資料的 CloudWatch 記錄群組。
-
參考
Systems Manager Automation
AWS 服務文件
-
如需詳細資訊,請參閱疑難排解 Amazon OpenSearch 服務