I've noticed that the addons across our EKS clusters are all over the place. Some are created manually as daemonsets, while others are managed through Terraform. Then there are those that were automatically added by EKS when the clusters were set up, and a few that were added via the AWS console. Initially, I thought it would be great to let EKS handle these addons and keep them updated automatically. However, after considering how a bad upgrade could potentially crash the entire cluster, I'm not so sure anymore. What's everyone's take on the best practice here? I'm leaning towards managing all addons through Terraform, but I'm worried about the potential downtime when transitioning from the current setup to that.
3 Answers
Definitely manage everything with Terraform! Just declare the addons in your Terraform configuration and use the import feature. It’s pretty smooth; you won’t have to deal with downtime since the resources aren’t being recreated.
Stick to using the EKS API to handle core AWS addons through managed addons. You can create these types with Terraform too. For any custom addons, Helm or Kubernetes Terraform is the way to go.
EKS Auto Mode does take care of the most common addons for you, which is convenient. But, from what I'm hearing, it manages a lot more than just the addons and people generally prefer to avoid AWS messing with version management. Are you using Auto Mode right now?
Related Questions
Can't Load PhpMyadmin On After Server Update
Redirect www to non-www in Apache Conf
How To Check If Your SSL Cert Is SHA 1
Windows TrackPad Gestures