💬
kubernetes内でCloudsql-proxyのprobesを設定する
概要
cloud-sql-proxy v1.25.0で機能追加され、KubernetesのProbesが設定できるようになった。
内容
- v1.25.0を使用する
-
"-use_http_health_check"
オプションを有効にする - (必要に応じて)
health_check_port
を使用してポートを設定する(デフォルおは8090) - デプロイメントでProbesを設定する
以下、サンプルのデプロイメント。
deployment.yml
- name: cloud-sql-proxy
image: gcr.io/cloudsql-docker/gce-proxy:1.25.0
command:
- "/cloud_sql_proxy"
- "-instances=<INSTANCE_CONNECTION_NAME>=tcp:<DB_PORT>"
- "-use_http_health_check"
livenessProbe:
httpGet:
path: /liveness
port: 8090
readinessProbe:
httpGet:
path: /readiness
port: 8090
startupProbe:
httpGet:
path: /startup
port: 8090
各ヘルスチェックパスのロジックは https://github.com/GoogleCloudPlatform/cloudsql-proxy/blob/v1.25.0/cmd/cloud_sql_proxy/internal/healthcheck/healthcheck.go#L69-L99 を参照。
Discussion