So-net無料ブログ作成

CentOS 7.5へのアップデート後の不具合の発生 [CentOS]

CentOS 7.4 から 7.5 へのアップデート後に KVM で不具合が発生する。
詳細は、以下の通りである。

[ソフトウェアのバージョン]
・virt-manager-1.4.3-3.el7.noarch
・libvirt-daemon-3.9.0-14.el7_5.4.x86_64

1. 発生事象


CentOS 7.5 への更新後、KVM で起動できないドメインが発生する。

[エラーメッセージ]
Error starting domain: サポートされない設定: shared access for disk 'hdc' \
requires use of supported storage format
[hdc の設定] - /etc/libvirt/qemu/xxx.xml
<disk type='file' device='disk'>
  <driver name='qemu' type='qcow2'/>
  <source file='/var/lib/libvirt/images/cluster-common.qcow2'/>
  <target dev='hdc' bus='ide'/>
  <shareable/>
  <address type='drive' controller='0' bus='1' target='0' unit='0'/>
</disk>


・hdc はクラスタ・ノード間で共有するディスクである。


2. 対処方法


該当するパッケージを CentOS 7.4 のものにバージョンダウンする。

[該当するパッケージ]
・libvirt-*
・virt-install-*
・virt-manager-*

(補足)
該当するパッケージの詳細については、備考を参照。


2-1. CentOS 7.4 のバックアップ・データが存在する場合の手順


(1) バックアップ・データを使用し、CentOS 7.4 に戻す。


(2) 該当するパッケージ以外をアップデートする。


2-2. CentOS 7.4 のバックアップ・データが存在しない場合の手順


該当するパッケージを CentOS 7.4 のものにバージョンダウンする。


3. 備考


(1) 関係するパッケージ


下記のパッケージへのアップデートにより、上記の問題を発生する。

libvirt-3.9.0-14.el7_5.4.x86_64
libvirt-client-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-config-network-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-config-nwfilter-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-interface-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-lxc-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-network-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-nodedev-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-nwfilter-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-qemu-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-secret-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-core-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-disk-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-gluster-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-iscsi-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-logical-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-mpath-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-rbd-3.9.0-14.el7_5.4.x86_64
libvirt-daemon-driver-storage-scsi-3.9.0-14.el7_5.4.x86_64
libvirt-glib-1.0.0-1.el7.x86_64
libvirt-libs-3.9.0-14.el7_5.4.x86_64
libvirt-python-3.9.0-1.el7.x86_64
virt-install-1.4.3-3.el7.noarch
virt-manager-1.4.3-3.el7.noarch
virt-manager-common-1.4.3-3.el7.noarch


また、CentOS 7.4 での当該パッケージは、下記の通りである。

libvirt-3.2.0-14.el7_4.9.x86_64
libvirt-client-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-config-network-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-config-nwfilter-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-interface-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-lxc-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-network-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-nodedev-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-nwfilter-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-qemu-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-secret-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-core-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-disk-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-gluster-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-iscsi-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-logical-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-mpath-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-rbd-3.2.0-14.el7_4.9.x86_64
libvirt-daemon-driver-storage-scsi-3.2.0-14.el7_4.9.x86_64
libvirt-glib-1.0.0-1.el7.x86_64
libvirt-libs-3.2.0-14.el7_4.9.x86_64
libvirt-python-3.2.0-3.el7_4.1.x86_64
virt-install-1.4.1-7.el7.noarch
virt-manager-1.4.1-7.el7.noarch
virt-manager-common-1.4.1-7.el7.noarch

4. 追記


(1) 共有ディスクのフォーマットを raw に変更することで解決できる。


(a) 共有ディスクのフォーマットを qcow2 から raw(sparse) に変更する。


/var/lib/libvirt/images/ 内の当該イメージのフォーマットを変更する。

# qemu-img convert -O raw cluster-common.qcow2 cluster-common.raw


(b) 当該ドメインの共有ディスクの定義で qcom2 から raw に変更する。


/etc/libvirt/qemu/<domain-name>.xml を編集する。


(c) システムを再起動する。


上記の変更を有効にするためである。


(2) libvirt で使用できる共有ディスクの仕様が変更されたことが原因と思われる。

[変更前の仕様]
・qcow2 フォーマットの仮想ディスクを共有できる。
・raw フォーマットの仮想ディスクを共有できる。

[変更後の仕様]
・qcow2 フォーマットの仮想ディスクを共有できない。
・raw フォーマットの仮想ディスクを共有できる。


cf. Red Hat Bugzilla - Bug 1511480



nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

nice! 1

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。