Aracılığıyla paylaş


Windows Server Kapsayıcılarının Performans Ayarlaması

Giriş

Windows Server 2022'den başlayarak iki tür kapsayıcı kullanılabilir: Windows Server Kapsayıcıları ve Hyper-V Kapsayıcıları. Her bir kapsayıcı türü, Windows Server 2022'nin Sunucu Çekirdeği veya Nano Sunucu SKU'su tarafından desteklenir.

Bu yapılandırmaların farklı performans etkileri vardır ve senaryolarınız için hangisinin doğru olduğunu anlamanıza yardımcı olmak için aşağıda ayrıntıları verebilirsiniz. Buna ek olarak, yapılandırmaları etkileyen performansı ayrıntılı olarak açıklar ve bu seçeneklerin her biriyle ilgili dezavantajları açıklarız.

Windows Server Kapsayıcısı ve Hyper-V Kapsayıcıları

Windows Server Kapsayıcısı ve Hyper-V kapsayıcıları aynı taşınabilirlik ve tutarlılık avantajlarının birçoğuna sahiptir, ancak yalıtım garantileri ve performans özellikleri açısından farklılık gösterir.

Windows Server Kapsayıcıları , işlem ve ad alanı yalıtım teknolojisi aracılığıyla uygulama yalıtımı sağlar. Windows Server kapsayıcısı, kapsayıcı konağı ve konakta çalışan tüm kapsayıcılarla bir çekirdeği paylaşır.

Hyper-V Kapsayıcıları , Windows Server Kapsayıcıları tarafından sağlanan yalıtımı her kapsayıcıyı yüksek oranda optimize edilmiş bir sanal makinede çalıştırarak genişletir. Bu yapılandırmada kapsayıcı konağı çekirdeği Hyper-V Kapsayıcıları ile paylaşılmaz.

Hyper-V kapsayıcılar tarafından sağlanan ek yalıtım, büyük ölçüde kapsayıcı ile kapsayıcı konağı arasındaki hipervizör yalıtım katmanı tarafından elde edilir. Bu durum, Windows Server Kapsayıcılarından farklı olarak, sistem dosyalarının ve ikili dosyaların daha az paylaşılmasıyla genel olarak daha büyük depolama ve bellek ayak izi oluşmasına neden olabileceğinden kapsayıcı yoğunluğu etkiler. Ayrıca bazı ağ, depolama GÇ ve CPU yollarında beklenen ek yük de vardır.

Nano Sunucu ve Sunucu Çekirdeği

Windows Server Kapsayıcıları ve Hyper-V Kapsayıcıları Sunucu Çekirdeği desteği sunar. Kapsayıcı temel görüntü seçenekleri hakkında daha fazla bilgi edinin.

Nano Sunucu, özel bulutlar ve veri merkezleri için iyileştirilmiş uzaktan yönetilen bir sunucu işletim sistemidir. Sunucu Çekirdeği modundaki Windows Server'a benzer, ancak önemli ölçüde daha küçüktür, yerel oturum açma özelliği yoktur ve yalnızca 64 bit uygulamaları, araçları ve aracıları destekler. Çok daha az disk alanı kaplar, önemli ölçüde daha hızlı ayarlar ve Windows Server'dan çok daha az güncelleştirme ve yeniden başlatma gerektirir. Yeniden başlatıldığında çok daha hızlı yeniden başlatılır.

Kapsayıcı Start-Up'nin Zamanı

Kapsayıcı başlatma süresi, kapsayıcıların en büyük avantajı sunduğu senaryoların çoğunda önemli bir ölçümdür. Bu nedenle, kapsayıcı başlatma süresini optimize etmenin anlaşılması kritik önem taşır. Geliştirilmiş başlangıç zamanı elde etmek için anlaşılması gereken bazı ayarlama ödünleri aşağıda yer almaktadır.

İlk Oturum Açma

Microsoft hem Nano Sunucu hem de Sunucu Çekirdeği için bir temel görüntü gönderir. Sunucu Çekirdeği için gelen temel görüntü, ilk oturum açma (OOBE) ile ilişkili başlangıç süresi ek yükü kaldırılarak iyileştirilmiştir. Nano Sunucu temel görüntüsünde böyle bir durum söz konusu değildir. Ancak bu maliyet, kapsayıcı görüntüsüne en az bir katman işlenerek Nano Sunucu tabanlı görüntülerden kaldırılabilir. Görüntüden çalıştırılan sonraki kapsayıcılar, ilk oturum açma maliyetine neden olmaz.

Geçici Bellek Alanı Konumu

Kapsayıcılar varsayılan olarak, çalışan kapsayıcının ömrü boyunca depolama için, kapsayıcı konağının sistem sürücüsünün medyasında geçici bir bellek alanı kullanır. Bu, kapsayıcının sistem sürücüsü olarak hizmet eder ve kapsayıcı işleminde yapılan yazma ve okumaların birçoğu bu yolu izler. Sistem sürücüsünün dönen manyetik disk medyası üzerinde (HDD'ler) bulunduğu ancak daha hızlı depolama medyası (daha hızlı HDD'ler veya SSD'ler) bulunan konak sistemleri için kapsayıcı geçici dosya alanını farklı bir sürücüye taşımak mümkündür. Bu, dockerd –g komutu kullanılarak elde edilir. Bu komut geneldir ve sistemde çalışan tüm kapsayıcıları etkiler.

İç İçe Hyper-V Kapsayıcıları

Windows Server 2022 için Hyper-V iç içe hiper yönetici desteği sunar. Yani, bir sanal makinenin içinden bir sanal makine çalıştırma özelliğidir. Bu, birçok yararlı senaryoyu açar, ancak fiziksel konağın üzerinde iki hipervizör katmanı çalıştığı için hipervizörün neden olduğu bazı performans etkilerini de abartmaktadır.

Kapsayıcılar için bu, sanal makine içinde bir Hyper-V kapsayıcısı çalıştırırken etkili olur. Hyper-V Kapsayıcısı kendisi ile kapsayıcı konağı arasında bir hiper yönetici katmanı üzerinden yalıtım sağladığından, kapsayıcı konağı Hyper-V tabanlı bir sanal makine olduğunda, kapsayıcı başlatma süresi, depolama gç, ağ gç ve aktarım hızı ve CPU açısından performans ek yükü oluşur.

Depolama

Bağlı Veri Birimleri

Kapsayıcılar, kapsayıcı geçici alanı için kapsayıcı konak sistemi sürücüsünü kullanma olanağı sunar. Bununla birlikte, kapsayıcının geçici depolama alanının yaşam süresi kapsayıcınınkine eşittir. Yani, kapsayıcı durdurulduğunda, geçici alan ve ilişkili tüm veriler kaybolur.

Ancak, kapsayıcı ömründen bağımsız olarak verilerin kalıcı olmasını istediğiniz birçok senaryo vardır. Bu gibi durumlarda, kapsayıcı konağından kapsayıcıya veri birimlerini bağlamayı destekleriz. Windows Server Kapsayıcıları için, bağlı veri birimleriyle (yerel performansa yakın) ilişkili göz ardı edilebilir GÇ yolu yükü vardır. Ancak veri birimlerini Hyper-V kapsayıcılara bağlarken, bu yolda bazı G/Ç performans düşüşleri yaşanabilir. Bu etkinin sanal makineler içinde Hyper-V kapsayıcılar çalıştırıldığında abartıldığı belirtilmelidir.

Karalama Alanı

Hem Windows Server Kapsayıcıları hem de Hyper-V kapsayıcıları, kapsayıcı karalama alanı için varsayılan olarak 20 GB dinamik VHD sağlar. Her iki kapsayıcı türü için de kapsayıcı işletim sistemi bu alanın bir bölümünü alır ve bu durum başlatılan her kapsayıcı için geçerlidir. Bu nedenle, başlatılan her kapsayıcının belirli bir depolama etkisine sahip olduğunu ve iş yüküne bağlı olarak destek depolama medyasına kadar 20 GB yazabileceğini unutmayın. Sunucu depolama yapılandırmaları bu göz önünde bulundurularak tasarlanmalıdır.

Ağ Kurma

Windows Server Kapsayıcıları ve Hyper-V kapsayıcıları, farklı ağ yapılandırmalarının gereksinimlerine en uygun olan çeşitli ağ modları sunar. Bu seçeneklerin her biri kendi performans özelliklerini sunar.

Windows Ağ Adresi Çevirisi (WinNAT)

Her kapsayıcı iç, özel IP ön ekinden (örneğin 172.16.0.0/12) bir IP adresi alır. Kapsayıcı ana bilgisayarından kapsayıcı uç noktalarına port yönlendirme/haritalama desteklenir. Dockerd ilk kez çalıştırıldığında Docker varsayılan olarak bir NAT ağı oluşturur.

Bu üç moddan NAT yapılandırması en pahalı ağ GÇ yoludur, ancak en az yapılandırma gerektirir.

Windows Server kapsayıcıları, sanal anahtara eklemek için ana bilgisayar vNIC'sini kullanır. Hyper-V Kapsayıcılar sanal anahtara eklemek için Yapay VM NIC (Yardımcı Program VM'sine sunulmaz) kullanır. Kapsayıcılar dış ağ ile iletişim kurarken paketler WinNAT üzerinden adres çevirileri uygulanarak yönlendirilir ve bu da bazı ek yüklere neden olur.

Saydam

Her kapsayıcı uç noktası fiziksel ağa doğrudan bağlanır. Fiziksel ağdan IP adresleri, bir dış DHCP sunucusu kullanılarak statik veya dinamik olarak atanabilir.

Saydam mod, ağ G/Ç yolu açısından en düşük maliyetli moddur ve dış paketler, dış ağa doğrudan erişim sağlayan kapsayıcı sanal NIC'sine doğrudan iletilir.

L2 Köprüsü

Her kapsayıcı uç noktası, kapsayıcı konağıyla aynı IP alt asında yer alır. IP adresleri, kapsayıcı konağıyla aynı ön ekten statik olarak atanmalıdır. Katman 2 adres çevirisi nedeniyle konak üzerindeki tüm kapsayıcı uç noktaları aynı MAC adresine sahip olur.

L2 Köprü Modu, dış ağa doğrudan erişim sağladığından WinNAT modundan daha performanslıdır, ancak MAC adresi çevirisini de sunduğundan Saydam moddan daha az performanslıdır.