如何创建HELM https服务?

时间:2020-05-20 13:18:38

标签: visual-studio kubernetes kubernetes-helm

我打开Visual Studio 2019并创建一个新项目(用于kubernetes的容器应用程序)。我勾选启用https支持,然后在Visual Studio中开始调试时打勾。我可以浏览到https地址。

然后我尝试更进一步。我在开发PC上的Docker Desktop中启用了Kubernetes,并遵循以下说明(在打开所有.yaml文件并将所有https的引用更改为http并将所有端口80的引用更改为端口443之后):

1) cd C:\mvcsecure
2) docker build -t mvcsecure:stable -f c:\mvcsecure\mvcsecure\Dockerfile .
3) cd c:\mvcsecure\mvcsecure\charts
4) helm install mvcsecure ./mvcsecure/
5) kubectl expose deployment mvcsecure --type=NodePort --name=mvcsecure-service
6) kubectl get service
mvcsecure-service   NodePort    10.96.128.133    <none>        443:31577/TCP   6s
7) I then try to browse to: https://localhost:31577 and it says: 
Cannot securely connect to this page

enter image description here

请注意,没有选项可以信任证书或其他任何东西。

我必须对Visual Studio创建的默认Helm图表进行哪些更改,以使https在基本服务上正常工作?我在网上找不到任何文档或示例。非常高兴看到使用Helm将一个https服务(mvc或api)部署到Kubernetes的示例。如果需要,我可以发布.yaml文件代码,但是有很多。

我要按此处所述使用kubernetes集群根证书:How to access a kubernetes service through https?

我已经检查了“ Internet选项”中所有的TLS和SSL选项是否已勾选。

1 个答案:

答案 0 :(得分:0)

如果您的应用程序接受HTTP流量并且您想要进行安全(HTTPS);我建议尝试通过Kubernetes入口使用TLS termination

Kubernetes documentation很好地解释了如何配置TLS终止。使用入口对象,您可以使HTTP服务可以从群集外部通过HTTPS访问。

这意味着与服务建立的连接将在HTTPS中建立,并在到达服务之前在您的群集内部进行一次解密,还原为HTTP

希望有帮助。