How to install AKS with internal ingress controller and API Management – Part III


In the last part, we saw how we accessed our AKS cluster, deployed a simple nodejs application and deployed an Api-Management instance in external vnet with azure cli. Lets move further and see how we can install ingress controller to set an entry point of the cluster for the incoming traffic.

At this stage, our Api-Management instance is up and ready in external vnet. In external vnet, Api Management developer portal and gateway url can be accessed publicly. However, for this to happen please open the following ports in your Api-Management Vnet.

Now, Please try to access the developer portal and gateway url in the browser with the public ip of the Api-Management instance. It should be accessible now :).

Lets deploy Nginx ingress controller now with helm. To download and install configure helm, please check out the following link :

How to Install and Configure Helm 3

 

Now run the following command to deploy ingress with private ip. In case, you do not want an in internal ingress controller, just dont specify the internal-ingress.yaml

helm install nginx-ingress ingress-nginx/ingress-nginx \
-f /root/internal-ingress.yaml \
–set controller.nodeSelector.”beta.kubernetes.io/os”=linux \
–set defaultBackend.nodeSelector.”beta.kubernetes.io/os”=linux \
–set controller.admissionWebhooks.patch.nodeSelector.”beta.kubernetes.io/os”=linux


Internal-ingress.yaml file :

[root@devopscheetah ~]# cat internal-ingress.yaml
controller:
service:
loadBalancerIP: 10.1.0.100 <——————- any IP from the subnet which is not yet assigned
annotations:
service.beta.kubernetes.io/azure-load-balancer-internal: “true”


Now, let us check our ingress controller’s status.

You can deploy your application pods and assign a dns name to each one of them in the “Private dns zone” service in Azure. Below is the sample file for ingress.yaml which basically contains the routing and this is host based routing.

Run ‘kubectl apply -f ingress.yml’ to apply this routing and you are good to go 😉

That’s all. Allow me to take a leave here. I hope you have followed the series and if not, please have a look :

How to install AKS with internal ingress controller and API Management – Part II

 

Leave a Reply

Your email address will not be published. Required fields are marked *