This project uses CDK Pipelines to define a self mutating pipeline to deploy EKS Cluster(s) to perform tasks like: Blue/Green cluster upgrade, replicate clusters consistently across environments/accounts and etc. It uses CDK for cluster, node, infrastructure and app configuration.
This is the pipeline generated by CDK Pipelines with the following stages: Source, Build, UpdatePipeline, Assets, DeployEKSClusters, UpdateDNS
- Node Policy
- Custom Launch Template
Uses Helm Charts and IRSA
- CA (cluster-autoscaler)
- metrics-server
- prometheus
- AWS Load Balancer Controller
- external-dns
- Calico (tigera-operator)
- Containers Insigths (amazon-cloudwatch and aws-for-fluent-bit)
- Deployment
- Service
- Ingress
- Route53
To deploy the pipeline for the first time, you'll need a GitHub secret name github-oauth-token
in your Secrets Manager and then you can deploy it using cdk deploy
. After the first deploy, any change that you push to your Git Repository will update the Pipeline and execute.
This project also uses two SSM parameters: /eks-cdk-pipelines/hostZoneId
(String) and /eks-cdk-pipelines/zoneName
(String). You can use parameters.sh
to interactively include your parameters.
See CONTRIBUTING for more information.
This library is licensed under the MIT-0 License. See the LICENSE file.