Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
È possibile usare un indirizzo IP privato per il routing interno per esporre un endpoint di ingresso all'interno di un cluster al resto di una rete virtuale.
Esistono due modi per configurare un controller per l'uso di un indirizzo IP privato per l'ingresso: l'assegnazione dell'IP privato a un particolare ingresso o l'assegnazione a livello globale.
Suggerimento
Prendere in considerazione gateway applicazione per i contenitori per la soluzione di ingresso Kubernetes.
Prerequisiti
Per completare le attività in questo articolo, è necessario app Azure lication Gateway con una configurazione IP privata.
Assegnare a un determinato ingresso
Per esporre un particolare ingresso su IP privato, usare l'annotazione appgw.ingress.kubernetes.io/use-private-ip nel traffico in ingresso:
appgw.ingress.kubernetes.io/use-private-ip: "true"
Per le distribuzioni di gateway applicazione senza un indirizzo IP privato, le annotazioni in ingresso con appgw.ingress.kubernetes.io/use-private-ip: "true" vengono ignorate. L'evento in ingresso e il log del pod del controller in ingresso (AGIC) gateway applicazione indicano questo problema:
Ecco l'errore come indicato nell'evento in ingresso:
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Warning NoPrivateIP 2m (x17 over 2m) azure/application-gateway, prod-ingress-azure-5c9b6fcd4-bctcb Ingress default/hello-world-ingress requires Application Gateway applicationgateway3026 has a private IP addressDi seguito è riportato l'errore come indicato nei log AGIC:
E0730 18:57:37.914749 1 prune.go:65] Ingress default/hello-world-ingress requires Application Gateway applicationgateway3026 has a private IP address
Assegnare a livello globale
Se è necessario limitare l'esposizione di tutti i dati in ingresso tramite IP privato, usare appgw.usePrivateIP: true nella helm configurazione:
appgw:
subscriptionId: <subscriptionId>
resourceGroup: <resourceGroupName>
name: <applicationGatewayName>
usePrivateIP: true
Questo codice rende il controller di ingresso filtrare le configurazioni degli indirizzi IP per un indirizzo IP privato quando configura i listener front-end nella distribuzione gateway applicazione. AGIC può smettere di funzionare se il valore di usePrivateIP è true e non viene assegnato alcun indirizzo IP privato.
Nota
gateway applicazione v2 richiede un indirizzo IP pubblico. Se è necessario che gateway applicazione sia privato, collegare un gruppo di sicurezza di rete alla subnet della distribuzione gateway applicazione per limitare il traffico.