2025-01-05Hünkar Döner

EKS Node AMI ve Patch Yönetimi Rehberi

EKSMaintenanceAMISecurity
E

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 PodDisruptionBudget ayarları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.

  1. Yeni AMI ID'sini bulun.
  2. Auto Scaling Group'un (ASG) Launch Template'ini güncelleyin.
  3. instance-refresh baş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.