Я пытаюсь настроить входной шлюз для consul, развернутого в AKS.
Согласно их документации , я создал образец развертывания и входной шлюз к нему.
yaml-файлы: github
kubectl apply -f static-app/
Я изменил службу статического приложения с CluserIP на LoadBalancer и могу получить страницу, используя http: //
Но с входным шлюзом я могу доступ только путем добавления заголовка, как показано ниже:
curl -H "Host: static-server.ingress.consul" "http://<IG_IP>:8080"
Если я попробую без заголовка, страница не появится.
Любые предложения о том, как заставить его работать без заголовка, чтобы я мог использовать то же самое для своего основного приложения.
После развертывания я могу видеть в окне консула и получать IP-адрес входящего шлюза, используя
Вам необходимо изменить ресурс 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"