nginx 504 Gateway Time-out エラーが発生した場合、各 Ingress Controller を以下のように設定します。
IBM Kubernetes Service (IKS) Ingress Controller
Ingress リソースに次のアノテーションを追加します。
client-max-body-size
クライアントがリクエストの一部として送信できる最大の本文サイズを設定します。
https://cloud.ibm.com/docs/containers?topic=containers-ingress_annotation#client-max-body-size
サンプル Ingress リソース YAML
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: myingress annotations: ingress.bluemix.net/client-max-body-size: "serviceName=<myservice> size=<size>; size=<size>" spec: tls: - hosts: - mydomain secretName: mytlssecret rules: - host: mydomain http: paths: - path: / backend: serviceName: myservice servicePort: 8080
proxy-connect-timeout, proxy-read-timeout
バックエンドアプリが利用できないと見なされる前に、ALB がバックエンドアプリに接続し、読み取るまでの待機時間を設定します。
proxy-connect-timeout: バックエンドアプリに接続する際の待機時間 (秒または分) (例: 65s
または 1m
)。接続タイムアウトは 75 秒を超えることはできません。
proxy-read-timeout: バックエンドアプリを読み取る前の待機時間 (秒または分) (例: 65s
または 2m
)。
https://cloud.ibm.com/docs/containers?topic=containers-ingress_annotation#proxy-connect-timeout
サンプル Ingress リソース YAML
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: myingress annotations: ingress.bluemix.net/proxy-connect-timeout: "serviceName=<myservice> timeout=<connect_timeout>" ingress.bluemix.net/proxy-read-timeout: "serviceName=<myservice> timeout=<read_timeout>" spec: tls: - hosts: - mydomain secretName: mytlssecret rules: - host: mydomain http: paths: - path: / backend: serviceName: myservice servicePort: 8080
オンライン相談
問い合わせ