Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Figyelmeztetés
A Kubernetes SIG Network és a Biztonsági Válaszbizottság bejelentette az Ingress NGINX projekt közelgő leállását, a karbantartás 2026 márciusában fejeződik be. Az NGINX-et használó alkalmazás-útválasztási bővítményt használó AKS-fürtökhöz jelenleg nincs szükség azonnali műveletre. A Microsoft 2026 novemberében hivatalos támogatást nyújt az alkalmazás-útválasztási bővítmény NGINX bejövő erőforrásaihoz szükséges kritikus biztonsági javításokhoz.
Az AKS igazodik a felsőbb rétegbeli Kuberneteshez azáltal, hogy áttér a Gateway API-ra a bejövő forgalom és az L7 forgalomkezelés hosszú távú szabványaként. Javasoljuk, hogy az aktuális beállítás alapján kezdje el megtervezni a migrálási útvonalat:
- Alkalmazás útválasztási bővítmény felhasználói: A gyártási munkaterhelések teljes mértékben támogatottak maradnak egészen 2026 novemberig. Migráljon az Application Routing Gateway API implementációjára egy Gateway API-alapú bejövő forgalomkezelési élményért.
-
Az OSS NGINX-felhasználók több lehetőséget is választhatnak:
- Migráljon az NGINX-et tartalmazó alkalmazás-útválasztási bővítményre , hogy 2026 novemberéig hivatalos támogatást élvezzen, miközben megtervezi a gateway API hosszú távú migrálását.
- Migráljon az Application Routing Gateway API implementációjára egy Gateway API-alapú bejövő forgalomkezelési élményért.
- Migrálás az Application Gateway for Containers szolgáltatásba, amely támogatja az Ingress API-t és az Átjáró API-t is.
- Szolgáltatásháló-felhasználók: Ha szolgáltatáshálót szeretne bevezetni, fontolja meg az Istio-alapú service mesh bővítményt. Használja már ma az Istio Ingress-t, és tervezze meg az Istio Gateway API-ra való migrációt, amely mostantól általánosan elérhető (GA).
Ez a cikk bemutatja, hogyan konfigurálhat NGINX bejövőforgalom-vezérlőt az Azure belső terheléselosztójával való együttműködésre. Azt is ismerteti, hogyan konfigurálhat egy privát Azure DNS-zónát úgy, hogy a privát végpontok DNS-feloldása lehetővé tegye adott tartományok feloldását.
Mielőtt elkezdené
Egy AKS-fürt az alkalmazás-útválasztási bővítményrel.
Azure-beli privát DNS-zóna csatolásához tulajdonosi, Azure-fiókadminisztrátori vagy Azure-társminisztrátori szerepkörre van szükség az Azure-előfizetésben.
Csatlakozás az AKS-klaszterhez
Ha a helyi számítógépről szeretne csatlakozni a Kubernetes-fürthöz, használja a Kubernetes parancssori klienst, kubectl. A helyi telepítést az az aks install-cli parancs használatával végezheti el. Ha az Azure Cloud Shellt használja, a kubectl már telepítve van.
Az alábbi példa az aks-cluster nevű fürthöz való csatlakozást konfigurálja a test-rg fájlban a az aks get-credentials parancs használatával.
az aks get-credentials \
--resource-group test-rg \
--name aks-cluster
Virtuális hálózat létrehozása
Ha privát DNS-zónát szeretne közzétenni a virtuális hálózaton, adja meg azoknak a virtuális hálózatoknak a listáját, amelyek lehetővé teszik a zónán belüli rekordok virtuális hálózati kapcsolatokkal való feloldását.
Az alábbi példa egy vnet-1 nevű virtuális hálózatot hoz létre a test-rg erőforráscsoportban, és egy subnet-1 nevű alhálózatot hoz létre a virtuális hálózaton belül egy adott címelőtaggal.
az network vnet create \
--name vnet-1 \
--resource-group test-rg \
--location eastus \
--address-prefix 10.2.0.0/16 \
--subnet-name subnet-1 \
--subnet-prefixes 10.2.0.0/24
Azure-beli privát DNS-zóna létrehozása
Megjegyzés
Az alkalmazás-útválasztási bővítmény úgy konfigurálható, hogy automatikusan rekordokat hozzon létre egy vagy több Azure globális és privát DNS-zónában az ingress erőforrásokon meghatározott hosztokhoz. Minden globális Azure DNS-zónának és minden privát Azure DNS-zónának ugyanabban az erőforráscsoportban kell lennie.
Hozzon létre egy DNS-zónát az az network private-dns zone create paranccsal, megadva a zóna nevét és az erőforráscsoportot, amelyben létre szeretné hozni. Az alábbi példa létrehoz egy private.contoso.com nevű DNS-zónát a test-rg erőforráscsoportban.
az network private-dns zone create \
--resource-group test-rg \
--name private.contoso.com
Az az network private-dns link vnet create paranccsal hozzon létre egy virtuális hálózati kapcsolatot a korábban létrehozott DNS-zónához. Az alábbi példa létrehoz egy dns-link nevű hivatkozást a virtuális hálózat vnet-1 zónájának private.contoso.com. Adja meg a --registration-enabled paramétert, hogy a hivatkozás ne legyen engedélyezve a regisztrációban.
az network private-dns link vnet create \
--resource-group test-rg \
--name dns-link \
--zone-name private.contoso.com \
--virtual-network vnet-1 \
--registration-enabled false
Az Azure DNS privát zóna automatikus regisztrációs funkciója kezeli a virtuális hálózaton üzembe helyezett virtuális gépek DNS-rekordjait. Ha egy virtuális hálózatot egy privát DNS-zónával kapcsol össze ezzel a beállítással, a rendszer létrehoz egy DNS-rekordot minden Egyes Azure-beli virtuális géphez a virtuális hálózaton üzembe helyezett AKS-csomóponthoz.
Azure-beli privát DNS-zóna csatolása az alkalmazás-útválasztási bővítményhez
Megjegyzés
A az aks approuting zone add parancs a parancsot futtató felhasználó engedélyeit használja az Azure DNS-zóna szerepkör-hozzárendelésének létrehozásához. A saját DNS zóna közreműködői szerepköre egy beépített szerepkör a privát DNS-erőforrások kezeléséhez, és a bővítmény felügyelt identitásához van rendelve. A felügyelt AKS-identitásokról további információt a felügyelt identitások összegzésében talál.
A parancs használatával
az network dns zone showkérje le a DNS-zóna erőforrás-azonosítóját, és állítsa a kimenetet egy névvel ellátottZONEIDváltozóra. Az alábbi példa lekérdezi a private.contoso.com zónát a test-rg erőforráscsoportban.ZONEID=$(az network private-dns zone show \ --resource-group test-rg \ --name private.contoso.com \ --query "id" \ --output tsv)Frissítse a bővítményt az Azure DNS-integráció engedélyezéséhez a
az aks approuting zoneparancs használatával. A DNS-zóna erőforrásazonosítóinak vesszővel tagolt listáját is átadhatja. Az alábbi példa frissíti az AKS-fürtöt a test-rg erőforráscsoportban.az aks approuting zone add \ --resource-group test-rg \ --name aks-cluster \ --ids=${ZONEID} \ --attach-zones
NGINX bejövőforgalom-vezérlő létrehozása privát IP-címmel és belső terheléselosztóval
Az alkalmazás-útválasztási bővítmény egy Kubernetes egyéni erőforrásdefiníciót (CRD)NginxIngressController használ az NGINX bejövő vezérlők konfigurálásához. Létrehozhat további bejövő vezérlőket, vagy módosíthatja a meglévő konfigurációt.
NginxIngressController A CRD rendelkezik egy loadBalancerAnnotations mezővel, amely a terheléselosztó széljegyzeteinek beállításával szabályozza az NGINX bejövőforgalom-vezérlő szolgáltatásának viselkedését. A terheléselosztó széljegyzeteiről további információt a Testreszabások Kubernetes-széljegyzeteken keresztül című témakörben talál.
Az alábbi lépéseket követve hozzon létre egy NGINX forgalmi szabályozót egy belső hálózat felé néző Azure Load Balancerrel, amely privát IP-címmel rendelkezik.
Másolja a következő YAML-jegyzékfájlt egy nginx-internal-controller.yaml nevű új fájlba, és mentse a fájlt a helyi számítógépre.
apiVersion: approuting.kubernetes.azure.com/v1alpha1 kind: NginxIngressController metadata: name: nginx-internal spec: ingressClassName: nginx-internal controllerNamePrefix: nginx-internal loadBalancerAnnotations: service.beta.kubernetes.io/azure-load-balancer-internal: "true"Hozza létre az NGINX bejövőforgalom-vezérlő erőforrásait a
kubectl applyparanccsal.kubectl apply -f nginx-internal-controller.yamlA következő példakimenet a létrehozott erőforrást mutatja be:
nginxingresscontroller.approuting.kubernetes.azure.com/nginx-internal createdEllenőrizze, hogy a bejövőforgalom-vezérlő létrejött-e
A parancs használatával
kubectl get nginxingresscontrollerellenőrizheti az NGINX bejövőforgalom-vezérlő állapotát.kubectl get nginxingresscontrollerAz alábbi példakimenet a létrehozott erőforrást mutatja be. Eltarthat néhány percig, amíg a vezérlő elérhetővé válik:
NAME INGRESSCLASS CONTROLLERNAMEPREFIX AVAILABLE default webapprouting.kubernetes.azure.com nginx True nginx-internal nginx-internal nginx-internal True
Alkalmazás üzembe helyezése
Az alkalmazás-útválasztási bővítmény a Kubernetes Bejövő forgalom objektumainak megjegyzéseit használja a megfelelő erőforrások létrehozásához.
Hozza létre a példa podok futtatásához hívott
aks-storealkalmazásnévteret akubectl create namespaceparanccsal.kubectl create namespace aks-storeTelepítse az AKS-tárolóalkalmazást a következő YAML-jegyzékfájl használatával:
kubectl apply -f https://raw.githubusercontent.com/Azure-Samples/aks-store-demo/main/sample-manifests/docs/app-routing/aks-store-deployments-and-services.yaml -n aks-store
Ez a jegyzék létrehozza az AKS-tárolóalkalmazáshoz szükséges központi telepítéseket és szolgáltatásokat.
Hozza létre az Ingress erőforrást, amely az Azure privát DNS-zónájában található gazdagépnevet és egy privát IP-címet használ.
Frissítse host a DNS-gazdagép nevére, például store-front.private.contoso.com. Ellenőrizze, hogy az ingressClassName paraméterhez az nginx-internal értéket adja-e meg.
Másolja a következő YAML-jegyzékfájlt egy ingress.yaml nevű új fájlba, és mentse a fájlt a helyi számítógépre.
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: store-front namespace: aks-store spec: ingressClassName: nginx-internal rules: - host: store-front.private.contoso.com http: paths: - backend: service: name: store-front port: number: 80 path: / pathType: PrefixHozza létre a bejövő erőforrást a
kubectl applyparanccsal.kubectl apply -f ingress.yaml -n aks-storeA következő példakimenet a létrehozott erőforrást mutatja be:
ingress.networking.k8s.io/store-front created
Ellenőrizze, hogy a felügyelt Ingress létre lett-e hozva
A(z) kubectl get ingress parancs használatával ellenőrizheti, hogy a kezelt Ingress létrejött-e.
kubectl get ingress -n aks-store
A következő példakimenet a létrehozott felügyelt Ingress-t mutatja be.
NAME CLASS HOSTS ADDRESS PORTS AGE
store-front nginx-internal store-front.private.contoso.com 80 10s
Ellenőrizze, hogy az Azure privát DNS-zónája frissült-e
Néhány perc múlva futtassa a az network private-dns record-set a list parancsot az Azure privát DNS-zóna A rekordjainak megtekintéséhez. Adja meg az erőforráscsoport nevét és a DNS-zóna nevét. Ebben a példában az erőforráscsoport test-rg , a DNS-zóna pedig private.contoso.com.
az network private-dns record-set a list \
--resource-group test-rg \
--zone-name private.contoso.com
A következő példakimenet a létrehozott rekordot jeleníti meg:
[
{
"aRecords": [
{
"ipv4Address": "10.224.0.7"
}
],
"etag": "ecc303c5-4577-4ca2-b545-d34e160d1c2d",
"fqdn": "store-front.private.contoso.com.",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/test-rg/providers/Microsoft.Network/privateDnsZones/private.contoso.com/A/store-front",
"isAutoRegistered": false,
"name": "store-front",
"resourceGroup": "test-rg",
"ttl": 300,
"type": "Microsoft.Network/privateDnsZones/A"
}
]
Következő lépések
Az SSL-titkosítással kapcsolatos egyéb speciális NGINX bejövőforgalom-vezérlővel és bejövő erőforrás-konfigurációval kapcsolatos egyéb konfigurációs információkért tekintse át a DNS- és SSL-konfigurációt , valamint az alkalmazás-útválasztási bővítmény konfigurációját.