Kubernetes 无法连接到服务器:x509:由未知机构签名的证书

mar*_*tin 7 kubernetes

我配置了我的配置文件,当我运行时:

kubectl get nodes
Run Code Online (Sandbox Code Playgroud)

我有这个错误:

Unable to connect to the server: x509: certificate signed by unknown authority
Run Code Online (Sandbox Code Playgroud)

我尝试了所有这些命令,但它仍然没有改变:

kubectl config set-cluster ${KUBE_CONTEXT} --insecure-skip-tls-verify=true \
--server=${KUBE_CONTEXT} 
--insecure-skip-tls-verify=true 

kubectl proxy --address 0.0.0.0 --accept-hosts '.*'
Run Code Online (Sandbox Code Playgroud)

DT.*_*DT. 9

该错误表明证书可能不匹配

验证该$HOME/.kube/config文件是否包含有效的证书,并根据需要重新生成证书。

使用以下命令取消设置 KUBECONFIG 环境变量:

unset KUBECONFIG
Run Code Online (Sandbox Code Playgroud)

或者将其设置为默认的 KUBECONFIG 位置:

export KUBECONFIG=/etc/kubernetes/admin.conf
Run Code Online (Sandbox Code Playgroud)

另一个解决方法是覆盖“admin”用户的现有 kubeconfig

mv  $HOME/.kube $HOME/.kube.bak
mkdir $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Run Code Online (Sandbox Code Playgroud)

参考链接