Kaprenter update from version 0.37 to version 1.33

Thank you for reading this post, don't forget to subscribe!

есть модуль karpenter

infra/terraform/modules/karpenter/karpenter.tf

infra/terraform/modules/karpenter/main.tf

infra/terraform/modules/karpenter/variables.tf

и вот мой terragrunt

infra/terragrunt/test/eu-central-1/pre/infra_apps.hcl

nodepool

infra/terragrunt/test/eu-central-1/pre/nodepools.hcl

дирек­то­рия отку­да запус­ка­ем apply

infra/terragrunt/test/eu-central-1/pre/common/karpenter/terragrunt.hcl

 

теперь нуж­но сде­лать обнов­ле­ние до вер­сии 1,3,3 для это­го пра­вим модуль

infra/terraform/modules/karpenter/karpenter.tf

вклю­ча­ем webhook меня­ем api на v1 и добавляем

group = "karpenter.k8s.aws"
kind = "EC2NodeClass"

к

nodeClassRef

в фай­ле

infra/terragrunt/test/eu-central-1/pre/nodepools.hcl

меня­ем

consolidationPolicy = "WhenUnderutilized"
на
consolidationPolicy = "WhenEmptyOrUnderutilized"
в фай­ле
infra/terragrunt/test/eu-central-1/pre/infra_apps.hcl

меня­ем вер­сии сна­ча­ла на 1,0,6

 

апла­им всё норм.
потом нам нуж­но пере­ехать даль­ше на 1,3,3 для это­го пра­вим nodepool уби­ра­ем из него kubelet и добав­ля­ем в ec2nodeclass

меня­ем вер­сии в файле

infra/terragrunt/test/eu-central-1/pre/infra_apps.hcl

 

вот nodepool

/infra/terragrunt/test/eu-central-1/pre/nodepools.hcl

 

а вот модуль:

infra/terraform/modules/karpenter/karpenter.tf

 

как видим kubelet пере­не­сён в EC2NodeClass

можем апла­ить, но при аплае воз­ник­нет сле­ду­ю­щая ошибка

она воз­ни­ка­ет из-за того что в nodepool в annotation есть v1beta

мож­но попра­вить рука­ми а мож­но исполь­зо­вать сле­ду­ю­щие команды

у меня 3 нод пула infra infra-ondemand  services для всех них чистим анно­та­ции и можем аплаить.

 

пере­ехать сра­зу с 0.37 на 1.3.3 у меня не полу­чи­лось, пой­мал сле­ду­ю­щую ошибку: