API Server Sanal Ağ Tümleştirmesi (Önizleme) ile Azure Kubernetes Service kümesi oluşturma
API Server Sanal Ağ Tümleştirmesi ile yapılandırılmış bir Azure Kubernetes Service (AKS) kümesi, API sunucusu uç noktasını doğrudan AKS'nin dağıtıldığı VNet'teki temsilci alt ağa projelendirir. API Server Sanal Ağ Tümleştirmesi, özel bağlantı veya tünel gerektirmeden API sunucusu ile küme düğümleri arasında ağ iletişimi sağlar. API sunucusu, düğümlerin kullanmak üzere yapılandırıldığı temsilci alt ağındaki bir iç yük dengeleyici VIP'sinin arkasında kullanılabilir. API Server Sanal Ağ Tümleştirmesi'ni kullanarak API sunucunuzla düğüm havuzlarınız arasındaki ağ trafiğinin yalnızca özel ağda kaldığından emin olabilirsiniz.
API sunucusu bağlantısı
Denetim düzlemi veya API sunucusu AKS tarafından yönetilen bir Azure aboneliğindedir. Kümeniz veya düğüm havuzunuz Azure aboneliğinizdedir. Sunucu ve küme düğümlerini oluşturan sanal makineler, temsilci alt ağa yansıtılan API sunucusu VIP ve pod IP'leri aracılığıyla birbirleriyle iletişim kurabilir.
API Server Sanal Ağ Tümleştirmesi genel veya özel kümeler için desteklenir. Küme sağlamadan sonra genel erişim ekleyebilir veya kaldırabilirsiniz. Sanal ağ ile tümleşik olmayan kümelerden farklı olarak aracı düğümleri, DNS kullanmadan her zaman API sunucusu iç yük dengeleyici (ILB) IP'sinin özel IP adresiyle doğrudan iletişim kurar. TÜM düğümden API sunucusuna trafiği özel ağ üzerinde tutulur ve API sunucusundan düğüme bağlantı için tünel gerekmez. API sunucusuyla iletişim kurması gereken küme dışı istemciler, genel ağ erişimi etkinleştirildiğinde bunu normal şekilde yapabilir. Genel ağ erişimi devre dışı bırakılırsa, standart özel kümelerle aynı özel DNS kurulum yöntemini izlemeniz gerekir.
Bölgesel kullanılabilirlik
API Server Sanal Ağ Tümleştirmesi tüm genel Azure bölgelerinde kullanılabilir.
Önkoşullar
- Aks-preview uzantısı 0.5.97 veya üzeri olan Azure CLI.
- ARM veya REST API kullanılıyorsa AKS API sürümü 2022-04-02-preview veya üzeri olmalıdır.
aks-preview Azure CLI uzantısını yükleme
Ö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:
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
'EnableAPIServerVnetIntegrationPreview' özellik bayrağını kaydedin
EnableAPIServerVnetIntegrationPreview
komutunu kullanarak özellik bayrağınıaz feature register
kaydedin.az feature register --namespace "Microsoft.ContainerService" --name "EnableAPIServerVnetIntegrationPreview"
Durumun Kayıtlı olarak gösterilmesi birkaç dakika sürer.
komutunu kullanarak
az feature show
kayıt durumunu doğrulayın:az feature show --namespace "Microsoft.ContainerService" --name "EnableAPIServerVnetIntegrationPreview"
Durum Kayıtlı olarak yansıtıldığında, komutunu kullanarak Microsoft.ContainerService kaynak sağlayıcısının kaydını yenileyin
az provider register
.az provider register --namespace Microsoft.ContainerService
Yönetilen sanal ağı kullanarak API Server Sanal Ağ Tümleştirmesi ile AKS kümesi oluşturma
YÖNETILEN VNet'te API Server Sanal Ağ Tümleştirmesi veya kendi sanal ağınızı getirme modunda AKS kümelerinizi yapılandırabilirsiniz. Bunları genel kümeler (genel IP üzerinden kullanılabilen API sunucusu erişimiyle) veya özel kümeler (API sunucusuna yalnızca özel sanal ağ bağlantısı üzerinden erişilebilir) olarak oluşturabilirsiniz. Kümenizi yeniden dağıtmadan genel ve özel durum arasında geçiş de yapabilirsiniz.
Kaynak grubu oluşturma
komutunu kullanarak
az group create
bir kaynak grubu oluşturun.az group create --location westus2 --name <resource-group>
Genel küme dağıtma
bayrağıyla komutunu kullanarak yönetilen sanal ağ için API Server VNet tümleştirmesi
az aks create
ile genel bir AKS kümesi dağıtın--enable-api-server-vnet-integration
.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-apiserver-vnet-integration \ --generate-ssh-keys
Özel küme dağıtma
ve
--enable-private-cluster
bayraklarıyla komutunu kullanarak yönetilen sanal ağ için API Server VNet tümleştirmesiaz aks create
ile özel bir AKS kümesi dağıtın--enable-api-server-vnet-integration
.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-private-cluster \ --enable-apiserver-vnet-integration \ --generate-ssh-keys
Kendi sanal ağınızı getirin kullanarak API Server Sanal Ağ Tümleştirmesi ile özel bir AKS kümesi oluşturma
Kendi sanal ağınızı getirin kullanırken, API sunucusu podlarını ve iç yük dengeleyiciyi Microsoft.ContainerService/managedClusters
bu alt ağa eklemek için AKS hizmeti izinlerini veren bir API sunucusu alt ağı oluşturup bu alt ağa temsilci atamanız gerekir. Alt ağı diğer iş yükleri için kullanamazsınız, ancak aynı sanal ağda bulunan birden çok AKS kümesi için kullanabilirsiniz. Desteklenen en düşük API sunucusu alt ağ boyutu /28'dir.
Küme kimliğinin hem API sunucusu alt ağı hem de düğüm alt ağı için izinlere ihtiyacı vardır. API sunucusu alt akındaki izinlerin olmaması sağlama hatasına neden olabilir.
Uyarı
AKS kümesi alt ağ adres alanında en az 9 IP ayırır. IP adreslerinin bitmesi API sunucusu ölçeklendirmesini engelleyebilir ve API sunucusu kesintisine neden olabilir.
Kaynak grubu oluşturma
- komutunu kullanarak
az group create
bir kaynak grubu oluşturun.
az group create --location <location> --name <resource-group>
Sanal ağ oluşturma
komutunu kullanarak
az network vnet create
bir sanal ağ oluşturun.az network vnet create --name <vnet-name> \ --resource-group <resource-group> \ --location <location> \ --address-prefixes 172.19.0.0/16
komutunu kullanarak
az network vnet subnet create
bir API sunucusu alt ağı oluşturun.az network vnet subnet create --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <apiserver-subnet-name> \ --delegations Microsoft.ContainerService/managedClusters \ --address-prefixes 172.19.0.0/28
komutunu kullanarak
az network vnet subnet create
bir küme alt ağı oluşturun.az network vnet subnet create --resource-group <resource-group> \ --vnet-name <vnet-name> \ --name <cluster-subnet-name> \ --address-prefixes 172.19.1.0/24
Yönetilen kimlik oluşturma ve sanal ağ üzerinde izinler verme
komutunu kullanarak
az identity create
yönetilen kimlik oluşturun.az identity create --resource-group <resource-group> --name <managed-identity-name> --location <location>
komutunu kullanarak API sunucusu alt ağına Ağ Katkıda Bulunanı rolünü atayın
az role assignment create
.az role assignment create --scope <apiserver-subnet-resource-id> \ --role "Network Contributor" \ --assignee <managed-identity-client-id>
komutunu kullanarak küme alt ağına Ağ Katkıda Bulunanı rolünü atayın
az role assignment create
.az role assignment create --scope <cluster-subnet-resource-id> \ --role "Network Contributor" \ --assignee <managed-identity-client-id>
Genel küme dağıtma
bayrağıyla komutunu kullanarak API Server sanal ağ tümleştirmesi
az aks create
ile genel bir AKS kümesi dağıtın--enable-api-server-vnet-integration
.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-apiserver-vnet-integration \ --vnet-subnet-id <cluster-subnet-resource-id> \ --apiserver-subnet-id <apiserver-subnet-resource-id> \ --assign-identity <managed-identity-resource-id> \ --generate-ssh-keys
Özel küme dağıtma
ve
--enable-private-cluster
bayraklarıyla komutunu kullanarak API Server VNet tümleştirmesiaz aks create
ile özel bir AKS kümesi dağıtın--enable-api-server-vnet-integration
.az aks create --name <cluster-name> \ --resource-group <resource-group> \ --location <location> \ --network-plugin azure \ --enable-private-cluster \ --enable-apiserver-vnet-integration \ --vnet-subnet-id <cluster-subnet-resource-id> \ --apiserver-subnet-id <apiserver-subnet-resource-id> \ --assign-identity <managed-identity-resource-id> \ --generate-ssh-keys
Mevcut aks kümesini API Server Sanal Ağ Tümleştirmesine dönüştürme
Daha önce listelenen gereksinimleri karşılayan bir API sunucusu alt ağı sağlayarak mevcut genel/özel AKS kümelerini API Server Sanal Ağ Tümleştirme kümelerine dönüştürebilirsiniz. Bu gereksinimler şunlardır: küme düğümleriyle aynı sanal ağda, AKS kümesi kimliği için verilen izinler, özel uç nokta gibi diğer kaynaklar tarafından kullanılmaz ve en az /28 boyutundadır. Kümenizi dönüştürmek tek yönlü bir geçiştir. Kümeler etkinleştirildikten sonra API Server Sanal Ağ Tümleştirmesi devre dışı bırakılamaz.
Bu yükseltme, tüm düğüm havuzlarında düğüm görüntüsü sürümü yükseltmesi gerçekleştirir ve sıralı görüntü yükseltmesi yapılırken tüm iş yüklerini yeniden başlatır.
Uyarı
Kümenin API Server Sanal Ağ Tümleştirmesine dönüştürülmesi API Server IP adresinin değişmesine neden olur, ancak ana bilgisayar adı aynı kalır. API sunucusunun IP adresi herhangi bir güvenlik duvarında veya ağ güvenlik grubu kurallarında yapılandırılmışsa, bu kuralların güncelleştirilmiş olması gerekebilir.
bayrağıyla komutunu kullanarak
az aks update
kümenizi API Server Sanal Ağ Tümleştirmesine güncelleştirin--enable-apiserver-vnet-integration
.az aks update --name <cluster-name> \ --resource-group <resource-group> \ --enable-apiserver-vnet-integration \ --apiserver-subnet-id <apiserver-subnet-resource-id>
API Server Sanal Ağ Tümleştirmesi ile var olan bir kümede özel küme modunu etkinleştirme veya devre dışı bırakma
API Server Sanal Ağ Tümleştirmesi ile yapılandırılan AKS kümelerinde küme yeniden dağıtılmadan genel ağ erişimi/özel küme modu etkinleştirilebilir veya devre dışı bırakılabilir. API sunucusu ana bilgisayar adı değişmez, ancak gerekirse genel DNS girişleri değiştirilir veya kaldırılır.
Not
--disable-private-cluster
şu anda önizleme aşamasındadır. Daha fazla bilgi için bkz . Başvuru ve destek düzeyleri.
Özel küme modunu etkinleştirme
bayrağıyla
az aks update
--enable-private-cluster
komutunu kullanarak özel küme modunu etkinleştirin.az aks update --name <cluster-name> \ --resource-group <resource-group> \ --enable-private-cluster
Özel küme modunu devre dışı bırakma
bayrağıyla
az aks update
komutunu--disable-private-cluster
kullanarak özel küme modunu devre dışı bırakın.az aks update --name <cluster-name> \ --resource-group <resource-group> \ --disable-private-cluster
kubectl istemcisini kullanarak kümeye bağlanma
komutunu kullanarak kümenize bağlanacak şekilde
az aks get-credentials
yapılandırınkubectl
.az aks get-credentials --resource-group <resource-group> --name <cluster-name>
Sonraki adımlar
İlişkili en iyi yöntemler için bkz . AKS'de ağ bağlantısı ve güvenlik için en iyi yöntemler.
Azure Kubernetes Service