Amazon ANS-C01: İçerik Dağıtımı ve Uç Ağ — Çalışma kılavuzu

Şunun bir parçası: AWS Advanced Networking Specialty ANS-C01 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Amazon sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.

Temel kavramlar

İçerik teslimi ve uç ağ (edge networking), birbiriyle ilişkili iki sorumluluğu birbirinden ayırır: istemci trafiğini düşük gecikmeyle taşımak ve son kullanıcılara yakın, dağıtılmış bir önbellek/işlem katmanı olarak hareket etmek. CloudFront, HTTP yanıtlarını önbelleğe alan, TLS’i uçta sonlandıran ve Lambda@Edge (bölgelere kopyalanan tam Lambda çalışma zamanı) veya görüntüleyici isteği/yanıtı (viewer request/response) anında hafif JavaScript için CloudFront Functions kullanarak uç konumlarda (edge locations) kod çalıştırabilen bir HTTP(S) CDN ve uç işlem (edge compute) platformudur. CloudFront’un davranışı, CreateDistribution ile oluşturulan ve CachePolicy ile OriginRequestPolicy nesneleri kullanılarak ayarlanan dağıtım yapılandırma nesneleri tarafından yönetilir. DefaultTTL, MinTTL ve MaxTTL gibi önbellek ilkesi alanları ve önbellek anahtarına (cache key) dahil edilen başlıklar, çerezler ve sorgu dizgileri kümesi, önbellek isabet oranını (cache hit ratio) ve kaynak (origin) yükünü belirler. Kaynak (origin) kontrolleri, özel S3 kaynakları için S3 OAC/OAI (CreateCloudFrontOriginAccessControl) ve özel içeriği korumak için imzalı URL’ler (signed URLs) veya imzalı çerezler (signed cookies) (CreateKeyGroup, CreatePublicKey ve imzalı URL imzalama süreci) içerir.

Global Accelerator ve Anycast, HTTP katmanının altında çalışır. Global Accelerator, AWS uç ağından (edge network) iki statik anycast IP adresi duyurur ve TCP/UDP akışlarını sağlıklı bölgesel uç noktalara (Network Load Balancers, Application Load Balancers, EC2 örnekleri veya Elastic IP’ler) yönlendirir. Global Accelerator L3/L4 seviyesinde olduğu için, TCP geçişi (TCP pass-through) için yapılandırıldığında uçtan uca TLS’i korur ve bölgesel uç noktalara “son mil” (last mile) için AWS dahili omurgasını kullanarak küresel yönlendirmeyi iyileştirir. HTTP dışı protokoller için veya istemci ile arka uç (backend) arasında gerçek uçtan uca şifrelemenin ve karşılıklı TLS’in (mTLS) korunması gerektiğinde, bir Network Load Balancer’ın (NLB) önünde Global Accelerator kullanan bir TCP geçiş (TCP pass-through) yolu standart modeldir: NLB’ler L4’te çalışır, milyonlarca bağlantıya ölçeklenir ve Amazon EKS’deki pod’lar veya node’lar için IP hedeflerini (IP targets) kaydedebilir.

Lambda@Edge fonksiyonları, CloudFront davranışlarıyla (behaviors) ilişkilendirilir ve viewer-request, origin-request, origin-response ve viewer-response tetikleyicileri için dağıtımın LambdaFunctionAssociations bölümünde dağıtılmalı (Publish ile CreateFunction) ve ilişkilendirilmelidir. Lambda@Edge birden çok uç bölgeye (edge regions) kopyalandığı için, sürümler ve yayınlama semantiği önemlidir; güncellemeler sırasında tutarsız davranışlardan kaçınmak için sürümlenmiş Lambda nesneleri kullanın ve dağıtımları dikkatli bir şekilde yönetin.

Anahtar hizmetler ve yapılandırma

CloudFront dağıtım yapılandırması, birbiriyle sıkı sıkıya bağlı üç nesneye dayanır: dağıtımın kendisi (CreateDistribution / UpdateDistribution), önbellek anahtarını (cache key) ve TTL’leri belirleyen CachePolicy nesneleri (CreateCachePolicy) ve kaynağa (origin) hangi başlıkların/çerezlerin/sorgu dizgilerinin gönderileceğini belirleyen OriginRequestPolicy nesneleri (CreateOriginRequestPolicy). Özel S3 içeriği için CreateCloudFrontOriginAccessControl veya eski origin access identity’yi kullanın ve erişimleri CreateKeyGroup ve CreatePublicKey kullanarak imzalı URL’ler / imzalı çerezler ile daha da koruyun; SDK veya cloudfront-signing yardımcı programları, imzalı URL’yi veya ilke belgesini ve RSA imzasını oluşturur. Önbelleğe alınmış nesneleri seçici olarak temizlemek için geçersiz kılma (invalidation) işlemleri CreateInvalidation ile gerçekleştirilir.

Global Accelerator yapılandırması, create-accelerator, create-listener ve create-endpoint-group API çağrıları aracılığıyla oluşturulur. Dinleyici (listener), gRPC için TCP:443 veya herhangi bir TCP portu olabilir ve akışları bölgesel bir NLB veya ALB’ye işaret eden uç nokta gruplarına (endpoint groups) iletir. Uçtan uca TLS ve mTLS’i korumak için Global Accelerator TCP geçişi (TCP pass-through) için kullanıldığında, onu 443 portunda TCP dinleyicileri (listeners) olan ve pod IP’lerini (hedef türü ip - target type ip) veya node port’larını kaydeden hedef gruplarına (target groups) sahip bir Network Load Balancer ile eşleştirin. Kubernetes EKS’de bu genellikle, service.beta.kubernetes.io/aws-load-balancer-type: “nlb” ve service.beta.kubernetes.io/aws-load-balancer-target-type: “ip” gibi ek açıklamalarla (annotations) LoadBalancer türünde bir Service oluşturularak veya AWS Load Balancer Controller kullanılarak hedef türü ip (target type ip) olan bir NLB oluşturularak elde edilir. Günlüğe kaydetme (logging) için istemci kaynak IP’sini korumak amacıyla Service üzerinde externalTrafficPolicy: Local ayarını yapın veya orijinal kaynak IP’sini koruyan NLB geçişini (NLB passthrough) kullanın.

Global Accelerator ve bölgesel uç noktalar arasındaki ağ düzeyinde zorlama, yönetimsel yükü azaltmak için AWS tarafından yönetilen ön ek listelerini (prefix lists) kullanır. AWS CLI çağrısı olan aws ec2 describe-managed-prefix-lists, yönetilen ön ek listelerini listeler; com.amazonaws.globalaccelerator adlı olan, bir ALB/NLB’ye yalnızca hızlandırıcı kaynaklı trafiğe izin vermek için güvenlik grubu kurallarında (AuthorizeSecurityGroupIngress ile –source-prefix-list) referans gösterilebilir. ALB’nin TLS’i sonlandırdığı durumlarda, istemci IP’sini günlüğe kaydetmek için X-Forwarded-For başlıklarını kullanın; Global Accelerator ile NLB geçişi (NLB passthrough) kullanıldığında, istemci IP’leri doğal olarak korunur ve arka uçların (backends) TLS sonlandırma/mTLS işlemlerini kendileri yapması gerekir.

Tasarım desenleri ve ödünleşimler

Gereksinim içerik önbellekleme, edge’de işlem (compute) ve düşük gecikmeli HTTP yanıtları olduğunda, doğru araç CloudFront’tur. Origin gizliliği gerekmediğinde CloudFront, TLS’i edge’de sonlandırmalıdır; güvenli olduğu durumlarda başlıkları (header) ve çerezleri (cookie) önbellek anahtarından (cache key) çıkararak origin isteklerini en aza indirmek için CachePolicy ve OriginRequestPolicy kullanın. Önbelleklemeden hala faydalanan dinamik kişiselleştirme için, önbellek anahtarı normalizasyonu (minimum sayıda başlık veya imzalı çerez üzerinden çeşitlendirme) kullanın ve sık sık

undefined

çağrıları yerine sürümlenmiş nesne anahtarları aracılığıyla önbellek geçersizleştirme için tasarım yapın.

Uçtan uca TLS gerektiren protokoller, arka uca (backend) ulaşana kadar şifresinin çözülmemesi gereken (mTLS için) HTTP/2 ve gRPC akışları için, TLS passthrough ile Global Accelerator + NLB kullanarak öne bir TCP/L4 yolu koyun. Bunun ödünleşimi, CloudFront’un HTTP önbellekleme ve edge’de işlem yeteneklerini kaybetmektir; ancak Global Accelerator, anycast statik IP’ler, iyileştirilmiş yönlendirme ve bölgesel yük devretme (failover) sağlar. ALB, TLS’i sonlandırdığında HTTP/2 ve gRPC’yi destekler; bu da uygulama katmanı yönlendirmesi (host/path tabanlı) ve WAF entegrasyonu sağlar, ancak ALB’de sonlandırma, uçtan uca mTLS’i bozar ve sertifika yönetimini yük dengeleyiciye (load balancer) yerleştirir. Çok büyük eş zamanlı bağlantılar için, NLB’ler L4’te daha iyi ölçeklenir — NLB’ler bağlantı oranı için optimize edilmiştir ve kaynak IP’yi korur, ALB’ler ise HTTP seviyesinde yönlendirme ve host/path seviyesinde yönlendirme için dinleyici kuralları (listener rules) ve Cognito/OIDC ile entegrasyon gibi özellikler için tasarlanmıştır.

Güvenlik kontrolleri ve bölgesel izolasyon desenleri, paylaşılan VPC peering, Transit Gateway, PrivateLink ve Load Balancer uç noktaları (endpoints) arasında dikkatli bir seçim gerektirir. PrivateLink, granüler hizmet seviyesinde erişim kontrolleri sağlar ve her tüketicinin kendi VPC’sinde bir arayüz uç noktası (interface endpoint) oluşturması nedeniyle çok sayıda tüketici için iyi ölçeklenir. Transit Gateway, yüksek bant genişliğine sahip merkezileştirme için uygundur ancak bir PrivateLink uç noktasının sağladığı hizmet başına granüler kontrollerden ve SNI/host seviyesi görünürlükten yoksundur. Tasarım, yönlendirme limitlerini, hesaplar arası (cross-account) izinleri ve hizmet sınırında güvenlik gruplarını (security groups) uygulama yeteneğini göz önünde bulundurmalıdır.

Sık yapılan hatalar ve karar kriterleri

Sık yapılan bir hata, önbellek kontrollerini yanlış bir şekilde karıştırmaktır: CloudFront önbellek politikaları da uygulanırken origin tarafından ayarlanan Cache-Control başlıklarının edge önbelleklemesini yönlendirmesine izin vermek, beklenmedik TTL’ler (Time-To-Live) yaratabilir; açık CachePolicy nesnelerini tercih edin ve kasıtlı olmadıkça yalnızca origin başlıklarına güvenmeyin. Başka bir tuzak, uçtan uca TLS veya milyonlarca eş zamanlı TCP bağlantısı gerektiğinde ALB seçmektir; ALB’de sonlandırılan TLS, mTLS’i engeller ve çok yüksek bağlantı eşzamanlılığı için darboğaz haline gelebilir. İnternete açık bir ALB’ye erişimi kısıtlamaya çalışan güvenlik yapılandırmaları, genellikle Global Accelerator ön ek listesini (prefix list) veya bir WAF kuralını kullanarak erişimi kilitlemeyi unutur; açık izin kuralları olmadan, ALB genel DNS’i aracılığıyla erişilebilir kalacaktır. Son olarak, sürümlenmiş Lambda fonksiyonları kullanmayan Lambda@Edge dağıtımları, kullanıma sunma (rollout) sırasında tutarsız davranışlara neden olabilir çünkü distribution’daki ilişkilendirme, belirli bir yayınlanmış sürüme bağlanır.

Pratik Problem: Kullanım Senaryosu

Şirket: AcmeTelemetrics — zorluk: küresel bir IoT otomat filosu, TCP:443 üzerinden, us-east-1’de Amazon EKS üzerinde çalışan bir arka uca gRPC kullanıyor; gereksinim, trafiğin aktarım sırasında asla deşifre edilmemesi için uçtan uca karşılıklı TLS (mTLS), binlerce eş zamanlı bağlantıyı desteklemek ve makinelere statik IP’lerin programlanması gerekiyor.

Yaklaşım:

  1. İki statik anycast IP’ye ve 443 numaralı bağlantı noktasında (port) bir TCP dinleyicisine (listener) sahip bir Global Accelerator (

undefined

) oluşturun (

undefined

). us-east-1’deki bölgesel bir Network Load Balancer’ı hedefleyen bir uç nokta grubu (endpoint group) yapılandırın (

undefined

). 2) us-east-1’de, 443 numaralı bağlantı noktasında TCP dinleyicisi ve ip türünde bir hedef grubu (target group) olan bir NLB sağlayın. Kubernetes’te, LoadBalancer türünde ve

undefined

ile

undefined

ek açıklamalarına (annotations) sahip bir Service oluşturun,

undefined

olarak ayarlayın ve TLS’in doğrudan pod’lara geçirilmesi (passthrough) için pod IP’lerini hedef olarak kaydedin. 3) gRPC sunucularını EKS’te dağıtın ve TLS/mTLS’i pod süreçlerinde sonlandırın. Sertifikaları ve güven materyallerini (trust material) Kubernetes Secrets’ta saklayın; sunucuyu, karşılıklı TLS için istemci sertifikası doğrulaması gerektirecek şekilde yapılandırın. 4) NLB’ye doğrudan erişimi, yalnızca Global Accelerator’ın ulaşabilmesi için, NLB’nin güvenlik grubunu (security group) yalnızca AWS tarafından yönetilen Global Accelerator ön ek listesinden (prefix list) gelen trafiğe (ingress) izin verecek şekilde güncelleyerek kilitleyin (

undefined

aracılığıyla keşfedin ve bu ön ek listesine güvenlik grubu kurallarında referans verin), böylece makinelerin hızlandırıcıyı (accelerator) atlayıp doğrudan NLB’ye ulaşmasını önleyin. 5) Kubernetes HorizontalPodAutoscaler ve Cluster Autoscaler’ı yapılandırarak bağlantı eşzamanlılığını ve ölçeklenmeyi izleyin ve NLB hedef grubunun yavaş başlatma (slow start) ve kaydı silme gecikmesinin (deregistration delay) sorunsuz küçülme (graceful scale-in) için ayarlandığından emin olun (

undefined

). Bağlantı sayılarını ve sağlık durumunu izlemek için Global Accelerator, NLB ve EKS’ten gelen CloudWatch metriklerini kullanın.

AWS gerekçesi: Global Accelerator, otomatların gerektirdiği statik anycast IP’leri sağlar ve TCP akışlarını AWS omurgası üzerinden bölgesel NLB’ye yönlendirerek güvenilirliği ve gecikmeyi iyileştirir. NLB, orijinal istemci TCP bağlantısını ve kaynak IP’sini korur ve çok büyük eş zamanlı bağlantıları destekler, bu da pod’ların arada bir TLS sonlandırması olmadan mTLS sonlandırması yapmasını sağlar. Güvenlik grubu kurallarında Global Accelerator tarafından yönetilen ön ek listesini kullanmak, hızlandırıcının doğrudan atlanmasını önler ve trafiğin yalnızca anycast IP’ler üzerinden gelmesini zorunlu kılar. Bu kombinasyon, uçtan uca şifreleme, mTLS, yüksek eşzamanlılık, statik IP’ler ve EKS’te otomatik ölçeklendirme (autoscaling) gereksinimlerini karşılar.


Ağ Güvenliği ve Uyumluluk · Tüm alanlar · Ağ Performansı ve İzleme

Bu soruları çözün → · ExamRoll.io’da süreli pratik →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Sınavınızı geçin →

Amazon'a göz atın →

Related guides

Hepsi bir arada erişim

Tek abonelik. Her sınav.

Her plan, sınırsız cevap aramayı, pratik testlerini, AI açıklamalarını ve tam kaynak kütüphanesini — 20'den fazla dilde — açar.

Aylık
24.87
Just €0.83/day
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

En iyi değer
12 ay
179.87
Just €0.49/daySave 40%
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

✓ Ücretsiz plan dahil · ✓ İstediğiniz zaman iptal edin · ✓ Tüm planlar tam ürünü açar