kubectl - 由未知权威签署的错误 x509 证书

Posted

技术标签:

【中文标题】kubectl - 由未知权威签署的错误 x509 证书【英文标题】:kubectl - error x509 certificate signed by unknown authority 【发布时间】:2021-01-29 07:36:13 【问题描述】:

我在单个节点上安装了 k3s。但是当我尝试使用 kubectl 从我的机器远程连接到它时,我收到以下错误:

» kubectl version                                                                                                                                                                              
Client Version: version.InfoMajor:"1", Minor:"15+", GitVersion:"v1.15.8-beta.0", GitCommit:"6c143d35bb11d74970e7bc0b6c45b6bfdffc0bd4", GitTreeState:"archive", BuildDate:"2020-01-29T00:00:00Z", GoVersion:"go1.14beta1", Compiler:"gc", Platform:"linux/amd64"
Unable to connect to the server: x509: certificate signed by unknown authority

在 k3s 服务器上安装 kubectl 并将其输出:

> kubectl version
Client Version: version.InfoMajor:"1", Minor:"18", GitVersion:"v1.18.9+k3s1", GitCommit:"630bebf94b9dce6b8cd3d402644ed023b3af8f90", GitTreeState:"clean", BuildDate:"2020-09-17T19:05:07Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"
Server Version: version.InfoMajor:"1", Minor:"18", GitVersion:"v1.18.9+k3s1", GitCommit:"630bebf94b9dce6b8cd3d402644ed023b3af8f90", GitTreeState:"clean", BuildDate:"2020-09-17T19:05:07Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"

我将 k3s.yaml 文件从服务器复制到我的机器,将其重命名为 config 并放入 ~/.kube/config。

我尝试使用--insecure-skip-tls-verify,它可以工作,但我不想每次都使用它。

【问题讨论】:

您好,您能说出您使用哪个指南来生成您的K3S 节点吗?另外请更新您的kubectl,因为官方支持是集群和客户端之间的 +1/-1 版本。 我是用k3s.io的k3s安装脚本安装的 我搞砸了配置文件,所以我不得不将它复制到我的机器上,现在它可以在没有 kubectl 更新的情况下工作???? 【参考方案1】:

您收到“无法连接到服务器:x509:证书由未知机构签名”的错误。您似乎只复制了 ~/.kube/(config) 文件。 查看 ~/.kube/(config) 文件的内容,如果该文件条目包含 CA 根证书、客户端证书和密钥条目,那么您需要将所有这三个文件也复制到您的机器上。

【讨论】:

从哪里复制丢失的文件?我的 .kube 文件夹只有配置文件和缓存文件夹 查看配置文件的内容,它们会显示所需密钥和证书的位置。通常它们将是 /etc/kubernetes/pki 文件夹【参考方案2】:

我在关闭终端时遇到了完全相同的错误。这只是一个使用以下命令设置的环境变量:

export KUBECONFIG="$(k3d kubeconfig write k3s-default)"

【讨论】:

以上是关于kubectl - 由未知权威签署的错误 x509 证书的主要内容,如果未能解决你的问题,请参考以下文章

错误:x509:证书由未知机构签署,种类为群集

x509:由未知权威 CMD K6.io 签署的证书

https://registry.gitlab.com/v2/: x509: 未知权威签署的证书

x509:由未知机构签署的证书 [ ngrok ]

由未知机构签署的证书

Ngrok 连接问题 X509 错误重新连接