Virshとdomainxmlを使用して、ubuntu 16.04LTSホストからCentos7ゲストを起動しようとしています。ドメインxmlで使用している「ファイルシステム」ノードは次のとおりです。
<filesystem type='mount' accessmode='passthrough'>
<driver type='path' wrpolicy='immediate'/>
<source dir='/opt/test'/>
<target dir='testlabel'/>
</filesystem>
上記の設定では、「testlabel」はゲストに表示されないため、マウントできません。足りないものはありますか?
ゲストに9pモジュールを入れようとしましたが、centos7ではすぐに利用できないようです。カーネルの再コンパイルが必要です[今すぐ試してください]。私はvirtio-vsockが将来利用可能になることを知りました。したがって、現時点ではオプションではありません。
SSHFS、NFS、glusterfsのようなネットワークベースのファイル共有も使いたくありません。
Libvirtでドメインxmlの「ファイルシステム」オプションを使用できる他のファイルシステムドライバーはありますか?
libvirtのドキュメント によると、target
を調整するだけでよい場合があります。
ドキュメントには、次の例が記載されています。
<filesystem type='mount' accessmode='passthrough'>
<driver type='path' wrpolicy='immediate'/>
<source dir='/export/to/guest'/>
<target dir='/import/from/Host'/>
<readonly/>
</filesystem>
<filesystem type='file' accessmode='passthrough'>
<driver name='loop' type='raw'/>
<driver type='path' wrpolicy='immediate'/>
<source file='/export/to/guest.img'/>
<target dir='/import/from/Host'/>
<readonly/>
</filesystem>
そのは9pを必要とせずに機能するようです。
ただし、centosの場合、実際にはすぐに利用できる9pヘルパーがあります。
Available Packages
Name : nfs-ganesha-mount-9P
Arch : x86_64
Version : 2.3.2
Release : 1.el7
Size : 11 k
Repo : epel/x86_64
Summary : a 9p mount helper
URL : https://github.com/nfs-ganesha/nfs-ganesha/wiki
Licence : LGPLv3+
Description : This package contains the mount.9P script that clients can use
: to simplify mounting to NFS-GANESHA. This is a 9p mount helper.
現時点では、9pはlibvirtとKVMでサポートされている唯一のファイルシステム共有オプションです。残念ながら、CentOSではサポートされている9pが無効になっています。これは、アップストリームで何年もメンテナンスがほとんど行われておらず、多くのセキュリティ上の欠陥が含まれているためです。新しい9pメンテナがこれをクリーンアップする作業を開始したのは、過去数か月だけです。 CentOSカーネルを再コンパイルするか、9pモジュールを自分でビルドする場合は、それを機能させることができるはずです。
NFSをサポートするvirtio-vsockが登場するまで、使用できるネットワークベース以外のオプションは他にありません。