ストレージとデータストア
データストアは、Cockpit が仮想ディスクや ISO ファイルを保管する場所です。データストアについて最も重要な選択は、そのスコープ、つまり 1 台のホストに属するのか、すべてのホストで共有されるのかです。この選択が、VM で使える高度な機能を左右するためです。
ローカル vs 共有データストア
| ローカルデータストア | 共有データストア | |
|---|---|---|
| 到達できるホスト | 1 台のホストのみ | クラスター内のすべてのホスト |
| 基盤 | そのホスト自身のディスク | NFS、iSCSI、Fibre Channel、またはクラスター化ファイルシステム(OCFS2) |
| 最適な用途 | シンプルで高速な単一ホストのワークロード | 移行、高可用性、クラスター化ワークロード |
| ライブ移行 | 遅い(ディスクも一緒にコピーが必要) | 高速(メモリのみ移動し、ディスクはそのまま) |
共有ストレージが重要な理由
Cockpit の最も便利な機能のいくつかは、すべてのホストが到達できる共有データストア上に VM のディスクがあるときに、最もよく機能します(あるいはそのときにのみ機能します)。
- 高速なライブ移行 — すべてのホストがすでにディスクを見ているため、稼働中の VM の移動はメモリの転送だけで済みます。DRS と HAを参照。
- 高可用性による再起動 — ホストが障害を起こしたとき、別のホストはすでにディスクへ到達できるため、すぐに VM を起動できます。
- 自動負荷分散(DRS) — DRS は、すべてのディスクが共有ストレージ上にある VM のみを移動します。
- ホストをまたぐクラスター — Kubernetes クラスターやその他の複数ホストのワークロードは、ノードをどこにでも配置できます。
TIP
移行、HA、DRS、または複数ホストにまたがる Kubernetes を使う予定があれば、それらの VM は共有データストアに置いてください。ローカルデータストアは、1 台のホストに留まる単独ワークロードに適しています。
データストアの操作
データストアの作成 — Add Datastore(データストアの追加)ウィザードを使用してローカルまたは共有データストアを作成します。スコープ(ローカル vs 共有)とタイプ(ローカルディレクトリ、ローカルディスク、NFS、クラスター化 OCFS2)の選択から、そのタイプのソースおよびマウント詳細の入力まで順を追って案内します。手順の詳細はデータストアの作成と管理を参照してください。
データストアの管理 — データストアのビューから次の操作ができます。
- 容量の監視 — 合計・使用済み・空き容量を確認します。
- Refresh — データストアを再スキャンし、Cockpit の表示を実際に存在するファイルと一致させます。
- Start / Stop — データストアをオンライン/オフラインにします。停止すると、その中のディスクは VM から利用できなくなります。
- Delete — データストアを削除します。中のディスクファイルを消去するかどうかを選べます。その選択をしなければ、登録のみが削除され、ファイルはそのまま残ります。
共有ストレージの種類
Cockpit は共有ストレージを提供するいくつかの方法をサポートします。管理者が一度セットアップすれば、以降は VM を配置できる通常のデータストアとして表示されます。
ファイルベースの共有ストレージ(NFS)
最もシンプルな共有ストレージです。NFS サーバーがフォルダーをエクスポートし、それを各ホストがマウントします。汎用的で、最もセットアップが簡単な共有ストレージです。Kubernetes クラスターも NFS データストアを使って、アプリケーションに共有・移動可能なストレージを提供できます。
ネットワーク越しのブロックストレージ(iSCSI)
より高い性能を求める場合、ホストは iSCSI を使ってネットワーク越しに共有ブロックストレージ(SAN)へ接続できます。Cockpit は複数のネットワークリンクを同じストレージにバインドしてマルチパスを構成でき、冗長性とスループットの向上をもたらします — 1 つのネットワーク経路が失われても、他の経路でストレージは動作を続けます。
クラスター化ファイルシステム(OCFS2)と共有グループ
複数のホストが同じブロックデバイスに同時に読み書きする場合、互いのデータを上書きしないように協調する必要があります。Cockpit はこれをクラスター化ファイルシステム(OCFS2)と、ホストの同期を保つ共有グループ(shared group) — O2CB クラスター — で処理します。
WARNING
クラスター化データストアが安全に使えるのは、その共有グループがすべての参加ホストでアクティブかつ同期している間だけです。この協調は Cockpit が管理します — 共有グループが完全にオンラインでないクラスター化データストアをマウントしたり書き込んだりしないでください。全員のデータが破損するおそれがあります。
共有グループは、どのホストがメンバーかを追跡し、ハートビートを確認し、管理者がホストを追加・削除したり、ハートビートモードを選択したり、協調サービスを開始・停止したり、計画的なネットワーク作業時にホストをメンテナンスモードに移行させてフェンシングを回避したりできるようにします。VM を配置するエンドユーザーとしては、その結果 — すべてのホストが安全に使える共有データストア — を見るだけで済みます。
管理者はデータセンターの Shared Group タブからこれをセットアップ・運用します。OCFS2 データストアを作成する前にセットアップを完了しておく必要があります。完全なワークフローについては共有グループ (OCFS2) の管理を参照してください。
関連トピック
- データストアの作成と管理 — データストア追加ウィザードのステップバイステップ手順。
- 共有グループ (OCFS2) の管理 — クラスター化データストアのための O2CB クラスターのセットアップと運用。
- DRS と高可用性 — 共有ストレージに依存する機能。
- Kubernetes プロビジョナー — クラスターノードに共有データストアを、アプリケーションに NFS ストレージを使用する。
- 仮想ネットワーク — ストレージと VM のトラフィックを運ぶネットワーク。