This repo contains scripts to streamline the setup of self hosted Ephemeral on EKS/AWS.
Get the repo
git clone https://github.com/TonicAI/ephemeral-setup-kt ephemeral-setup
cd ephemeral-setupSetup environment variables
cp environment-template.sh environment.sh& specify
- AWS_REGION
- CLUSTER_NAME (name you are giving to your EKS cluster)
- EPHEMERAL_DOMAIN (DNS sub-domain the Ephemeral database records will be added to)
source environment.shYou should now be able to run the scripts sequentially
PATH=$PATH:.
01-cluster-setup.sh
02-create-hosted-dns-zone.sh
03-create-service-account.sh
04-external-dns-install.sh
05-install-snapshot-class.sh
06-install-ephemeral.sh If you want to expose Ephemeral via a public IP you will need to install an AWS Load Balancer. Between steps 5 & 6 above perform the following
cd application-load-balancer
01-tag-public-subnets-for-lb.sh
02-create-alb-service-account.sh
03-alb-install.shIf required you should now be able to install Structural onto the same K8s cluster.
It is best not to simply delete the EKS cluster if tearing down as resources will remain and this will make any recreation difficult. Instead run the teardown scripts provided (see teardown directory). Each setup script above has a corresponding teardown script. They should be run in reverse numerical order.
06-remove-ephemeral.sh
05-remove-snapshot-class.sh
04-remove-external-dns.sh
03-remove-service-account.sh
02-delete-hosted-dns-zone.sh
01-cluster-remove.sh If an application load balancer has been set up run the following between steps 6 & 5.
cd application-load-balancer/alb-cleanup
03-uninstall-alb.sh
02-remove-alb-service-account.sh
01-untag-public-subnets-for-lb.sh