簡體   English   中英

將 Kong 與 AWS EKS 結合使用

[英]Using Kong with AWS EKS

我已經使用 Helm 在 AWS 上部署了 Kong。 需要終止 LoadBalancer 上的 SSL。 HTTP 請求有效。 HTTPS 請求因“400 Bad Request - The plain HTTP request was sent to HTTPS port”錯誤而失敗。

如何配置 Kong Proxy/LB 才能正常工作? 我可以使用 LB 后面的 HTTP 或 HTTPS 連接。 但是,要求在 LB 上終止 SSL。

另一個問題是這會創建一個帶有隨機 DNS 名稱的 LB。 嘗試設置service.beta.kubernetes.io/aws-load-balancer-eip-allocations但它也不起作用。 將域名或 IP 地址“固定”到 LB 的最佳方法是什么?

此外,這會創建一個傳統/經典的 LB。 無法使用 k8s 服務來創建 AWS ALB。

Helm Chart 覆蓋:

proxy:
  enabled: true
  http:
    enabled: true
  tls:
    enabled: true
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-ssl-cert: <my-cert-name>
    service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
    service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443"

安裝使用:

$ helm repo add kong https://charts.konghq.com
$ helm repo update
$ helm install kong kong/kong \
  --atomic \
  -n kong \
  -f overrides.yaml

您可能還想在 YAML 中進行設置:

proxy:
  enabled: true
  http:
    enabled: true
    servicePort: 80
    containerPort: 8000
  tls:
    enabled: true
    overrideServiceTargetPort: 8000  # <===
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-ssl-cert: <my-cert-name>
    service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
    service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443"

檢查此鏈接以供參考。

如果這會根據請求導致重定向循環,請繼續將此 ENV 變量添加到 Kong 的配置中:

    - name: KONG_TRUSTED_IPS
      value: 0.0.0.0/0,::/0

@bitsapien 回答了這個問題,但為了完整性將包括我使用的配置(包括 trust_ips 環境變量)

proxy:
  enabled: true
  http:
    enabled: true
    servicePort: 80
    containerPort: 8000
  tls:
    enabled: true
    overrideServiceTargetPort: 8000
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-ssl-cert: <the-cert-arn>
    service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
    service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443"
env:
  trusted_ips: "0.0.0.0/0,::/0"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM