3

最近、nlb で問題が発生しています。lb で https 終端を使用して nlb をリダイレクト http=>https と EKS で ingress-nginx を使用して動作させるのは、かなりの冒険でした。

ここで、X-Forwarded ヘッダーをポッドに渡したいのですが、それによって http=>https リダイレクトが中断され、http 要求で 400 が返されます。

サービスで、httpまたはtcpプロトコルでサービスを配置しようとしましたが、同じです。

サービスにヘッダーを追加するservice.beta.kubernetes.io/aws-load-balancer-proxy-protocol: "*"と、すべてのターゲットでプロキシ プロトコル v2 がアクティブuse-proxy-protocol: 'true'になり、nginx の configmap でアクティブ化すると、http スニペットが 308 リダイレクトで壊れます。

http-snippet: |
    server {
      listen 2443;
      return 308 https://$host$request_uri;
    }

すべての適切なヘッダーとリダイレクトが機能する nlb を使用できるようにする方法はありますか?

コメント要求で編集して、完全な作業構成を追加します

apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    app.kubernetes.io/version: 0.41.0
    app.kubernetes.io/component: controller
  name: ingress-nginx-controller
data:
  http-snippet: |
    server {
      listen 2443 proxy_protocol;
      return 308 https://$host$request_uri;
    }
  proxy-real-ip-cidr: 10.4.0.0/16
  use-forwarded-headers: 'true'
  use-proxy-protocol: 'true'
  compute-full-forwarded-for: 'true'
4

2 に答える 2