状態データベースの複製は、データベースのデータを常に有効な状態に保ちます。状態データベースが更新されると、状態データベース複製もそれぞれ更新されます。更新は 1 つずつ実行されます (システムがクラッシュした場合に、更新内容がすべて破壊されないようにするため)。
システムが状態データベースの複製を失うと、拡張ストレージは過半数合意アルゴリズムを使用して有効な複製を判断します。このアルゴリズムの状態データベース複製では、破壊される前に過半数が有効であることが必要です。この過半数合意アルゴリズムがあるために、ディスク構成を設定する場合は少なくとも 3 つの状態データベース複製を作成する必要があります。3 つの状態データベース複製のうち少なくとも 2 つが有効であれば合意に達することができます。
過半数合意アルゴリズムで保証するのは、次の内容です。
システムは、半分以上の状態データベース複製があれば引き続き実行される
システムは、利用できる状態データベース複製が半分に満たない場合はパニックに陥る
システムは、状態データベース複製総数の半分より 1 つ多くなければリブートしない
注 - 状態データベース複製が奇数の場合、拡張ストレージはその数を半分に割って端数を切り上げます。たとえば、複製が 7 個あるシステムの過半数は 4 です (7 の半分の 3.5 を切り上げると 4)。
状態データベースの複製がすべてなくなった場合、理論上は、ディスクに保存したデータがすべてなくなります。そのため別のドライブや複数のコントローラに状態データベース複製を十分に作成し、取り返しの付かない障害に備えてください。また拡張ストレージの初期設定情報やディスクのパーティション情報も別のシステムやボリュームに保存してください。
次の点に注意してください。
できれば複数のコントローラに状態データベース複製を配置する
複数のディスクに状態データベース複製を配置する
単一コンポーネント障害 (コントローラ、ディスク、スライス) が発生しても状態データベースの過半数が失われないようにしておく