如何将SSL证书分配给作为kubernetes服务负载平衡器的区域ip
我有一个kubernetes服务,我把它放在负载平衡器后面。负载平衡器位于区域静态IP上。我不能使用全局IP的原因是,当我将它分配给我的服务时,它拒绝接受它。其他国家也面临同样的问题 我正在尝试为创建的TCP负载平衡器(区域IP)分配SSL证书,但在前端配置中,我没有看到任何选项 如果我使用全局IP,我可以看到创建/分配证书的选项,但我的服务拒绝IP,如上面的链接所示。 如何将SSL证书分配给作为kubernetes服务负载平衡器的区域ip?或者,如果您知道我的服务接受kubernetes服务的全球IP负载平衡器的方法,请让我知道如何将SSL证书分配给作为kubernetes服务负载平衡器的区域ip,ssl,kubernetes,google-cloud-platform,google-cloud-http-load-balancer,Ssl,Kubernetes,Google Cloud Platform,Google Cloud Http Load Balancer,我有一个kubernetes服务,我把它放在负载平衡器后面。负载平衡器位于区域静态IP上。我不能使用全局IP的原因是,当我将它分配给我的服务时,它拒绝接受它。其他国家也面临同样的问题 我正在尝试为创建的TCP负载平衡器(区域IP)分配SSL证书,但在前端配置中,我没有看到任何选项 如果我使用全局IP,我可以看到创建/分配证书的选项,但我的服务拒绝IP,如上面的链接所示。 如何将SSL证书分配给作为kubernetes服务负载平衡器的区域ip?或者,如果您知道我的服务接受kubernetes服务的
注意:我已禁用默认的gce入口控制器,我正在使用自己的入口控制器。因此,它不会自动创建外部ip。如果您使用区域TCP平衡器,则根本不可能将证书分配给负载平衡器,因为它在级别4(TCP)上运行,而SSL在级别7上运行。这就是为什么您看不到分配证书的选项 您需要在入口控制器级别分配SSL证书,如下所示:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: foo
namespace: default
spec:
tls:
- hosts:
- foo.bar.com
secretName: foo-secret
rules:
- host: foo.bar.com
http:
paths:
- backend:
serviceName: foo
servicePort: 80
path: /
若您使用区域TCP平衡器,那个么根本不可能将证书分配给负载平衡器,因为它在级别4(TCP)上运行,而SSL在级别7上运行。这就是为什么您看不到分配证书的选项 您需要在入口控制器级别分配SSL证书,如下所示:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: foo
namespace: default
spec:
tls:
- hosts:
- foo.bar.com
secretName: foo-secret
rules:
- host: foo.bar.com
http:
paths:
- backend:
serviceName: foo
servicePort: 80
path: /
对于具有类似任务的其他人,我建议使用cert manager:对于具有类似任务的其他人,我建议使用cert manager: