O Ingress retorna 'backend padrão - 404' no Minikube

O Ingress retorna 'backend padrão - 404' no Minikube

Estou tentando configurar um cluster Kubernetes muito simples com serviços de front-end, back-end e banco de dados. Aqui está parte do arquivo de definição de serviço Frontend:

apiVersion: v1
kind: Service
metadata:
  name: frontend
  labels:
    tier: frontend
spec:
  selector:
    tier: frontend
  ports:
  - port: 80
    nodePort: 30080
  type: LoadBalancer

Quando acesso o IP do cluster na porta 30080 tudo está funcionando corretamente.

Agora estou tentando configurar um Ingress que funcionará na porta 80 (em preparação para implantar o cluster no Azure). Quero direcionar todo o tráfego HTTP para o frontend, pois este é o único serviço HTTP no meu cluster. Portanto, o arquivo de definição de entrada é o seguinte:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: zippori
  annotations:
    kubernetes.io/ingress.class: addon-http-application-routing
spec:
  backend:
    serviceName: frontend
    servicePort: 80

Porém, quando eu acessohttp://minikube-ipRecebo o seguinte erro muito simples:

back-end padrão - 404

É como se o Ingress não encaminhasse nada para meu frontend e apenas tentasse seu próprio backend padrão.

Como posso consertar isso?

Responder1

O problema está no serviço Ingress.

No tipo yaml do Ingress, você está usando a anotação para definir o "backend do ingresso". Para AKS é "addon-http-application-routing", mas para minikube o que funciona imediatamente ékubernetes.io/ingress.class: nginx

Atualizar o Ingress com a anotação adequada deve habilitar o serviço para a configuração do seu minikube.

informação relacionada