This documentation is for a release that is no longer maintained
See documentation for the latest supported version.3.12. fuse-overlayfs の設定
				デフォルトでは、Universal Developer Image (UDI) には、ワークスペース内でコンテナーイメージをビルドおよびプッシュするために使用できる Podman と Buildah が含まれています。ただし、UDI の Podman と Buildah は、コピーオンライトのサポートを提供しない vfs ストレージドライバーを使用するように設定されています。より効率的なイメージ管理を行うには、ルートレス環境でコピーオンライトをサポートする fuse-overlayfs ストレージドライバーを使用します。
			
				OpenShift バージョン 4.15 より前のワークスペースで fuse-overlayfs を有効にするには、管理者はまず 「OpenShift バージョン 4.15 より前のバージョンへのアクセスを有効にする」 の手順でクラスター上の /dev/fuse アクセスを有効にする必要があります。
			
				OpenShift バージョン 4.15 以降では、/dev/fuse デバイスがデフォルトで使用できるため、これは必要ありません。リリースノート を参照してください。
			
				/dev/fuse アクセスを有効にした後、fuse-overlayfs は次の 2 つの方法で有効にできます。
			
- クラスター内のすべてのユーザーワークスペースの場合、「すべてのワークスペースで fuse-overlayfs を有効にする」 を参照してください。
- 特定のユーザーに属するワークスペースの場合、https://access.redhat.com/documentation/ja-jp/red_hat_openshift_dev_spaces/3.16/html-single/user_guide/index#end-user-guide:using-the-fuse-overlay-storage-driver を参照してください。
3.12.1. OpenShift バージョン 4.15 より前のバージョンへのアクセスを有効にする
					fuse-overlayfs を使用するには、まず /dev/fuse をワークスペースコンテナーからアクセスできるようにする必要があります。
				
						OpenShift バージョン 4.15 以降では、/dev/fuse デバイスがデフォルトで使用できるため、この手順は必要ありません。リリースノート を参照してください。
					
						OpenShift クラスター上で MachineConfig リソースを作成することは、クラスターに高度なシステムレベルの変更を加えることになるため、潜在的に危険なタスクです。
					
詳細および考えられるリスクについては、MachineConfig ドキュメント を参照してください。
前提条件
手順
- OpenShift クラスターのタイプ (シングルノードクラスター、または個別のコントロールプレーンとワーカーノードを持つマルチノードクラスター) に基づいて環境変数を設定します。 - シングルノードクラスターの場合は、次のように設定します。 - NODE_ROLE=master - $ NODE_ROLE=master- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- マルチノードクラスターの場合は、次のように設定します。 - NODE_ROLE=worker - $ NODE_ROLE=worker- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- OpenShift Butane 設定バージョンの環境変数を設定します。この変数は、OpenShift クラスターのメジャーバージョンとマイナーバージョンです。たとえば、 - 4.12.0、- 4.13.0、または- 4.14.0です。- VERSION=4.12.0 - $ VERSION=4.12.0- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- NODE_ROLEノードに- 99-podman-fuseという名前のドロップイン CRI-O 設定ファイルを作成する- MachineConfigリソースを作成します。この設定ファイルにより、特定の Pod が- /dev/fuseデバイスにアクセスできるようになります。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- MachineConfigリソースを適用した後、変更が適用されると、- workerロールを持つ各ノードのスケジュール設定が一時的に無効になります。ノードのステータスを表示します。- oc get nodes - $ oc get nodes- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- workerロールを持つすべてのノードのステータスが- Readyになると、次のアノテーションを持つすべての Pod で- /dev/fuseが利用できるようになります。- io.openshift.podman-fuse: '' io.kubernetes.cri-o.Devices: /dev/fuse - io.openshift.podman-fuse: '' io.kubernetes.cri-o.Devices: /dev/fuse- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
検証手順
- workerロールを持つノードの名前を取得します。- oc get nodes - $ oc get nodes- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- ワーカーノードへの - oc debugセッションを開きます。- oc debug node/<nodename> - $ oc debug node/<nodename>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 99-podman-fuseという名前の新しい CRI-O 設定ファイルが存在することを確認します。- stat /host/etc/crio/crio.conf.d/99-podman-fuse - sh-4.4# stat /host/etc/crio/crio.conf.d/99-podman-fuse- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
3.12.1.1. ワークスペース内で Podman と Buildah への fuse-overlayfs の使用
https://access.redhat.com/documentation/ja-jp/red_hat_openshift_dev_spaces/3.16/html-single/user_guide/index#end-user-guide:using-the-fuse-overlay-storage-driver に従って、既存のワークスペースを更新し、Podman および Buildah 用の fuse-overlayfs ストレージドライバーを使用できます。
3.12.2. すべてのワークスペースで fuse-overlayfs を有効にする
前提条件
- 「OpenShift バージョン 4.15 より前のバージョンへのアクセスを有効にする」 セクションを完了した。これは、OpenShift バージョン 4.15 以降には必要ありません。
- 
							宛先 OpenShift クラスターへの管理権限を持つアクティブな ocセッション。CLI の使用方法 を参照してください。
手順
- すべてのユーザーワークスペースに - storage.confファイルをマウントする ConfigMap を作成します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 警告- この ConfigMap を作成すると、実行中のすべてのワークスペースが再起動します。 
- CheCluster カスタムリソースの - spec.devEnvironments.workspacesPodAnnotationsフィールドに必要なアノテーションを設定します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注記- 4.15 より前のバージョンの OpenShift では、 - io.openshift.podman-fuse: ""アノテーションも必要です。
検証手順
- ワークスペースを起動し、ストレージドライバーが - overlayであることを確認します。- podman info | grep overlay - $ podman info | grep overlay- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注記- 既存のワークスペースで、次のエラーが発生する可能性があります。 - ERRO[0000] User-selected graph driver "overlay" overwritten by graph driver "vfs" from database - delete libpod local files ("/home/user/.local/share/containers/storage") to resolve. May prevent use of images created by other tools- ERRO[0000] User-selected graph driver "overlay" overwritten by graph driver "vfs" from database - delete libpod local files ("/home/user/.local/share/containers/storage") to resolve. May prevent use of images created by other tools- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - この場合、エラーメッセージに記載されているように libpod ローカルファイルを削除します。