GKE 的可观测性


本页面介绍如何了解应用的运行状况以及如何保持应用可用性和可靠性。

创建 GKE 集群时,系统会默认启用 Cloud Logging、Cloud Monitoring 和 Google Cloud Managed Service for Prometheus,并提供专门针对 Kubernetes 定制的可观测性。

  • 使用内置信息中心查看默认指标和日志,并设置建议的提醒。
  • 启用其他可观测性软件包,以监控 Kubernetes 组件和对象,并使用收集的数据进行调试和问题排查。
  • 为集群上运行的第三方应用配置数据收集。
  • 根据需求定义您自己的指标、信息中心和提醒。

除了与 Cloud Logging 和 Cloud Monitoring 的集成,GKE 还提供其他功能来帮助您观察和维护应用的运行状况。

默认的可观测性功能

默认情况下,GKE 集群配置为执行以下操作:

自定义和增强数据收集

您可以控制将哪些日志以及哪些指标(如果有)从 GKE 集群发送到 Cloud Logging 和 Cloud Monitoring。

您还可以控制是否启用 Google Cloud Managed Service for Prometheus。如需了解配置说明,请参阅为 GKE 配置日志记录和监控

对于 GKE Autopilot 集群,您无法停用 Cloud Monitoring 和 Cloud Logging 集成。

其他可观测性指标

您可以通过启用一个或多个可观测性指标软件包来收集其他可观测性指标:

  • 控制平面指标:通过收集 Kubernetes API 服务器、调度器和控制器管理器的指标来监控 Kubernetes 组件的运行状况。这些指标是服务运行状况的有用信号,可用于定义服务等级目标 (SLO)。
  • Kube 状态指标:监控 Kubernetes 对象(例如 Deployment、节点和 Pod)的运行状况。

如果您在项目中启用了 GKE Enterprise,则在创建集群期间注册到舰队时,这些指标默认处于启用状态

第三方指标和用户定义的指标

如需监控集群上运行的第三方应用(例如 Postgres、MongoDB 和 Redis),请将 Prometheus 导出器与 Google Cloud Managed Service for Prometheus 搭配使用。

您还可以编写自定义导出器,以监控健康状况和性能的其他信号。

使用收集的数据

在开发、部署和维护应用时,使用收集的数据来分析应用运行状况、调试、问题排查和测试。

GKE 提供了内置可观测性功能,可帮助您快速上手:

  • 在 GKE 可观测性信息中心中查看集群和工作负载收集的数据。您可以为以下用途自定义提供的信息中心:

    • 查看关键集群指标,例如 CPU 利用率、内存利用率和未结突发事件数量。
    • 按基础设施、工作负载或 Service 查看集群。
    • 检查命名空间、节点、工作负载、Service、Pod 和容器。
    • 对于 Pod 和容器,请查看指标(时间函数形式)并查看日志条目。

    您还可以创建自己的信息中心导入 Grafana 信息中心来满足您的需求。

  • 可观测性标签页中,您可以创建建议的提醒政策,以便在出现问题时收到通知。如需详细了解提醒,请参阅提醒概览

  • 创建 SLO 以使用收集的 GKE 指标监控服务性能目标。

  • 使用 GKE playbook 排查常见问题,例如无法安排的 Pod重启后反复崩溃的容器

  • 使用 Logs ExplorerMetrics ExplorerError Reporting 等工具探索和分析数据。

  • 查看 GKE 审核日志,这些日志会记录管理活动和访问(作为 Cloud Audit Logs 的一部分)。审核日志政策决定了记录哪些事件,以及日志条目是属于管理员活动日志还是数据访问日志。

其他功能

GKE 与其他 Google Cloud 服务集成,可帮助您监控和管理集群和工作负载。

价格

与 Cloud Logging(包括 Cloud Audit Logs)、Cloud Monitoring 和 Google Cloud Managed Service for Prometheus 集成的价格取决于收集的日志和指标数量。请参阅价格页面了解详情。

其他功能中列出的其他 Google Cloud 服务提供的功能具有单独的价格。如需了解详情,请参阅这些文档页面的“价格”部分。

后续步骤