Kubernetes Ingress - HTTPS (with ACM + Route53)¶
Pre-requisite Note
To follow along with the HTTPS demo, you should already have a registered domain name in AWS Route53.
This is important because ACM (AWS Certificate Manager) requires a domain for SSL certificate validation.
For learning purposes, you don’t need to actually implement this step end-to-end. Just understand the flow.
Step-01: What we’ll do¶
- Create ACM cert + Route53 DNS.
- Deploy HTTPS Ingress, test end-to-end.
- Undeploy the resources after learning
Step-02: SSL Certificate (ACM) + DNS (Route53)¶
- Request Public Certificate in AWS Certificate Manager (ACM):
Keep the certificate in the same AWS region as your EKS/ALB.
Step-03: Kubernetes Manifests (Ingress - HTTPS)¶
Folder: https_retail_store_k8s_manifests/
- 01_catalog
- 02_cart
- 03_checkout
- 04_orders
- 05_ui
-
06 Ingress Instance Mode: 06_ingress/01_ingress_http_instance_mode.yaml
Update both Ingress Manifests with SSL Certificate ARN¶
## SSL Settings
alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:us-east-1:180789647333:certificate/af739d1d-c527-4a44-a753-464f775dca25

Deploy Kubernetes Ingress HTTPS¶
# Apply all HTTPS manifests (includes Ingress with TLS annotations)
kubectl apply -R -f https_retail_store_k8s_manifests/
Create DNS record (Route53)¶
After ALB is provisioned (check ADDRESS column):
In Route53 → stacksimplify.com, create CNAME:
Step-04: Verify Kubernetes Ingress - HTTPS¶
# Ingress overall
kubectl get ingress -A
# Inspect annotations, rules, and TLS
kubectl describe ingress retail-store-https-instance-mode
kubectl describe ingress retail-store-https-ip-mode
# Test HTTPS with SNI
curl -vk https://retailstore.stacksimplify.com
Expect a valid TLS handshake (issued by ACM) and Retail Store UI over HTTPS.
Step-05: Undeploy Ingress HTTPS¶
🎉 New Course
Ultimate DevOps Real-World Project Implementation on AWS
$15.99
$84.99
81% OFF
DEVOPS2026FEB
Enroll Now on Udemy →
🎉 Offer