Azure Kubernetes Service'de (AKS) Azure CNI Katmanı ağını yapılandırma

Geleneksel Azure Container Networking Interface (CNI), her poda bir sanal ağ IP adresi atar. Bu IP adresini her düğümde önceden ayrılmış ip kümesinden veya podlar için ayrılmış ayrı bir alt ağdan atar. Bu yaklaşım IP adresi planlaması gerektirir ve uygulamanızın talebi arttıkça kümelerinizi ölçeklendirme konusunda güçlükler doğuran adres tükenmesine yol açabilir.

Azure CNI Katmanı ile küme düğümleri bir Azure Sanal Ağ (VNet) alt asına dağıtılır. Podlara, düğümleri barındıran sanal ağdan mantıksal olarak farklı bir özel CIDR'den IP adresleri atanır. Küme içindeki pod ve düğüm trafiği bir Katman ağı kullanır. Ağ Adresi Çevirisi (NAT), küme dışındaki kaynaklara ulaşmak için düğümün IP adresini kullanır. Bu çözüm önemli miktarda sanal ağ IP adresi tasarrufu sağlar ve kümenizi büyük boyutlara ölçeklendirmenizi sağlar. Ek bir avantajı, azure Kubernetes Service'teki (AKS) kapsayıcılı uygulamalar için kullanılabilir IP alanını genişleten özel CIDR'yi farklı AKS kümelerinde yeniden kullanabilmenizdir.

Katman ağına genel bakış

Katman ağı'nda alt ağlardan yalnızca Kubernetes küme düğümlerine IP'ler atanır. Podlar, küme oluşturma sırasında sağlanan özel bir CIDR'den IP'ler alır. Her düğüme aynı CIDR'den oyulmuş bir /24 adres alanı atanır. Bir kümenin ölçeğini genişlettiğiniz zaman oluşturulan ek düğümler, aynı CIDR'den otomatik olarak adres alanları alır /24 . Azure CNI bu /24 alandan podlara IP atar.

Podun özel CIDR alanı için Azure Ağ yığınında ayrı bir yönlendirme etki alanı oluşturulur ve podlar arasında doğrudan iletişim için bir Katman ağı oluşturulur. Küme alt ağı üzerinde özel yollar sağlamaya veya podlar arasındaki trafiği tünellemek için kapsülleme yöntemi kullanmanıza gerek yoktur. Bu yöntem, sanal ağdaki VM'lerle eşit olarak podlar arasında bağlantı performansı sağlar. Podlar içinde çalışan iş yükleri, ağ adresi düzenlemesinin gerçekleştiğinin farkında bile değildir.

Her birinin yer paylaşımlı ağda çalıştığı üç podlu iki düğümü gösteren diyagram. Küme dışındaki uç noktalara giden pod trafiği NAT aracılığıyla yönlendirilir.

Şirket içi ve eşlenmiş sanal ağlar gibi küme dışındaki uç noktalarla iletişim, NAT aracılığıyla düğüm IP'sini kullanarak gerçekleşir. Azure CNI, trafiğin kaynak IP'sini (podun yer paylaşımı IP'si) VM'nin birincil IP adresine çevirerek Azure Ağ yığınının trafiği hedefe yönlendirmesini sağlar. Küme dışındaki uç noktalar bir poda doğrudan bağlanamaz. Pod'un uygulamasını sanal ağda erişilebilir hale getirmek için Kubernetes Load Balancer hizmeti olarak yayımlamanız gerekir.

Standart SKU Yük Dengeleyici veya Yönetilen NAT Ağ Geçidi kullanarak Katman podları için İnternet'e giden (çıkış) bağlantısı sağlayabilirsiniz. Çıkış trafiğini, küme alt ağındaki Kullanıcı Tanımlı Yollar'ı kullanarak bir güvenlik duvarına yönlendirerek de denetleyebilirsiniz.

Nginx veya HTTP uygulama yönlendirmesi gibi bir giriş denetleyicisi kullanarak kümeye giriş bağlantısını yapılandırabilirsiniz. Azure Uygulaması Gateway kullanarak giriş bağlantısını yapılandıramazsınız. Ayrıntılar için bkz. Azure CNI Katmanı ile ilgili sınırlamalar.

Kubenet ile Azure CNI Katmanı arasındaki farklar

Azure CNI Katmanı gibi Kubenet de sanal ağdan mantıksal olarak farklı bir adres alanından podlara IP adresleri atar, ancak ölçeklendirme ve diğer sınırlamaları vardır. Aşağıdaki tabloda Kubenet ile Azure CNI Yer Paylaşımı arasında ayrıntılı bir karşılaştırma sağlanır. IP kesintisi nedeniyle podlara sanal ağ IP adresleri atamak istemiyorsanız Azure CNI Yer Paylaşımı'nı kullanmanızı öneririz.

Alan Azure CNI Katmanı Kubenet
Küme ölçeği 5000 düğüm ve 250 pod/düğüm 400 düğüm ve 250 pod/düğüm
Ağ yapılandırması Basit - pod ağı için ek yapılandırma gerekmez Karmaşık - pod ağı için küme alt ağında yol tabloları ve UDR'ler gerektirir
Pod bağlantı performansı Sanal ağdaki VM'lerle eşit performans Ek atlama gecikme süresi ekler
Kubernetes Ağ İlkeleri Azure Ağ İlkeleri, Calico, Cilium Calico
Desteklenen işletim sistemi platformları Linux ve Windows Server 2022, 2019 Yalnızca Linux

IP adresi planlaması

  • Küme Düğümleri: AKS kümenizi ayarlarken, VNet alt ağlarınızın gelecekteki ölçeklendirme için yeterli alanı olduğundan emin olun. Her düğüm havuzunu ayrılmış bir alt ağa atayabilirsiniz. İlk /24üç IP adresi yönetim görevleri için ayrıldığından bir alt ağ en fazla 251 düğüme sığabilir.
  • Podlar: Katman çözümü, küme oluşturma sırasında belirttiğiniz özel CIDR'den her düğümdeki podlar için bir /24 adres alanı atar. Boyut /24 sabittir ve artırılamaz veya azaltılamaz. Bir düğümde en fazla 250 pod çalıştırabilirsiniz. Pod adres alanını planlarken, özel CIDR'nin gelecekteki küme genişletmesini destekleyecek yeni düğümler için adres alanları sağlayacak /24 kadar büyük olduğundan emin olun.
    • Podlar için IP adresi alanını planlarken aşağıdaki faktörleri göz önünde bulundurun:
      • Aynı pod CIDR alanı, aynı VNet'teki birden çok bağımsız AKS kümesinde kullanılabilir.
      • Pod CIDR alanı küme alt ağ aralığıyla çakışmamalıdır.
      • Pod CIDR alanı doğrudan bağlı ağlarla (VNet eşlemesi, ExpressRoute veya VPN gibi) çakışmamalıdır. Dış trafiğin podCIDR aralığında kaynak IP'leri varsa, kümeyle iletişim kurmak için SNAT aracılığıyla çakışmayan bir IP'ye çevirisi gerekir.
  • Kubernetes hizmet adres aralığı: Hizmet adresi CIDR'nin boyutu, oluşturmayı planladığınız küme hizmetlerinin sayısına bağlıdır. değerinden /12küçük olmalıdır. Bu aralık, eşlenmiş sanal ağlarda ve şirket içi ağlarda kullanılan pod CIDR aralığı, küme alt ağ aralığı ve IP aralığı ile çakışmamalıdır.
  • Kubernetes DNS hizmeti IP adresi: Bu IP adresi, küme hizmeti bulma tarafından kullanılan Kubernetes hizmet adresi aralığındadır. Adres için bu adres kullanıldığından kubernetes.default.svc.cluster.local , adres aralığınızdaki ilk IP adresini kullanmayın.

Ağ güvenlik grupları

Azure CNI Katman ile poddan poda trafiği kapsüllenmemiştir ve alt ağ güvenlik grubu kuralları uygulanır. Alt ağ NSG'sinde pod CIDR trafiğini etkileyecek reddetme kuralları varsa, doğru küme işlevselliğini (tüm AKS çıkış gereksinimlerine ek olarak) sağlamak için aşağıdaki kuralların geçerli olduğundan emin olun:

  • Tüm bağlantı noktaları ve protokollerde düğüm CIDR'den düğüm CIDR'ye trafik
  • Tüm bağlantı noktaları ve protokollerde düğüm CIDR'den pod CIDR'ye trafik (hizmet trafiği yönlendirme için gereklidir)
  • Tüm bağlantı noktaları ve protokollerde pod CIDR'den pod CIDR'ye trafik (DNS dahil olmak üzere poddan poda ve poddan hizmete trafik için gereklidir)

Poddan pod CIDR bloğu dışındaki herhangi bir hedefe gelen trafik, kaynak IP'yi podun çalıştığı düğümün IP'sine ayarlamak için SNAT kullanır.

Kümedeki iş yükleri arasındaki trafiği kısıtlamak istiyorsanız ağ ilkelerini kullanmanızı öneririz.

Düğüm başına en fazla pod sayısı

Küme oluşturma sırasında veya yeni bir düğüm havuzu eklediğinizde düğüm başına en fazla pod sayısını yapılandırabilirsiniz. Azure CNI Katmanı için varsayılan değer 250'dir. Azure CNI Katmanda belirtebileceğiniz en yüksek değer 250 ve en düşük değer 10'dur. Düğüm havuzu oluşturulurken yapılandırılan düğüm başına en fazla pod değeri, yalnızca bu düğüm havuzundaki düğümler için geçerlidir.

Kullanılacak ağ modelini seçme

Azure CNI podlar için iki IP adresleme seçeneği sunar: Podlara sanal ağ IP'leri atayan geleneksel yapılandırma ve Katman ağı. AKS kümeniz için hangi seçeneğin kullanılacağı, esneklik ve gelişmiş yapılandırma gereksinimleri arasında bir dengedir. Aşağıdaki önemli noktalar, her ağ modelinin en uygun olduğu zamanları belirlemeye yardımcı olur.

Aşağıdaki durumlarda Katman ağını kullanın:

  • Çok sayıda poda ölçeklendirmek istiyorsunuz, ancak sanal ağınızda sınırlı IP adresi alanı var.
  • Pod iletişiminin çoğu küme içindedir.
  • Sanal düğümler gibi gelişmiş AKS özelliklerine ihtiyacınız yoktur.

Aşağıdaki durumlarda geleneksel sanal ağ seçeneğini kullanın:

  • Kullanılabilir IP adresi alanınız var.
  • Pod iletişiminin çoğu küme dışındaki kaynaklara yapılır.
  • Küme dışındaki kaynakların podlara doğrudan ulaşması gerekir.
  • Sanal düğümler gibi AKS gelişmiş özelliklerine ihtiyacınız vardır.

Azure CNI Yer Paylaşımı ile ilgili sınırlamalar

Azure CNI Katmanda aşağıdaki sınırlamalar vardır:

  • Application Gateway'i katman kümesi için Giriş Denetleyicisi (AGIC) olarak kullanamazsınız.
  • Katman kümesi için Kapsayıcılar için Application Gateway'i kullanamazsınız.
  • Yer Paylaşımı için Sanal Makine Kullanılabilirlik Kümeleri (VMAS) desteklenmez.
  • Düğüm havuzlarında DCv2 serisi sanal makineleri kullanamazsınız. Gizli Bilgi İşlem gereksinimlerini karşılamak için bunun yerine DCasv5 veya DCadsv5 serisi gizli VM'leri kullanmayı göz önünde bulundurun.
  • Kümeyi dağıtmak için kendi alt ağınızı kullanıyorsanız, alt ağın, sanal ağın ve sanal ağı içeren kaynak grubunun adları 63 karakter veya daha az olmalıdır. Bu, bu adların AKS çalışan düğümlerinde etiket olarak kullanılmasından ve bu nedenle Kubernetes etiket söz dizimi kurallarına tabi olmasından kaynaklanır.

Katman kümelerini ayarlama

Not

Bağımsız değişkeni kullanmak --network-plugin-mode için CLI sürüm 2.48.0 veya üzeri olmalıdır. Windows için en son aks-preview Azure CLI uzantısının yüklü olması gerekir ve aşağıdaki yönergeleri izleyebilirsiniz.

komutunu kullanarak az aks create Azure CNI Yer Paylaşımı ile bir küme oluşturun. Katman kümesi belirtmek için bağımsız değişkenini --network-plugin-mode kullandığınızdan emin olun. Pod CIDR belirtilmezse AKS varsayılan bir alan atar: viz. 10.244.0.0/16.

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks create \
    --name $clusterName \
    --resource-group $resourceGroup \
    --location $location \
    --network-plugin azure \
    --network-plugin-mode overlay \
    --pod-cidr 192.168.0.0/16 \
    --generate-ssh-keys

Ayrılmış alt ağa yeni düğüm havuzu ekleme

Azure CNI Katman ile bir küme oluşturduktan sonra başka bir düğüm havuzu oluşturabilir ve düğümleri aynı sanal ağın yeni bir alt asına atayabilirsiniz. Aynı sanal ağ veya eşlenmiş sanal ağlardaki hedeflere doğru konağın giriş veya çıkış IP'lerini denetlemek istiyorsanız bu yaklaşım yararlı olabilir.

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"
nodepoolName="newpool1"
subscriptionId=$(az account show --query id -o tsv)
vnetName="yourVnetName"
subnetName="yourNewSubnetName"
subnetResourceId="/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.Network/virtualNetworks/$vnetName/subnets/$subnetName"
az aks nodepool add --resource-group $resourceGroup --cluster-name $clusterName \
  --name $nodepoolName --node-count 1 \
  --mode system --vnet-subnet-id $subnetResourceId

Var olan bir kümeyi CNI Katmanına yükseltme

Not

Küme aşağıdaki ölçütleri karşılıyorsa mevcut bir Azure CNI kümesini Katman olarak güncelleştirebilirsiniz:

  • Küme Kubernetes sürüm 1.22+ üzerindedir.
  • Dinamik pod IP ayırma özelliğini kullanmaz.
  • Etkinleştirilmiş ağ ilkeleri yoktur. Ağ İlkesi altyapısı yükseltmeden önce kaldırılabilir, bkz. Azure Ağ İlkesi Yöneticisi'ni veya Calico'yı kaldırma
  • Kapsayıcı çalışma zamanı olarak docker içeren windows düğümü havuzları kullanmaz.

Not

Mevcut bir kümeyi CNI Katmanına yükseltmek geri alınamaz bir işlemdir.

Uyarı

Windows İşletim Sistemi Derlemesi 20348.1668'den önce, Windows Katman podları ile ilgili bir sınırlama söz konusuydu. Paketleri konak ağ podlarından yanlışlıkla SNATing, bu da Katman'a yükselten kümeler için daha zarar verici bir etkiye sahipti. Bu sorunu önlemek için 20348.1668'den büyük veya buna eşit Windows İşletim Sistemi Derlemesi'ni kullanın.

Uyarı

Podlardan SNAT paketleri içermemesi gereken ek IP aralıkları eklemek için özel bir azure-ip-masq-agent yapılandırması kullanıyorsanız, Azure CNI Yer Paylaşımı'na yükseltmek bu aralıklara bağlantıyı kesebilir. Katman alanından pod IP'lerine küme düğümleri dışındaki hiçbir şey erişemez. Ayrıca, yeterince eski kümeler için azure-ip-masq-agent'ın önceki bir sürümünden kalan bir ConfigMap olabilir. adlı azure-ip-masq-agent-configbu ConfigMap varsa ve kasıtlı olarak yerinde değilse, güncelleştirme komutu çalıştırılmadan önce silinmelidir. Özel ip-masq-agent yapılandırması kullanılmıyorsa, Azure ip-masq-agent ConfigMaps ile ilgili olarak yalnızca azure-ip-masq-agent-config-reconciled ConfigMap bulunmalıdır ve yükseltme işlemi sırasında bu otomatik olarak güncelleştirilir.

Yükseltme işlemi her düğüm havuzunun aynı anda yeniden görüntüsünün alınması için tetikler. Her düğüm havuzunun ayrı olarak Katman'a yükseltilmesi desteklenmez. Küme ağındaki tüm kesintiler, düğüm havuzundaki her düğümün yeniden görüntülendiği düğüm görüntüsü yükseltmesine veya Kubernetes sürümü yükseltmesine benzer.

Azure CNI Kümesi Yükseltmesi

Komutunu kullanarak yer paylaşımını kullanmak için mevcut bir Azure CNI kümesini güncelleştirin az aks update .

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks update --name $clusterName \
--resource-group $resourceGroup \
--network-plugin-mode overlay \
--pod-cidr 192.168.0.0/16

Podların --pod-cidr mevcut düğüm alt ağıyla çakışmayan yeni bir katman alanından IP'leri alması gerektiğinden, eski CNI'den yükseltme yaparken parametresi gereklidir. Pod CIDR ayrıca düğüm havuzlarının herhangi bir sanal ağ adresiyle çakışamaz. Örneğin, sanal ağ adresiniz 10.0.0.0/8 ise ve düğümleriniz 10.240.0.0/16 alt asındaysa, --pod-cidr 10.0.0.0/8 veya kümedeki mevcut hizmet CIDR'siyle çakışamaz.

Kubenet Kümesi Yükseltmesi

komutunu kullanarak mevcut bir Kubenet kümesini Azure CNI Yer Paylaşımı'nı kullanacak şekilde güncelleştirin az aks update .

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks update --name $clusterName \
--resource-group $resourceGroup \
--network-plugin azure \
--network-plugin-mode overlay 

Küme zaten sanal ağ IP alanıyla çakışmayan podlar için özel bir CIDR kullandığından, parametresini belirtmeniz --pod-cidr gerekmez ve parametre kullanılmazsa Pod CIDR aynı kalır.

Not

Kubenet'ten CNI Yer Paylaşımı'na yükseltirken, artık pod yönlendirmesi için yol tablosu gerekli olmayacaktır. Küme müşteri tarafından sağlanan bir yol tablosu kullanıyorsa, geçiş işlemi sırasında pod trafiğini doğru düğüme yönlendirmek için kullanılan yollar otomatik olarak silinir. Küme yönetilen bir yol tablosu kullanıyorsa (yönlendirme tablosu AKS tarafından oluşturuldu ve düğüm kaynak grubunda yer alır) bu yol tablosu geçişin bir parçası olarak silinir.

Çift yığınlı Ağ

Yer paylaşımı ağı ve çift yığınlı Azure sanal ağı kullanırken AKS kümelerinizi çift yığın modunda dağıtabilirsiniz. Bu yapılandırmada düğümler, Azure sanal ağ alt ağından hem IPv4 hem de IPv6 adresi alır. Podlar, düğümlerin Azure sanal ağ alt ağına mantıksal olarak farklı bir adres alanından hem IPv4 hem de IPv6 adresi alır. Ardından podların Azure sanal ağındaki kaynaklara erişebilmesi için ağ adresi çevirisi (NAT) yapılandırması gerçekleştirilir. Trafiğin kaynak IP adresi, aynı ailenin düğümün birincil IP adresine NAT'tır (IPv4'e IPv4'e ve IPv6'ya IPv6'ya).

Önkoşullar

  • Azure CLI 2.48.0 veya üzeri yüklü olmalıdır.
  • Kubernetes sürüm 1.26.3 veya üzeri.

Sınırlamalar

Aşağıdaki özellikler çift yığınlı ağ ile desteklenmez:

  • Azure ağ ilkeleri
  • Calico ağ ilkeleri
  • NAT Ağ Geçidi
  • Sanal düğümler eklentisi

Çift yığınlı AKS kümesi dağıtma

Çift yığınlı kümeleri desteklemek için aşağıdaki öznitelikler sağlanır:

  • --ip-families: Kümede etkinleştirmek için IP ailelerinin virgülle ayrılmış bir listesini alır.
    • Yalnızca ipv4 veya ipv4,ipv6 desteklenir.
  • --pod-cidrs: Pod IP'lerini atamak için CIDR gösterimi IP aralıklarının virgülle ayrılmış listesini alır.
    • Bu listedeki aralıkların sayısı ve sırası ile sağlanan --ip-familiesdeğer eşleşmelidir.
    • Hiçbir değer sağlanmazsa, varsayılan değer 10.244.0.0/16,fd12:3456:789a::/64 kullanılır.
  • --service-cidrs: Hizmet IP'lerini atamak için CIDR gösterimi IP aralıklarının virgülle ayrılmış listesini alır.
    • Bu listedeki aralıkların sayısı ve sırası ile sağlanan --ip-familiesdeğer eşleşmelidir.
    • Hiçbir değer sağlanmazsa, varsayılan değer 10.0.0.0/16,fd12:3456:789a:1::/108 kullanılır.
    • Atanan --service-cidrs IPv6 alt ağı /108'den büyük olamaz.

Çift yığınlı AKS kümesi oluşturma

  1. [az group create][az-group-create] komutunu kullanarak küme için bir Azure kaynak grubu oluşturun.

    az group create --location <region> --name <resourceGroupName>
    
  2. parametresi olarak ayarlanmış ipv4,ipv6komutunu --ip-families kullanarak az aks create çift yığınlı aks kümesi oluşturun.

    az aks create \
        --location <region> \
        --resource-group <resourceGroupName> \
        --name <clusterName> \
        --network-plugin azure \
        --network-plugin-mode overlay \
        --ip-families ipv4,ipv6 \
        --generate-ssh-keys
    

Örnek iş yükü oluşturma

Küme oluşturulduktan sonra iş yüklerinizi dağıtabilirsiniz. Bu makalede, bir NGINX web sunucusunun örnek iş yükü dağıtımında size yol gösterilmektedir.

NGINX web sunucusu dağıtma

Uygulama yönlendirme eklentisi, AKS kümesinde giriş için önerilen yoldur. Uygulama yönlendirme eklentisi hakkında daha fazla bilgi ve eklentiyle bir uygulamanın nasıl dağıtılacağına ilişkin bir örnek için bkz . Uygulama yönlendirme eklentisiyle Yönetilen NGINX girişi.

tür hizmeti aracılığıyla iş yükünü kullanıma LoadBalancer sunma

Önemli

Şu anda AKS'deki IPv6 hizmetleriyle ilgili iki sınırlama vardır.

  • Azure Load Balancer, bağlantı yerel adresinden IPv6 hedeflerine sistem durumu yoklamaları gönderir. Azure Linux düğüm havuzlarında bu trafik bir pod'a yönlendirilemediğinden, dağıtılan externalTrafficPolicy: Cluster IPv6 hizmetlerine akan trafik başarısız olur. IPv6 hizmetlerinin ile externalTrafficPolicy: Localdağıtılması gerekir ve bu da düğümdeki yoklamanın yanıt vermesine neden olur kube-proxy .
  • Kubernetes 1.27 sürümünden önce yük dengeleyiciye yalnızca hizmetin ilk IP adresi sağlanacaktır, bu nedenle çift yığınlı bir hizmet yalnızca ilk listelenen IP ailesi için genel IP alır. Tek bir dağıtım için çift yığın hizmeti sağlamak için, lütfen biri IPv4 ve biri IPv6 için olmak üzere aynı seçiciyi hedefleyen iki hizmet oluşturun. Bu artık kubernetes 1.27 veya sonraki sürümlerde bir sınırlama değildir.
  1. komutunu kullanarak NGINX dağıtımını kullanıma sunma kubectl expose deployment nginx .

    kubectl expose deployment nginx --name=nginx-ipv4 --port=80 --type=LoadBalancer'
    kubectl expose deployment nginx --name=nginx-ipv6 --port=80 --type=LoadBalancer --overrides='{"spec":{"ipFamilies": ["IPv6"]}}'
    

    Hizmetlerin kullanıma sunulduğunun gösterildiği bir çıkış alırsınız.

    service/nginx-ipv4 exposed
    service/nginx-ipv6 exposed
    
  2. Dağıtım kullanıma sunulduktan ve hizmetler tam olarak sağlandıktan LoadBalancer sonra komutunu kullanarak kubectl get services hizmetlerin IP adreslerini alın.

    kubectl get services
    
    NAME         TYPE           CLUSTER-IP               EXTERNAL-IP         PORT(S)        AGE
    nginx-ipv4   LoadBalancer   10.0.88.78               20.46.24.24         80:30652/TCP   97s
    nginx-ipv6   LoadBalancer   fd12:3456:789a:1::981a   2603:1030:8:5::2d   80:32002/TCP   63s
    
  3. IPv6 özellikli bir konaktan komut satırı web isteği aracılığıyla işlevselliği doğrulayın. Azure Cloud Shell IPv6 özellikli değildir.

    SERVICE_IP=$(kubectl get services nginx-ipv6 -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
    curl -s "http://[${SERVICE_IP}]" | head -n5
    
    <!DOCTYPE html>
    <html>
    <head>
    <title>Welcome to nginx!</title>
    <style>
    

Cilium tarafından desteklenen Azure CNI ile çift yığınlı ağ - (Önizleme)

Çift yığınlı AKS kümelerinizi Cilium tarafından desteklenen Azure CNI ile dağıtabilirsiniz. Bu, IPv6 trafiğinizi Cilium Ağ İlkesi altyapısıyla denetlemenize de olanak tanır.

Önemli

AKS önizleme özellikleri self servis ve kabul temelinde kullanılabilir. Önizlemeler "olduğu gibi" ve "kullanılabilir" olarak sağlanır ve hizmet düzeyi sözleşmelerinin ve sınırlı garantinin dışında tutulur. AKS önizlemeleri, müşteri desteği tarafından kısmen en iyi çaba temelinde ele alınmaktadır. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:

Önkoşullar

  • AKS önizleme uzantısının en son sürümüne sahip olmanız gerekir.
  • Kubernetes sürüm 1.29 veya üzeri olmalıdır.

aks-preview Azure CLI uzantısını yükleme

  • komutunu kullanarak aks-preview uzantısını az extension add yükleyin.

    az extension add --name aks-preview
    
  • komutunu kullanarak yayımlanan uzantının en son sürümüne güncelleştirin az extension update .

    az extension update --name aks-preview
    

'AzureOverlayDualStackPreview' özellik bayrağını kaydetme

  1. AzureOverlayDualStackPreview komutunu kullanarak özellik bayrağını az feature register kaydedin.

    az feature register --namespace "Microsoft.ContainerService" --name "AzureOverlayDualStackPreview"
    

    Durumun Kayıtlı olarak gösterilmesi birkaç dakika sürer.

  2. komutunu kullanarak az feature show kayıt durumunu doğrulayın:

    az feature show --namespace "Microsoft.ContainerService" --name "AzureOverlayDualStackPreview"
    
  3. Durum Kayıtlı olarak yansıtıldığında, komutunu kullanarak Microsoft.ContainerService kaynak sağlayıcısının kaydını yenileyinaz provider register.

    az provider register --namespace Microsoft.ContainerService
    

Cilium tarafından desteklenen Azure CNI ile Katman kümelerini ayarlama

komutunu kullanarak az aks create Azure CNI Yer Paylaşımı ile bir küme oluşturun. Cilium veri düzlemini belirtmek için bağımsız değişkenini --network-dataplane cilium kullandığınızdan emin olun.

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks create \
    --name $clusterName \
    --resource-group $resourceGroup \
    --location $location \
    --network-plugin azure \
    --network-plugin-mode overlay \
    --network-dataplane cilium \
    --ip-families ipv4,ipv6 \
    --generate-ssh-keys\

Cilium tarafından desteklenen Azure CNI hakkında daha fazla bilgi için bkz . Cilium tarafından desteklenen Azure CNI.

Çift yığınlı ağ Windows düğüm havuzları - (Önizleme)

Çift yığınlı AKS kümelerinizi Windows düğüm havuzları ile dağıtabilirsiniz.

Önemli

AKS önizleme özellikleri self servis ve kabul temelinde kullanılabilir. Önizlemeler "olduğu gibi" ve "kullanılabilir" olarak sağlanır ve hizmet düzeyi sözleşmelerinin ve sınırlı garantinin dışında tutulur. AKS önizlemeleri, müşteri desteği tarafından kısmen en iyi çaba temelinde ele alınmaktadır. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:

aks-preview Azure CLI uzantısını yükleme

  • komutunu kullanarak aks-preview uzantısını az extension add yükleyin.

    az extension add --name aks-preview
    
  • komutunu kullanarak yayımlanan uzantının en son sürümüne güncelleştirin az extension update .

    az extension update --name aks-preview
    

'AzureOverlayDualStackPreview' özellik bayrağını kaydetme

  1. AzureOverlayDualStackPreview komutunu kullanarak özellik bayrağını az feature register kaydedin.

    az feature register --namespace "Microsoft.ContainerService" --name "AzureOverlayDualStackPreview"
    

    Durumun Kayıtlı olarak gösterilmesi birkaç dakika sürer.

  2. komutunu kullanarak az feature show kayıt durumunu doğrulayın:

    az feature show --namespace "Microsoft.ContainerService" --name "AzureOverlayDualStackPreview"
    
  3. Durum Kayıtlı olarak yansıtıldığında, komutunu kullanarak Microsoft.ContainerService kaynak sağlayıcısının kaydını yenileyinaz provider register.

    az provider register --namespace Microsoft.ContainerService
    

Katman kümesi ayarlama

komutunu kullanarak az aks create Azure CNI Yer Paylaşımı ile bir küme oluşturun.

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks create \
    --name $clusterName \
    --resource-group $resourceGroup \
    --location $location \
    --network-plugin azure \
    --network-plugin-mode overlay \
    --ip-families ipv4,ipv6 \
    --generate-ssh-keys\

Kümeye Windows düğüm havuzu ekleme

[az aks nodepool add][az-aks-nodepool-add] komutunu kullanarak kümeye bir Windows nodepool ekleyin.

az aks nodepool add \
    --resource-group $resourceGroup \
    --cluster-name $clusterName \
    --os-type Windows \
    --name winpool1 \
    --node-count 2

Sonraki adımlar

AKS'yi kendi Kapsayıcı Ağ Arabirimi (CNI) eklentinizle kullanmayı öğrenmek için bkz . Kendi Kapsayıcı Ağ Arabiriminizi (CNI) getirme eklentisi.