Reputation: 336
I've been using Kubernete's LoadBalancer
type service for incoming traffic on AWS. However, it is hard to terminate SSL at a service level, thus the idea of using an Ingress.
However, a LoadBalancer
service allows us to make as many rolling changes as we like to our deployments without having to configure our DNS. By using Ingress, you can only use NodePort
and while we would like to use Ingress, mapping DNS to new node when the pod is deployed on another node is a problem.
Is there a way to point a Kubernetes to point to an Ingress controller or use a service type LoadBalancer
with an Ingress controller to terminate SSL.
We do not want to put our SSL certificates in a container, which is why this trouble.
Upvotes: 3
Views: 2475
Reputation: 5103
Is there a way to point a Kubernetes to point to an Ingress controller or use a service type LoadBalancer with an Ingress controller to terminate SSL.
You can simply deploy the on metal (nginx, haproxy, traefic...) ingress controllers as a pod/daemonset/rc in your cluster, and front it with a service of type=loadbalancer. You can find these controllers in various places like: https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx, https://libraries.io/go/github.com%2Ftimelinelabs%2Fromulus, https://github.com/containous/traefik/blob/fa25c8ef221d89719bd0c491b66bbf54e3d40438/docs/toml.md#kubernetes-ingress-backend,
Upvotes: 3