Skip to content
Latchkey

Desired Stateとは?

desired stateは、コードやマニフェストで宣言されるシステムの意図した構成で、作成するための手順ではなく、何が存在すべきかを記述します。controllerやreconcilerは実際の状態とdesired stateを継続的に比較し、差分を埋めるように動作します。この宣言的モデルはKubernetes、infrastructure-as-code、GitOpsを支えています。

なぜ重要か

最終状態を宣言し、自動化にそこへ収束させる方が、手続き的な手順を書くよりも堅牢です。障害や手動変更のあとでシステムが自己修復するためです。これはdrift remediationの基盤でもあります。現実が宣言されたdesired stateから逸脱するたびに、reconcilerがそれを引き戻します。

関連する概念

  • 宣言的:どうやってではなく、何をを記述する
  • reconcilerが実際の状態をそれに収束させる
  • drift remediationが逸脱後にそれを復元する

関連ガイド