Skip to content

ApiServer 监控

ApiServer 是 Kubernetes 集群的核心组件之一,负责处理所有与 Kubernetes API 的交互。它是 Kubernetes 控制平面的入口点,提供了一个 RESTful API 接口,用于管理集群中的资源(如 Pod、Service、Deployment 等)。

核心功能

  • API 入口:

    • ApiServer 是 Kubernetes 集群的唯一入口,所有对集群的操作(如创建、更新、删除资源)都必须通过它。

    • 它提供了一个 RESTful API,允许用户、管理员和自动化工具(如 kubectl)与集群交互。

  • 认证与授权:

    • ApiServer 负责对所有请求进行身份验证(Authentication)和授权(Authorization)。

    • 支持多种认证机制(如证书、Token、用户名密码等)和授权策略(如 RBAC、ABAC 等)。

  • 资源管理:

    • 管理 Kubernetes 中的所有资源对象(如 Pod、Service、ConfigMap 等)。

    • 提供资源的增删改查(CRUD)操作。

  • 存储与状态管理:

    • ApiServer 将所有资源的状态存储在 etcd(Kubernetes 的分布式键值存储)中。

    • 它负责将客户端的请求转换为对 etcd 的操作,并确保数据的一致性和可靠性。

  • 事件与审计:

    • 记录集群中的所有操作事件,便于故障排查和审计。

    • 支持审计日志功能,记录谁在何时对哪些资源做了什么操作。

监控

指标收集

  - job_name: 'kubernetes-apiserver'
    kubernetes_sd_configs:
      - role: endpoints
    scheme: https
    tls_config:
      insecure_skip_verify: true
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
    relabel_configs:
      - source_labels:
          [
            __meta_kubernetes_namespace,
            __meta_kubernetes_service_name,
            __meta_kubernetes_endpoint_port_name,
          ]
        action: keep
        regex: default;kubernetes;https

仪表盘

Dashboard File

Released under the GPL License.