Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede kurulum işlemi, çift yığınlı ağ yapılandırması ve Azure Kubernetes Service (AKS) kümelerinde Azure CNI Katmanı için örnek bir iş yükü dağıtımı açıklanmaktadır. Azure CNI Katman ağına genel bakış için bkz. Azure Kubernetes Service'te (AKS) Azure CNI Katman ağına genel bakış.
Önemli
Azure Kubernetes Service (AKS), 30 Kasım 2025'den itibaren Azure Linux 2.0 için güvenlik güncelleştirmelerini desteklemez veya sağlamaz. Azure Linux 2.0 düğüm görüntüsü 202512.06.0 sürümünde dondurulur. 31 Mart 2026'dan itibaren düğüm görüntüleri kaldırılacak ve düğüm havuzlarınızı ölçeklendiremeyeceksiniz. Düğüm havuzlarınızı desteklenen bir Kubernetes sürümüne yükselterek veya osSku AzureLinux3'e geçerek desteklenen bir Azure Linux sürümüne geçin. Daha fazla bilgi için Bkz. Kullanımdan Kaldırma GitHub sorunu ve Azure Güncelleştirmeleri kullanımdan kaldırma duyurusu. Duyurular ve güncelleştirmeler hakkında bilgi sahibi olmak için AKS sürüm notlarını izleyin.
Önkoşullar
- Bir Azure aboneliği. Eğer bir Azure aboneliğiniz yoksa, başlamadan önce ücretsiz bir hesap oluşturun.
- Azure CLI sürüm 2.48.0 veya üzeri. Azure CLI'yı yüklemek veya yükseltmek için bkz. Azure CLI'yi yükleme.
- Mevcut bir Azure kaynak grubu. Oluşturmanız gerekiyorsa bkz. Kaynak grupları oluşturma.
- Kendi sanal ağınızı getirirseniz sanal ağ önkoşullarını gözden geçirin.
Çift yığınlı ağ için Kubernetes sürüm 1.26.3 veya üzeri gerekir.
Azure CNI Katman AKS kümeleri için anahtar parametreler
Aşağıdaki tabloda AKS kümelerinde Azure CNI Katman ağını yapılandırmaya yönelik temel parametreler açıklanmaktadır:
| Parametre | Description |
|---|---|
--network-plugin |
azure Azure Container Networking Interface (CNI) ağını kullanmak için olarak ayarlayın. |
--network-plugin-mode |
overlay Azure CNI Katman ağını etkinleştirmek için olarak ayarlayın. Bu ayar yalnızca olduğunda --network-plugin=azure geçerlidir. |
--pod-cidr |
Küme için özel bir pod Sınıfsız Alanlar Arası Yönlendirme (CIDR) bloğu belirtin. Varsayılan değer: 10.244.0.0/16. |
Ağ eklentileri için varsayılan davranış, --network-plugin öğesini açıkça ayarlayıp ayarlamadığınıza bağlıdır.
- belirtmezseniz
--network-plugin, AKS varsayılan olarak Azure CNI Overlay ayarlı olur. - belirtir
--network-plugin=azureve atlarsanız--network-plugin-modeAKS, geriye dönük uyumluluk için kasıtlı olarak sanal ağ (düğüm alt ağı) modunu kullanır.
Azure CNI Katman AKS kümesi oluşturma
az aks create komutunu --network-plugin=azure ve --network-plugin-mode=overlay kullanarak bir Azure CNI Overlay AKS kümesi oluşturun. için --pod-cidrbir değer belirtmezseniz AKS varsayılan değerini 10.244.0.0/16atar.
az aks create \
--name $CLUSTER_NAME \
--resource-group $RESOURCE_GROUP \
--location $REGION \
--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
Aynı sanal ağ içindeki farklı bir alt ağa, sanal ağa veya eşlenmiş sanal ağ kaynaklarına olan ağ trafiği için sanal makine (VM) düğümü IP adreslerini denetlemek amacıyla bir düğüm havuzu ekleyin.
komutunu kullanarak az aks nodepool add kümeye yeni bir düğüm havuzu ekleyin ve parametresiyle alt --vnet-subnet-id ağ kaynak kimliğini belirtin. Örneğin:
az aks nodepool add \
--resource-group $RESOURCE_GROUP \
--cluster-name $CLUSTER_NAME \
--name $NODE_POOL_NAME \
--node-count 1 \
--mode system \
--vnet-subnet-id $SUBNET_RESOURCE_ID
Azure CNI Overlay ile çift yığınlı ağ iletişimine sahip AKS kümeleri hakkında
Azure CNI Katman AKS kümelerinizi bir Azure sanal ağıyla ç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ğından farklı bir adres alanından IPv4 ve IPv6 adresi alır. Daha sonra podların Azure sanal ağındaki kaynaklara ulaşabilmesi için ağ adresi çevirisi (NAT) yapılandırılır. Trafiğin kaynak IP adresi, aynı ailenin düğümün birincil IP adresine NAT edilir (IPv4'ten IPv4'e ve IPv6'dan IPv6'ya).
Not
Cilium tarafından desteklenen Azure CNI'yi kullanarak çift yığınlı ağ kümeleri de dağıtabilirsiniz. Daha fazla bilgi için bkz. Cilium tarafından desteklenen Azure CNI ile çift yığınlı ağ.
Çift yığınlı ağ sınırlamaları
Aşağıdaki özellikler çift yığınlı ağ ile desteklenmez:
Çift yığınlı ağ için anahtar parametreler
Aşağıdaki tabloda, Azure CNI Katman AKS kümelerinde çift yığınlı ağ yapılandırmaya yönelik temel parametreler açıklanmaktadır:
| Parametre | Description |
|---|---|
--ip-families |
Kümede etkinleştirmek için ip ailelerinin virgülle ayrılmış bir listesini alır. Yalnızca ipv4 ve ipv4,ipv6 desteklenir. |
--pod-cidrs |
Pod IP'lerinin atanması amacıyla, Sınıfsız Inter-Domain Yönlendirme (CIDR) gösterimine sahip IP aralıklarının virgülle ayrılmış bir listesini alır. Bu listedeki aralıkların sayısı ve sırası, --ip-families için belirtilen değerle eşleşmelidir. Herhangi bir değer belirtmezseniz parametresi varsayılan değerini 10.244.0.0/16,fd12:3456:789a::/64kullanır. |
--service-cidrs |
Hizmet IP'lerini atamak için CIDR gösterimi IP aralıklarının virgülle ayrılmış bir listesini alır. Bu listedeki aralıkların sayısı ve sırası, --ip-families için belirtilen değerle eşleşmelidir. Herhangi bir değer belirtmezseniz parametresi varsayılan değerini 10.0.0.0/16,fd12:3456:789a:1::/108kullanır. atanan IPv6 alt ağı --service-cidrs, /108 büyük olamaz. |
Çift yığınlı ağ ile Azure CNI Katman AKS kümesi oluşturma (Linux)
komutunu kullanarak
az group createküme için bir Azure kaynak grubu oluşturun:az group create --location $REGION --name $RESOURCE_GROUPÇift yığınlı bir AKS kümesi oluşturmak için,
az aks createparametresi--ip-familiesolarak ayarlanmışipv4,ipv6komutunu kullanın.az aks create \ --location $REGION \ --resource-group $RESOURCE_GROUP \ --name $CLUSTER_NAME \ --network-plugin azure \ --network-plugin-mode overlay \ --ip-families ipv4,ipv6 \ --generate-ssh-keys
Çift yığınlı ağ ile Azure CNI Örtü AKS kümesi oluşturma (Windows)
Ö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 kapsamında imkânlar ölçüsünde kısmen desteklenir. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:
Windows düğüm havuzları ile çift yığınlı ağ yapılandırması için Azure CNI Overlay AKS kümesi oluşturmadan önce, Azure CLI uzantısını aks-preview yüklemeniz ve AzureOverlayDualStackPreview özellik bayrağını aboneliğinize kaydetmeniz gerekir.
Azure CLI uzantısını aks-preview yükleme
aks-previewkomutunu kullanarakaz extension adduzantısını yükleyin.az extension add --name aks-previewkomutunu kullanarak uzantının en son sürümüne güncelleştirin
az extension update:az extension update --name aks-preview
Özellik bayrağını AzureOverlayDualStackPreview kaydetme
AzureOverlayDualStackPreviewkomutunu kullanarak özellik bayrağınıaz feature registerkaydedin:az feature register --namespace "Microsoft.ContainerService" --name "AzureOverlayDualStackPreview"Durumun gösterilmesi birkaç dakika sürer
Registered.komutunu kullanarak
az feature showkayıt durumunu doğrulayın:az feature show --namespace "Microsoft.ContainerService" --name "AzureOverlayDualStackPreview"Durum
Registeredyansıttığında,Microsoft.ContainerServicekomutunu kullanarakaz provider registerkaynak sağlayıcısının kaydını yenileyin.az provider register --namespace Microsoft.ContainerService
Çift yığın Azure CNI Kaplama AKS kümesi oluştur ve Windows düğüm havuzu ekle
az aks createkomutunu kullanarak Azure CNI Overlay ile bir küme oluşturun:az aks create \ --name $CLUSTER_NAME \ --resource-group $RESOURCE_GROUP \ --location $REGION \ --network-plugin azure \ --network-plugin-mode overlay \ --ip-families ipv4,ipv6 \ --generate-ssh-keyskomutunu kullanarak
az aks nodepool addkümeye bir Windows düğüm havuzu ekleyin:az aks nodepool add \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --os-type Windows \ --name $WINDOWS_NODE_POOL_NAME \ --node-count 2
Azure CNI Katman AKS kümesine örnek bir iş yükü dağıtma
Sanal makine düğümlerinde IPv4/IPv6 adresleriyle çift yığınlı AKS CNI Katman kümeleri dağıtın. Bu örnek bir NGINX web sunucusu dağıtır ve hem IPv4 hem de IPv6 adreslerine sahip bir LoadBalancer hizmet kullanarak bunu kullanıma sunar.
Not
AKS kümelerinde giriş için uygulama yönlendirme eklentisini kullanmanızı öneririz. Ancak, tanıtım amacıyla bu örnek, uygulama yönlendirme eklentisi olmadan bir NGINX web sunucusu dağıtır. Eklenti hakkında daha fazla bilgi için bkz. Uygulama yönlendirme eklentisiyle Yönetilen NGINX girişi.
Hizmet kullanarak iş yükünü kullanıma sunma LoadBalancer
"kubectl komutlarını veya YAML bildirimlerini kullanarak NGINX dağıtımını açın."
Ö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 trafiği bir pod'a yönlendiremezsiniz, bu nedenle ile
externalTrafficPolicy: Clusterdağıtılan IPv6 hizmetlerine akan trafik başarısız olur. - IPv6 hizmetlerini
externalTrafficPolicy: Localile dağıtmanız gerekir, bu dakube-proxy'nin düğümdeki yoklamaya yanıt vermesine neden olur.
kubectl expose deployment nginxkomutunu kullanarak NGINX dağıtımını kullanıma sunun.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"]}}'Çıktınız kullanıma sunulan hizmetleri göstermelidir. Örneğin:
service/nginx-ipv4 exposed service/nginx-ipv6 exposedLoadBalancerDağıtım dışa açıldıktan ve hizmetler tam olarak sağlandıktan sonra,kubectl get serviceskomutunu kullanarak hizmetlerin IP adreslerini alın.kubectl get servicesÇıkışınız hizmetleri atanmış IP adresleriyle göstermelidir. Örneğin:
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 63skomutunu kullanarak hizmet IP'sini
kubectl get servicesalın ve bir ortam değişkenine ayarlayın:SERVICE_IP=$(kubectl get services nginx-ipv6 -o jsonpath='{.status.loadBalancer.ingress[0].ip}')IPv6 özellikli bir
curlkonaktan istek kullanarak işlevselliği doğrulayın. (Azure Cloud Shell IPv6 özellikli değildir.)curl -s "http://[${SERVICE_IP}]" | head -n5Çıkışınızda NGINX karşılama sayfasının HTML'i gösterilmelidir. Örneğin:
<!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style>
İlgili içerik
AKS'de Azure CNI Katman ağı hakkında daha fazla bilgi edinmek için aşağıdaki makalelere bakın: