美文网首页
Grafana 系列-统一展示-5-AWS Cloudwatch

Grafana 系列-统一展示-5-AWS Cloudwatch

作者: 东风微鸣 | 来源:发表于2023-05-09 14:08 被阅读0次

    系列文章

    👍️强烈推荐

    强烈推荐使用 GitHub 上的 monitoringartist/grafana-aws-cloudwatch-dashboards 仪表板。该 repo 有一系列 AWS 资源的仪表板,包括但不限于:

    • EC2
    • EBS
    • API GW
    • Autoscaling
    • Billing
    • EKS
    • Lambda
    • Logs
    • RDS
    • S3
    • ...

    并且质量上乘,设计十分精良。

    本文以其 AWS EC2 Dashboard (ID: 617) 为例说明。

    📝Notes:
    前提是你的 IAM Role 或 User 有对应的权限,即 上文 提到的:
    "ec2:DescribeTags", "ec2:DescribeInstances", "ec2:DescribeRegions""tag:GetResources" 的相关 Policy.
    否则会出现类似 Error updating options: Query data error 这样的报错。

    相比 AWS Cloudwatch 数据源自带的仪表板,该仪表板优秀的地方在于使用了 ec2_instance_attribute 来查询获取变量。具体如下章介绍。

    变量

    Region

    AWS 最常用的变量:region.

    • Name: region
    • Type: Query
    • Query: regions()

    效果如下:

    Region Variable

    ec2_instance_attribute 相关变量

    通过 ec2_instance_attribute 的查询,我们可以获取到更具有实际意义的 EC2 分组和 hostname, 而不是自带仪表板的一长串的非人记忆的 i-xxxxxxxx EC2 id.

    包括:

    instancename

    • Name: instancename
    • Type: Query
    • Query: ec2_instance_attribute($region, Tags.Name, {})
    • Custom all value: *

    如果需要复用 instancename, 可以通过如下方式复用:

    instanceid

    • Name: instanceid
    • Query: ec2_instance_attribute($region, InstanceId, {"tag:Name": ["$instancename"]})

    之后,可以根据 instanceid 查询获取 EC2 的 instance type, 以及 vlume 信息。

    instancetype

    • Name: instancetype
    • Query: ec2_instance_attribute($region,InstanceType, {"instance-id": ["$instanceid"]})

    volumeid

    • Name: volumeid
    • Query: ebs_volume_ids($region, $instanceid)

    最终效果如下:

    AWS EC2 Dashboard

    而关于详细完整的 ec2_instance_attribute 用法,可以参考这篇文档:

    📚️参考文档

    三人行, 必有我师; 知识共享, 天下为公. 本文由东风微鸣技术博客 EWhisper.cn 编写.

    相关文章

      网友评论

          本文标题:Grafana 系列-统一展示-5-AWS Cloudwatch

          本文链接:https://www.haomeiwen.com/subject/uyvrsdtx.html