Получение настоящего IP-адреса для модулей Kubernetes с помощью Traefik и DigitalOcean - PullRequest
1 голос
/ 09 мая 2020

Я пытаюсь получить настоящие IP-адреса источника для своих модулей Kubernetes с помощью traefik. Я использую цифровой балансировщик нагрузки на океан, в котором включен протокол прокси. Я также настроил свой yaml службы K8s, чтобы установить политику External Traffi c как локальную.

Извлечение из моей карты конфигурации в K8s для Traefik Ingress . Я отредактировал свои фактические IP-адреса, но использую свой IP-адрес балансировщика нагрузки и частные IP-адреса рабочих узлов Kubernetes

  [entryPoints]
      [entryPoints.http]
        address = ":80"

        compress = true
        [entryPoints.http.redirect]
        entryPoint = "https"
      [entryPoints.https]

        address = ":443"
        compress = true
        [entryPoints.https.tls]
          [[entryPoints.https.tls.certificates]]
          CertFile = "/ssl/client_co.crt"
          KeyFile = "/ssl/tls.key"
        [entryPoints.https.proxyProtocol]
          trustedIPs = ["Load Balancer IP, Kubernetes Worker Node IPs"]


      [entryPoints.https.redirect]
        regex = "^https://(?:www\\.)(.*)"
        replacement = "https://$1"
        permanent = true

Это часть службы файлов развертывания yaml

  kind: Service
    apiVersion: v1
    metadata:
      name: traefik-ingress-service
      annotations:
        service.beta.kubernetes.io/do-loadbalancer-enable-proxy-protocol: "true"
      namespace: kube-system
    spec:
      selector:
        k8s-app: traefik-ingress-lb
      ports:
        - protocol: TCP
          port: 80
          name: web
        - protocol: TCP
          port: 443
          name: https
        # - protocol: TCP
        #   port: 8080
          name: admin
      type: LoadBalancer
      externalTrafficPolicy: Local

Любая помощь всегда приветствуется.

...