Traefik 2.2.1: пустой ответ при установке traefik в Vagrant k8s - PullRequest
0 голосов
/ 02 мая 2020

У меня в Vagrant работает кластер k8s. Я использовал helm install для развертывания traefik 2.2.1

  1. Развертывание простого nginx развертывания kubectl apply -f https://k8s.io/examples/application/deployment.yaml
  2. Создать службу
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      name: web
Создать трафик IngressRoute
kind: IngressRoute
apiVersion: traefik.containo.us/v1alpha1
metadata:
  name: nginx
  namespace: default
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`nginx.mydomain.com`)
      kind: Rule
      services:
        - name: nginx-service
          port: 80

С этой конфигурацией я могу получить доступ к приложению nginx с хост-машины -> curl nginx .mydomain .com

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

На моем хосте DNS запись (/ etc / hosts) 172.17.8.102 nginx .mydomain.com

172.17.8.102 - это бродяга узел, на котором установлен traefik

На хост-компьютере выполнено сопоставление Vagrant, которое отображает порт host: 8090 на порт 80 на 172.17.8.102. По существу, любой трафик c на моем порте хоста 8090 перенаправляется на порт 80 на узле Traefik.

Теперь я пытаюсь свернуть nginx .mydomain.com: 8090 из отдельного ящика.

curl -vv nginx .mydomain.com: 8090

* Trying x.x.x.x...
* TCP_NODELAY set
* Connected to nginx.mydomain.com (x.x.x.x) port 8090 (#0)
> GET / HTTP/1.1
> Host: nginx.mydomain.com:8090
> User-Agent: curl/7.64.1
> Accept: */*
> 
* Empty reply from server
* Connection #0 to host nginx.mydomain.com left intact curl: (52) Empty reply from server
* Closing connection 0

Эта проблема появилась, когда я начал использовать Traefik 2.2.1. С Traefik 1.7.20 все работало без сбоев.

...