Ingress

K8s AKS ingress

Deploy NGINX ingress

Create a values file:

cat <<EOF >ingress-internal.yml
controller:
  service:
    loadBalancerIP: 10.240.0.42
    annotations:
      service.beta.kubernetes.io/azure-load-balancer-internal: "true"

EOF

Check you network CIDR to specify loadBalancerIP.

You can also omit it in order to leave Azure to allocate an IP.

Create a namespace.

kubectl create namespace ingress-internal

Deploy NGINX ingress

helm install stable/nginx-ingress \
    --name=ingress-internal \
    --namespace ingress-internal \
    -f ingress-internal.yml \
    --set controller.replicaCount=2 \
    --set controller.nodeSelector."beta\.kubernetes\.io/os"=linux \
    --set defaultBackend.nodeSelector."beta\.kubernetes\.io/os"=linux

Check service IP.

The EXTERNAL-IP is actually the ingress internal IP.

References

https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/aks/ingress-internal-ip.md

Test it

Edit your hosts file and point www.example.com to your ingress internal IP.

Last updated