Kubernetes 的配置 kubeconfig

kubeconfg文件是kubectl的配置文件,其中的配置了kubectl将要连接的kubernetes集群的信息,包含集群的地址、认证信息,以及连接集群使用的用户和用户的认证信息,默认的namespace等。

1. 文件的位置

读取文件的位置通过KUBECONFIG环境变量设置:

1. 可以通过冒号配置多个,会选择找到的第一个文件读取。

2. 如果没有配置该环境变量,会使用~/.kube/config文件

2. 文件的内容

文件中包含了集群和用户的认证信息,一般不直接编辑这个文件,而是通过kubectl config命令修改配置。

3. kubeconfig对象

通过命令 kubectl config view 可以查看config的信息

operator@ubuntu2:~/.kube$ kubectl config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: https://192.168.1.9:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    namespace: default
    user: kubernetes-admin
  name: default
- context:
    cluster: kubernetes
    namespace: kube-system
    user: kubernetes-admin
  name: kubernetes-admin@kubernetes
current-context: default
kind: Config
preferences: {}
users:
- name: kubernetes-admin
  user:
    client-certificate-data: DATA+OMITTED
    client-key-data: DATA+OMITTED

config 主要包含以下几部分内容

1. clusters: 一个或多个集群的信息,每个集群有一个name, 同时还有集群server的地址、证书的数据(只显示概要,信息在文件里可以看到)

2.users:一个或多个用户的信息,每个用户也有一个name,以及认证需要的信息

3. contexs: 一个或多个context,每个context是一个集群、用户的组合,表示使用该用户连接该集群,同时还有一个namespace字段,表示默认访问的namespace,默认是default。

4. current-context:当前使用的context,配置了kubectl命令运行时,会用哪个用户连接到哪个集群,默认使用哪个namespace。

4. kubeconfig的操作

配置的操作基本上就是对cluster、user、context的操作。即对cluster、user、context的添加、修改、删除;以及设置当前使用的context。

下面以context为例,展示操作

1. 新建context

通过运行kubectl config set-context命令,指定各种参数即可。

1. 如果改name的context不存在,则新建,如果已存在,则修改。新建context,要指定cluster、user、namespace,修改时,只要指定修改的内容即可。

2. 如果修改当前正在使用的context,带上--current即可

operator@ubuntu2:~/.kube$ kubectl config set-context  kube-system --cluster kubernetes --user kubernetes-admin --namespace kube-system
Context "kube-system" created.
1. 选择使用的context

使用kubectl config use-context 

operator@ubuntu2:~/.kube$ kubectl config use-context kube-system
Switched to context "kube-system".
operator@ubuntu2:~/.kube$ kubectl get pod
NAME                              READY   STATUS    RESTARTS       AGE
coredns-66f779496c-47t9c          1/1     Running   6              7d15h
coredns-66f779496c-9wskd          1/1     Running   6              7d15h
etcd-ubuntu2                      1/1     Running   6              7d15h
kube-apiserver-ubuntu2            1/1     Running   7              7d15h
kube-controller-manager-ubuntu2   1/1     Running   9 (133m ago)   7d15h
kube-proxy-9q5tq                  1/1     Running   6              7d15h
kube-scheduler-ubuntu2            1/1     Running   7              7d15h
metrics-server-794bb5d868-w8clm   1/1     Running   2              2d22h

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值