【问题标题】:AWS CloudFormation template for CloudWatch alarm: how to describe the alarm with metrics by ElasticSearch node, not by whole ElasticSearch clusterCloudWatch 警报的 AWS CloudFormation 模板:如何使用 ElasticSearch 节点而不是整个 ElasticSearch 集群的指标来描述警报
【发布时间】:2019-12-03 19:51:26
【问题描述】:

我有用于 CloudWatch 警报的 CloudFormation 模板,它适用于 ElasticSearch 集群中的指标,这里是:

...
Resources:
  EsCPUUtilizationTooHighAlarm:
    Type: "AWS::CloudWatch::Alarm"
    Properties:
      AlarmName: "es-cpu-utilization-too-high"
      AlarmActions:
      - !Ref AlarmsSnsTopic
      AlarmDescription: "ES cluster CPU usage above 80%"
      ComparisonOperator: "GreaterThanThreshold"
      TreatMissingData: "missing"
      Dimensions:
      - Name: ClientId
        Value: !Ref "AWS::AccountId"
      - Name: DomainName
        Value: !Ref ElasticsearchCluster
      EvaluationPeriods: 1
      MetricName: "CPUUtilization"
      Namespace: "AWS/ES"
      Period: "300"
      Statistic: "Average"
      Threshold: "80"
...

如您所见,此警报跟踪来自整个 ElasticSearch 集群的指标,但我想创建几个这样的警报并分别跟踪每个 ElasticSearch 节点。如何使用 CloudFormation 模板描述此类 CloudWatch 警报?

【问题讨论】:

    标签: amazon-web-services elasticsearch amazon-cloudformation amazon-cloudwatch infrastructure-as-code


    【解决方案1】:

    Managing Amazon Elasticsearch Service Domains 文档列出了可用于集群中每个单独实例的指标,主要围绕线程池和 JVM 指标。

    有一个SysMemoryUtilization 度量标准定义为The percentage of the instance's memory that is in use。

    【讨论】:

    • 我可以在 CloudWatch 指标面板(在 Web 控制台中)查看每个单独 ES 节点的 CPU 利用率指标。
    • 糟糕!编辑为包含SysMemoryUtilization
    • 但无论如何我有一个问题 - 如何在 CloudFormation 模板中描述两个 CloudWatch 警报 - 一个用于主 ES 节点,另一个用于数据 ES 节点?
    • 这可能无法通过 CloudFormation 实现,因为堆栈不知道各个实例。您必须在 CloudFormation 之外创建警报,例如编写脚本来遍历节点并创建警报。
    猜你喜欢
    • 1970-01-01
    • 2019-05-04
    • 2020-09-08
    • 2019-11-09
    • 1970-01-01
    • 2019-12-26
    • 2021-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多