aws-ia / terraform-aws-eks-blueprints-addons

Terraform module which provisions addons on Amazon EKS clusters
https://aws-ia.github.io/terraform-aws-eks-blueprints-addons/main/
Apache License 2.0
267 stars 127 forks source link

Are the addons going to be updated to support newer helm versions with the impending gcr.io registry change? #120

Closed that-kampe-steak closed 1 year ago

that-kampe-steak commented 1 year ago

Addons seemingly will expire soon with no recourse as these are hard coded in the repository. Is there a plan to manage this?

https://kubernetes.io/blog/2023/03/10/image-registry-redirect/

askulkarni2 commented 1 year ago

Hi @that-kampe-steak, as far as k8s.gcr.io is concerned except the local-volume-provisioner add-on I don't see that we have any other harcoded image repository. We rely on the owners of those particular upstream add-ons to make those changes to their respective helm charts. Additionally, customers are able to override the image location by passing their values.yaml to any add-on configuration. See https://github.com/aws-ia/terraform-aws-eks-blueprints/blob/12e43950ab56eaba44307e14739d4860edd1511f/examples/agones-game-controller/helm_values/agones-values.yaml#L155.

prognostikos commented 1 year ago

Just for info for the next person looking for this - I was able to update the helm charts in addons by specifying the version of the chart to use. From https://aws.amazon.com/blogs/containers/changes-to-the-kubernetes-container-image-registry/ I used the following to find images with the old registry:

kubectl get pods --all-namespaces -o jsonpath="{.items[*].spec.containers[*].image}" |\
tr -s '[[:space:]]' '\n' |\
sort |\
uniq -c |\
grep "k8s.gcr.io"

For my cluster the metrics-server image and the cluster-proportional-autoscaler had the old registry values. I updated my cluster as follows and new charts with the corrected image urls were added:

diff --git terraform/cluster/main.tf terraform/cluster/main.tf
index 292a465..8dbb13e 100644
--- terraform/cluster/main.tf
+++ terraform/cluster/main.tf
@@ -138,6 +138,9 @@ module "eks_blueprints_kubernetes_addons" {
   enable_self_managed_coredns                    = true
   remove_default_coredns_deployment              = true
   enable_coredns_cluster_proportional_autoscaler = true
+  coredns_cluster_proportional_autoscaler_helm_config = {
+    version = "1.1.0"
+  }
   self_managed_coredns_helm_config = {
     kubernetes_version = module.eks_blueprints.eks_cluster_version
   }
@@ -165,6 +168,7 @@ module "eks_blueprints_kubernetes_addons" {
   enable_metrics_server = true
   metrics_server_helm_config = {
     namespace = "kube-system"
+    version = "3.9.0"
   }

   enable_cert_manager = true
askulkarni2 commented 1 year ago

@prognostikos appreciate the snippet. Also in https://github.com/aws-ia/terraform-aws-eks-blueprints-addons we will be refreshing all the add-on versions to the latest available helm chart versions.

bryantbiggs commented 1 year ago

metrics-server resolved in https://github.com/aws-ia/terraform-aws-eks-blueprints-addons/pull/122

bryantbiggs commented 1 year ago

cluster-proportional-autoscaler resolved in #125 - this is now resolved in this project, thank you!