kubeconfig 是 Kubernetes 的核心配置文件,用于管理集群访问的认证、连接和上下文切换。它采用 YAML 格式,默认位于 ~/.kube/config,可通过环境变量 KUBECONFIG 或命令行参数 --kubeconfig 指定其他路径。以下是其关键特性和作用详解:

🔑 ​​核心组成​

  1. ​集群配置(clusters)​

    • ​功能​​:定义 Kubernetes 集群的连接信息。
    • ​字段​​:
      • server:API Server 的 HTTPS 地址(如 https://1.2.3.4:6443)。

      • certificate-authority-data:集群 CA 证书的 Base64 编码,用于验证 API Server 证书的合法性

        1

        4

        7

      • insecure-skip-tls-verify:是否跳过 TLS 验证(生产环境禁用)

        1

  2. ​用户配置(users)​

    • ​功能​​:存储用户认证凭据,支持多种方式:
      • ​证书认证​​:client-certificate-data(客户端证书)和 client-key-data(私钥)

        1

        6

      • ​Token 认证​​:ServiceAccount 的 Bearer Token

        1

        4

      • 用户名/密码(较少用)。

  3. ​上下文配置(contexts)​

    • ​功能​​:关联集群、用户和命名空间(Namespace),形成可快速切换的访问环境。

    • ​字段​​:clusterusernamespace(可选,默认为 default

      1

      7

  4. ​当前上下文(current-context)​

    • ​功能​​:指定默认生效的上下文,kubectl 操作基于此上下文执行

      1

      6