本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWSSupport-TroubleshootOpenSearchHighCPU
描述
该AWSSupport-TroubleshootOpenSearchHighCPU
运行手册提供了一种自动解决方案,用于从 Amazon S OpenSearch ervice 域收集诊断数据,以解决高CPU
如何工作?
该AWSSupport-TroubleshootOpenSearchHighCPU
运行手册有助于解决亚马逊 OpenSearch 服务域的高CPU利用率问题。
运行手册执行以下步骤:
-
DescribeDomainAPI对提供的 Amazon S OpenSearch ervice 域运行以获取集群元数据。
-
检查 Amazon S OpenSearch ervice 域是公共域还是VPC基于亚马逊的域 AWS CloudFormation,并在的帮助下创建公共 AWS Lambda 函数或VPC基于亚马逊的函数。
-
Lambda 函数从亚马逊 OpenSearch 服务域中获取诊断数据。
-
使用 AWS Step Functions 状态机协调多个 Lambda 函数执行,以收集更全面的数据。
-
默认情况下,将收集的数据存储在 Amazon CloudWatch 日志组中 24 小时。
-
删除已创建的资源,但 CloudWatch 日志组除外。
文档类型
自动化
所有者
Amazon
平台
Linux、macOS、Windows
参数
所需IAM权限
AutomationAssumeRole
参数需要执行以下操作才能成功使用运行手册。
-
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
参数需要以下操作才能成功使用运行手册:
-
es:ESHttpGet
-
ec2:CreateNetworkInterface
-
ec2:DescribeNetworkInterfaces
-
ec2:DeleteNetworkInterface
-
logs:CreateLogStream
-
logs:PutLogEvents
Lambda 执行角色向该函数授予访问本运行手册所需的 AWS 服务和资源的权限。有关更多信息,请参阅 Lambda 执行角色。
注意
仅当您的 OpenSearch 服务集群VPC基于亚马逊时,才需要ec2:DescribeNetworkInterfaces
ec2:CreateNetworkInterface
、和ec2:DeleteNetworkInterface
,以允许 Lambda 函数创建和管理亚马逊VPC网络接口。有关更多信息,请参阅将出站联网连接到 Amazon VPC 和 Lambda 执行角色中的资源。
说明
按照这些步骤对自动化进行配置:
-
在 AWS Systems Manager 控制台TroubleshootOpenSearchHighCPU中导航到 AWSSupport-
。 -
选择 Execute automation(执行自动化)。
-
要输入参数,请输入以下内容:
-
AutomationAssumeRole (可选):
() 角色的亚马逊资源名称 (ARN), AWS Identity and Access Management 允许 Systems Manager Automation 代表您执行操作。IAM如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。
-
DomainName (必填):
您要针对严重CPU问题进行故障排除的 Amazon S OpenSearch ervice 域的名称。
-
LambdaExecutionRoleForOpenSearch(必填):
要附加到 Lambda 函数的IAM角色类型。ARNLambda 函数使用此角色的证书签署对亚马逊 OpenSearch 服务域的请求。如果在 Amazon Ser OpenSearch vice 域上启用了精细访问控制,则必须将此角色映射到至少具有 “cluster_monitor” 权限的 OpenSearch 服务控制面板后端角色。
-
DataRetentionDays (可选):
保留从 Amazon OpenSearch 服务域收集的诊断数据的天数。默认情况下,数据保留 24 小时(一天)。您可以选择将数据最多保留 30 天。
-
NumberOfDataSamples (可选):
要从 Amazon OpenSearch 服务域中收集的数据样本数量。默认情况下,会收集 5 个数据样本。您最多可以收集 10 个样本,并且将为每个样本集合调用 Lambda 函数。
-
-
如果您已在 S OpenSearch ervice 集群上启用了精细访问控制,请确保将
LambdaExecutionRole
角色 arn 映射到至少具有权限的角色。cluster_monitor
-
选择执行。
-
自动化启动。
-
自动化运行手册执行以下步骤:
-
checkConcurrency:
确保只有一次针对指定的 Amazon S OpenSearch ervice 域名执行此操作手册。如果 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 服务疑难解答