Nginx入口控制器性能问题



我有一个GKE集群、外部域名和letsencrypt证书。当我使用负载均衡器并指示pod使用我使用certbot生成的证书时,性能相当好。但是我必须手动更新证书,这需要花费很多精力。

当使用入口控制器并让cert-manager自己更新证书时,那么额外的跳会增加延迟并使流量路径更加复杂。然后连接是h2从客户端到入口,然后连接变成普通的HTTP从入口到pod。

是否有任何方法可以在使用nginx入口控制器时删除额外的跳数并取出性能问题?

如果您使用带有入口的证书管理器,则没有额外的跳。

你可以使用cert-manager它会保存证书秘密并附着在入口。但是,这取决于您在哪里执行TLS终止。

您也可以绕过HTTPS流量直到POD端到端加密,如果您在入口级备份流量中进行TLS终止,直到POD将在plainHTTP.

Internet > ingress (TLS in secret) > Plain HTTP if you terminate > service > PODs

如果您想在POD中使用证书,您可以将密钥挂载到POD中,这将由应用程序进一步使用。

https://kubernetes.io/docs/concepts/configuration/secret/using-secrets-as-files-from-a-pod

如果您将与POD一起使用secret,则可能需要重新加载POD,在这种情况下,您可以使用Reloader自动推出POD。

Reloader: https://github.com/stakater/Reloader

最新更新