您好,最近配置了一个全新的服务器用于测试目的:
- Debian 杰西 (8.3)
- xen 4.4(xl 工具栈)
- 维尔廷斯特
我通过 virt-install 创建并启动了一个新的 domU:
virt-install \
--network=bridge:br0 \
--name=test1 \
--disk path=/home/xen/tests/test1.qcow2,format=qcow2 \
--boot hd \
--ram 512 \
--vcpus=1 \
--check-cpu \
--hvm \
--graphics vnc,listen=0.0.0.0,port=5901,password="secret" \
--noautoconsole
创建工作正常并且 VM 按预期启动,但无法通过 VNC 访问 domU。
遵循 virt-install 创建的 XML:
<domain type='xen'>
<name>test1</name>
<uuid>53cf8b9b-9fa8-4751-8bea-6c2bf8519b96</uuid>
<memory unit='KiB'>524288</memory>
<currentMemory unit='KiB'>524288</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='xenfv'>hvm</type>
<loader type='rom'>/usr/lib/xen/boot/hvmloader</loader>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
<disk type='file' device='disk'>
<source file='/home/xen/tests/test1.qcow2'/>
<target dev='hda' bus='ide'/>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
<controller type='ide' index='0'/>
<interface type='bridge'>
<mac address='00:16:3e:8f:a2:59'/>
<source bridge='br0'/>
</interface>
<serial type='pty'>
<target port='0'/>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<graphics type='vnc' port='5901' autoport='no' listen='0.0.0.0' keymap='it' passwd='secret'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<video>
<model type='cirrus' vram='16384' heads='1'/>
</video>
</devices>
通过查看进程列表我发现:
root 17576 70.1 6.1 468588 26788 ? SLsl 03:23 0:14 /usr/bin/qemu-system-i386 -xen-domid 73 -chardev socket,id=libxl-cmd,path=/var/run/xen/qmp-libxl-73,server,nowait -mon chardev=libxl-cmd,mode=control -nodefaults -name test1 -vnc 0.0.0.0:1 -display none -serial pty -device cirrus-vga -global vga.vram_size_mb=8 -boot order=c -device rtl8139,id=nic0,netdev=net0,mac=00:16:3e:8f:a2:59 -netdev type=tap,id=net0,ifname=vif73.0-emu,script=no,downscript=no -machine xenfv -m 504 -drive file=/home/xen/tests/test1.qcow2,if=ide,index=0,media=disk,format=raw,cache=writeback
如果我使用 KVM 而不是 XEN 创建完全相同的机器
--connect=qemu:///system
VNC 连接运行顺畅,我可以轻松地对客户虚拟机进行身份验证。
我认为问题在于 VNC 没有使用密码参数启动,但我真的不知道该去哪里查看。
笔记:
- 相同的 XML 配置在 debian wheezy 7.5 上正常运行(使用 xen 而不是 xl toolstack)
- 查看使用 KVM 创建的 domU 的进程列表有“-vnc 0.0.0.0:1,密码“而使用 XEN 的版本则有”-vnc 0.0.0.0:1“(我觉得这真的很奇怪)
- domU 通过 virsh 进行管理
这是 debian Jessie 中新的 xen toolstack (xl) 和 virsh 的问题吗?有人遇到过同样的问题或类似的问题吗?
如果我可以添加一些缺失的细节以更好地了解情况,请告诉我。