- AWS Global Accelerator ile bir uygulamanın veya web sitesinin kullanılabilirliğini, performansını ve güvenliğini nasıl iyileştirebilirsiniz?
- AWS Global Accelerator'ı neden kullanmalısınız?
- Örnek uygulama ve web sitesi için önerilen mimari
- Adım Adım: AWS CLI ile Hızlandırıcı Oluşturma (Pratik Örnek)
- Basit uygulama örneği (Node.js) ve Sağlık Kontrolü testi
- İstemci IP adresini ve proxy protokolünü korumak.
- Alım satım, oyun, web ve yapay zeka için performans optimizasyonu
- Güvenlik: WAF, Shield, TLS ve erişim yönetimi
- Performans izleme ve test etme
- Pratik senaryolar ve uygulama ipuçları
- Veri merkezi konumlarını karşılaştırmak ve en iyi bölgeyi seçmek
- Örnek Senaryo: Global Accelerator ile Web Sitesi Başlatma (Adım Özeti)
- Son İpuçları ve En İyi Uygulamalar
- Sonuç ve sonraki adımlar
- Sıkça Sorulan Sorular
AWS Global Accelerator ile bir uygulamanın veya web sitesinin kullanılabilirliğini, performansını ve güvenliğini nasıl iyileştirebilirsiniz?
AWS Global Accelerator, IP adreslerine sahip bir ağ katmanı hizmetidir. Anycast Bu hizmet, kullanıcı trafiğini AWS küresel ağına en yakın giriş noktasından en uygun uç noktaya yönlendirir. Bu pratik ve teknik kılavuz, örnek bir uygulama/web sitesinin kullanılabilirliğini, performansını ve güvenliğini artırmak için uygulama adımlarını, AWS CLI komutlarını, sunucu yapılandırmalarını, optimizasyon ipuçlarını ve güvenlik önerilerini sunmaktadır.
AWS Global Accelerator'ı neden kullanmalısınız?
Başlıca Faydalar:
- Küresel Anycast IP adresleri: Dünya çapında duyurulan bir veya iki statik IP adresi, trafiği farklı bölgelere yönlendirirken DNS'i değiştirme ihtiyacını ortadan kaldırır.
- AWS ağındaki en uygun rotalar: Trafik, yüksek hızlı ve düşük gecikmeli AWS ağı içinde ilerler ve halka açık internet kullanımı azalır.
- TCP ve UDP desteği: HTTP/HTTPS, oyun, VoIP ve düşük gecikme süresi gerektiren işlemler için uygundur.
- Bölgeler arasında hızlı yedekleme: Merkezi sağlık kontrolü ve sağlıklı uç noktalara hızlı trafik yönlendirme.
Örnek uygulama ve web sitesi için önerilen mimari
Global Accelerator kullanan çok bölgeli bir mimariye örnek:
- İki bölge (örneğin ABD-doğu-1 Ve AB-batı-1her birinin NLB Veya ALB Ve bunun arkasında EC2/Otomatik Ölçeklendirme Grubu veya Kubernetes yer alıyor.
- İki kişilik Küresel Hızlandırıcı programı uç nokta grubu (her biri bir bölgeye) ve oyun için 80/443 (TCP) veya UDP portlarında bir dinleyici.
- Bir CDN'den gelen statik içerik için (örneğin, Bulut Cephesi veya 85'ten fazla lokasyona sahip kurumsal CDN).
- DDoS saldırılarına karşı korunmak için AWS Shield Gelişmiş Ve uygulama katmanı filtrelemesi için AWS WAF ALB/CloudFront'tan faydalanın.
- İzleme ve uyarı sistemi aracılığıyla Bulut İzleme ve operasyonel kanallarla entegrasyon.
Adım Adım: AWS CLI ile Hızlandırıcı Oluşturma (Pratik Örnek)
AWS CLI ile Hızlandırıcı oluşturmanın temel adımları ve örnek komutlar:
aws globalaccelerator create-accelerator --name my-accelerator --ip-address-type IPV4 --enabledÇıktı şunları içerir: HızlandırıcıArn Ayrıca DNS'te kullanabileceğiniz özel Anycast IP adresleri de olacak.
aws globalaccelerator create-listener --accelerator-arn <AcceleratorArn> --protocol TCP --port-ranges From=443,To=443Bölgeler için Uç Nokta Grubu oluşturun (örneğin, us-east-1 için NLB):
aws globalaccelerator create-endpoint-group --listener-arn <ListenerArn> --endpoint-group-region us-east-1 --endpoint-configurations EndpointId=<NLB_ARN>,Weight=128 --health-check-protocol HTTP --health-check-path /health --health-check-interval-seconds 10 --threshold-count 3Önemli notlar:
- Uç Nokta Kimliği ARN bir olabilir mi? NLB, ALBveya IP adresi (EC2 veya şirket içi sunucular için).
- Güzergahta sağlık kontrolü
/sağlıkSağlık durumu için basit bir 200 yanıtı verin ve bekleyin.
Basit uygulama örneği (Node.js) ve Sağlık Kontrolü testi
Node.js sunucu örneğinin yolu /sağlık 200 yanıtı döndürür ve bölge mesajını gösterir:
const http = require('http');
http.createServer((req, res) => {
if (req.url === '/health') return res.writeHead(200).end('ok');
res.writeHead(200, {'Content-Type':'text/plain'});
res.end('Hello from region X');
}).listen(3000);Bu uygulamayı NLB/ALB'nin arkasındaki bir EC2 veya konteynere yerleştirin ve yolun doğru olduğundan emin olun. /sağlık Her bir örnekte 200 yanıtı döndürür.
İstemci IP adresini ve proxy protokolünü korumak.
İstemci IP adresini korumaya ilişkin önemli noktalar:
- NLB: NLB kullanıyorsanız, Global Accelerator şunları yapabilir: Müşterinin gerçek IP adresi ve uygulama orijinal IP adresini görebiliyor.
- ALB: Genellikle başlık
X-İletildi-İçinALB'deki IP adresini tamamen korumak için bir Proxy protokolü kullanın veya ALB'nin önüne NLB yerleştirin. - Bu özelliği, hedefleri kaydederken NLB'de Proxy Protokolü v2'yi etkinleştirmek ve NGINX/HAProxy'de işlemek için kullanın.
NGINX'te PROXY v2'yi etkinleştirme örneği (ile) akış modülü TCP için):
stream {
server {
listen 443 proxy_protocol;
proxy_pass backend:443;
proxy_protocol_timeout 10s;
}
}Uygulamanın sunucu tarafı ayarlarında ise proxy protokolünü işleyin.
Alım satım, oyun, web ve yapay zeka için performans optimizasyonu
Uygulama türüne göre optimizasyon stratejileri:
- Ticaret ve Oyun: En az atlama noktasına sahip UDP veya TCP'yi kullanın. Global Accelerator, trafiği AWS ağı üzerinden taşır; işlemler için, en yakın uç noktaya veya yapılandırmaya sahip bölge kullanılır. trafik kadranları En düşük ping değerini sunar.
- Web sitesi ve API: Kullanımı HTTP/2, TLS oturumunun yeniden başlatılması, OCSP zımbalamasıkıştırma GZIP/Brotli ve CDN veya NLB/ALB üzerinden sıkıştırma.
- Yapay Zeka/Render: Büyük veri trafiği için NLB ve çok bölgeli mimari kullanın ve GPU'lara ihtiyacınız varsa, belirli bölgelerde grafik sunucuları kullanın.
Linux sunucu TCP ayarları (örnek komutlar):
sudo sysctl -w net.core.somaxconn=65535
sudo sysctl -w net.ipv4.tcp_tw_reuse=1
sudo sysctl -w net.ipv4.tcp_fin_timeout=15Ve bunu kalıcı hale getirmek için aşağıdaki seçenekleri belirleyin. /etc/sysctl.conf Eklemek.
Yüksek bağlantı sayıları için NGINX ayarları (örnek yapılandırma):
worker_processes auto;
worker_connections 65536;
keepalive_timeout 65;
tcp_nopush on;
tcp_nodelay on;Güvenlik: WAF, Shield, TLS ve erişim yönetimi
Önemli güvenlik ipuçları:
- DDoS: Küresel Hızlandırıcı ile AWS Kalkanı Daha geniş kapsamlı kullanım için şunlarla birlikte gelir: Gelişmiş Kalkan Anycast IP adreslerinizi korumak için etkinleştirin.
- WAF: Global Accelerator'ın kendi WAF'ı yok, ancak siz kullanabilirsiniz. AWS WAF Uygulama katmanı trafiğini filtrelemek için ALB veya CloudFront'a yerleştirin.
- TLS: TLS bağlantısını ALB'de veya Yük Dengeleyici/NGINX'te sonlandırın. Uçtan uca TLS'ye ihtiyacınız varsa, uç noktalarda da sertifikalar kullanın (örneğin, şu şekilde): ACM).
- Hız sınırlama ve Bot koruması: WAF katmanında özel kurallar oluşturun ve API için JWT ve hız sınırlamaları kullanın.
- BEN: Uygun politikalarla (örneğin, ilgili eylemlere erişim kontrolü) Küresel Hızlandırıcı işlemlerine erişimi kısıtlayın.
küresel hızlandırıcı:*). - Günlük kaydı: Aktivasyon VPC Akış GünlükleriALB/NLB erişim kayıtları ve CloudWatch Günlükleri Olayları izlemek ve analiz etmek için.
Performans izleme ve test etme
Önerilen araçlar ve ölçütler:
- CloudWatch metrikleri Küresel Hızlandırıcı gibi Akış Sayısı, YeniAkışSayısı, İşlenen Baytlar Ve İstemciTLSNoksiyonHataSayısı.
- Trafik artışları veya azalışları için alarmlar tanımlayın ve otomatik olarak yanıt verin veya operasyon ekibini bilgilendirin.
- Sentetik çekler kullanarak veya 53 Numaralı Güzergah Sağlık Kontrolleri Birden fazla konumdan kontrol etmek için.
- Yük testi, aşağıdaki gibi araçlarla yapılabilir: k6, iş Veya mitralyöz Ve her bölgede test yapılması.
- Kullanıcılar (oyuncular, yatırımcılar) için önemli noktalardan RUM veya sentetik problar kullanarak gecikme takibi.
Pratik senaryolar ve uygulama ipuçları
Pratik konular ve uygulama ipuçları:
- Bölgeler arasında hızlı yedekleme: Hızlı yollar üzerinde Global Accelerator sağlık kontrollerini tanımlayın (örneğin,
/sağlık) ve -den Trafik Arama Trafik yoğunluğunu azaltmak/artırmak için kullanılır. - DNS değişikliklerinin bakımını azaltın: Statik Anycast IP adresleri, DNS ayarlarını değiştirmeden trafiğin sağlıklı bir bölgeye yönlendirilmesine olanak tanır.
- Kurumsal CDN ile birlikte kullanım: Uç noktadaki statik CDN (85'ten fazla konum), statik dosyaları kullanıcıya daha yakın hale getirirken, dinamik rotalar ve API'ler için Global Accelerator kullanılıyor.
- Maliyet ve verimlilik: Global Accelerator saatlik ve veri bazlı ücretlendirme uygulamaktadır; yüksek trafik için CloudFront + Bölgesel ALB/NLB gibi çözümlerle karşılaştırın.
Veri merkezi konumlarını karşılaştırmak ve en iyi bölgeyi seçmek
Doğru bölgeyi seçmek için ipuçları:
- En yakın bölge, RTT (Gidiş-Dönüş Süresi) açısından her zaman en iyi bölge değildir; kullanıcı ile AWS PoP (Erişim Noktası) arasındaki internet yolunun kalitesi ve bölgenin kapasitesi de önemlidir.
- Oyun oynayanlar ve yatırımcılar için, kullanıcının POP ISP'sine yakın bir AWS uç bölgesine sahip olmak veya müşteriye yakın konumlarda VPS kullanmak ping süresini azaltabilir.
- Yapay zeka ve görüntü işleme için, GPU bulut hizmeti ve yüksek hızlı depolama (NVMe veya EBS Provisioned IOPS) sağlayan bir bölge seçmek önemlidir.
- Bölgeler arasında A/B testi yapmak ve trafiği en iyi bölgeye yönlendirmek için Global Accelerator'ı kullanmak en iyi yöntemdir.
Örnek Senaryo: Global Accelerator ile Web Sitesi Başlatma (Adım Özeti)
Uygulama adımlarının özeti:
- Uygulamayı NLB/ALB ve Otomatik Ölçeklendirme ile iki bölgede dağıtma.
- Yol tanımı
/sağlıkUygulamada. - AWS CLI veya Konsolu kullanarak Hızlandırıcı ve Dinleyici oluşturun.
- Uç nokta grupları oluşturun ve NLB/ALB ARN'lerini ekleyin.
- Anycast IP adreslerini DNS'e (A kaydı) bağlayın veya CDN için CNAME kaydı oluşturun.
- Koruma için Shield Advanced ve WAF'ı etkinleştirin.
- CloudWatch'u etkinleştirin ve alarmları tanımlayın; yük testleri gerçekleştirin ve gecikme/kullanılabilirlik sürelerini kontrol edin.
- Gerekirse, içerik ve oturum/çerez yönetimi için şirketin CDN'sini kullanın.
Son İpuçları ve En İyi Uygulamalar
En iyi uygulamalara genel bakış:
- Kısa ve bağımsız sağlık kontrollerinin tanımı.
- ALB üzerinde ACM ve TLS yükünün boşaltılması kullanılıyor.
- Gerçek zamanlı (UDP) trafik için, gecikmeyi ve paket kaybını azaltmak amacıyla Global Accelerator'ı kullanın.
- ARN'leri, Anycast IP'lerini belgelemek ve yedekleme kılavuzları hazırlamak operasyon ekibi için çok önemlidir.
Sonuç ve sonraki adımlar
AWS Global Accelerator, özellikle NLB/ALB ve güvenlik hizmetlerini kullanan çok bölgeli mimarilerde performansı, kullanılabilirliği ve güvenliği iyileştirmek için güçlü bir araçtır. Grafik altyapısı, özel VPS ve uç CDN ile birlikte kullanıldığında, oyun, ticaret ve yapay zeka uygulamaları için kullanıcı deneyimini geliştirebilir.









