GKE 的可观测性


本页面介绍了如何检查应用的健康状况以及如何保持应用的可用性和可靠性。

默认的可观测性功能

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

自定义和增强数据收集

默认情况下,GKE 会创建一个 Logging 仓库来存储每个集群的日志。您可以控制要将哪些日志和指标(如有)从自己的 GKE 集群发送到 Cloud Logging 和 Cloud Monitoring。

您还可以控制是否启用 Google Cloud Managed Service for Prometheus

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

其他可观测性指标

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

  • 控制平面指标:通过收集 Kubernetes API 服务器、调度器和控制器管理器的指标来监控 Kubernetes 组件的健康状况。这些指标反映了服务的健康状况,可以用来定义服务等级目标 (SLO)。
  • Kube 状态指标:监控 Kubernetes 对象(例如 Deployment、节点和 Pod)的运行状况。
  • cAdvisor/Kubelet 指标:监控容器和 kubelet 的健康状况。

如果您在项目中启用了 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 服务提供的功能单独收费。如需了解详情,请参阅相应文档页面的“价格”部分。

后续步骤