Container Service for Kubernetes (ACK), Alibaba Cloud Linux 2 işletim sistemini çalıştıran düğümler oluşturmanıza olanak tanır. Bu düğümler, Alibaba Cloud Linux 2'nin yüksek performanslı çekirdeğini kullanarak çeşitli senaryolar için optimize edilmiş çözümler sunar. Bu konu, ACK kümelerinde Alibaba Cloud Linux 2 kullanmanın faydalarını ve ACK'nin farklı senaryolar için sağladığı iyileştirmeleri açıklar.
Alibaba Cloud Linux 2, 31 Mart 2024 tarihinde yaşam döngüsünün sonuna (EOL) ulaşmıştır. Bir küme veya düğüm havuzu oluştururken Operating System seçeneğini Alibaba Cloud Linux 3 veya ContainerOS olarak ayarlayın. Alibaba Cloud Linux 2'nin EOL durumu hakkında daha fazla bilgi için [[Product Change] End of maintenance for Alibaba Cloud Linux 2 and CentOS 7](t2602809.xdita#) konusuna bakın.
Genel bilgiler
Alibaba Cloud Linux 2, Alibaba Cloud tarafından geliştirilen yeni nesil bulut tabanlı Linux işletim sistemidir. Bu işletim sistemi, bulut uygulamaları için güvenli, kararlı ve yüksek performanslı özelleştirilmiş bir ortam sağlar. Alibaba Cloud Linux 2, geliştirilmiş bir çalışma zamanı deneyimi sunmak üzere Alibaba Cloud altyapısı için derinlemesine optimize edilmiştir. Alibaba Cloud Linux 2 genel görüntülerini ücretsiz olarak kullanabilir ve Alibaba Cloud'dan uzun vadeli desteği masrafsız alabilirsiniz.
Alibaba Cloud Linux 2 işletim sistemi görüntülerini kullanmanın faydaları
Alibaba Cloud Linux 2 işletim sistemi, Alibaba Cloud Apsara sanallaştırma yığını için tasarlanmıştır. Alibaba Cloud ortamına özel olarak hazırlanmış çok sayıda iyileştirme ve yeni özellik sunar; bunlar şunlardır:
Alibaba Cloud üzerindeki en hızlı başlatılan Linux dağıtımı.
Yüksek teknik özelliklere sahip ECS sanal makineleri ve ECS Bare Metal örnekleri için derinlemesine optimize edilmiştir; özellikle büyük örneklerdeki çoklu görev senaryoları için uygundur.
Cloud Assistant CLI ve cloud-init gibi yaygın Alibaba Cloud yazılım paketleri önceden yüklenmiştir; bu sayede bulut kaynak yönetimi maliyetleri azaltılır.
Minimal saldırı yüzeyine ve en düşük sistem kaynak tüketimine sahip sadeleştirilmiş bir sistem.
Alibaba Cloud üzerinde çok kanallı teknik destek sağlayan kapsamlı bir destek sistemi.
Yazılım güvenlik açıkları (CVE'ler) için zamanında düzeltmeler.
Açık yamalaması sırasında iş sürekliliğini sağlamak için Kernel Live Patching desteği.
Uygulama örneklerini Alibaba Cloud Linux 2 üzerinde çalıştırmanın performans faydaları şunlardır:
ECS örnekleri için başlatma hızı önemli ölçüde optimize edilmiştir. Sistem yükü arttığında hesaplama kaynaklarının hızlı ölçeklendirilmesine olanak tanır. Başlatma hızı CentOS 7'ye göre %29 daha iyidir.
ECS örneklerinde çoklu görev senaryoları için optimize edilmiştir. Aynı teknik özelliklere sahip yüksek donanımlı örneklerin çoklu görev performansını %16 oranında artırır.
Daha verimli sistem çağrıları ile sistem çağrısı performansında %11 iyileşme sağlar.
Optimize edilmiş Linux ağ yığını sayesinde genel ağ performansı CentOS 7'ye kıyasla %7,8 oranında iyileştirilmiştir.
Alibaba Cloud Linux 2, Bottleneck Bandwidth and Round-trip propagation time (BBR) tıkanıklık kontrol algoritmasıyla önceden derlenmiş olarak gelir. Sık sık genel ağ erişimi gereken senaryolarda, tıkanıklık kontrol algoritmasını BBR olarak değiştirerek genel ağ erişiminin bant genişliği kararlılığını artırabilirsiniz.
TLS protokolü için optimize edilmiş şifreleme desteği.
Bulut disk gecikme süresini azaltmak için yeni Budget Fair Queueing (BFQ) G/Ç zamanlayıcısını destekler.
ACK'de Alibaba Cloud Linux 2 ile senaryo bazlı iyileştirmeler
Alibaba Cloud'un konteyner hizmetleri, çevrimiçi hizmetlerin yanıt süresini etkilemeden birlikte çalışan konteyner görevlerinin yoğunluğunu artırmak için çekirdek düzeyinde iyileştirmeler kullanır. Alibaba Cloud Linux 2 işletim sistemi ve çekirdeği bu iyileştirmeleri içerir. ACK, konteynerize hizmetlerin daha hızlı ve sorunsuz çalışmasına yardımcı olmak için birden fazla senaryoda bu özelliklerden yararlanarak iyileştirmeler sağlar.
-
IPVS optimization
-
Senaryo 1: Çok sayıda IPVS sanal IP'sine sahip yüksek teknik özellikli makineler (64 CPU'dan fazla).
Sorun: IPVS tahmin zamanlayıcısı, her bağlantının mevcut hızını periyodik olarak hesaplar. Bağlantı sayısı çok olduğunda bu işlem CPU'yu uzun süre meşgul eder. Bu durum ağ paketi alımında gecikmelere neden olur ve Ping komutuna verilen yanıtta 200 ms'ye kadar dalgalanmalara yol açar.
İyileştirme: IPVS tahmin zamanlayıcısı düğüm üzerinde yürütülür. Ayrıca, IPVS istatistiklerini devre dışı bırakmak için bir sysctl komutu eklenmiştir.
Sonuç: Tahmin zamanlayıcısından kaynaklanan dalgalanmalar ortadan kaldırılır.
-
Senaryo 2: Konteyner ardışık güncellemeleri.
Sorun: Konteyner ardışık güncellemesi sırasında 5-tuple değişmezse, yeni bir TCP SYN paketi eski IPVS 5-tuple bağlantı kaydına isabet edebilir. Paketin yeni bir hedefe yönlendirilmesi gerekiyorsa IP varsayılan olarak SYN paketini bırakır. Bu durum SYN yeniden iletimine ve 1 saniyelik gecikmeye neden olur.
İyileştirme: Yeni bir conntrack girdisi zaten varsa, TIME_WAIT durumundaki bağlantı conntrack'ten serbest bırakılır, ardından planlanır ve yeni bağlantıyla değiştirilir.
Sonuç: Yeni gerçek sunucuya geçiş neredeyse hiç gecikme olmadan gerçekleşir.
-
-
CoreDNS optimization
Senaryo 1: Bir konteyner içindeki çok sayıda DNS sorgusu conntrack tablosunun dolmasına neden olur.
Sorun: Bir konteyner içindeki uygulama sabit bir adres veya port için DNS sorguladığında ilgili conntrack girdisi akış moduna girer. DNS istekleri UDP tabanlı, durumsuz, kısa ömürlü ve istek-yanıt desenini kullandığından conntrack birçok gereksiz UDP conntrack girdisini korur. Bu girdiler zamanında temizlenmediğinden conntrack tablosu büyüyebilir ve Network Address Translation (NAT) performansı düşebilir.
İyileştirme:
Bir UDP bağlantısı yalnızca 2 saniyeden uzun sürerse akış moduna ayarlanır. Bu durum conntrack girdilerinin hızlı büyümesini engeller.
Varsayılan UDP conntrack time-to-live (TTL) değeri 180 saniyeden 120 saniyeye kısaltılmıştır. Bu sayede girdiler daha hızlı sona erer ve conntrack tablosu üzerindeki etki azaltılır.
Sonuç: Aynı test senaryosunda UDP conntrack girdi sayısı yarıya indirilmiştir.
-
Container network performance optimization
Alibaba Cloud Linux 2 düğümlerinde, konteyner hizmeti için Terway ağ eklentisi IPVlan konteyner ağ modunu destekler. Küçük paket senaryolarında bu mod, geleneksel Bridge ve ilke tabanlı yönlendirmeye kıyasla ağ performansını %40 oranında artırır. Alibaba Cloud Linux 2, BBR tıkanıklık kontrol algoritmasıyla önceden derlenmiş olarak gelir. Sık sık genel ağ erişimi gereken senaryolarda, konteynerin tıkanıklık kontrol algoritmasını BBR olarak değiştirerek genel ağ erişiminin bant genişliği kararlılığını artırabilirsiniz. Bu durum, konteyner genel ağ bağlantılarının performansını ve genel ağ üzerinden görüntü çekme hızını önemli ölçüde iyileştirir.
-
Support and optimization for sandboxed containers
Alibaba Cloud, Kata Containers ve Clear Linux topluluklarıyla iş birliği yapmaktadır. ECS Bare Metal örneklerinde Kata Containers çözümünü eksiksiz ve sorunsuz bir şekilde dağıtabilirsiniz. ACK ayrıca sandboxed container (RunV) görüntülerinin başlatma süresini optimize ederek Kata Containers çözümünün düzgün çalışmasını sağlar. Buna dayanarak ACK, yaygın kümelerle neredeyse aynı deneyimi sunan sandboxed container kümeleri sağlar. Bu sayede uygulamalar hafif bir sanal makine sandbox ortamında çalıştırılabilir. Bu yaklaşım, çoklu kullanıcılar arasında iş yükü izolasyonu ve güvenilmeyen uygulamaların izole edilmesi için uygundur. Performans etkisini en aza indirerek güvenliği artırır.
-
AutoScaler optimization
Alibaba Cloud Linux 2, ECS örneklerinin başlatma hızını optimize ederek düğüm başlatma süresini CentOS 7'ye kıyasla %60 oranında azaltır. ACK'nin esnek ve verimli otomatik ölçeklendirmesiyle birleştiğinde, uygulama yükü arttığında ACK kümesi yüke göre ECS düğümlerini otomatik olarak oluşturup başlatarak kümeye katılmasını sağlar. Ayrıca uygulama örneklerini planlar ve başlatır. Alibaba Cloud Linux 2'nin hızlı ölçeklendirme ve başlatma yeteneği, hesaplama kaynaklarının tepe trafik taleplerini zamanında karşılamasını garanti eder.
-
Resource monitoring and control optimization
Alibaba Cloud Linux 2 çekirdeği, Pressure Stall Information (PSI), cgroup başına kswapd ve Memory Priority gibi konteyner senaryoları için ayrıntılı görselleştirme ve kontrol yetenekleri sağlar. Alibaba Cloud Linux 2 üzerindeki ACK kümelerinde, Cgroup denetleyicisini kullanarak bu yeteneklerden yararlanabilirsiniz. Bu sayede BufferIO Control, TCP, CPUSet, Mem ve NUMA gibi kaynakların ayrıntılı yapılandırılması ve dinamik olarak güncellenmesi mümkün olur. Uygulamalar arası etkileşimi en aza indirirken kaynak kullanımını kademeli olarak artırmanıza yardımcı olur.
-
AI and data acceleration optimization
Alibaba Cloud Linux 2'deki büyük modeller ve çoklu görevler için yapılan iyileştirmeler, yüksek performanslı bilişim (HPC) görevlerinin hızını artırabilir. Akış okuma ve yazma işlemleri için yapılan depolama iyileştirmesi de büyük model dosyalarının okuma ve yazma performansını iyileştirebilir. Bu iyileştirmeler birlikte AI ve HPC görevlerinin verimliliğini büyük ölçüde hızlandırır. Aşağıda gerçek test senaryoları verilmiştir:
Alluxio kullanılarak OSS'den 64 iş parçacığıyla 1.152 dosya (144 GB) yüklemek CentOS'ta 3 dakika 25 saniye sürer. Alibaba Cloud Linux 2'de ise bu işlem yalnızca 2 dakika 19,037 saniye sürer; bu da CentOS'a göre 1,6 kat daha hızlıdır.
Verileri Alluxio'da önbelleğe alarak ResNet50 Batch 128 model eğitimi çalıştırıldığında, CentOS'taki bir V100 GPU yalnızca 5.212,00 görüntü/sn performans gösterir. Alibaba Cloud Linux 2'de ise bir V100 GPU 8.746,59 görüntü/sn hızına ulaşabilir; bu da CentOS'a göre 1,7 kat daha hızlıdır.
-
Enhanced display for container resources
Çoklu konteynerli, tek ana bilgisayar kurulumunda, bir konteyner içinde doğrudan görünen kaynaklar ana bilgisayarın kaynaklarıdır. Bu durum birçok uygulama için kullanıcı dostu değildir. Alibaba Cloud Linux 2, çekirdekteki Cgroup kaynak görüntülemesini optimize eder. Bu sayede konteyner tarafından kullanılan kaynaklar konteyner içinde doğru şekilde görüntülenir. Örneğin, TOP komutu ile CPUInfo ve MemInfo arayüzleri tarafından gösterilen bilgiler düzeltilir. Bu durum izleme ihtiyaçlarınızı büyük ölçüde basitleştirir.
-
Other optimizations
Linux 4.19 çekirdeğini kullanır. ACK, Alibaba Cloud çekirdek ve konteynerleştirme en iyi uygulamalarını bu çekirdeğe entegre eder.
OverlayFS'nin performans kaybını azaltır ve konteynerleştirmenin depolama performansı üzerindeki etkisini en aza indirir.
Çoğu sysctl yapılandırması ad alanına sahiptir. 4.19 çekirdeğinde çoğu sysctl ayarı bir konteyner içinde ayrı ayrı yapılandırılabilir. Örneğin, farklı uygulamaların TCP zaman aşımı ve yeniden iletim süresi için farklı gereksinimleri vardır. Bu ayarlar CentOS 7 çekirdeğinde değiştirilemezken Alibaba Cloud Linux 2 bunları pod düzeyinde yapılandırmayı destekler.
Küme düğümleri için işletim sistemi görüntüsü olarak Alibaba Cloud Linux 2'yi kullanma
Bir küme oluştururken, küme düğümleri için işletim sistemi görüntüsü olarak Alibaba Cloud Linux 2'yi kullanmak üzere Operating System seçeneğini Alibaba Cloud Linux 2.1903 olarak ayarlayın. Daha fazla bilgi için Create an ACK managed cluster konusuna bakın.
Alibaba Cloud Linux 2'yi seçerseniz ACK, küme oluşturma, düğümleri ölçeklendirme, düğüm ekleme veya otomatik ölçeklendirme kullanırken Alibaba Cloud Linux 2 için güvenlik yaması güncellemelerini otomatik olarak kontrol eder ve yamaları yükler.