7.15.2.3. ホストパスプロビジョナーを使用したローカルストレージの有効化
ホストパスプロビジョナーをデプロイし、仮想マシンがローカルストレージを使用できるようにするには、最初に HostPathProvisioner カスタムリソースを作成します。
前提条件
- ホストパスプロビジョナーが作成する PersistentVolume (PV) 用に、各ノードにバッキングディレクトリーを作成します。
SELinux コンテキスト
container_file_tを各ノードの PV バッキングディレクトリーに適用します。以下は例になります。$ sudo chcon -t container_file_t -R </path/to/backing/directory>注記Red Hat Enterprise Linux CoreOS 8 ワーカーを使用する場合は、代わりに MachineConfig マニフェストを使用して SELinux を設定する必要があります。
手順
HostPathProvisioner カスタムリソースファイルを作成します。以下は例になります。
$ touch hostpathprovisioner_cr.yamlファイルを編集し、
spec.pathConfig.pathの値がホストパスプロビジョナーが PV を作成するディレクトリーであることを確認します。以下に例を示します。apiVersion: hostpathprovisioner.kubevirt.io/v1alpha1 kind: HostPathProvisioner metadata: name: hostpath-provisioner spec: imagePullPolicy: IfNotPresent pathConfig: path: "</path/to/backing/directory>"1 useNamingPrefix: "false"2 注記バッキングディレクトリーを作成していない場合、プロビジョナーはこの作成を試行します。
container_file_tSELinux コンテキストを適用していない場合、これによりPermission deniedエラーが生じる可能性があります。openshift-cnvnamespace にカスタムリソースを作成します。$ oc create -f hostpathprovisioner_cr.yaml -n openshift-cnv