This post is about exposing a web application to a public domain from a AWS EKS cluster.
- AWS EKS cluster is setup
- A web application is running in the cluster with at lease two replicas
It is easier to just get the certificate from AWS since everything else is running here anyways. Request a public certificate from AWS ACN for your domain. Remember to note down the
arn from the aws console once the certificate is created and DNS validation is done.
Example taken from
# Note that the backend talks over HTTP.
# TODO: Fill in with the ARN of your certificate.
# Only run SSL on the port named "https" below.
- name: http
- name: https
Once you deploy this new configuration via
helm upgrade you should see the
lbsvc_name name in
kubectl get svc output.
Setup Domain DNS
Note down the
kubectl get svc output for
lbsvc_name. Create a
CNAME record for your domain’s DNS that points to this aws address. With this setup both http and https sites will work. To restrict http delete the port
80 listener from load balancer.