NGINX ingress controller
This page describes the legacy CDM implementation, which will be deprecated in an upcoming release. We strongly recommend that you transition to the current CDM implementation as soon as possible.
Use the NGINX ingress controller when you deploy the CDM.
Remember, the CDM is a reference implementation and not for production use. When you create a project plan, you’ll need to determine which ingress controller to use in production.
After you’ve finished deploying the CDM, you can use the CDM as a sandbox to explore deployment with a different ingress controller.
To deploy an NGINX ingress controller in a GKE cluster:
Verify that you initialized your cluster by performing the steps in Kubernetes cluster creation.
If you did not set up your cluster using this technique, the cluster might be missing some required configuration.
Deploy the NGINX ingress controller in your cluster:
$ /path/to/forgeops/bin/ingress-controller-deploy.sh --gke Deploying Ingress Controller to GKE… namespace/nginx created Detected cluster of type: small Setting ingress pod count to 1 "ingress-nginx" has been added to your repositories Release "ingress-nginx" does not exist. Installing it now. NAME: ingress-nginx LAST DEPLOYED: Mon May 10 14:15:40 2021 NAMESPACE: nginx STATUS: deployed REVISION: 1 TEST SUITE: None . . .
Check the status of the pods in the
nginxnamespace until all the pods are ready:
$ kubectl get pods --namespace nginx NAME READY STATUS RESTARTS AGE ingress-nginx-controller-d794bb476-xxx6j 1/1 Running 0 4m38s
Get the ingress controller’s external IP address:
$ kubectl get services --namespace nginx NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE ingress-nginx-controller LoadBalancer 10.4.6.154 18.104.22.168 80:30300/TCP,443:30638/TCP 58s ingress-nginx-controller-admission ClusterIP 10.4.4.9 <none> 443/TCP 58s
The ingress controller’s IP address should appear in the
EXTERNAL-IPcolumn. There can be a short delay while the ingress starts before the IP address appears in the
kubectl get servicescommand’s output; you might need to run the command several times.
Add an entry to the /etc/hosts file to resolve the deployment FQDN used by the platform UIs and APIs. For example:
ingress-ip-address, specify the external IP address of the ingress controller service in the previous command.