Как настроить consul для доступа к веб-странице через входной шлюз

Я пытаюсь настроить входной шлюз для consul, развернутого в AKS.

Согласно их документации , я создал образец развертывания и входной шлюз к нему.

yaml-файлы: github

kubectl apply -f static-app/

Я изменил службу статического приложения с CluserIP на LoadBalancer и могу получить страницу, используя http: //

Но с входным шлюзом я могу доступ только путем добавления заголовка, как показано ниже:

curl -H "Host: static-server.ingress.consul" "http://<IG_IP>:8080"

Если я попробую без заголовка, страница не появится.

Любые предложения о том, как заставить его работать без заголовка, чтобы я мог использовать то же самое для своего основного приложения.

После развертывания я могу видеть в окне консула и получать IP-адрес входящего шлюза, используя

1
задан 13 July 2021 в 11:54
1 ответ

Вам необходимо изменить ресурс IngressGateway. Добавьте массив Hosts со спецификатором wildcard (*), а затем примените изменения.

$ cat ingress-gateway.yaml
apiVersion: consul.hashicorp.com/v1alpha1
kind: IngressGateway
metadata:
  name: ingress-gateway
spec:
  listeners:
    - port: 8080
      protocol: http
      services:
        - name: static-server
          hosts:
          - "*"
      
$ kubectl apply -f ingress-gateway.yaml
ingressgateway.consul.hashicorp.com/ingress-gateway configured 

Мы можем проверить, работает ли он так, как ожидалось:

$ curl http://<IG_IP>:8080
"hello world"
0
ответ дан 28 July 2021 в 13:23

Теги

Похожие вопросы