EKS Node AMI ve Patch Yönetimi Rehberi
EKS Node AMI ve Patch Yönetimi
EKS Control Plane güncellemeleri AWS tarafından yönetilirken, Data Plane (Worker Nodes) güncellemeleri sizin sorumluluğunuzdadır. Node'larınızın işletim sistemi (Amazon Linux 2, Bottlerocket) güvenlik yamalarını almalı ve güncel kalmalıdır.
Amazon EKS üzerinde node güncelleme stratejileri şunlardır:
1. Managed Node Groups (Kolay Yol)
Eğer Managed Node Groups kullanıyorsanız, AWS yeni bir AMI yayınladığında EKS konsolunda bir "Update now" butonu belirir.
- Bu butona bastığınızda (veya API ile tetiklediğinizde), AWS otomatik olarak yeni bir node açar, eskisinindeki podları boşaltır (drain) ve eski node'u kapatır (Rolling Update).
- Dikkat: Podlarınızın
PodDisruptionBudgetayarlarının doğru olduğundan emin olun, aksi takdirde kesinti yaşanabilir.
2. Self-Managed Node Groups (Zor Yol)
Eğer node'ları kendiniz yönetiyorsanız (Custom Launch Template), süreç daha manueldir.
- Yeni AMI ID'sini bulun.
- Auto Scaling Group'un (ASG) Launch Template'ini güncelleyin.
instance-refreshbaşlatın. Bu işlem sırayla node'ları yeniler.
3. Otomasyon (Karpenter)
Karpenter, node yaşam döngüsünü de yönetir. drift özelliği sayesinde, Launch Template'deki AMI değiştiğinde veya güvenlik nedeniyle node'un süresi dolduğunda (TTL), Karpenter otomatik olarak node'u yeniler.
Bottlerocket OS
Güvenlik yamalarıyla uğraşmak istemiyorsanız, AWS'in konteynerler için özel tasarladığı, sadece okunan (read-only) işletim sistemi Bottlerocket'i kullanın. Güncellemeler paket değil, atomik imaj değişimi olarak yapılır.