下载 kubectl
注意请下载对应的Kubernetes版本的安装包。
# wget https://dl.k8s.io/v1.19.0-rc.4/kubernetes-client-linux-amd64.tar.gz
# tar -xf kubernetes-client-linux-amd64.tar.gz
# cp -rf kubernetes/client/bin/kubectl /usr/bin/
# chmod a+x /usr/bin/kube*
创建 kubectl kubeconfig 文件
[root@k8s_Master package]# export KUBE_APISERVER="https://192.168.0.221:6443"
[root@k8s_Master package]# kubectl config set-cluster kubernetes \
> --certificate-authority=/etc/kubernetes/ssl/ca.pem \
> --embed-certs=true \
> --server=${KUBE_APISERVER}
Cluster "kubernetes" set.
[root@k8s_Master package]# kubectl config set-credentials admin \
> --client-certificate=/etc/kubernetes/ssl/admin.pem \
> --embed-certs=true \
> --client-key=/etc/kubernetes/ssl/admin-key.pem
User "admin" set.
[root@k8s_Master package]# kubectl config set-context kubernetes \
> --cluster=kubernetes \
> --user=admin
Context "kubernetes" created.
[root@k8s_Master package]# kubectl config use-context kubernetes
Switched to context "kubernetes".
admin.pem
证书 OU 字段值为system:masters
,kube-apiserver
预定义的 RoleBindingcluster-admin
将 Groupsystem:masters
与 Rolecluster-admin
绑定,该 Role 授予了调用kube-apiserver
相关 API 的权限;- 生成的 kubeconfig 被保存到
~/.kube/config
文件;
注意:~/.kube/config
文件拥有对该集群的最高权限,请妥善保管。