Google Cloud Console GKE中的SSL证书未更新 [英] SSL Certificate not updating in Google Cloud Console GKE

查看:17
本文介绍了Google Cloud Console GKE中的SSL证书未更新的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我从我的客户那里收到了一项任务,该任务与在站点上添加SSL证书有关。该网站上已经安装了现已过期的"让我们加密SSL证书"(我通过单击浏览器&Not Secure&Quot;红色通知获得此信息,该通知显示在您输入的URL左侧,然后进入弹出窗口中的"证书"选项)。screenshot of popup

我的客户端站点托管在Google云上。该站点在1个实例组中有4个VM实例。它还有一个TCP负载平衡器,其中有1个目标池,后端类型为targetpool-targetinstance,并在后端显示了4个以上的VM实例。负载均衡前端配置包括TCP为协议,Premium为网络层,80-443端口选项取值。screenshot of frontend configuration

4个VM实例中的每个实例都在";in use by";列中显示两个值,一个是实例组名称,另一个是TCP负载平衡器名称。在实例组中,它显示in use byas";Production&Quot;,并单击将哪个应用到生产群集。

然后我从connect选项打开群集shell并运行此命令。

kubectl get secrets/tls-retail -o yaml

在这里我发现此密码与SSL有关,tls.crt字段中的值(从证书解码器解码并检查base64时)显示的过期日期与浏览器弹出窗口中显示的相同

然后我更改了同一机密文件中的tls.crt值,并使用以下代码保存了它,但没有任何影响。

EDITOR=nano kubectl edit secrets tls-retail

通过这个堆栈溢出链接(How to restart a GCP Ingress Item To Use Updated Secret),我发现它需要10-20分钟才能生效,但即使在1-2小时之后也没有任何影响。你能告诉我为什么这个变化没有任何影响吗?或者,如果有人能指导我如何在上述情况下使用Google托管SSL证书,因为我是Google控制台和GKE的新手。

谢谢

推荐答案

转到网络服务&>负载平衡并单击"高级"菜单链接时,可以单击"证书"选项卡以查看已向项目添加了哪些证书。你的新证书在那里吗?您的入口是否将其列为正在使用?

此群集是如何部署的?入口是如何部署的?这是使用";clickops";(使用Web界面)部署的,还是使用部署管理器(GCP产品)或Terraform之类的IAC部署的?当我需要轮换我的证书时,我:

  1. 通过单击";负载平衡&界面的高级菜单中的";创建SSL证书
  2. ,将新版本的证书添加到项目中
  3. 在我在步骤1中访问的界面中上载了新的证书文件。我给它起了一个有意义的名称(我们称它为";my-new-cert";)
  4. 更新了入口的Deployment Manager配置文件,将properties.metadata.annotations.ingress.gcp.kubernetes.io/pre-shared-cert设置为my-new-cert
  5. 使用部署管理器命令重新部署入口。
要记住的另一件事是您链接到的帖子中的第二个注释-它提到如果证书无效,GKE不会安装证书。我建议使用openssl-here's a relevant thread验证证书链,这可能会对您有所帮助。

=编辑为添加== 在GCP控制台中,您还可以转到Kubernetes Engine>;Services&;Inress&>&选项卡,单击有问题的入口,然后单击顶部的Edit链接以更新其YAML(使用您已添加到项目中的新证书的名称)。在GCP控制台中,您还可以转到Kubernetes Engine>;Services&;Inress&>选项卡,单击有问题的入口,然后单击顶部的Edit链接以更新其YAML(使用您已添加到项目中的新证书的名称)。如果您使用了某种类型的IAC来部署此入口,我不推荐使用此方法,因为它基本上等同于一个猴子补丁,如果重新部署IAC,它将被覆盖。但是你可以试试。因为我将IAC用于我的东西,所以我没有测试此方法,但我猜它可编辑的,这是有原因的。

这篇关于Google Cloud Console GKE中的SSL证书未更新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆