使用 rancher 设置本地 kubectl

Setup local kubectl with rancher

我已经将 rancher 配置文件复制到本地 kube 配置中,当我尝试连接时,出现错误

Unable to connect to the server: x509: certificate signed by unknown authority

我不是这个集群的管理员,不能真正更改设置。所以我用谷歌搜索我可以添加

insecure-skip-tls-verify: true

并删除了证书,只留下用户名和令牌,它开始工作了。

你能解释一下吗,这样使用它安全吗?如果没有它也能正常工作,我们为什么还需要证书?

您可以将其视为额外的安全层。如果您允许某人(在本例中是您自己)连接到集群并在不需要适当证书的情况下对其进行管理,请记住您允许其他所有人使用它。

insecure-skip-tls-verify: true

非常不言自明——是的,它不安全,因为它跳过了 tls 验证,不建议在生产环境中使用。正如您在 documentation:

中所读到的

--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure

用户名和令牌提供了一定程度的安全性,因为它们仍然需要能够连接,但它与建立安全可信连接无关。默认情况下,它只能由也有适当证书的客户来完成。 如果您不想跳过 tls 验证,您可能想尝试 this 解决方案。仅适用于 kubernetes >= 1.15 使用命令 kubeadm alpha certs renew all.

有关在 Kubernetes 集群中管理 TLS 证书的更多信息,您可以阅读 here