web-dev-qa-db-ja.com

blktapディスク( "tap:aio:")が接続されていないXen 4.1ホスト(dom0)

Dom0xen-4.1でUbuntuPreciseストックカーネルを実行しているxen-4.1でblktapを使用する際の問題。

私は得ます:

[    5.580106] XENBUS: Waiting for devices to initialise: 295s...290s.
...
[  300.580288] XENBUS: Timeout connecting to device: device/vbd/51713 (local state 3, remote state 1)

そしていくつかのsyslog行:

May 17 13:07:30 localhost logger: /etc/xen/scripts/blktap: add XENBUS_PATH=backend/tap/10/51713
May 17 13:07:31 localhost logger: /etc/xen/scripts/blktap: Writing backend/tap/10/51713/hotplug-status connected to xenstore.

tap:aio:ディスクラインを使用します。 file:/は機能します。

disk = [
    'tap:aio:/data/root.img,xvda1,w',
]

明快で正確なdomUカーネルに問題があり、両方のゲストがUbuntuで動作しますhardy dom0 Host 64bit 2.6.24-28-xen xen-3.3

 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Distributor ID: Ubuntu
Description:    Ubuntu 12.04 LTS
Release:        12.04
Codename:       precise
8
Manwe

問題のあるすべてのものと同じように。通常、助けを求めることで解決します。誰も質問に答えないときでも。

したがって、答えは2つあります。どうやらxen *のものをインストールするだけではUbuntuでは十分ではありません。 Blktapなどは個別のパッケージであり、tapdiskユーザースペースプログラムとblktapモジュールが必要です。

インストールblktap-utilsと依存関係... tapdiskを取得し、dkmsパッケージでカーネルモジュールblktapを取得します。

それだけでは不十分でした。どうやらBlktapはUbuntuHardyバージョンとPreciseXENバージョン(xen-3.3-> xen-4.1)の間のある時点でblktap2に変更されました。したがって、ディスクは「tap2:tapdisk:aio:」ではなく「tap:aio:」に含まれています。

# Use this to convert existing files
Perl -i.backup -pe 's/tap:aio:/tap2:tapdisk:aio:/g' *.cfg

Tap2ディスクオプションについては、 Xen blktap2 を参照してください。


それでもblktapに問題がある場合は、これらの次のコマンドが不足しているものを診断するのに役立つ可能性があります。

ls /lib/modules/$(uname -r)/updates/dkms/blktap.ko && echo run: modprobe blktap || echo Missing module 
ls /usr/src/linux-headers-$(uname -r ) || echo MISSING kernel headers
ls /usr/src/blktap-2* || echo MISSING blktap-dkms
ls /var/lib/dkms/blktap/kernel-$(uname -r)* || echo dkms compilation failed

そして、すべてのdkmsモジュールに対して手動でコンパイルをアクティブ化するには:

Sudo dkms autoinstall -k $(uname -r)
7
Manwe