View a markdown version of this page

集成 Amazon EKS - Amazon CloudWatch

集成 Amazon EKS

Amazon CloudWatch 托管式 Prometheus 收集器会抓取与 Prometheus 兼容的指标。有关与 Prometheus 兼容的指标的更多信息,请参阅与 Prometheus 兼容的指标有哪些?。Amazon EKS 集群会公开 API 服务器的指标。Kubernetes 版本 1.28 或更高版本的 Amazon EKS 集群还公开 kube-scheduler 和 kube-controller-manager 的指标。有关更多信息,请参阅《Amazon EKS 用户指南》中的获取 Prometheus 格式的控制面板原始指标

《Amazon Managed Service for Prometheus 用户指南》提供详细的设置说明。有关配置 Amazon EKS 集群、访问条目和 ConfigMap 设置的说明,请参阅为 Amazon EKS 设置托管式收集器

注意

收集器使用标识其来源的属性丰富每个 Amazon EKS 指标,这些属性包括检测范围、AWS 账户和区域、推断单位以及集群名称和集群 ARN。使用 PromQL 查询指标时,可以对这些属性进行筛选和分组。

创建具有 CloudWatch 目标的抓取程序

您可以使用 GetDefaultScraperConfiguration 以检索通用抓取程序配置,也可以提供自己的抓取程序配置。

AWS API

使用 CreateScraper API 操作,以便创建具有 CloudWatch 目标的抓取程序。将 AWS 账户、安全组、子网、Amazon EKS 集群及数据集信息替换为您自己的值。

POST /scrapers HTTP/1.1 { "alias": "eks-metrics-scraper", "source": { "eksConfiguration": { "clusterArn": "arn:aws:eks:us-west-2:123456789012:cluster/my-cluster", "securityGroupIds": ["sg-security-group-id"], "subnetIds": ["subnet-subnet-id-1", "subnet-subnet-id-2"] } }, "destination": { "cloudWatchConfiguration": { "datasetArn": "arn:aws:cloudwatch:us-west-2:123456789012:dataset/default" } }, "scrapeConfiguration": { "configurationBlob": "base64-encoded-blob" } }
AWS CLI

使用 create-scraper 命令,以便创建具有 CloudWatch 目标的抓取程序。将 AWS 账户、安全组、子网、Amazon EKS 集群及数据集信息替换为您自己的值。

aws amp create-scraper \ --alias "eks-metrics-scraper" \ --source eksConfiguration="{clusterArn='arn:aws:eks:us-west-2:123456789012:cluster/my-cluster', \ securityGroupIds=['sg-security-group-id'], \ subnetIds=['subnet-subnet-id-1','subnet-subnet-id-2']}" \ --scrape-configuration configurationBlob=$(cat eks-config.yaml | base64 -w 0) \ --destination cloudWatchConfiguration="{datasetArn='arn:aws:cloudwatch:us-west-2:123456789012:dataset/default'}"

查看自动控制面板

在收集器开始将 Amazon EKS 指标传输至 CloudWatch 之后,CloudWatch 控制台会提供名为 EKS OTel 的自动控制面板。要将其打开,请访问 EKS OTel,或登录 AWS 管理控制台,打开 CloudWatch 控制台,在导航窗格中选择控制面板,接着选择自动控制面板,然后选择 EKS OTel。无需自行构建任何小组件或控制面板,即可开始监控集群。

如果自动控制面板满足您的需求,即可直接使用。要打造量身定制的监控体验,您可以将其中的任何小组件添加到自定义控制面板中。有关自定义控制面板的更多信息,请参阅使用 CloudWatch 控制面板

跨账户可观测性

对于跨账户 Amazon EKS 监控,建议使用 Amazon CloudWatch 指标集中化。有关更多信息,请参阅 CloudWatch 指标集中化

有关其他跨账户抓取程序配置,请参阅《Amazon Managed Service for Prometheus 用户指南》中的跨账户抓取程序