メインコンテンツまでスキップ

Ingress のメンテナンス

Diagram showing ingress maintenance with routerctl ingress drain writing temporary state, reconcile marking a backend drained and unhealthy, existing conntrack preserved, and undrain or expiry restoring service

ルーターの YAML を編集せずに IngressService のバックエンドを一時的に外したい場合は、routerctl ingress drain を使います。

routerctl ingress drain ingress/kubernetes-api backend=cp-01 --duration 10m
routerctl get IngressService

ドレインの状態は routerd の状態データベースに保存します。ドレイン中、ingress コントローラーは該当バックエンドを drained: truehealthy: falsereason: Drained として扱い、次回以降の調整(リコンサイル)では、新規フローを残りの healthy なバックエンドへ送ります。既存の conntrack エントリーは削除しません。

--duration が切れると、自動で復帰します。すぐに戻す場合は、次を実行します。

routerctl ingress undrain ingress/kubernetes-api backend=cp-01