gpt4 book ai didi

amazon-web-services - Kubernetes 集群 x509 : Certifcate issue

转载 作者:行者123 更新时间:2023-12-01 13:35:18 25 4
gpt4 key购买 nike

我设置了 Kubernetes 使用 kopsaws 上集群 使用 this tutorial 在官方 kubernetes github 分支上。

集群在 AWS 上设置成功,但是当我尝试运行时

kubectl get nodes

kops validate cluster

它说

[user@ip-70-0-0-7 ~]$ kubectl cluster-info
Unable to connect to the server: x509: certificate is valid for *.secure.hosting prod.com, not api.subdomain.mydomain.com

这绝对是我的 x509 证书 的问题。只需要轻轻推向正确的方向。感谢您的宝贵时间和帮助!

注意:我在集群外部从我设置集群的机器上运行这些命令。

最佳答案

Unable to connect to the server: x509: certificate is valid for *.secure.hosting prod.com, not api.subdomain.mydomain.com

我无法判断您列出的这些名称是示例,还是 kubectl 为您提供的实际值,但为了简单起见,我将按照您编写的方式使用它们

如果你安装的 kubernetes 集群真的可以通过 api.secure.hostingprod.com 访问,那么更新你的 $HOME/.kube/config https://api.secure.hostingprod.com 目前说 https://api.subdomain.mydomain.com 应该让事情恢复正常。

或者,如果 api.secure.hosting prod.com 不是您可以使用的实际域(例如,如果您的证书在主机名中确实有一个空格),那么您有一个几个选项。

最便宜但最不正确的方法可能是通过设置 insecure-skip-tls 告诉 kubectl “我知道我在做什么,不要检查证书” $HOME/.kube/config 文件中 cluster 条目下的 -verify 选项:

- cluster:
insecure-skip-tls-verify: true

更麻烦但也是最正确的方法是使用实​​际主机名(显然是 api.subdomain.mydomain.com)为 API 服务器重新颁发证书。如果你知道怎么做,extra-super-best 是在证书中也添加“Subject Alternate Names”(缩写为“SAN”),以便集群内成员可以将其称为 https://kubernetes 和/或 https://kubernetes.default.svc.cluster.local,以及分配给 kubernetesService IP 地址> default 命名空间中的 Service。您当前的证书极有可能具有这些值,openssl x509 -in/path/to/your.crt -noout -text 将向您显示它们当前的值。如果您需要 openssl 位的帮助,CoreOS Kubernetes 有 a shell script他们使用,这可能会像书面的那样工作,或者如果没有别的提供非常具体的指导。

我确实知道这是很多话,也需要很多工作,但证书非常重要,因此尽可能正确地获得它们确实可以避免每个人的心痛。

关于amazon-web-services - Kubernetes 集群 x509 : Certifcate issue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43776504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com