misaelvf2 / cluster-scoped-cicd

Apache License 2.0
0 stars 0 forks source link

Kubernetes clusters created with Kind do not support Ingress by default #12

Closed misaelvf2 closed 3 years ago

misaelvf2 commented 3 years ago

To expose the EventListener referenced in #1 and #9 to the Internet (so that they are reachable by the GitHub WebHook), we need to expose that service via a Kubernetes Ingress object. Unfortunately, Kubernetes clusters created with Kind do not support Ingress by default.

We will need to create a new cluster, and specify that Ingress be turned on via a config file.

Additionally, after we have created our cluster with Ingress enabled, we still need to install an Ingress controller.

misaelvf2 commented 3 years ago

I was able to create a Kubernetes cluster with Kind with Ingress enabled through use of the following kind config file: https://github.com/misaelvf2/cluster-scoped-cicd/blob/master/hybrid/kind-config.yaml

To create a new Kubernetes cluster w/ Kind using this config file, simply run kind create cluster --config=kind-config.yaml.

Additionally, I installed Ambassador on our Kubernetes cluster as our Ingress Controller.

In order to make Ambassador create our defined Ingress objects, we need to annotate the Ingress as follows:

kubectl annotate ingress example-ingress kubernetes.io/ingress.class=ambassador

This is all well-documented here: https://kind.sigs.k8s.io/docs/user/ingress