5.2. ローカルボリュームを使用した永続ストレージ
OpenShift Container Platform は、ローカルボリュームを使用する永続ストレージでプロビジョニングすることが可能です。ローカルの永続ボリュームを使用すると、標準の永続ボリューム要求インターフェイスを使用して、ディスクやパーティションなどのローカルのストレージデバイスにアクセスできます。
ローカルボリュームは、Pod をノードに手動でスケジュールせずに使用できます。ボリュームのノード制約がシステムによって認識されるためです。ただし、ローカルボリュームは、依然として基礎となるノードの可用性に依存しており、すべてのアプリケーションに適している訳ではありません。
ローカルボリュームは、静的に作成された永続ボリュームとしてのみ使用できます。
5.2.1. ローカルストレージ Operator のインストール
ローカルストレージ Operator はデフォルトで OpenShift Container Platform にインストールされません。以下の手順を使用してこの Operator をインストールし、クラスター内でローカルボリュームを有効にできるように設定します。
前提条件
- OpenShift Container Platform Web コンソールまたはコマンドラインインターフェイス (CLI) へのアクセス。
手順
- openshift-local-storageプロジェクトを作成します。- oc adm new-project openshift-local-storage - $ oc adm new-project openshift-local-storage- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- オプション: インフラストラクチャーノードでのローカルストレージの作成を許可します。 - ロギングやモニタリングなどのコンポーネントに対応するために、ローカルストレージ Operator を使用してインフラストラクチャーノードでボリュームを作成する必要がある場合があります。 - ローカルストレージ Operator にワーカーノードだけでなくインフラストラクチャーノードが含まれるように、デフォルトのノードセレクターを調整する必要があります。 - ローカルストレージ Operator がクラスター全体のデフォルトセレクターを継承しないようにするには、以下のコマンドを実行します。 - oc annotate namespace openshift-local-storage openshift.io/node-selector='' - $ oc annotate namespace openshift-local-storage openshift.io/node-selector=''- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- オプション: 単一ノードデプロイメントの CPU の管理プールでローカルストレージを実行できるようにします。 - シングルノードデプロイメントで Local Storage Operator を使用し、 - managementプールに属する CPU の使用を許可します。この手順は、管理ワークロードパーティショニングを使用する単一ノードインストールで実行します。- Local Storage Operator が管理 CPU プールで実行できるようにするには、次のコマンドを実行します。 - oc annotate namespace openshift-local-storage workload.openshift.io/allowed='management' - $ oc annotate namespace openshift-local-storage workload.openshift.io/allowed='management'- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
UI での操作
Web コンソールからローカルストレージ Operator をインストールするには、以下の手順を実行します。
- OpenShift Container Platform Web コンソールにログインします。
- 
							Operators OperatorHub に移動します。 
- Local Storage をフィルターボックスに入力して、ローカルストレージ Operator を見つけます。
- Install をクリックします。
- Install Operator ページで、A specific namespace on the cluster を選択します。ドロップメニューから openshift-local-storage を選択します。
- Update Channel および Approval Strategy の値を必要な値に調整します。
- Install をクリックします。
これが完了すると、ローカルストレージ Operator は Web コンソールの Installed Operators セクションにリスト表示されます。
CLI からの操作
- CLI からローカルストレージ Operator をインストールします。 - ローカルストレージ Operator の Operator グループおよびサブスクリプションを定義するために、オブジェクト YAML ファイル (例: - openshift-local-storage.yaml) を作成します。- 例: openshift-local-storage.yaml - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- インストール計画のユーザー認可ポリシー。
 
 
- 以下のコマンドを実行して、ローカルストレージ Operator オブジェクトを作成します。 - oc apply -f openshift-local-storage.yaml - $ oc apply -f openshift-local-storage.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - この時点で、Operator Lifecycle Manager (OLM) はローカルストレージ Operator を認識できるようになります。Operator の ClusterServiceVersion (CSV) はターゲット namespace に表示され、Operator で指定される API は作成用に利用可能になります。 
- すべての Pod およびローカルストレージ Operator が作成されていることを確認して、ローカルストレージのインストールを検証します。 - 必要な Pod すべてが作成されていることを確認します。 - oc -n openshift-local-storage get pods - $ oc -n openshift-local-storage get pods- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME READY STATUS RESTARTS AGE local-storage-operator-746bf599c9-vlt5t 1/1 Running 0 19m - NAME READY STATUS RESTARTS AGE local-storage-operator-746bf599c9-vlt5t 1/1 Running 0 19m- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ClusterServiceVersion (CSV) YAML マニフェストをチェックして、ローカルストレージ Operator が - openshift-local-storageプロジェクトで利用できることを確認します。- oc get csvs -n openshift-local-storage - $ oc get csvs -n openshift-local-storage- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME DISPLAY VERSION REPLACES PHASE local-storage-operator.4.2.26-202003230335 Local Storage 4.2.26-202003230335 Succeeded - NAME DISPLAY VERSION REPLACES PHASE local-storage-operator.4.2.26-202003230335 Local Storage 4.2.26-202003230335 Succeeded- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
すべてのチェックが渡されると、ローカルストレージ Operator が正常にインストールされます。
5.2.2. ローカルストレージ Operator を使用したローカルボリュームのプロビジョニング
ローカルボリュームは動的プロビジョニングで作成できません。代わりに、永続ボリュームがローカルストレージ Operator によって作成されることがあります。このローカルボリュームプロビジョナーは、定義されたリソースで指定されているパスでファイルシステムまたはブロックボリュームデバイスを検索します。
前提条件
- ローカルストレージ Operator がインストールされていること。
- 以下の条件を満たすローカルディスクがある。 - ノードに接続されている。
- マウントされていない。
- パーティションが含まれていない。
 
手順
- ローカルボリュームリソースを作成します。このリソースは、ノードおよびローカルボリュームへのパスを定義する必要があります。 注記- 同じデバイスに別のストレージクラス名を使用しないでください。これを行うと、複数の永続ボリューム (PV) が作成されます。 - 例: ファイルシステム - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- ローカルストレージ Operator がインストールされている namespace。
- 2
- オプション: ローカルストレージボリュームが割り当てられているノードの一覧が含まれるノードセレクター。以下の例では、oc get nodeから取得したノードホスト名を使用します。値が定義されない場合、ローカルストレージ Operator は利用可能なすべてのノードで一致するディスクの検索を試行します。
- 3
- 永続ボリュームオブジェクトの作成時に使用するストレージクラスの名前。ローカルストレージ Operator は、ストレージクラスが存在しない場合にこれを自動的に作成します。このローカルボリュームのセットを一意に識別するストレージクラスを使用するようにしてください。
- 4
- ローカルボリュームのタイプを定義するボリュームモード (FilesystemまたはBlock)。注記raw ブロックボリューム ( volumeMode: Block) はファイルシステムでフォーマットされません。このモードは、Pod で実行しているすべてのアプリケーションが raw ブロックデバイスを使用できる場合にのみ使用します。
- 5
- ローカルボリュームの初回マウント時に作成されるファイルシステム。
- 6
- 選択するローカルストレージデバイスの一覧を含むパスです。
- 7
- この値は、LocalVolumeリソースby-idへの実際のローカルディスクのファイルパス (/dev/disk/by-id/wwnなど) に置き換えます。プロビジョナーが正常にデプロイされると、これらのローカルディスク用に PV が作成されます。注記RHEL KVM を使用して OpenShift Container Platform を実行している場合は、VM ディスクにシリアル番号を割り当てる必要があります。そうしないと、再起動後に VM ディスクを識別できません。 virsh edit <VM>コマンドを使用して、<serial>mydisk</serial>定義を追加できます。
 - 例: ブロック - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- ローカルストレージ Operator がインストールされている namespace。
- 2
- オプション: ローカルストレージボリュームが割り当てられているノードの一覧が含まれるノードセレクター。以下の例では、oc get nodeから取得したノードホスト名を使用します。値が定義されない場合、ローカルストレージ Operator は利用可能なすべてのノードで一致するディスクの検索を試行します。
- 3
- 永続ボリュームオブジェクトの作成時に使用するストレージクラスの名前。
- 4
- ローカルボリュームのタイプを定義するボリュームモード (FilesystemまたはBlock)。
- 5
- 選択するローカルストレージデバイスの一覧を含むパスです。
- 6
- この値は、LocalVolumeリソースby-idへの実際のローカルディスクのファイルパス (dev/disk/by-id/wwnなど) に置き換えます。プロビジョナーが正常にデプロイされると、これらのローカルディスク用に PV が作成されます。
 注記- RHEL KVM を使用して OpenShift Container Platform を実行している場合は、VM ディスクにシリアル番号を割り当てる必要があります。そうしないと、再起動後に VM ディスクを識別できません。 - virsh edit <VM>コマンドを使用して、- <serial>mydisk</serial>定義を追加できます。
- OpenShift Container Platform クラスターにローカルボリュームリソースを作成します。作成したばかりのファイルを指定します。 - oc create -f <local-volume>.yaml - $ oc create -f <local-volume>.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- プロビジョナーが作成され、対応するデーモンセットが作成されていることを確認します。 - oc get all -n openshift-local-storage - $ oc get all -n openshift-local-storage- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - デーモンセットプロセスの必要な数と現在の数に注意してください。必要な数が - 0の場合、これはラベルセレクターが無効であることを示します。
- 永続ボリュームが作成されていることを確認します。 - oc get pv - $ oc get pv- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1cec77cf 100Gi RWO Delete Available local-sc 88m local-pv-2ef7cd2a 100Gi RWO Delete Available local-sc 82m local-pv-3fa1c73 100Gi RWO Delete Available local-sc 48m - NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1cec77cf 100Gi RWO Delete Available local-sc 88m local-pv-2ef7cd2a 100Gi RWO Delete Available local-sc 82m local-pv-3fa1c73 100Gi RWO Delete Available local-sc 48m- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
						LocalVolume オブジェクトを編集しても、既存の永続ボリュームの fsType または volumeMode は変更されません。これが破壊的な操作になる可能性があるためです。
					
5.2.3. ローカルストレージ Operator のないローカルボリュームのプロビジョニング
ローカルボリュームは動的プロビジョニングで作成できません。代わりに、永続ボリュームは、永続ボリューム (PV) をオブジェクト定義に定義して作成できます。このローカルボリュームプロビジョナーは、定義されたリソースで指定されているパスでファイルシステムまたはブロックボリュームデバイスを検索します。
PV の手動プロビジョニングには、PVC の削除時に PV 全体でデータ漏洩が発生するリスクが含まれます。ローカルストレージ Operator は、ローカル PV のプロビジョニング時にデバイスのライフサイクルを自動化するために使用することが推奨されます。
前提条件
- ローカルディスクが OpenShift Container Platform ノードに割り当てられていること。
手順
- PV を定義します。 - PersistentVolumeオブジェクト定義を使用して、- example-pv-filesystem.yamlまたは- example-pv-block.yamlなどのファイルを作成します。このリソースは、ノードおよびローカルボリュームへのパスを定義する必要があります。注記- 同じデバイスに別のストレージクラス名を使用しないでください。同じ名前を使用すると、複数の PV が作成されます。 - example-pv-filesystem.yaml - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注記- raw ブロックボリューム ( - volumeMode: block) はファイルシステムでフォーマットされません。このモードは、Pod で実行しているすべてのアプリケーションが raw ブロックデバイスを使用できる場合にのみ使用します。- example-pv-block.yaml - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- OpenShift Container Platform クラスターに PV リソースを作成します。作成したばかりのファイルを指定します。 - oc create -f <example-pv>.yaml - $ oc create -f <example-pv>.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ローカル PV が作成されていることを確認します。 - oc get pv - $ oc get pv- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE example-pv-filesystem 100Gi RWO Delete Available local-sc 3m47s example-pv1 1Gi RWO Delete Bound local-storage/pvc1 local-sc 12h example-pv2 1Gi RWO Delete Bound local-storage/pvc2 local-sc 12h example-pv3 1Gi RWO Delete Bound local-storage/pvc3 local-sc 12h - NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE example-pv-filesystem 100Gi RWO Delete Available local-sc 3m47s example-pv1 1Gi RWO Delete Bound local-storage/pvc1 local-sc 12h example-pv2 1Gi RWO Delete Bound local-storage/pvc2 local-sc 12h example-pv3 1Gi RWO Delete Bound local-storage/pvc3 local-sc 12h- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
5.2.4. ローカルボリュームの永続ボリューム要求の作成
ローカルボリュームは、Pod でアクセスされる永続ボリューム要求として静的に作成される必要があります。
前提条件
- 永続ボリュームがローカルボリュームプロビジョナーを使用して作成されていること。
手順
- 対応するストレージクラスを使用して PVC を作成します。 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 作成したファイルを指定して、PVC を OpenShift Container Platform クラスターに作成します。 - oc create -f <local-pvc>.yaml - $ oc create -f <local-pvc>.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
5.2.5. ローカル要求を割り当てます。
ローカルボリュームが永続ボリューム要求にマップされた後に、これをリソース内に指定できます。
前提条件
- 永続ボリューム要求が同じ namespace に存在する。
手順
- 定義された要求をリソースの仕様に追加します。以下の例では、Pod 内で永続ボリューム要求を宣言します。 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 作成したファイルを指定して、OpenShift Container Platform クラスターにリソースを作成します。 - oc create -f <local-pod>.yaml - $ oc create -f <local-pod>.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
5.2.6. 詳細は、ローカルストレージデバイスの自動検出およびプロビジョニングを参照してください。
ローカルストレージ Operator はローカルストレージ検出およびプロビジョニングを自動化します。この機能を使用すると、ベアメタル、VMware、または割り当てられたデバイスを持つ AWS ストアインスタンスなど、デプロイメント時に動的プロビジョニングが利用できない場合にインストールを単純化できます。
自動検出およびプロビジョニングは、テクノロジープレビュー機能としてのみ提供されます。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Red Hat OpenShift Data Foundation をオンプレミスでデプロイするために使用する場合、またはプラットフォームに依存しないデプロイメントで使用する場合、自動検出とプロビジョニングは完全にサポートされます。
ローカルデバイスを自動的に検出し、選択したデバイスのローカルボリュームを自動的にプロビジョニングするには、以下の手順を使用します。
						LocalVolumeSet オブジェクトの使用には注意が必要です。ローカルディスクから永続ボリューム (PV) を自動的にプロビジョニングする場合、ローカル PV は一致するすべてのデバイスを要求する可能性があります。LocalVolumeSet オブジェクトを使用している場合、ローカルストレージ Operator がノードでローカルデバイスを管理する唯一のエンティティーであることを確認します。ノードを複数回ターゲットにする LocalVolumeSet のインスタンスを複数作成することはサポートされていません。
					
前提条件
- クラスター管理者パーミッションがある。
- ローカルストレージ Operator がインストールされていること。
- ローカルディスクが OpenShift Container Platform ノードに割り当てられていること。
- 
							OpenShift Container Platform Web コンソールまたは ocコマンドラインインターフェイス (CLI) へのアクセスがあること。
手順
- Web コンソールからローカルデバイスの自動検出を有効にするには、以下を行います。 - 
									Operators Installed Operators をクリックします。 
- 
									openshift-local-storagenamespace で Local Storage をクリックします。
- Local Volume Discovery タブをクリックします。
- Create Local Volume Discovery をクリックし、Form view または YAML view のいずれかを選択します。
- 
									LocalVolumeDiscoveryオブジェクトパラメーターを設定します。
- Create をクリックします。 - Local Storage Operator は、 - auto-discover-devicesという名前のローカルボリューム検出インスタンスを作成します。
 
- 
									Operators 
- ノードで利用可能なデバイスの連続リストを表示するには、以下を実行します。 - OpenShift Container Platform Web コンソールにログインします。
- 
									Compute Nodes に移動します。 
- 開くノードの名前をクリックします。「Node Details」ページが表示されます。
- Disks タブを選択して、選択したデバイスのリストを表示します。 - ローカルディスクを追加または削除しても、デバイスリストの更新が継続的に行われます。名前、ステータス、タイプ、モデル、容量、およびモードでデバイスをフィルターできます。 
 
- Web コンソールから検出されたデバイスのローカルボリュームを自動的にプロビジョニングするには、以下を実行します。 - 
									Operators Installed Operators に移動し、Operator のリストから Local Storage を選択します。 
- 
									Local Volume Set Create Local Volume Set を選択します。 
- ボリュームセット名とストレージクラス名を入力します。
- All nodes または Select nodes を選択し、適宜フィルターを適用します。 注記- All nodes または Select nodes を使用してフィルターするかどうかにかかわらず、ワーカーノードのみが利用可能になります。 
- ローカルボリュームセットに適用するディスクタイプ、モード、サイズ、および制限を選択し、Create をクリックします。 - メッセージが数分後に表示され、「Operator reconciled successfully」という Operator の調整が正常に行われたことが示唆されます。 
 
- 
									Operators 
- または、CLI から検出されたデバイスのローカルボリュームをプロビジョニングするには、以下を実行します。 - 以下の例に示されるように、オブジェクト YAML ファイルを作成し、 - local-volume-set.yamlなどのローカルボリュームセットを定義します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ローカルボリュームセットオブジェクトを作成します。 - oc apply -f local-volume-set.yaml - $ oc apply -f local-volume-set.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ローカル永続ボリュームがストレージクラスに基づいて動的にプロビジョニングされていることを確認します。 - oc get pv - $ oc get pv- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1cec77cf 100Gi RWO Delete Available local-sc 88m local-pv-2ef7cd2a 100Gi RWO Delete Available local-sc 82m local-pv-3fa1c73 100Gi RWO Delete Available local-sc 48m - NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1cec77cf 100Gi RWO Delete Available local-sc 88m local-pv-2ef7cd2a 100Gi RWO Delete Available local-sc 82m local-pv-3fa1c73 100Gi RWO Delete Available local-sc 48m- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
結果は、ノードから削除された後に削除されます。シンボリックリンクは手動で削除する必要があります。
5.2.7. ローカルストレージ Operator Pod での容認の使用
					テイントはノードに適用し、それらが一般的なワークロードを実行しないようにすることができます。ローカルストレージ Operator がテイントのマークが付けられたノードを使用できるようにするには、容認を Pod または DaemonSet 定義に追加する必要があります。これにより、作成されたリソースをこれらのテイントのマークが付けられたノードで実行できるようになります。
				
					容認を LocalVolume リソースでローカルストレージ Operator Pod に適用し、テイントをノード仕様でノードに適用します。ノードのテイントはノードに対し、テイントを容認しないすべての Pod を拒否するよう指示します。他の Pod にはない特定のテイントを使用することで、ローカルストレージ Operator Pod がそのノードでも実行されるようにできます。
				
						taint および toleration は、key、value、および effect で構成されます。引数として、これは key=value:effect として表現されます。演算子により、これらの 3 つのパラメーターのいずれかを空のままにすることができます。
					
前提条件
- ローカルストレージ Operator がインストールされていること。
- ローカルディスクがテイントを持つ OpenShift Container Platform ノードに割り当てられている。
- テイントのマークが付けられたノードがローカルストレージのプロビジョニングを行うことが想定されます。
手順
テイントのマークが付けられたノードでスケジュールするようにローカルボリュームを設定するには、以下を実行します。
- 以下の例に示されるように、 - Podを定義する YAML ファイルを変更し、- LocalVolume仕様を追加します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- オプション: テイントのマークが付けられたノードでのみローカル永続ボリュームを作成するには、以下の例のように YAML ファイルを変更し、 - LocalVolume仕様を追加します。- spec: tolerations: - key: node-role.kubernetes.io/master operator: Exists- spec: tolerations: - key: node-role.kubernetes.io/master operator: Exists- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
定義された容認は結果として作成されるデーモンセットに渡されます。これにより、diskmaker およびプロビジョナー Pod を指定されたテイントが含まれるノード用に作成できます。
5.2.8. ローカルストレージ Operator メトリクス
OpenShift Container Platform は、ローカルストレージ Operator の以下のメトリクスを提供します。
- 
							lso_discovery_disk_count: 各ノードで検出されたデバイスの合計数
- 
							lso_lvset_provisioned_PV_count:LocalVolumeSetオブジェクトによって作成される PV の合計数
- 
							lso_lvset_unmatched_disk_count: 条件の不一致により、ローカルストレージ Operator がプロビジョニング用に選択しなかったディスクの合計数
- 
							lso_lvset_orphaned_symlink_count:LocalVolumeSetオブジェクト基準に一致しなくなった PV のあるデバイスの数
- 
							lso_lv_orphaned_symlink_count:LocalVolumeオブジェクト基準に一致しなくなった PV のあるデバイスの数
- 
							lso_lv_provisioned_PV_count:LocalVolumeのプロビジョニングされた PV の合計数
これらのメトリクスを使用するには、次のいずれかを実行して有効にします。
- Web コンソールで OperatorHub から Local Storage Operator をインストールする場合は、Enable Operator recommended cluster monitoring on this Namespace チェックボックスを選択します。
- 次のコマンドを実行して、 - openshift.io/cluster-monitoring=trueラベルを Operator namespace に手動で追加します。- oc label ns/openshift-local-storage openshift.io/cluster-monitoring=true - $ oc label ns/openshift-local-storage openshift.io/cluster-monitoring=true- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
5.2.9. ローカルストレージ Operator のリソースの削除
5.2.9.1. ローカルボリュームまたはローカルボリュームセットの削除
ローカルボリュームおよびローカルボリュームセットを削除する必要がある場合があります。リソースのエントリーを削除し、永続ボリュームを削除することで通常は十分ですが、同じデバイスパスを再使用する場合や別のストレージクラスでこれを管理する必要がある場合には、追加の手順が必要になります。
以下の手順では、ローカルボリュームを削除する例の概要を説明します。同じ手順を使用して、ローカルボリュームセットのカスタムリソースのシンボリックリンクを削除することもできます。
前提条件
- 永続ボリュームの状態は - Releasedまたは- Availableである必要があります。警告- 使用中の永続ボリュームを削除すると、データの損失や破損につながる可能性があります。 
手順
- 以前に作成したローカルボリュームを編集して、不要なディスクを削除します。 - クラスターリソースを編集します。 - oc edit localvolume <local_volume_name> -n openshift-local-storage - $ oc edit localvolume <local_volume_name> -n openshift-local-storage- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 
										devicePathsの下の行に移動し、不要なディスクを表すものを削除します。
 
- 作成した永続ボリュームを削除します。 - oc delete pv <pv_name> - $ oc delete pv <pv_name>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ノード上のディレクトリーと含まれるシンボリックリンクを削除します。 警告- 以下の手順では、root ユーザーとしてノードにアクセスする必要があります。この手順のステップ以外にノードの状態を変更すると、クラスターが不安定になる可能性があります。 - oc debug node/<node_name> -- chroot /host rm -rf /mnt/local-storage/<sc_name> - $ oc debug node/<node_name> -- chroot /host rm -rf /mnt/local-storage/<sc_name>- 1 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- ローカルボリュームの作成に使用されるストレージクラスの名前。
 
5.2.9.2. ローカルストレージ Operator のアンインストール
						ローカルストレージ Operator をアンインストールするには、Operator および openshift-local-storage プロジェクトの作成されたすべてのリソースを削除する必要があります。
					
ローカルストレージ PV がまだ使用中の状態でローカルストレージ Operator をアンインストールすることは推奨されません。PV は Operator の削除後も残りますが、PV およびローカルストレージリソースを削除せずに Operator がアンインストールされ、再インストールされる場合に予測できない動作が生じる可能性があります。
前提条件
- OpenShift Container Platform Web コンソールにアクセスできる。
手順
- 次のコマンドを実行して、プロジェクトにインストールされているローカルボリュームリソース ( - localvolume、- localvolumeset、- localvolumediscoveryなど) を削除します。- oc delete localvolume --all --all-namespaces - $ oc delete localvolume --all --all-namespaces- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - oc delete localvolumeset --all --all-namespaces - $ oc delete localvolumeset --all --all-namespaces- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - oc delete localvolumediscovery --all --all-namespaces - $ oc delete localvolumediscovery --all --all-namespaces- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- Web コンソールからローカルストレージ Operator をアンインストールします。 - OpenShift Container Platform Web コンソールにログインします。
- 
										Operators Installed Operators に移動します。 
- Local Storage をフィルターボックスに入力して、ローカルストレージ Operator を見つけます。
- 
										ローカルストレージ Operator の末尾にある Options メニュー 
										 をクリックします。 をクリックします。
- Uninstall Operator をクリックします。
- 表示されるウィンドウで Remove をクリックします。
 
- ローカルストレージ Operator で作成された PV は削除されるまでクラスターに残ります。これらのボリュームが使用されなくなったら、以下のコマンドを実行してこれらのボリュームを削除します。 - oc delete pv <pv-name> - $ oc delete pv <pv-name>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 次のコマンドを実行して、 - openshift-local-storageプロジェクトを削除します。- oc delete project openshift-local-storage - $ oc delete project openshift-local-storage- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow