本文档介绍了如何配置 Google Kubernetes Engine 部署,以便使用 Google Cloud Managed Service for Prometheus 从 Apache Web 服务器 (httpd) 收集指标。本页面介绍如何完成以下任务:
- 为 Apache Web 服务器设置导出器以报告指标。
- 为 Managed Service for Prometheus 配置 PodMonitoring 资源以收集导出的指标。
- 在 Cloud Monitoring 中访问信息中心以查看指标。
以下说明仅在您将代管式收集功能与 Managed Service for Prometheus 搭配使用时适用。 如果您使用的是自行部署的收集功能,请参阅 Apache HTTP 导出器的源代码库以了解安装信息。
这些说明仅作为示例提供,应该适用于大多数 Kubernetes 环境。如果您因为限制性安全或组织政策而无法安装应用或导出器,则我们建议您查阅开源文档以获取支持。
如需了解 Apache Web 服务器,请参阅 Apache HTTP。
前提条件
如需使用 Managed Service for Prometheus 和代管式收集从 Apache Web 服务器收集指标,您的部署必须满足以下要求:
- 您的集群必须运行 Google Kubernetes Engine 1.21.4-gke.300 或更高版本。
- 您必须运行 Managed Service for Prometheus,并启用代管式收集功能。如需了解详情,请参阅代管式收集功能使用入门。
- 如需使用 Cloud Monitoring 中提供的信息中心进行 Apache Web 服务器集成,您必须使用
httpd_exporter
1.0.0 版或更高版本。如需详细了解可用的信息中心,请参阅查看信息中心。
安装 Apache Web 服务器导出器
我们建议您将 Apache Web 服务器导出器 httpd_exporter
作为边车安装到 Apache Web 服务器工作负载。如需了解如何使用 Sidecar,请参阅具有多容器 pod 的 Kubernetes 上的扩展应用。
如需将 httpd_exporter
作为边车安装到 Apache Web 服务器,请修改 Apache Web 服务器配置,如以下示例所示:
您必须将开头为 +
符号的所有行添加到您的配置中。
/server-status
上提供指标,方法是使用新的 Location
指令修改配置并加载 status_module。
如需从本地文件应用配置更改,请运行以下命令:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
您还可以使用 Terraform 管理您的配置。
定义 PodMonitoring 资源
对于目标发现,Managed Service for Prometheus Operator 需要与同一命名空间中的 Apache Web 服务器导出器对应的 PodMonitoring 资源。
您可以使用以下 PodMonitoring 配置:
确保标签选择器和端口与安装 Apache Web 服务器导出器中使用的选择器和端口匹配。
如需从本地文件应用配置更改,请运行以下命令:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
您还可以使用 Terraform 管理您的配置。
验证配置
您可以使用 Metrics Explorer 来验证您是否正确配置了 Apache Web 服务器导出器。Cloud Monitoring 可能需要一两分钟时间来注入您的指标。
要验证指标是否已注入,请执行以下操作:
-
在 Google Cloud 控制台中,转到 leaderboard Metrics Explorer 页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 在查询构建器窗格的工具栏中,选择名为 code MQL 或 code PromQL 的按钮。
- 验证已在PromQL 切换开关中选择 PromQL。语言切换开关位于同一工具栏中,用于设置查询的格式。
- 输入并运行以下查询:
up{job="httpd", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
查看信息中心
Cloud Monitoring 集成包括 Apache Prometheus 概览信息中心。当您配置集成时,系统会自动安装信息中心。您还可以在不安装集成的情况下查看信息中心的静态预览。
如需查看已安装的信息中心,请执行以下操作:
-
在 Google Cloud 控制台中,转到 信息中心页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 选择信息中心列表标签页。
- 选择集成类别。
- 点击信息中心的名称,例如 Apache Prometheus 概览。
如需查看信息中心的静态预览,请执行以下操作:
-
在 Google Cloud 控制台中,转到 集成页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 点击 Kubernetes Engine 部署平台过滤条件。
- 找到 Apache Web 服务器 (httpd) 集成,然后点击查看详情。
- 选择信息中心标签页。
问题排查
如需了解如何排查指标注入问题,请参阅排查注入端问题中的从导出器收集的问题。