Anthos clusters on AWS(GKE on AWS)の新しいバージョンが 9 月 29 日にリリースされました。詳細については、リリースノートをご覧ください。

ストレージ ドライバのインストール

このトピックでは、ユーザー クラスタに Container Storage Interface(CSI)ストレージ ドライバをインストールする方法について説明します。

概要

デフォルトでは、AWS 上の Anthos クラスタは、デフォルトの StorageClass を使用して AWS EBS ボリュームをプロビジョニングします。別の種類のストレージ ボリュームを使用する場合は、CSI ドライバをインストールできます。

CSI は Kubernetes がコンテナ化されたワークロードに任意のストレージ システムを公開できるオープン標準 API です。また、CSI を使用すると、サイズ変更やスナップショットなどの最新のストレージ機能を利用できます(1.17 以降)。

CSI ドライバをインストールしたら、Kubernetes StorageClass を作成する必要があります。StorageClass のプロビジョナーとして CSI ドライバを設定します。その後、StorageClass をデフォルトに設定するか、StorageClass を使用するようにワークロードを構成できます。カスタム StorageClass で StatefulSet を作成する方法ついては、ワークロードでの StorageClasses の使用をご覧ください。

始める前に

  • anthos-aws ディレクトリから anthos-gke を使用して、コンテキストをユーザー クラスタに切り替える。
    cd anthos-aws
    env HTTPS_PROXY=http://localhost:8118 \
      anthos-gke aws clusters get-credentials CLUSTER_NAME
    CLUSTER_NAME をユーザー クラスタ名に置き換えます。

ベンダーの CSI ドライバをインストールする

CSI ドライバのインストール手順をストレージ ベンダーから提供されます。CSI ドキュメントの CSI ドライバの一覧をご覧ください。

CSI ドライバのインストール手順に従ってください。完了したら、このページの次の手順に進みます。

ドライバのインストールの検証

CSI ドライバをインストールしたら、次のコマンドを実行してインストールを検証します。

env HTTPS_PROXY=http://localhost:8118 \
  kubectl get csinodes \
  -o jsonpath='{range .items[*]} {.metadata.name}{": "} {range .spec.drivers[*]} {.name}{"\n"} {end}{end}'

CSI ドライバを使用する

CSI ドライバを使用する手順は次のとおりです。

  1. provisioner フィールドで、ドライバを参照するカスタム StorageClass を作成します。

  2. 次のいずれか方法でストレージをプロビジョニングできます。

CSI ドライバでサポートされる StorageClass の考慮事項

StorageClass を作成するときは、次の点を考慮します。

  • プロビジョナー名など、StorageClass に指定するドライバ固有のパラメータについては、CSI ドライバのドキュメントをご覧ください。

  • StorageClass には、特定のドライバやその背後にあるアプライアンスの名前ではなく、プロパティの名前(fasthighly-replicated など)を指定する必要があります。StorageClass にプロパティの名前を指定すると、異なるクラスタや環境で同じ名前の StorageClass を作成できます。次に、同じ StorageClass を使用するようにワークロードを構成します。

次のステップ

  • CSI ドライバを参照する StorageClass を作成する。