Kā piekļūt ārējai IP adresei, kas balstīta uz slodzes līdzsvarotāja pakalpojumu (load balancer service) Ingress kontrolierī?
sobes.tech AI
Atbilde no AI
Ingress kontrolierī tieši ārējo IP adresi LoadBalancer veida pakalpojumam nesazinās. Ingress kontrolieris pats ir ieejas punkts un maršrutizē trafiku pēc noteikumiem, kas ir noteikti Ingress resursā.
Lai piekļūtu LoadBalancer veida pakalpojumam caur Ingress, ir jāizdara šādi:
-
Izveidot
LoadBalancerveida pakalpojumu jūsu lietojumprogrammai. Kubernetes pakalpojumu sniedzējs piešķirs šim pakalpojumam ārējo IP adresi.// 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 -
Izveidot
Ingressresursu, kas maršrutēs trafiku uz šo pakalpojumu.// ingress.yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-app-ingress spec: rules: - host: myapp.example.com # vai cits domēns/ceļš, kur būs pieejama lietojumprogramma http: paths: - path: / pathType: Prefix backend: service: name: my-app-service # Jūsu LoadBalancer pakalpojuma nosaukums port: number: 80 # Pakalpojuma ports, uz kuru tiks novirzīts trafiks -
Pārliecinieties, ka Ingress kontrolieris ir uzstādīts un darbojas klasterī. Ingress kontrolieris (piemēram, Nginx Ingress Controller, Traefik) klausīs ārējo IP un novirzīs pieprasījumus uz
myapp.example.comuzmy-app-service.
Tādējādi piekļuve lietojumprogrammai tiek nodrošināta caur Ingress kontroliera ārējo IP, nevis tieši caur ārējo IP (lai gan Ingress var izmantot šo LoadBalancer, lai piekļūtu podiem).