Azure Kubernetes - AKS - versiunea K8s - 1.20.9.
Încercarea de a configura mai multe intrări nginx cu LB intern.
controler de intrare cu clasa de intrare -
helm install test1 ingress-nginx/ingress-nginx \
--set controller.replicaCount=1 \
--set controller.nodeSelector."beta\.kubernetes\.io/os"=linux \
--set defaultBackend.nodeSelector."beta\.kubernetes\.io/os"=linux \
--set controller.ingressClassResource.name=test1 \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-internal"=true
după instalare, servicii LB și Ingress Class create.
serviciu -
test1-ingress-nginx-controller LoadBalancer 10.0.52.125 10.240.0.4 80:32472/TCP,443:30586/TCP 4h9m
test1-ingress-nginx-controller-admission ClusterIP 10.0.32.211 <niciunul> 443/TCP 4h9m
IngressClass -
PARAMETRI CONTROLLER DE NUME Vârsta
test1 k8s.io/test1 <niciun> 155m
Fișierul de intrare
apiVersion: extensii/v1beta1
fel: Intrare
metadate:
nume: hello-world-ingress-my-external
adnotari:
nginx.ingress.kubernetes.io/ssl-redirect: „fals”
nginx.ingress.kubernetes.io/rewrite-target: /
specificație:
ingressClassName: test1
reguli:
- gazdă: test1.com
http:
trasee:
- backend:
serviceName: aks-helloworld
servicePort: 80
cale: /app(.*)
- backend:
serviceName: ingress-demo
servicePort: 80
cale: /hello-world-two(/|$)(.*)
Intrare-2
apiVersion: extensii/v1beta1
fel: Intrare
metadate:
nume: hello-world-ingress-my-external
adnotari:
nginx.ingress.kubernetes.io/ssl-redirect: „fals”
nginx.ingress.kubernetes.io/rewrite-target: /
specificație:
ingressClassName: test2
reguli:
- gazdă: test2.com
http:
trasee:
- backend:
serviceName: helloworld
servicePort: 80
cale: /app(.*)
- backend:
serviceName: demo
servicePort: 80
cale: /bună ziua(/|$)(.*)
după crearea intrării, afișează doar primul ip
NUME CLASA GAZDE ADRESA PORTURI Vârsta
test de intrare extern1 test4.com 10.0.240.6 80 67m
hello-world-ingress-my-extern test2 test3.com 10.0.240.6 80 104
Traficul nu se actualizează pe baza IngressClass. va rog ajutati, de ce aceeasi ip pentru toate intrările? de asemenea, cum poate servi traficul pe baza clasei de intrare?
Mulțumesc anticipat.
ACTUALIZAȚI - Sunt capabil să gestionez traficurile cu intrări multiple după actualizare
--set controller.ingressClass=test \
--set controller.ingressClassResource.name=test --set controller.ingressClassResource.controllerValue="k8s.io/test-controller"
comanda finală a cârmei
helm install test1 ingress-nginx/ingress-nginx --set controller.ingressClass=test1 --set controller.ingressClassResource.name=test1 --set controller.ingressClassResource.controllerValue="k8s.io/test1-controller" \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-internal"=true
Încă Ingress nu afișează ip
NUME CLASA GAZDE ADRESA PORTURI Vârsta
extern-ingress test1 test3.com 80 19m
hello-world-ingress-my-extern test2 test1.com 80 33m