5.14. Google Compute Platform Filestore CSI ドライバーオペレーター
5.14.1. 概要
OpenShift Container Platform は、Google Compute Platform (GCP) Filestore Storage の Container Storage Interface (CSI) ドライバーを使用して永続ボリューム (PV) をプロビジョニングできます。
GCP Filestore CSI Driver Operator はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
CSI Operator およびドライバーを使用する場合、永続ストレージ および CSI ボリュームの設定 について理解しておくことが推奨されます。
GCP Filestore Storage アセットにマウントする CSI プロビジョニング PV を作成するには、GCP Filestore CSI Driver Operator と GCP Filestore CSI ドライバーを openshift-cluster-csi-drivers
namespace にインストールします。
- GCP Filestore CSI Driver Operator は、デフォルトではストレージクラスを提供しませんが、必要に応じて作成できます。GCP Filestore CSI ドライバー Operator は、ストレージボリュームをオンデマンドで作成できるようにし、クラスター管理者がストレージを事前にプロビジョニングする必要がなくすことで、動的ボリュームのプロビジョニングをサポートします。
- GCP Filestore CSI ドライバー を使用すると、GCP Filestore PV を作成してマウントできます。
5.14.2. CSI について
ストレージベンダーはこれまで Kubernetes の一部としてストレージドライバーを提供してきました。Container Storage Interface (CSI) の実装では、サードパーティーのプロバイダーは、コア Kubernetes コードを変更せずに標準のインターフェイスを使用してストレージプラグインを提供できます。
CSI Operator は、in-tree (インツリー) ボリュームプラグインでは不可能なボリュームスナップショットなどのストレージオプションを OpenShift Container Platform ユーザーに付与します。
5.14.3. GCP Filestore CSI Driver Operator のインストール
デフォルトでは、Google Compute Platform (GCP) Filestore Container Storage Interface (CSI) Driver Operator は OpenShift Container Platform にインストールされません。次の手順を使用して、GCP Filestore CSI Driver Operator をクラスターにインストールします。
前提条件
- OpenShift Container Platform Web コンソールにアクセスします。
手順
ウェブコンソールから GCP Filestore CSI Driver Operator をインストールするには:
- Web コンソールにログインします。
次のコマンドを実行して、GCE プロジェクトで Filestore API を有効にします。
$ gcloud services enable file.googleapis.com --project <my_gce_project> 1
- 1
<my_gce_project>
を Google Cloud プロジェクトに置き換えます。
これは、Google Cloud Web コンソールを使用して行うこともできます。
GCP Filestore CSI Operator をインストールします。
- Operators → OperatorHub をクリックします。
- フィルターボックスに GCP Filestore と入力して、GCP Filestore CSI Operator を見つけます。
- GCP Filestore CSI Driver Operator ボタンをクリックします。
- GCP Filestore CSI Driver Operator ページで、Install をクリックします。
Install Operatorのページで、以下のことを確認してください。
- All namespaces on the cluster (default)が選択されている。
- Installed Namespaceがopenshift-cluster-csi-driversに設定されている。
Install をクリックします。
インストールが終了すると、GCP Filestore CSI Operator が Web コンソールのInstalled Operatorsに表示されます。
GCP Filestore CSI ドライバーをインストールします。
- administration → CustomResourceDefinitions → ClusterCSIDriverをクリックします。
InstancesタブでCreate ClusterCSIDriverをクリックします。
以下の YAML ファイルを使用します。
apiVersion: operator.openshift.io/v1 kind: ClusterCSIDriver metadata: name: filestore.csi.storage.gke.io spec: managementState: Managed
- Create をクリックします。
以下の条件が "true"に変わるのを待ちます。
- GCPFilestoreDriverCredentialsRequestControllerAvailable
- GCPFilestoreDriverNodeServiceControllerAvailable
- GCPFilestoreDriverControllerServiceControllerAvailable
5.14.4. GCP Filestore Storage のストレージクラスの作成
Operator をインストールしたら、Google Compute Platform (GCP) Filestore ボリュームの動的プロビジョニング用のストレージクラスを作成する必要があります。
前提条件
- 実行中の OpenShift Container Platform クラスターにログインしている。
手順
ストレージクラスを作成するには:
次のサンプル YAML ファイルを使用してストレージクラスを作成します。
サンプル YAML ファイル
kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: filestore-csi provisioner: filestore.csi.storage.gke.io parameters: network: network-name 1 allowVolumeExpansion: true volumeBindingMode: WaitForFirstConsumer
- 1
- Filestore インスタンスを作成する GCP Virtual Private Cloud (VPC) ネットワークの名前を指定します。
Filestore インスタンスを作成する VPC ネットワークの名前を指定します。
Filestore インスタンスを作成する VPC ネットワークを指定することをお勧めします。VPC ネットワークが指定されていない場合、Container Storage Interface (CSI) ドライバーは、プロジェクトのデフォルト VPC ネットワークにインスタンスを作成しようとします。IPI インストールでは、VPC ネットワーク名は通常、クラスター名に接尾辞 -network を付けたものです。ただし、UPI インストールでは、VPC ネットワーク名はユーザーが選択した任意の値にすることができます。
次のコマンドを使用して
MachineSets
オブジェクトを調べると、VPC ネットワーク名を確認できます。$ oc -n openshift-machine-api get machinesets -o yaml | grep "network:" - network: gcp-filestore-network (...)
この例では、このクラスターの VPC ネットワーク名は gcp-filestore-network です。
5.14.5. クラスターと GCP Filestore の破棄
通常、クラスターを破棄すると、OpenShift Container Platform インストーラーはそのクラスターに属するすべてのクラウドリソースを削除します。ただし、クラスターが破棄されても、Google Compute Platform (GCP) Filestore インスタンスは自動的に削除されないため、クラスターを破棄する前に、Filestore ストレージクラスを使用するすべての永続ボリュームクレーム (PVC) を手動で削除する必要があります。
手順
すべての GCP Filestore PVC を削除するには:
ストレージクラス
filestore-csi
を使用して作成されたすべての PVC を一覧表示します。$ oc get pvc -o json -A | jq -r '.items[] | select(.spec.storageClassName == "filestore-csi")
前のコマンドでリストされたすべての PVC を削除します。
$ oc delete <pvc-name> 1
- 1
- <pvc-name> を、削除する必要がある PVC の名前に置き換えます。