EKS Denetim Düzlemi ve Çalışan Düğümleri
AWS'nin EKS denetim düzleminde neleri yönettiğini anlayın, yönetilen düğüm grupları sağlayın ve kubectl'yi kümenize bağlayın.
EKS Denetim Düzlemi ve Çalışan Düğümleri, CoddyKit'te ücretsiz bir AWS Solutions Architect dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AWS Solutions Architect öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AWS Solutions Architect kursu toplamda 4 dersten oluşur.
Amazon EKS Nedir
Amazon Elastic Kubernetes Service (EKS), Kubernetes kontrol düzlemini kurma, çalıştırma ve bakımını yapma yükünü ortadan kaldıran, tamamen yönetilen bir Kubernetes hizmetidir. AWS, yüksek kullanılabilirliğe sahip bir küme uç noktası sağlayarak kontrol düzlemini birden çok Kullanılabilirlik Alanında çalıştırır, ölçeklendirir ve yükseltir. Siz yalnızca uygulama iş yüklerinizi dağıtmaya ve yönetmeye odaklanırsınız.
EKS Kontrol Düzlemi
EKS control plane; API sunucusu, etcd, denetleyici yöneticisi ve zamanlayıcıdan oluşur ve bunların tümü AWS tarafından yönetilir. Bu bileşenler AWS'nin sahip olduğu hesaplarda çalışır; yani bunlara hiçbir zaman SSH ile bağlanmazsınız. AWS, EKS API uç noktası için 99.95% SLA taahhüt eder ve sağlıksız kontrol düzlemi düğümlerini otomatik olarak değiştirir. Kontrol düzlemi için küme başına saatlik sabit bir ücret ödersiniz.
EKS Kümesi Oluşturma
AWS Console, eksctl veya CloudFormation kullanarak bir EKS kümesi oluşturabilirsiniz. Küme, en az iki AZ'ye yayılmış alt ağlara sahip bir VPC with subnets across at least two AZs ve Kubernetes kontrol düzleminin AWS API'lerini çağırmasına izin veren bir IAM rolü gerektirir. Oluşturulduktan sonra küme uç noktası, kubeconfig dosyanızda yapılandırdığınız bir HTTPS URL'sidir.
# Create a cluster with eksctl (recommended for getting started)
eksctl create cluster \
--name my-cluster \
--region us-east-1 \
--version 1.29 \
--nodegroup-name standard-nodes \
--node-type m5.large \
--nodes 3 \
--nodes-min 1 \
--nodes-max 5kubectl'yi EKS'e Bağlama
Kümeyi oluşturduktan sonra yerel kubeconfig dosyanızı güncelleyerek kubectl'nin EKS API sunucusuna nasıl ulaşacağını bilmesini sağlayın. AWS CLI gerekli girdiyi otomatik olarak oluşturur. EKS API sunucusu kimlik doğrulaması için AWS IAM for authentication kullanır; IAM kullanıcınız veya rolünüz, aws-auth ConfigMap aracılığıyla bir Kubernetes RBAC kimliğine eşlenir.
# Update kubeconfig for your EKS cluster
aws eks update-kubeconfig \
--region us-east-1 \
--name my-cluster
# Verify connectivity
kubectl get nodes
kubectl get pods --all-namespacesYönetilen Düğüm Grupları
Managed node groups, AWS'nin EC2 çalışan düğümlerini sizin adınıza sağlamasına, kaydetmesine ve yaşam döngüsünü yönetmesine olanak tanır. Bir güncelleme veya değiştirme istediğinizde EKS, pod'ları otomatik olarak boşaltır, bulut sunucusunu değiştirir ve yeniden kaydeder; bunların tümü elle müdahale olmadan gerçekleşir. Yönetilen düğüm grupları, arka planda Auto Scaling Groups kullanır; böylece minimum/maksimum/istenen kapasite denetimi ve Cluster Autoscaler ile entegrasyon sağlanır.
# Add a managed node group to an existing cluster
eksctl create nodegroup \
--cluster my-cluster \
--region us-east-1 \
--name high-mem-nodes \
--node-type r6i.large \
--nodes 2 \
--nodes-min 1 \
--nodes-max 10 \
--managedKendi Yönettiğiniz Düğüm Grupları
self-managed node groups kullanırken EC2 bulut sunucularını kendiniz (CloudFormation veya Terraform aracılığıyla) başlatır ve bootstrap betiğini çalıştırarak bunları EKS kümesine kaydedersiniz. Bu yöntem size en yüksek esnekliği sağlar; custom AMIs, GPU bulut sunucusu türleri veya büyük ölçüde özelleştirilmiş çekirdek yapılandırmaları kullanabilirsiniz. Ancak düğerlere yama uygulamak, düğümleri boşaltmak ve değiştirmek tamamen sizin sorumluluğunuzdadır.
# Bootstrap script baked into the launch template
/etc/eks/bootstrap.sh my-cluster \
--apiserver-endpoint 'https://EXAMPLE.gr7.us-east-1.eks.amazonaws.com' \
--b64-cluster-ca 'BASE64_ENCODED_CA' \
--kubelet-extra-args '--node-labels=role=custom'Düğüm IAM Rolü ve Bulut Sunucusu Profili
Her çalışan düğüm, şu üç AWS tarafından yönetilen politikaya sahip bir EC2 instance profile ile çalışmalıdır: AmazonEKSWorkerNodePolicy, AmazonEKS_CNI_Policy ve AmazonEC2ContainerRegistryReadOnly. Bunlar düğümün kümeye katılmasına, VPC CNI eklentisiyle pod ağını yönetmesine ve ECR'den görüntü çekmesine izin verir. Bu politikalar olmadan düğümler kaydolamaz.
# Attach required policies to the node role
aws iam attach-role-policy \
--role-name EKSNodeRole \
--policy-arn arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy
aws iam attach-role-policy \
--role-name EKSNodeRole \
--policy-arn arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy
aws iam attach-role-policy \
--role-name EKSNodeRole \
--policy-arn arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnlyaws-auth ConfigMap: IAM'den RBAC'ye Eşleme
EKS, IAM kullanıcılarını ve rollerini Kubernetes kullanıcı adlarıyla gruplarına eşlemek için kube-system ad alanındaki aws-auth ConfigMap'i kullanır. Bir küme oluşturduğunuzda yalnızca oluşturucunun IAM kimliğine otomatik olarak yönetici erişimi verilir. Diğer kullanıcıların veya CI/CD rollerinin kümeye erişmesine izin vermek için bu ConfigMap'e doğru mapRoles veya mapUsers anahtarlarıyla girdiler eklemeniz gerekir.
# View and edit the aws-auth ConfigMap
kubectl describe configmap aws-auth -n kube-system
# Add a role mapping (example YAML fragment)
# mapRoles:
# - rolearn: arn:aws:iam::111122223333:role/EKSNodeRole
# username: system:node:{{EC2PrivateDNSName}}
# groups:
# - system:bootstrappers
# - system:nodesEKS Eklentileri ve Küme Yükseltmeleri
EKS add-ons, EKS'nin sizin adınıza kurup güncel tutabildiği, AWS tarafından doğrulanmış ve özenle seçilmiş yazılım bileşenleridir; bunlara VPC CNI, CoreDNS ve kube-proxy örnek verilebilir. Kümenizin Kubernetes sürümünü yükselttiğinizde önce kontrol düzlemini, ardından her yönetilen düğüm grubunu eşleşen sürüme güncellersiniz. EKS, dağıtım süresi boyunca kontrol düzlemi ile düğümler arasında N-1 küçük sürüm farkını destekler.
# List available add-ons and their versions
aws eks describe-addon-versions \
--kubernetes-version 1.29 \
--query 'addons[].{Name:addonName,Versions:addonVersions[0].addonVersion}' \
--output table
# Update the VPC CNI add-on
aws eks update-addon \
--cluster-name my-cluster \
--addon-name vpc-cni \
--addon-version v1.16.0-eksbuild.1EKS Güvenliği: Uç Nokta Erişimi ve Şifreleme
EKS API sunucusu uç noktası public only, private only veya her ikisi olarak yapılandırılabilir. Genel uç noktalar IAM kimlik doğrulamasıyla korunur; yalnızca özel uç noktalar için kubeconfig dosyanızın VPC'ye VPN veya Direct Connect üzerinden ulaşması gerekir. Ayrıca Kubernetes gizli bilgilerinin bekleme durumundaki envelope encryption özelliğini bir AWS KMS anahtarı kullanarak etkinleştirebilir ve hassas yapılandırma verileri için ek bir koruma katmanı sağlayabilirsiniz.
# Enable private endpoint and envelope encryption at cluster creation
aws eks create-cluster \
--name secure-cluster \
--kubernetes-version 1.29 \
--role-arn arn:aws:iam::111122223333:role/EKSClusterRole \
--resources-vpc-config subnetIds=subnet-xxx,securityGroupIds=sg-xxx,endpointPublicAccess=false,endpointPrivateAccess=true \
--encryption-config '[{"provider":{"keyArn":"arn:aws:kms:us-east-1:111122223333:key/KEY_ID"},"resources":["secrets"]}]'EKS üzerinde Cluster Autoscaler
Cluster Autoscaler, zamanlanamayan pod'ları izleyen ve yönetilen düğüm gruplarındaki Auto Scaling Groups boyutunu otomatik olarak ayarlayan bir Kubernetes pod'udur. Yetersiz kaynaklar nedeniyle pod'lar zamanlanamadığında Cluster Autoscaler ölçeği büyütür. Düğümler yeterince kullanılmadığında ve pod'ları başka yerlere yeniden zamanlanabildiğinde ölçeği küçültür. IRSA aracılığıyla EC2 Auto Scaling API'sini çağırmak için IAM izinleri gerekir.
# Deploy Cluster Autoscaler (abbreviated)
kubectl apply -f https://raw.githubusercontent.com/kubernetes/autoscaler/master/cluster-autoscaler/cloudprovider/aws/examples/cluster-autoscaler-autodiscover.yaml
# Add required annotation so it discovers your cluster ASGs
kubectl annotate serviceaccount cluster-autoscaler \
-n kube-system \
eks.amazonaws.com/role-arn=arn:aws:iam::111122223333:role/ClusterAutoscalerRoleKısa Kontrol
Bu dersteki AWS Solutions Architect (SAA-C03) kavramlarını anlayıp anlamadığınızı test edin.
Ders Özeti
Bu derste şunları öğrendiniz: AWS, EKS kontrol düzlemini %99,95 SLA ile yönetir; yönetilen düğüm grupları, düğüm yaşam döngüsünü AWS'nin yönetmesini sağlarken, kendi yönettiğiniz gruplar en yüksek düzeyde özelleştirme sunar ve aws-auth ConfigMap, küme erişim denetimi için IAM kimliklerini Kubernetes RBAC ile eşler. Sırada, sunucusuz Pod çalıştırma için Fargate Profilleri'ni inceleyeceğiz.
Sıkça Sorulan Sorular
“EKS Denetim Düzlemi ve Çalışan Düğümleri” dersi ücretsiz mi?
Evet — “EKS Denetim Düzlemi ve Çalışan Düğümleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AWS Solutions Architect kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AWS Solutions Architect kursu toplamda 4 dersten oluşur.
“EKS Denetim Düzlemi ve Çalışan Düğümleri” dersinde ne öğreneceğim?
AWS'nin EKS denetim düzleminde neleri yönettiğini anlayın, yönetilen düğüm grupları sağlayın ve kubectl'yi kümenize bağlayın. AWS Solutions Architect ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
AWS Solutions Architect öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te AWS Solutions Architect, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“EKS Denetim Düzlemi ve Çalışan Düğümleri” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu AWS Solutions Architect dersinde kod yazıp çalıştırabilir miyim?
Evet. Her AWS Solutions Architect dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- EKS Denetim Düzlemi ve Çalışan Düğümleri
- Sunucusuz Pod'lar için Fargate Profilleri
- EKS Ağ Yapısı: VPC CNI ve Yük Dengeleme
- Hizmet Hesapları için IAM Rolleri (IRSA)