Google Distributed Cloud では、複数のストレージ構成を使用できます。また、次の Kubernetes オブジェクトを介してブロック ストレージとファイル ストレージの管理を行うインターフェースを備えています。
Kubernetes Volume によるエフェメラル ストレージ
Kubernetes Volume
リソースは、Pod
内のコンテナにアクセス可能なストレージ ユニットです。エフェメラル ストレージは、次のボリューム タイプをサポートします。
Pod が破棄された後、エフェメラル ストレージ タイプは維持されません。エフェメラル ストレージは、構成情報の保存領域およびアプリケーションのキャッシュ領域として使用されます。
エフェメラル ストレージ タイプは、ノードのブートディスクとリソースを共有し、使用します。CPU やメモリリソースの管理と同様に、ローカルのエフェメラル ストレージ リソースを管理できます。
PersistentVolume
リソースを使用した永続ストレージ
Kubernetes PersistentVolume
は、耐久性のあるストレージとして Pod
が使用できるリソースです。永続ボリュームの存続期間は Pod の存続期間とは関係ありません。したがって、永続ボリュームのディスクとデータは、クラスタを変更しても、Pod を削除、再作成しても、引き続き存在します。PersistentVolume
リソースを PersistentVolumeClaims
API を通じて動的にプロビジョニングすることも、クラスタ管理者が明示的に作成することもできます。
Google Distributed Cloud では、Container Storage Interface(CSI)ドライバやローカル ボリュームなど、さまざまなストレージ システムを使用して、永続ストレージをサポートできます。
Container Storage Interface(CSI)ドライバ
Google Distributed Cloud は、CSI v1.0 ドライバと互換性があります。CSI は、多くの大手ストレージ ベンダーがサポートするオープン標準の API です。本番環境のストレージの場合、GDC Ready ストレージ パートナーの CSI ドライバをインストールします。GDC Ready ストレージ パートナーの完全なリストについては、GDC Ready ストレージ パートナーをご覧ください。
クラスタで CSI を使用するには、ストレージ ベンダーからクラスタに提供される CSI ドライバをデプロイします。次に、StorageClass
API で CSI ドライバを使用するようにワークロードを構成するか、StorageClass
をデフォルト API として設定します。
ローカル ボリューム
概念実証と高度なユースケースには、ローカルの PersistentVolume リソースを使用できます。Google Distributed Cloud には、sig-storage-local-static-provisioner がバンドルされています。これにより、各ノードのマウント ポイントを検出し、マウント ポイントごとにローカル永続ボリュームを作成します。
Google Distributed Cloud クラスタは、ローカル ボリューム プロビジョナー(LVP)を使用してローカルの永続ボリュームを管理します。Google Distributed Cloud クラスタのローカル永続ボリューム用に、次の 3 種類のストレージ クラスを使用できます。
- LVP 共有
- LVP ノードマウント
- Anthos システム
LVP 共有
このオプションは、ローカルおよび共有ファイル システムのサブディレクトリにバッキングされたローカル永続ボリュームを作成します。これらのサブディレクトリは、クラスタを作成すると自動的に生成されます。このストレージ クラスを使用するワークロードは、同じ共有ファイル システムで永続ボリュームをバッキングしているため、容量と 1 秒あたりの入出力オペレーション(IOPS)を共有します。きれいに分離させるには、LVP ノードマウントを介してディスクを構成します。
詳細については、LVP 共有の構成をご覧ください。
LVP ノードマウント
このオプションでは、構成したディレクトリに、マウントされたディスクごとにローカル永続ボリュームを作成します。各ディスクは、クラスタの作成前または作成後にフォーマットしてマウントする必要があります。
詳細については、LVP ノードマウントの構成をご覧ください。
Anthos システム
このストレージ クラスは、クラスタの作成時に事前構成され、Anthos システム Pod が使用するローカル永続ボリュームを作成します。ストレージ クラスの名前は anthos-system
です。このストレージ クラスの変更や削除は行わないでください。また、このストレージ クラスは、ステートフル ワークロードに使用しないでください。
次のステップ
- ボリュームについて学習する。
- Kubernetes の Container Storage Interface について学習する。
- ボリュームのスナップショットを作成する方法を学習する。
- 永続ボリュームの容量を増やす方法を学習する。