乐趣区

关于运维:Grafana-系列统一展示5AWS-Cloudwatch-仪表板

系列文章

  • Grafana 系列文章

👍️强烈推荐

强烈推荐应用 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()

成果如下:

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)

最终成果如下:

而对于具体残缺的 ec2_instance_attribute 用法,能够参考这篇文档:

📚️参考文档

  • Using ec2_instance_attribute examples – Amazon Managed Grafana

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

退出移动版