我在同一个磁盘上有两个虚拟机,每个虚拟机都安装了 clamav。两者定期同时运行相同病毒扫描特征的更新,这导致每次都对磁盘性能造成不必要的压力。由于这些签名与下载的签名相同,因此我想减少这种情况下的冗余。
最初的想法是让他们共享一个虚拟磁盘,这些签名在其中下载一次,因此 VM 只需从那里读取它们。因此,只有一个 VM 需要对磁盘进行写访问以进行下载,而另一个 VM 具有只读访问权限。
我使用以下命令将虚拟磁盘附加到第一个 VM:
$ virsh attach-disk <VM1> <virtDisk> vdb --cache none
但是,在尝试将同一个虚拟磁盘附加到第二个虚拟机时,在成功附加到第一个虚拟磁盘后,使用:
$ virsh attach-disk <VM2> <virtDisk> vdb --cache none --mode readonly
unable to execute QEMU command 'device-add': Failed to get shared "write" lock
发生错误
。这是不可能的,还是我错过了一个选择?
为此目的,在 VM 之间共享这些签名的最佳方法是什么?