5.7. CSI の自動移行
従来 OpenShift Container Platform に同梱されていた in-tree のストレージドライバーは非推奨となり、同等の Container Storage Interface (CSI) ドライバーに置き換えられます。OpenShift Container Platform は、ツリー内ボリュームプラグインの同等の CSI ドライバーへの自動移行を提供します。
5.7.1. 概要
この機能は、ツリー内ストレージプラグインを使用してプロビジョニングされたボリュームを、対応するコンテナーストレージインターフェイス (CSI) ドライバーに自動的に移行します。
このプロセスはデータ移行を実行しません。OpenShift Container Platform は、メモリー内の永続ボリュームオブジェクトしか変換しません。その結果、変換された永続ボリュームオブジェクトはディスクに保存されず、その内容も変更されません。CSI 自動移行はシームレスに行ってください。この機能により、既存のすべての API オブジェクト (例: PersistentVolume
、PersistentVolumeClaim
、および StorageClass
) を使用する方法が変更されることはありません。
次のツリー内ドライバーから CSI ドライバーが自動的に移行されます。
- Azure Disk
- OpenStack Cinder
- Amazon Web Services (AWS) Elastic Block Storage (EBS)
- Google Compute Engine Persistent Disk (GCP PD)
- Azure File
- VMware vSphere (vSphere の特定の移行動作については、以下の情報を参照してください)
これらのボリュームタイプの CSI 移行は一般提供 (GA) であるとみなされ、手動の介入は必要ありません。
元のツリー内ストレージプラグインがサポートしていない場合、ツリー内永続ボリューム (PV) または永続ボリュームクレーム (PVC) の CSI 自動移行では、スナップショットや拡張などの新しい CSI ドライバー機能は有効になりません。
5.7.2. ストレージクラスへの影響
新規の OpenShift Container Platform 4.13 以降のインストールでは、デフォルトのストレージクラスは CSI ストレージクラスになります。このストレージクラスを使用してプロビジョニングされるすべてのボリュームは CSI 永続ボリューム (PV) です。
4.12 以前から 4.13 にアップグレードされたクラスターの場合、CSI ストレージクラスが作成され、アップグレード前にデフォルトのストレージクラスが設定されていない場合にはそれがデフォルトに設定されます。ごく稀なケースとして、同じ名前のストレージクラスがある場合、既存のストレージクラスは変更されません。既存のインツリーストレージクラスはそのまま残り、既存の in-tree PV で機能するボリューム拡張などの特定の機能で必要になる場合があります。インツリーストレージプラグインを参照するストレージクラスは機能し続けますが、デフォルトのストレージクラスを CSI ストレージクラスに切り替えることが推奨されます。
デフォルトのストレージクラスを変更するには、デフォルトのストレージクラスの変更 を参照してください。
5.7.3. vSphere の自動移行
移行には、大きな影響があります。
- 移行を有効にすると元に戻すことはできません。
- クラスター上のノードの数によっては、移行が完了するまでに時間がかかる場合があります。
5.7.3.1. OpenShift Container Platform の新規インストール
OpenShift Container Platform 4.13 以降の新規インストールの場合、自動移行はデフォルトで有効になっています。
5.7.3.2. OpenShift Container Platform 4.13 から 4.14 への更新
vSphere in-tree 永続ボリューム (PV) を使用していて、OpenShift Container Platform 4.12 から 4.14 に更新する場合は、vSphere vCenter および ESXI ホストを 7.0 Update 3L または 8.0 Update 2 に更新します。更新しないと、OpenShift Container Platform の更新がブロックされます。vSphere の更新後、OpenShift Container Platform の更新が発生し、自動 Container Storage Interface (CSI)の移行がデフォルトで有効になります。
vSphere を更新しない場合は、管理者承認を実行して、OpenShift Container Platform の更新を続行できます。
oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.13-kube-127-vsphere-migration-in-4.14":"true"}}' --type=merge
vSphere 7.0 Update 3L または 8.0 Update 2 に 更新せずに 管理者承認を使用して OpenShift Container Platform 4.14 に更新すると、OpenShift Container Platform 4.14 で CSI 移行が有効 (デフォルト) になっているために既知の問題が発生する可能性があります。管理者承認に進む前に、こちらのナレッジベースの記事 をよくお読みください。
5.7.3.3. OpenShift Container Platform 4.12 から 4.14 への更新
vSphere in-tree 永続ボリューム (PV) を使用していて、OpenShift Container Platform 4.12 から 4.14 に更新する場合は、vSphere vCenter および ESXI ホストを 7.0 Update 3L または 8.0 Update 2 に更新します。更新しないと、OpenShift Container Platform の更新がブロックされます。vSphere を更新した後、OpenShift Container Platform の更新が発生し、ユーザーがオプトインした場合にのみ vSphere の自動 Container Storage Interface (CSI)の移行が発生する可能性があります。
または、vSphere を更新したくない場合は、以下のコマンドを実行して管理者承認を実行することにより、OpenShift Container Platform の更新に進むことができます。
oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.12-kube-126-vsphere-migration-in-4.14":"true"}}' --type=merge
4.12 から 4.13 にアップグレードされたクラスターに対して CSI 移行がまだ有効になっていないため、通常は、OpenShift Container Platform 4.12 から 4.13 への更新に対して要求された管理者承認を提供しても安全です。ただし、Red Hat は、すべての in-tree ボリュームを CSI ドライバーによってシームレスに管理できるように、4.14 への今後の更新のための vSphere 環境の更新の計画を開始することを推奨します。
OpenShift Container Platform 4.13.10 以降に更新せ ず、vSphere を更新せ ず に移行を選択した場合( Web コンソールを使用して自動 CSI 移行をオプトインする を参照)、または CLI を使用して自動 CSI 移行 をオプトインする 場合は、既知の問題が発生する可能性があります。上記の移行結果を確認してから、このナレッジベースの記事をオプトインし、慎重にお読みください。
5.7.3.4. Web コンソールを使用して自動 CSI 移行をオプトインする
5.7.3.4.1. 前提条件
- OpenShift Container Platform Web コンソールにアクセスできる。
- クラスター管理者権限でクラスターにアクセスできる。
5.7.3.4.2. 手順
vSphere の自動 CSI 移行をオプトインするには:
- Web コンソールにログインします。
-
Administration
CustomResourceDefinitions をクリックします。 -
CustomResourceDefinitions ページで、Storage と入力して
ストレージ
カスタムリソース (CR) を見つけます。 - Storage CR をクリックします。
- storages.operator.openshift.io ページで、Instances タブをクリックします。
- 目的のインスタンスの名前をクリックし、YAML タブをクリックします。
次の例に示すように、
spec.vsphereStorageDriver
パラメーターをCSIWithMigrationDriver
に設定します。.... spec: logLevel: Normal managementState: Managed operatorLogLevel: Normal vsphereStorageDriver: CSIWithMigrationDriver 1 ...
- 1
spec.vsphereStorageDriver
パラメーターをCSIWithMigrationDriver
に設定
- Save をクリックします。
5.7.3.5. CLI を使用して自動 CSI 移行をオプトインする
5.7.3.5.1. 前提条件
- クラスター管理者権限でクラスターにアクセスできる。
5.7.3.5.2. 手順
vSphere の自動 CSI 移行をオプトインするには、次のコマンドを実行します。
oc patch storage cluster --type=merge -p '{"spec":{"vsphereStorageDriver":"CSIWithMigrationDriver"}}'
Storage
オブジェクトで VSphereMigrationControllerAvailable
条件が true に設定されていることを確認することで、移行がいつ完了したかを判断できます。