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: 8080proxy-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オンライン相談
問い合わせ