Ingress
The CDK and CDM use NGINX Ingress Controller.
For the CDK:
-
The cdk-minikube start command installs the ingress add-on in Minikube clusters.
-
Cluster administrators deploy NGINX Ingress Controller in shared GKE, EKS, and AKS clusters.
For the CDM:
-
The tf-apply cluster creation script deploys NGINX Ingress Controller by default when it creates new Kubernetes clusters.
-
Alternatively, you can deploy HAProxy Ingress as your ingress controller.
HAProxy Ingress
This section lists adjustments you’ll need to make if you want to deploy the CDM using HAProxy Ingress as your ingress controller instead of NGINX Ingress Controller.
-
Before you run the tf-apply script, configure Terraform to deploy HAProxy Ingress in your cluster.
Modify these values under
cluster.tf_cluster_gke_small
in the override.auto.tfvars file:-
Set the value of the
helm.ingress-nginx.deploy
variable tofalse
. -
Set the value of the
helm.ingress-haproxy.deploy
variable tofalse
.
-
-
After you have run the tf-apply script, deploy HAProxy Ingress Controller by running the bin/ingress-controller-deploy.sh script.
Be sure to specify the
-i haproxy
option when you run the script. -
To get the ingress controller’s external IP address on your GKE, EKS, or AKS cluster, specify --namespace haproxy-ingress (instead of --namespace nginx-ingress) when you run the kubectl get services command. For example:
$ kubectl get services --namespace haproxy-ingress NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE haproxy-ingress LoadBalancer 10.84.6.68 34.82.11.221 80:32288/TCP,443:32325/TCP 38s ...
When you deploy the CDM:
-
Specify the --ingress-class haproxy argument. For example:
$ cd /path/to/forgeops/bin $ ./forgeops install --small --ingress-class haproxy --fqdn cdm.example.com --namespace my-namespace