k8s中的kubeconfig多集群访问详解
  qw1dHH2kI2RK 2023年11月02日 84 0

一.$HOME/.kube/config文件内容详解

---
apiVersion: v1
clusters:
- cluster:
    certificate-authority: fake-ca-file
    server: https://1.2.3.4
  name: development
- cluster:
    insecure-skip-tls-verify: true
    server: https://5.6.7.8
  name: scratch
contexts:
- context:
    cluster: development
    namespace: frontend
    user: developer
  name: dev-frontend
- context:
    cluster: development
    namespace: storage
    user: developer
  name: dev-storage
- context:
    cluster: scratch
    namespace: default
    user: experimenter
  name: exp-scratch
current-context: ""
kind: Config
preferences: {}
users:
- name: developer
  user:
    client-certificate: fake-cert-file
    client-key: fake-key-file
- name: experimenter
  user:
    password: some-password
    username: exp

一份kubeconfig文件内容包含三部分:

  1. clusters:     集群名字,API Server地址,ca证书文件内容(通过base64进行加密)
  2. contexts:    描述使用哪个用户的凭证去访问哪个集群的namespace,它是工作状态的切换开关 
  3. users:         具体用户名称以及用户的证书文件和私钥文件,文件内容使用base64加密  

注意:证书文件key如果使用具体内容,则需要在当前key名称后面增加"-data",即原来的key为certificate-authority,修改为certificate-authority-data

二.对应具体命令行操作

添加kubernetes集群名称,以及集群对应的api server地址,证书文件:
    kubectl config set-cluster development \
            --server=https://1.2.3.4 \
            --certificate-authority=fake-ca-file \
            --embed-certs=true


添加上下文信息,使用哪个用户的凭证去访问哪个集群的namespace:
   kubectl config set-context dev-frontend \
           --cluster=development\
           --user=developer \
           --namespace=frontend

添加凭据,具体用户名称以及用户的证书文件和私钥文件
   kubectl config set-credentials developer \
           --client-certificate=fake-cert-file \
           --client-key=fake-key-file \
           --embed-certs=true

设置默认的上下文信息,即current-context,也可以不设置
   kubectl config use-context dev-frontend

注意embed-certs=true即将crt/key文件写入到kubeconfig文件中去
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

qw1dHH2kI2RK