Enable HTTPS on Azure Kubernetes
Budget: $10 – $30 USD
My AKS cluster currently serves traffic over plain HTTP. I want every public-facing service to be reachable only through HTTPS, managed directly inside the cluster—not via Azure Application Gateway.
Target approach
I would like you to deploy and configure a Kubernetes Ingress controller together with Cert-Manager so that certificates are issued automatically (Let’s Encrypt or another public CA, whichever is fastest to put in place). All required Kubernetes manifests, Helm charts, or Terraform modules should be part of the hand-off so I can recreate the setup in another environment.
Key points
• AKS (latest stable version) is already running and kube-config access will be provided.
• Ingress must terminate TLS and redirect any HTTP traffic to HTTPS.
• Certificate renewal has to be fully automated with zero downtime.
• Only cluster-native resources (Ingress + Cert-Manager) should be used; no Azure Application Gateway or external load balancer tweaks beyond the standard AKS service.
Deliverables
1. Applied manifests/Helm release files for the chosen Ingress controller (Nginx or Traefik are both fine).
2. Cert-Manager installation and ClusterIssuer/Issuer definitions.
3. Example Ingress resource showing a working HTTPS endpoint.
4. A short README that walks me through redeploying everything from scratch.
Acceptance criteria
– Curl against the service returns a valid certificate chain and an automatic 301/302 from HTTP to HTTPS.
– `kubectl describe certificate` shows the certificate in a Ready state with a renewal schedule.
– All resources validate with `kubectl get events` free of errors or pending conditions.
If this sounds straightforward to you and you can knock it out quickly, let’s get started.
Target approach
I would like you to deploy and configure a Kubernetes Ingress controller together with Cert-Manager so that certificates are issued automatically (Let’s Encrypt or another public CA, whichever is fastest to put in place). All required Kubernetes manifests, Helm charts, or Terraform modules should be part of the hand-off so I can recreate the setup in another environment.
Key points
• AKS (latest stable version) is already running and kube-config access will be provided.
• Ingress must terminate TLS and redirect any HTTP traffic to HTTPS.
• Certificate renewal has to be fully automated with zero downtime.
• Only cluster-native resources (Ingress + Cert-Manager) should be used; no Azure Application Gateway or external load balancer tweaks beyond the standard AKS service.
Deliverables
1. Applied manifests/Helm release files for the chosen Ingress controller (Nginx or Traefik are both fine).
2. Cert-Manager installation and ClusterIssuer/Issuer definitions.
3. Example Ingress resource showing a working HTTPS endpoint.
4. A short README that walks me through redeploying everything from scratch.
Acceptance criteria
– Curl against the service returns a valid certificate chain and an automatic 301/302 from HTTP to HTTPS.
– `kubectl describe certificate` shows the certificate in a Ready state with a renewal schedule.
– All resources validate with `kubectl get events` free of errors or pending conditions.
If this sounds straightforward to you and you can knock it out quickly, let’s get started.
Related categories:
Linux
Cloud Computing
Azure
Nginx
Amazon Web Services
Node.js
Kubernetes
Terraform