google cloud - kubectl - ingress - "backend padrão - 404"

1

Eu tenho um cluster do kubernetes do Google Cloud, definição de serviço:

apiVersion: v1
kind: Service
metadata:
  creationTimestamp: 2018-05-14T18:53:57Z
  labels:
    run: sv-security
  name: sv-security
  namespace: default
  resourceVersion: "554"
  selfLink: /api/v1/namespaces/default/services/sv-security
  uid: 27e476db-57a8-11e8-9053-42010a84014c
spec:
  clusterIP: 10.47.245.44
  externalTrafficPolicy: Cluster
  ports:
  - nodePort: 32290
    port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    run: sv-security
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer:
    ingress:
    - ip: 35.205.38.34

e gostaria de ter o HTTPS ativado. Eu segui alguns tutoriais e obtive a seguinte configuração de ingresso:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress-sv-security
  annotations:
    kubernetes.io/ingress.allow-http: "false"
spec:
  backend:
    serviceName: sv-security
    servicePort: 80

(também tentei com a porta de serviço 32290). E criei com "kubectl apply -f ingresso-sv-security.yaml"

Quando eu vou para o endereço IP, recebo "backend padrão - 404".

Quando executo "kubectl describe ing", obtenho:

Name:             ingress-sv-security
Namespace:        default
Address:          35.201.113.164
Default backend:  sv-security:32290 (<none>)
Rules:
  Host  Path  Backends
  ----  ----  --------
  *     *     sv-security:32290 (<none>)
Annotations:
  url-map:          k8s-um-default-ingress-sv-security--d01e081d01fdd251
  backends:         {"k8s-be-32062--d01e081d01fdd251":"HEALTHY"}
  forwarding-rule:  k8s-fw-default-ingress-sv-security--d01e081d01fdd251
  target-proxy:     k8s-tp-default-ingress-sv-security--d01e081d01fdd251
Events:
  Type     Reason   Age               From                     Message
  ----     ------   ----              ----                     -------
  Normal   ADD      19m               loadbalancer-controller  default/ingress-sv-security
  Normal   CREATE   18m               loadbalancer-controller  ip: 35.201.113.164
  Warning  Service  0s (x8 over 18m)  loadbalancer-controller  failed to identify user specified default backend, couldn't find nodeport for default/sv-security, using system default

O que estou fazendo errado aqui?

    
por Vandeperre Maarten 24.05.2018 / 10:58

1 resposta

1

Um Ingress sem regras envia todo o tráfego para um único back-end padrão. Veja aqui os Pré-requisitos

Para comunicação criptografada entre o cliente e o balanceador de carga, é necessário especificar uma chave privada e um certificado TLS a serem usados pelo controlador de entrada. veja aqui

    
por 15.06.2018 / 14:59