首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kubernetes,Kops集群的更改服务器

Kubernetes,Kops集群的更改服务器
EN

Stack Overflow用户
提问于 2019-12-30 11:21:55
回答 2查看 667关注 0票数 1

我使用kops在AWS上设置了一个kubernetes集群。

现在,服务器url是https://old-server-url.com。该url是在Route53上配置的,指向集群主实例的公共ip。

我想把这个换成https://new-server-url.com。我用主IP在Route53上配置了新的url。但是它只是用新的URL打开kubernetes仪表板。我不能用这个网址通过kubectl访问kubernetes服务器。

这是在用新url更改kubeconfig文件并运行kubectl pods命令时遇到的错误。

"Unable to connect to the server: x509: certificate is valid for internal.old-server-url.com, old-server-url.com, kubernetes, kubernetes.default, kubernetes.default.svc, kubernetes.default.svc.cluster.local, not new-server-url.com"

如果只有kubernetes集群的服务器被更改,并且我可以通过kubectl /kubectl访问它,我需要更改哪些配置?

更新:在使用kubectl命令中的--不安全-跳过-tls-验证标志之后,我可以访问我的集群。但这是不安全的。我想知道如何在kops提供的集群中更改Certf隐形,对此场景的影响最小。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-30 12:18:19

要解决错误,请执行以下操作:

代码语言:javascript
运行
复制
"Unable to connect to the server: x509: certificate is valid for internal.old-server-url.com, old-server-url.com, kubernetes, kubernetes.default, kubernetes.default.svc, kubernetes.default.svc.cluster.local, not new-server-url.com"

您可以使用kubectl命令使用-不安全-跳过-tls-验证标志,如下所示:对kubernetes主机的无效x509证书

不建议在生产环境中这样做。

票数 3
EN

Stack Overflow用户

发布于 2019-12-30 11:31:37

Kubectl使用kubeconfig file.In,该文件需要将API服务器url从旧url更改为新url。

编辑:

更改url的影响是,您需要用新的url作为“主机”重新生成kube证书,否则kubectl将因证书验证错误而失败。

这是因为kubectl在调用k8s API服务器时会验证kube提供的服务器证书。

要使用kubeadm (kops内部使用kubeadm)在主节点中重新生成kube apiserver证书,您可以运行以下命令:

代码语言:javascript
运行
复制
rm /etc/kubernetes/pki/apiserver.*
kubeadm init phase certs all --apiserver-cert-extra-sans=https://new-server-url.com
docker rm -f `docker ps -q -f 'name=k8s_kube-apiserver*'`
systemctl restart kubelet

默认SAN为kubernetes、kubernetes.default、kubernetes.default.svc、kubernetes.default.svc.cluster.local、10.96.0.1、127.0.0.1

官方文件

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59529986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档