Overview My goal with this post is to explore Kubernetes' Ingress Controller and Ingress resources. The best way to do that is to deploy a real application: a Wordpress site with a Varnish HTTP cache and a MariaDB database. If you're following along, I'm using minikube (v0.19.0). Let's dive right in. This is the overall setup we want to end up with: Ingress Controller The Ingress Controller is a control loop that handles inbound traffic and applies rules to deliver that traffic to applications within our Kubernetes cluster. It runs separately from the Kubernetes master and allows you to write your own controller code. This is great because we can decouple the routing rules from our application. Minikube ships with an Nginx Ingress Controller that you can enable by running: minikube addons enable ingress If you are using GCE, the controller will be an L7 Cloud Load Balancer, while on AWS you will get an Application Load Balancer (ALS). In either case, the controller listens to ingress events in the Kubernetes API and creates all the resources needed to route the traffic. Unless you plan to write your own controller, this will be done behind the scenes. All you need to do is create
Share This