Ինչպես դիմել Ingress վերահսկիչում բեռի հավասարակշռիչ ծառայության (load balancer service) վրա հիմնված ծառայության արտաքին IP հասցեին?
sobes.tech AI
Պատասխան AI-ից
Ingress վերահսկիչում, ոչ ուղղակիորեն դիմում են LoadBalancer տեսակի ծառայության արտաքին IP-ին: Ingress վերահսկիչը գործել է որպես մուտքի կետ և ուղղորդում է տրաֆիկը տարբեր ծառայությունների միջև՝ հիմնվելով Ingress ռեսուրսում սահմանված կանոնների վրա:
Ingress-ի միջոցով LoadBalancer տեսակի ծառայության հասանելիությունը ապահովելու համար անհրաժեշտ է՝
-
Ստեղծել
LoadBalancerտեսակի ծառայություն ձեր հավելվածի համար: Kubernetes- ի մթնոլորտային մատակարարը կպատկացնի այս ծառայությանը արտաքին IP:// service.yaml apiVersion: v1 kind: Service metadata: name: my-app-service spec: selector: app: my-app ports: - protocol: TCP port: 80 targetPort: 80 type: LoadBalancer -
Ստեղծել
Ingressռեսուրս, որը կուղղորդի տրաֆիկը դեպի այս ծառայությունը:// ingress.yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-app-ingress spec: rules: - host: myapp.example.com # կամ այլ դոմեն/մաս, որտեղ հասանելի կլինի հավելվածը http: paths: - path: / pathType: Prefix backend: service: name: my-app-service # Ձեր LoadBalancer ծառայության անունը port: number: 80 # Ծառայության պորտը, որի վրա կուղղորդվի տրաֆիկը -
Համոզվեք, որ Ingress վերահսկիչը տեղադրված և աշխատում է կլաստերում: Ingress վերահսկիչը (օրինակ, Nginx Ingress Controller, Traefik) կլստում լսում է իրեն վերապահված արտաքին IP-ով և ուղղորդում է
myapp.example.com-ի հարցումները դեպիmy-app-serviceծառայությունը:
Այսպիսով, հավելվածին հասանելիությունը ապահովվում է Ingress վերահսկիչի արտաքին IP-ով, ոչ թե ուղղակիորեն LoadBalancer ծառայության արտաքին IP-ով (համենայն դեպս, Ingress-ը կարող է օգտագործել այս LoadBalancer-ը՝ հասնելու համար պոդերին):