Sdílet prostřednictvím


Vytvořte privátní cluster služby Azure Kubernetes (AKS)

Tento článek vám pomůže nasadit cluster AKS založený na soukromém odkazu. Pokud vás zajímá vytvoření clusteru AKS bez požadovaného privátního propojení nebo tunelu, přečtěte si téma Vytvoření clusteru Azure Kubernetes Service (AKS) s integrací virtuální sítě API Serveru.

Přehled privátních clusterů v AKS

V soukromém clusteru má kontrolní rovina nebo API server interní IP adresy, které jsou definovány v dokumentu RFC1918 - Přidělování adres pro soukromý internet. Pomocí privátního clusteru můžete zajistit, aby síťový provoz mezi vaším serverem API a fondy uzlů zůstal pouze v privátní síti.

Řídicí rovina nebo server rozhraní API se nachází ve skupině prostředků Azure spravované službou AKS a váš cluster nebo fond uzlů je ve vaší skupině prostředků. Server a fond uzlů spolu můžou komunikovat prostřednictvím služby Azure Private Link ve virtuální síti serveru API a privátního koncového bodu vystaveného v podsíti clusteru AKS.

Když vytvoříte privátní cluster AKS, AKS ve výchozím nastavení vytvoří privátní i veřejné plně kvalifikované názvy domén (FQDN) s odpovídajícími zónami DNS. Podrobné možnosti konfigurace DNS najdete v tématu Konfigurace privátní zóny DNS, privátního subzone DNS nebo vlastní subdomény.

Dostupnost regionu

Privátní clustery jsou dostupné ve veřejných oblastech, Azure Government a Microsoft Azure provozovaných 21vianetovými oblastmi, ve kterých se podporuje AKS.

Důležité

Všechny funkce Microsoft Defenderu pro cloud budou oficiálně vyřazeny v oblasti Azure v Číně 18. srpna 2026. Vzhledem k tomuto nadcházejícímu vyřazení z provozu už zákazníci Azure v Číně nebudou moct připojit nová předplatná ke službě. Nové předplatné je jakékoli předplatné, které ještě nebylo onboardováno do služby Microsoft Defender for Cloud před 18. srpnem 2025 a datem oznámení o vyřazení z provozu. Další informace o vyřazení najdete v tématu Oznámení o vyřazení Microsoft Defender pro cloud v Microsoft Azure provozovaném společností 21Vianet.

Zákazníci by měli spolupracovat se zástupci svých účtů pro Microsoft Azure provozovanou společností 21Vianet, aby posoudili dopad tohoto vyřazení na vlastní operace.

Požadavky pro privátní clustery AKS

  • Verze 2.28.0 Azure CLI nebo vyšší. Spusťte az --version pro zjištění verze a spusťte az upgrade pro aktualizaci verze. Pokud potřebujete instalovat nebo upgradovat, podívejte se na Install Azure CLI.
  • Pokud používáte Azure Resource Manager (ARM) nebo azure REST API, musí být verze rozhraní API AKS 2021–05-01 nebo vyšší.
  • Pokud chcete použít vlastní server DNS, přidejte veřejnou IP adresu Azure 168.63.129.16 jako nadřazený server DNS na vlastním serveru DNS a nezapomeňte tuto veřejnou IP adresu přidat jako první server DNS. Další informace o IP adrese Azure najdete v tématu Co je IP adresa 168.63.129.16?
  • Existující clustery AKS s povolenou integrací API Server VNet mohou mít povolený režim privátního clusteru. Další informace najdete v tématu Povolení nebo zakázání režimu privátního clusteru v existujícím clusteru s integrací virtuální sítě serveru API.

Důležité

Od 30. listopadu 2025 už Azure Kubernetes Service (AKS) nepodporuje ani neposkytuje aktualizace zabezpečení pro Azure Linux 2.0. Image uzlu Azure Linux 2.0 je zafixována u verze 202512.06.0. Od 31. března 2026 se image uzlů odeberou a nebudete moct škálovat fondy uzlů. Přejděte na podporovanou verzi Azure Linuxu aktualizací poolů uzlů na podporovanou verzi Kubernetes nebo migrací na osSku AzureLinux3. Další informace najdete v tématu Problém s vyřazením z GitHubu a oznámení o vyřazení aktualizací Azure. Pokud chcete mít přehled o oznámeních a aktualizacích, postupujte podle poznámek k verzi AKS.

Omezení a důležité informace pro privátní clustery AKS

  • Nemůžete uplatnit rozsahy autorizovaných IP adres na koncový bod privátního serveru rozhraní API – platí jenom pro veřejný server rozhraní API.
  • Omezení služby Azure Private Link platí pro soukromé clustery.
  • Neexistuje podpora pro agenty Azure DevOps hostované společností Microsoft s privátními clustery. Zvažte použití agentů hostovaných z vlastních zdrojů.
  • Pokud potřebujete povolit Službu Azure Container Registry v privátním clusteru AKS, nastavte privátní propojení registru kontejneru ve virtuální síti clusteru nebo nastavte partnerský vztah mezi virtuální sítí registru kontejneru a virtuální sítí privátního clusteru.
  • Odstranění nebo úprava privátního koncového bodu v podsíti zákazníka způsobí, že cluster přestane fungovat.
  • Služba Azure Private Link je podporována pouze na standardním Azure Load Balanceru. Základní Azure Load Balancer není podporován.

Architektura hub a spoke s vlastním DNS pro privátní AKS clustery

Architektury typu hub a paprsek jsou běžně používány k nasazení sítí v Azure. V mnoha z těchto nasazení jsou nastavení DNS v připojených VNets nakonfigurována tak, aby odkazovala na centrální DNS přeposílač, který umožňuje rozlišení DNS pro místní a Azure-based prostředí.

Soukromý klastr ve formátu paprsku a středu

Při nasazování privátních clusterů AKS v hvězdicových architekturách s využitím vlastního DNS mějte na paměti následující aspekty:

  • Při vytvoření privátního clusteru se ve skupině prostředků spravovaných clusterem ve výchozím nastavení vytvoří privátní koncový bod (1) a privátní zóna DNS (2). Klastr používá záznam A v privátní zóně k vyřešení IP adresy privátního koncového bodu pro komunikaci s API serverem.

  • Privátní zóna DNS je propojená pouze s virtuální sítí, ke které jsou uzly clusteru připojené (3), což znamená, že privátní koncový bod je možné přeložit pouze hostiteli v této propojené virtuální síti. Ve scénářích, kdy ve virtuální síti (výchozí) není nakonfigurovaný žádný vlastní DNS, funguje bez problému, protože hostitelé jsou nasměrováni na 168.63.129.16 pro DNS, který díky spojení může překládat záznamy v privátní zóně DNS.

  • Pokud zachováte výchozí chování privátní zóny DNS, AKS se pokusí propojit zónu přímo s paprskovou virtuální sítí, která je hostitelem clusteru, i když je zóna již propojená s virtuální sítí centra.

    V paprskových virtuálních sítích, které používají vlastní servery DNS, může tato akce selhat, pokud spravovaná identita clusteru nemá v paprskové virtuální síti přispěvatele sítě .

    Pokud chcete zabránit selhání, zvolte jednu z následujících podporovaných konfigurací:

    • Vlastní privátní zóna DNS: Zadejte předem vytvořenou privátní zónu a nastavte privateDNSZone / --private-dns-zone její ID prostředku. Tuto zónu propojte s příslušnou VNet (například hub VNet) a nastavte publicDNS na false / použijte --disable-public-fqdn.
    • Pouze veřejný DNS: Zakažte vytváření privátní zóny nastavením privateDNSZone / --private-dns-zonenonena výchozí hodnotu () a ponechejte publicDNS ji na výchozí hodnotě (true) / nepoužívejte --disable-public-fqdn.
  • Pokud používáte směrovací tabulku byo (Bring your Own) se službou kubenet a BYO DNS s privátními clustery, vytvoření clusteru selže. Je třeba přidružit RouteTable ve skupině prostředků uzlu k podsíti poté, co se vytvoření clusteru nezdařilo, aby byla úspěšně dokončena jeho tvorba.

Při používání vlastního DNS s privátními clustery AKS mějte na paměti následující omezení:

  • Nastavení privateDNSZone / --private-dns-zone na noneapublicDNS: false / --disable-public-fqdn současně není podporováno.
  • Podmíněné přesměrování nepodporuje subdomény.

Vytvoření privátního clusteru AKS s výchozími základními sítěmi

  1. Vytvořte skupinu prostředků pomocí příkazu az group create. Můžete také použít existující skupinu prostředků pro cluster AKS.

    az group create \
        --name <private-cluster-resource-group> \
        --location <location>
    
  2. Vytvořte privátní cluster s výchozími základními sítěmi pomocí az aks create příkazu s příznakem --enable-private-cluster .

    Klíčové parametry v tomto příkazu:

    • --enable-private-cluster: Povolí režim privátního clusteru.
    az aks create \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --load-balancer-sku standard \
        --enable-private-cluster \
        --generate-ssh-keys
    
  3. Nakonfigurujte kubectl pro připojení k privátnímu clusteru AKS.

Vytvoření privátního clusteru AKS s pokročilými sítěmi

  1. Vytvořte skupinu prostředků pomocí příkazu az group create. Můžete také použít existující skupinu prostředků pro cluster AKS.

    az group create \
        --name <private-cluster-resource-group> \
        --location <location>
    
  2. Pomocí příkazu vytvořte privátní cluster s pokročilými sítěmi az aks create .

    Klíčové parametry v tomto příkazu:

    • --enable-private-cluster: Povolí režim privátního clusteru.
    • --network-plugin azure: Určuje síťový modul plug-in Azure CNI.
    • --vnet-subnet-id: Identifikátor prostředku existující podsítě ve virtuální síti.
    • --dns-service-ip: Dostupná IP adresa v rozsahu adres služby Kubernetes, která se má použít pro službu DNS clusteru.
    • --service-cidr: Rozsah IP adres v notaci CIDR, ze kterého se mají přiřazovat IP adresy clusteru služeb IP.
    az aks create \
        --resource-group <private-cluster-resource-group> \
        --name <private-cluster-name> \
        --load-balancer-sku standard \
        --enable-private-cluster \
        --network-plugin azure \
        --vnet-subnet-id <subnet-id> \
        --dns-service-ip 10.2.0.10 \
        --service-cidr 10.2.0.0/24
        --generate-ssh-keys
    
  3. Nakonfigurujte kubectl pro připojení k privátnímu clusteru AKS.

Použití vlastních domén s privátními clustery AKS

Pokud chcete konfigurovat vlastní domény, které mohou být vyřešeny pouze interně, podívejte se na Použití vlastních domén.

Zakázání veřejného plně kvalifikovaného názvu domény v privátním clusteru AKS

Zakázat veřejné FQDN na novém clusteru

  • Při vytváření privátního clusteru AKS deaktivujte veřejný FQDN pomocí příkazu az aks create s příznakem --disable-public-fqdn.

    az aks create \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --load-balancer-sku standard \
        --enable-private-cluster \
        --assign-identity <resource-id> \
        --private-dns-zone <private-dns-zone-mode> \
        --disable-public-fqdn \
        --generate-ssh-keys
    

Zakázat veřejný FQDN na stávajícím clusteru

  • Zakázat veřejné FQDN na stávajícím AKS clusteru pomocí příkazu az aks update s příznakem --disable-public-fqdn.

    az aks update \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --disable-public-fqdn
    

Konfigurujte privátní zónu DNS, privátní subzónu DNS nebo vlastní subdoménu pro cluster AKS.

Privátní nastavení DNS pro privátní cluster AKS můžete nakonfigurovat pomocí Azure CLI (s --private-dns-zone parametrem) nebo šablony Azure Resource Manageru (ARM) (s privateDNSZone vlastností). Následující tabulka popisuje možnosti, které jsou k dispozici pro --private-dns-zone parametr / privateDNSZone vlastnost:

Setting Description
system Výchozí hodnota při konfiguraci privátní zóny DNS. Pokud vynecháte --private-dns-zone / privateDNSZone, AKS vytvoří privátní zónu DNS ve skupině prostředků uzlu.
none Pokud nastavíte --private-dns-zone / privateDNSZone na none, AKS nevytvoří privátní zónu DNS.
<custom-private-dns-zone-resource-id> Pokud chcete použít tento parametr, musíte pro globální cloud Azure vytvořit privátní zónu DNS v následujícím formátu: privatelink.<region>.azmk8s.io nebo <subzone>.privatelink.<region>.azmk8s.io. Pro budoucí použití potřebujete ID prostředku privátní zóny DNS. Také potřebujete identitu přiřazenou uživateli nebo servisní principal s rolemi Private DNS Zone Contributor a Network Contributor. Pro clustery, které využívají integraci VNet serveru API, privátní zóna DNS podporuje formát pojmenování private.<region>.azmk8s.io nebo <subzone>.private.<region>.azmk8s.io. Nemůžete změnit nebo smazat tento zdroj po vytvoření clusteru, protože to může způsobit problémy s výkonem a selhání upgradu clusteru. Můžete použít --fqdn-subdomain <subdomain> s <custom-private-dns-zone-resource-id> pouze k poskytování schopností subdomény pro privatelink.<region>.azmk8s.io. Pokud zadáváte subzónu, platí pro její název limit 32 znaků.

Při konfiguraci privátního DNS pro privátní cluster AKS mějte na paměti následující skutečnosti:

  • Pokud je privátní zóna DNS v jiném předplatném než cluster AKS, musíte poskytovatele Azure zaregistrovat Microsoft.ContainerServices v obou předplatných.
  • Pokud je cluster AKS nakonfigurovaný s instančním objektem služby Active Directory, AKS nepodporuje použití spravované identity přiřazené systémem s vlastní privátní zónou DNS. Cluster musí používat ověřování spravované identity přidělené uživatelem.

Vytvořte privátní AKS cluster s privátní DNS zónou

  1. Pomocí příkazu vytvořte privátní cluster AKS s privátní zónou az aks create DNS.

    Klíčové parametry v tomto příkazu:

    • --enable-private-cluster: Povolí režim privátního clusteru.
    • --private-dns-zone [system|none]: Nakonfiguruje privátní zónu DNS pro cluster. Výchozí hodnota je system.
    • --assign-identity <resource-id>: ID prostředku uživatelsky přiřazené spravované identity s rolemi Přispěvatel privátní zóny DNS a Přispěvatel sítě.
    az aks create \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --load-balancer-sku standard \
        --enable-private-cluster \
        --assign-identity <resource-id> \
        --private-dns-zone [system|none] \
        --generate-ssh-keys
    
  2. Nakonfigurujte kubectl pro připojení k privátnímu clusteru AKS.

Vytvořte privátní AKS cluster s vlastní privátní DNS zónou nebo privátní DNS podzónou

  1. Pomocí příkazu vytvořte privátní cluster AKS s vlastní privátní zónou DNS nebo podzonem az aks create .

    Klíčové parametry v tomto příkazu:

    • --enable-private-cluster: Povolí režim privátního clusteru.
    • --private-dns-zone <custom-private-dns-zone-resource-id>|<custom-private-dns-subzone-resource-id>: ID prostředku předem vytvořené privátní zóny DNS nebo podzóny ve formátu pro globální cloud Azure: privatelink.<region>.azmk8s.io nebo <subzone>.privatelink.<region>.azmk8s.io.
    • --assign-identity <resource-id>: ID prostředku uživatelsky přiřazené spravované identity s rolemi Přispěvatel privátní zóny DNS a Přispěvatel sítě.
    # The custom private DNS zone name should be in the following format: "<subzone>.privatelink.<region>.azmk8s.io"
    
    az aks create \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --load-balancer-sku standard \
        --enable-private-cluster \
        --assign-identity <resource-id> \
        --private-dns-zone [<custom-private-dns-zone-resource-id>|<custom-private-dns-subzone-resource-id>] \
        --generate-ssh-keys
    
  2. Nakonfigurujte kubectl pro připojení k privátnímu clusteru AKS.

Vytvořte soukromý AKS cluster s vlastní privátní DNS zónou a vlastním subdoménou.

  1. Pomocí příkazu vytvořte privátní cluster AKS s vlastní privátní zónou DNS a subdoménou az aks create .

    Klíčové parametry v tomto příkazu:

    • --enable-private-cluster: Povolí režim privátního clusteru.
    • --private-dns-zone <custom-private-dns-zone-resource-id>: ID prostředku předem vytvořené privátní DNS zóny v následujícím formátu pro globální cloud Azure: privatelink.<region>.azmk8s.io
    • --fqdn-subdomain <subdomain>: Subdoména, kterou je třeba použít pro úplný název domény clusteru v rámci vlastní soukromé zóny DNS.
    • --assign-identity <resource-id>: ID prostředku uživatelsky přiřazené spravované identity s rolemi Přispěvatel privátní zóny DNS a Přispěvatel sítě.
    # The custom private DNS zone name should be in one of the following formats: "privatelink.<region>.azmk8s.io" or "<subzone>.privatelink.<region>.azmk8s.io"
    
    az aks create \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --load-balancer-sku standard \
        --enable-private-cluster \
        --assign-identity <resource-id> \
        --private-dns-zone <custom-private-dns-zone-resource-id> \
        --fqdn-subdomain <subdomain> \
        --generate-ssh-keys
    
  2. Nakonfigurujte kubectl pro připojení k privátnímu clusteru AKS.

Aktualizace existujícího privátního clusteru AKS z privátní zóny DNS na veřejný

Můžete aktualizovat pouze z byo (přineste si vlastní) nebo system do none. Není podporována žádná jiná kombinace hodnot aktualizace.

Výstraha

Když aktualizujete privátní cluster z byo nebo system na none, uzly agenta se změní tak, že budou používat veřejné FQDN. Ve clusteru AKS, který využívá škálovací sady virtuálních počítačů Azure, se provede upgrade image uzlu, aby vaše uzly byly aktualizovány pomocí veřejného plně kvalifikovaného názvu domény (FQDN).

  • Aktualizujte privátní cluster z byo nebo system na none pomocí příkazu az aks update s parametrem --private-dns-zone nastaveným na none.

    az aks update \
        --name <private-cluster-name> \
        --resource-group <private-cluster-resource-group> \
        --private-dns-zone none
    

Konfigurace kubectl pro připojení k privátnímu clusteru AKS

Pro správu Kubernetes clusteru použijte příkazový řádkový klient Kubernetes, kubectl. kubectl je již nainstalován, pokud používáte Azure Cloud Shell. Chcete-li nainstalovat kubectl lokálně, použijte příkaz az aks install-cli.

  1. Nakonfigurujte kubectl pro připojení ke svému Kubernetes clusteru pomocí příkazu az aks get-credentials. Tento příkaz stahuje přihlašovací údaje a konfiguruje Kubernetes CLI pro jejich použití.

    az aks get-credentials --resource-group <private-cluster-resource-group> --name <private-cluster-name>
    
  2. Ověřte připojení k vašemu clusteru pomocí příkazu kubectl get. Tento příkaz vrátí seznam uzlů clusteru.

    kubectl get nodes
    

    Příkaz vrátí výstup podobný následujícímu příkladu výstupu:

    NAME                                STATUS   ROLES   AGE    VERSION
    aks-nodepool1-12345678-vmss000000   Ready    agent   3h6m   v1.15.11
    aks-nodepool1-12345678-vmss000001   Ready    agent   3h6m   v1.15.11
    aks-nodepool1-12345678-vmss000002   Ready    agent   3h6m   v1.15.11