找回密码
 注册
查看: 525|回复: 0

安装Xen、创建Xen虚拟机、使用Xen虚拟机过程中经常出现的错误总结

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2023-3-13 15:15:44 | 显示全部楼层 |阅读模式
(1) 启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4
8 _. I: L/ L- ^) \# L' Z. ]( T: m) W(2) 使用 virt-install 创建Xen虚拟机时出现错误:ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效 7 l9 K4 `! j; T, d
(3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed 8 H8 B5 L! K* h0 f3 x
(4) virt-install 安装虚拟机是出现错误:ERROR    无法连接到 'localhost:8000': 拒绝连接 . n3 s" y1 ]1 Z8 w( O( g8 C
(5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续
  |9 i0 A' v+ ?% [2 D; F1 c(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:  k! L# ?5 b5 C4 ]7 p% r0 M
'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.
. b& ^8 q+ ~9 D$ @! |* s  ~
% K3 I& x( ?! A8 I" h1 M  i(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前4 J' o8 d  L$ y! R
4 N- L" m4 l" ?! U4 h( P

# I, F: b' M- F+ p; U8 F4 O# k( D6 M2 T; L4 ^# U

0 e; h) R. f/ u  g
! X" _( h  ], N/ q$ M! P# \0 G4 L错误总结
% P# I0 r# @2 I' e" J3 L% A2 K3 [1 I& U
使用 CentOS 5.2 默认安装的 Xen,启动 Xend 时出现如下错误:
7 ^0 B& U+ T0 Z(1)  启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4
6 z4 L$ {: m. ?: ?# h3 T--------------------------------------------------------------------------------------' {: V) `7 j4 w
[root@glnode04 ~]# xend
, H! c+ X- J5 l( E/ h5 \/ G! ZTraceback (most recent call last):
4 F$ q5 T7 C& C# t5 x* E" Z  File "/usr/sbin/xend", line 51, in <module>
* Y7 d2 \' u; r, J. J) P" k* y: Y    from xen.xend.server import SrvDaemon% n1 l/ v+ ]! E+ \* ~. J; j8 l4 x
  File "/usr/lib64/python/xen/xend/server/SrvDaemon.py", line 20, in <module>
% |# C  S( A: W4 Q    import xen.lowlevel.xc
' ~, J- a3 q0 EImportError: /usr/lib64/python/xen/lowlevel/xc.so: undefined symbol: Py_InitModule4 2 I( U6 M2 n( }6 b$ S
[root@glnode04 ~]# xm list
3 }: |% l2 f3 j! JTraceback (most recent call last):
8 v; `. y, ]9 C5 Q  File "/usr/sbin/xm", line 8, in <module>
5 b$ M" l2 U3 b# c9 J! T    from xen.xm import main
" L+ N' D0 I% c9 @7 Z  File "/usr/lib/python/xen/xm/main.py", line 45, in <module>
6 |* j: q9 H) M$ S1 F; V    from xen.util import security
& h1 T+ V9 r/ v- `3 s& Z: U3 I  File "/usr/lib/python/xen/util/security.py", line 25, in <module>
7 l4 q! G/ J  ~' W    from xen.lowlevel import acm5 `  }4 g: L5 E9 i( u
ImportError: /usr/lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4
# Q) T$ \0 d. G! W, n. o----------------------------------------------------------------------------------------: W% D( y9 @5 @3 L2 s1 Q
############################################
3 n. b$ v0 c7 i6 q" Q2 G
( x. \5 h, a. }) C. t# I* X; o原因分析和解决办法:
( B' p& z& k! t8 _/ h' m! U* I直觉是 python import 时出现的错误,查看文件/usr/sbin/xend,第51行是“from xen.xend.server import SrvDaemon”,就是这行出错。
& j. @% h3 ]1 D查看 python 版本
4 W* p9 a+ N* `. g6 F$ o6 y[root@glnode04 ~]# python -V( E7 X. ]1 m* U; z
Python 2.5# C, G4 _: Z' y
查看 python 安装路径
3 h. h* M1 J% R" S( D[root@glnode04 ~]# which python- c, p" n' k1 A; x
/usr/local/bin/python5 a* s% ^. k) i
查看系统安装的 python 的rpm包版本
2 F4 @1 |) O: ^) t$ a[root@glnode04 ~]# rpm -q python! o: [" P+ q' K' f5 n' k  |
python-2.4.3-21.el5  从这可以看出 python 版本和 rpm 包所示的版本不一致,这个 rpm 包是 CentOS 5.2 自带的./ H' V3 X# n! f

+ J8 }+ O- ]: {% E: _( v系统是CentOS 5.2, 我们发现使用的不是CentOS 5.2 默认安装的 python,默认安装的是 Python 2.4.3,CentOS 5.2 默认将python安装在/usr/bin下。  
$ h/ c: Z  b8 k8 F" p4 K% v[root@glnode04 ~]# /usr/bin/python -V' o' ?3 x2 V% ^3 i# A8 u
Python 2.4.3
7 O1 `/ i) y  x) b& ~" w由此可以想到可能是环境变量 PATH 的设置导致我们在命令行执行 python 时使用的是 /usr/local/bin/python,可能是 PATH 的值中 /usr/local/bin 在 /usr/bin 之前;
: }2 L* X# z7 J: e. p( H4 b- j检查 ~/.bashrc 发现的确如此,环境变量 PATH 设置是 export PATH=/usr/local/bin:$PATH,将其修改为
0 a4 E& r+ v6 q. ^4 H' N3 y+ Vexport PATH=$PATH:/usr/local/bin,然后 source ~/.bashrc,或者退出 shell,重新开启一个 shell,6 Z8 N  n: o5 q
测试 python ,发现使用的是默认版本。- @9 V  B' R  V# J
[root@glnode04 ~]# python -V
- _8 {8 @+ d2 Z4 k4 M' S. zPython 2.4.3# G1 H- z- L9 P7 d

2 `& F( q3 g9 i* \5 I9 ~7 Y0 f( a启动 Xend ,正常,没有问题。; R1 a2 l! b5 Q" w' ^4 Y
[root@glnode04 ~]# xm list; v2 C. H1 B% f- g* o5 m' I
Error: Unable to connect to xend: No such file or directory. Is xend running?
' v! N3 Q7 {: v# s& }: f[root@glnode04 ~]# xend; r! z5 m, [( E
usage: /usr/sbin/xend {start|stop|restart}$ `' D8 r8 I9 R& m
[root@glnode04 ~]# xend start
3 a4 T# [  l4 m" J' R/ @( u0 Y[root@glnode04 ~]# xm list3 Y3 u' c* O2 S( w% u6 ^/ j
Name                                      ID Mem(MiB) VCPUs State   Time(s)1 y8 n  V# C( p: y
Domain-0                                   0     7931     8 r-----    463.99 t  y6 h, a2 }7 ?% }" Y" e- ]" |
& q  X& m& F% w( y6 U( {( E6 z
分析原因,是因为 Xen 是python写的,执行 Xen 相关工具时需要调用 python 相关库,如果版本对应不一致,或者库路径不一致,则会出错。2 U- X+ h: n0 _) P% O! K

/ v! _: ^) T7 ~9 U############################################! c- w5 j  T/ V
  ~: W2 Z2 u* \3 k

: m0 s7 A. Q: N; L! \* z
; w) b0 I" g: M! t(2) 使用 virt-install 创建Xen虚拟机时出现错误: ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效, j6 |  [/ K/ r. T! Y* }& f! q

$ Y% V! w# ]" q% @----------------------------------------------------------------------------------------
6 S+ `8 J0 B, Q& w7 P. |3 h( U, t+ T- T0 K6 s/ g6 B; `
[root@glnode04 vm02-CentOS-5.5]# virt-install -n vm01-CentOS-5.5 -r 1024 --vcpus=4 -f vm01-CentOS-5.5.img -s 20 --nographic -l http://10.10.113.14:8888/mirrors/CentOS/5.5/3 F* ^/ ~$ b3 @5 D( ?& l7 \

8 _3 W" t% ]7 {  HWould you like a fully virtualized guest (yes or no)?  This will allow you to run unmodified operating systems.no . s( b1 j6 q1 `1 L7 H% J
5 R" ~* k: Y: k7 Y" f$ V9 Y! o
Starting install...' b' X8 q8 x9 U7 |
Retrieving file .treeinfo 100% |=========================|  417 B    00:00     
1 o- |3 V- d, a: YRetrieving file vmlinuz.. 100% |=========================| 2.0 MB    00:00     ! k3 V) _( }$ Z2 [$ c) @& l. s
Retrieving file initrd.im 100% |=========================| 7.7 MB    00:00     
$ n- j$ F+ n7 V* q  d% VvirDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
. p% V% v; T1 xDomain installation may not have been  ~. Q4 O8 K8 u4 |* H2 ]. |+ ~/ |" t
successful.  If it was, you can restart your domain/ A! a. x( ^# i* k' i
by running 'virsh start vm02-CentOS-5.5'; otherwise, please
* G1 H5 [: u" A% M3 N restart your installation.3 d2 y3 L8 k7 E# ^# A
三, 20  4月 2011 19:21:08 ERROR    virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
: u7 _- B. Z( [7 BTraceback (most recent call last):
: `! }" u# K- V/ j/ @  File "/usr/bin/virt-install", line 502, in ?) N; b1 h' w7 H" g' e% L
    main()
) l: h: \# ^. s  g0 r  File "/usr/bin/virt-install", line 462, in main8 `1 k  ]* |( w8 n& j! V" v2 \
    dom = guest.start_install(conscb,progresscb)! C( j3 F. W* n! b  I; H' W
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install
9 `3 @) y9 \# P) H$ \* I! N4 P9 G    return self._do_install(consolecb, meter)* V/ H0 [3 v6 U+ R: Z0 Z" \
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install  g4 R) C2 v9 M  I
    self.domain = self.conn.createLinux(install_xml, 0)4 l* V: c6 s' f- F$ u3 |! }) K6 o6 O: X
  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux2 U8 j5 Z2 I0 M+ z; |7 ^; [
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
8 l0 W8 ?/ J; T( _2 |libvirtError: virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
1 G2 S! G, m* J8 m----------------------------------------------------------------------------------------6 h% z( k( C9 L4 E% j: Z
############################################
/ c5 A, S: _2 Z解决办法:
; F0 T/ V9 O$ a: O" P2 ^6 m9 F$ l( N8 J% q# F, e: J6 ]
安装前先启动 libvirtd 服务。: y: q6 w8 T( p! d7 y0 `2 M
, x* u9 Q2 X9 S
[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status3 |6 S. @" s; O$ ?+ H$ f9 Y
libvirtd is stopped
. @. b' t) u% _, w/ @7 I[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd start. M* M8 A6 ?5 |. }* D- H& U
Starting libvirtd daemon:                                  [  OK  ]
( o4 {: {8 }" f1 r9 P0 V. Z  c
' e0 m6 X- e4 E+ c" M6 }+ b( a4 n3 P
6 t+ _8 z3 [+ U9 w2 U7 M
原因分析:9 w( A! P' O. r, e0 R
出现此报错应该是主机的libvirtd服务没有启动,而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。
  k% J. h9 l" x+ g# {解决方法有两个:% L2 o7 @$ K6 Q5 u. n
(i)启动libvirtd服务后重新用原来的virt-install命令安装客户机操作系统;
1 D% Y; j) g/ P4 w& Z2 f' R#/etc/init.d/libvirtd start8 w0 a% \, ~+ ^7 ]

' c2 p& M0 }6 X0 P9 C(ii)、在原来的virt-install命令后面加-b参数指定需要连接的网桥,如果未调整网络,一般默认的网桥应该为xenbr0! z9 r+ l" ]3 m% Y+ B
要查看网桥的名称可以使用brctl命令查看
; {+ V  t9 A# d( p5 `* d
! r4 z# j5 Q$ X9 ]% r6 ]% @[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status
7 c4 Y& w% W4 B" T$ P, p+ V0 alibvirtd is stopped
' |) R* M* @8 U0 K* Y5 H[root@glnode04 vm02-CentOS-5.5]# brctl show  # libvirtd是关闭时网桥virbr0也不存在
1 T  v. u3 J2 Q! I3 \bridge name    bridge id        STP enabled    interfaces
, C1 S, y/ ~8 z8 ]0 l/ q[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd start) _1 b/ l8 I- N8 e
Starting libvirtd daemon:                                  [  OK  ]
# ^7 K, d- K0 w" j, ?: v[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status/ ~; n% }! ]1 Z8 H# i
libvirtd (pid 20863) is running...
+ h) u/ D0 k4 V7 r, N[root@glnode04 vm02-CentOS-5.5]# brctl show
" I+ ?; ~8 }6 z! L% W, ~bridge name    bridge id        STP enabled    interfaces
2 M5 i2 R5 ?) d& _virbr0        8000.000000000000    yes   
. }# @+ H4 _% G& X7 ?( U6 M* `2 H) c& `: F2 q+ V0 \1 `$ S9 {
此处我们已经关闭了libvirtd服务,剩下的网桥的名称为xenbr0(如果创建了多个网桥,选择自己需要的网桥名称)8 ~5 D( \5 W$ W; Z( p/ }" l
#virt-install -n kiro-test -r 256 --vcpus=1 -f /data/rh5 --nographics -p -d -l "http://192.168.0.1" -b xenbr0
* t+ j7 h$ \; C/ m9 `3 u2 v0 V; I8 L
参考:   XEN故障与解决方法汇总
0 E7 ~, T" K- [' ~& g% u8 f- S2 s6 @

: X8 z. f- ~9 H! M0 D8 S5 ]2 H############################################
$ S4 W+ T4 v' v* \
" P  y) h0 `6 U" A/ S: V9 Q. w
) ]' T3 K; R: J. ^8 t0 y- W; ~& O  h# `6 O2 x+ {
(3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed
) T7 z; a* ^2 Z5 H( `2 \) _" Z( }8 n) ]/ k
----------------------------------------------------------------------------------------
" Q6 W, h5 L4 u8 a8 fUnable to open connection to hypervisor URI 'xen:///':
5 y, \5 A$ a$ M! Elibvirt.libvirtError virConnectOpenReadOnly() failed
" ?& r) h# T6 S% kTraceback (most recent call last):( F6 l: ?' Y0 v7 A
  File "/usr/share/virt-manager/virtManager/connection.py", line 307, in _open_thread8 n# h1 B2 ~4 O. c% d& H
    self.vmm = libvirt.openReadOnly(self.uri)0 y1 ^0 [5 z, W5 i1 K) E9 _
  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 132, in openReadOnly
7 ]3 T- `: y9 v# T, o    if ret is None:raise libvirtError('virConnectOpenReadOnly() failed')
+ p* j9 I) v. R" y9 {- GlibvirtError: virConnectOpenReadOnly() failed
, W4 r3 l$ k- L) u5 E; m4 a% V" r! n# u+ I% J, C1 T
- B. F" B2 |  A

3 R4 `# s8 t6 j" T; s( Y9 K3 D4 X/ G/ m2 l

' @+ Y6 B) D% k8 n( L' ]----------------------------------------------------------------------------------------
$ \" T( D( w  y/ B+ ~; }7 E$ E: A2 ~" v8 O+ M
############################################
# I* B$ M. x3 K% o8 h) `& E; c解决:
% c+ Z) p. N, p& c1 p( V
3 }  Z, A1 ~. B$ ]1 |+ i/ G修改 xen 配置文件,按如下方式修改:! C1 p, H0 K5 Z4 l! q7 c- a) {- f
[root@glnode04 ~]# vim /etc/xen/xend-config.sxp7 D- Q, \" j, m. I: c4 x& E
+ o' \% m  e$ g1 N, c
(xend-http-server yes)
1 t$ b/ @9 t* o7 Y: ]- {(xend-unix-server yes) , X$ A8 ~5 b9 e

& B; i& o* }* v9 L- v$ B# p" R  i! |重新启动 Xend 服务
; ~' p7 V9 W+ j% v8 }2 D7 h% q& m; W! B* g6 j# J. k5 h& B3 @
[root@glnode04 ~]# xend restart& ]0 Z* [7 R( G
############################################
: V9 m5 y) U. V* O* U2 ]% U1 p# }+ [$ ~/ U  {3 R" M+ d
9 r' c" d4 I& \

% f' B  U# {  ]' s- B/ q; f(4) virt-install 安装虚拟机是出现错误:ERROR    无法连接到 'localhost:8000': 拒绝连接" H% G- [0 v* n9 A# j4 G0 C& _

! Q( E- A4 _1 \----------------------------------------------------------------------------------------
8 E# S* ^1 a0 q, G8 ?
7 _5 |4 w- N3 ~+ ^[root@gmnode14 vm01-CentOS-5.5]#  virt-install -n vm01-CentOS-5.5 -r 1024 --vcpus=4 -f vm01-CentOS-5.5.img -s 20 --nographic -l nfs:10.10.113.14:/opt/CentOS/mirrors/5.5
0 \; W0 J$ n5 F" A% ~- B% BERROR    无法连接到 'localhost:8000': 拒绝连接) `- _/ u8 S3 q9 Y
Traceback (most recent call last):
. Y' V. X, b2 f+ @* a0 S  File "/usr/sbin/virt-install", line 861, in ?. ?0 {  y2 z* a9 n& D1 r7 s
    main()6 V) P2 F8 o* f6 m6 D0 {9 p2 w
  File "/usr/sbin/virt-install", line 636, in main
! C# K% n& e. t# B* t. b8 L    conn = cli.getConnection(options.connect)
. j, R& q, ]0 V; @% b1 h$ i  File "/usr/lib/python2.4/site-packages/virtinst/cli.py", line 126, in getConnection
; Z/ d" I  j" f' L9 E    conn = libvirt.open(connect)
) o! Z6 `4 g4 S  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 159, in open2 l8 G+ `- M" `$ }
    if ret is None:raise libvirtError('virConnectOpen() failed')2 Y1 b; {4 W, r, N, `! H' ]
libvirtError: 无法连接到 'localhost:8000': 拒绝连接+ P* W! C; d9 @2 b3 ^
----------------------------------------------------------------------------------------
) W( _% [  ]. n) u2 s" A############################################
0 a6 n1 W2 x* S! Q4 @7 u4 N解决:8 A# Q" u$ _$ H! w5 i% h
; m/ s- I% t" h' i' [5 k

! q1 F* g  I# W1 y: |
" J. w0 E/ k3 X& ^# B修改 Xend 配置文件,然后,xend  restart
2 {* U0 m' y% F0 u# h0 M! Y& n
& [, b7 S( G- W0 A5 J8 F[root@gmnode14 yum.repos.d]# vim /etc/xen/xend-config.sxp
+ \' V! s5 B& j' \
. U7 A$ q& ?$ j0 T; L# o4 M* \8 I2 O(xend-http-server yes)
) b9 J( s1 j: S7 ^9 Y! b( ~(xend-unix-server yes)+ C% F! ]) ?0 E9 M
  e6 i7 j+ _) {3 o
(xend-port            8000)
( s9 p: W; J9 C" f7 ?, ]% o, E
9 P+ c& Z# I# k, z  S############################################  b0 _. ^8 H2 q8 b  A/ p- }3 M  U

: I4 o7 \5 _! n9 N* `  u5 N+ _0 [(5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续7 j) G( s, \  q, ?
9 D; @/ P. @. i

# M0 ]" }9 A, Z6 `+ N, O, b2 n6 g  I0 R" d9 g( }$ y* z
6 K; U. `2 V! }' z, V2 }

( G9 t# O. ~5 V; E
5 ^$ q6 u& V4 E* P+ O# v+ v9 }! r/ z0 g8 z. _  y
############################################
1 y( e( m2 M) S3 e9 W! y2 |6 K. o& m( i8 Q  N5 [& i- X
分析原因:
- E  C7 `; }+ t9 i) `6 X$ c5 F  o, [0 `/ U3 s6 W
出现此报错应该是主机的libvirtd服务没有启动,+ f4 z9 f  j- z( b5 i# W. ~

& i! u  v5 r. i$ g而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。! l6 q/ D1 |0 r. l2 q8 x
. q$ z8 Y' d) p8 J  d2 L) G
解决方法:: p+ g  \* E) T8 h

2 b9 w$ `4 C% G( J7 i; F启动libvirtd服务后重新运行 virt-manager 来安装客户机操作系统;. G8 n! h. p6 ^
' Q$ h5 j6 e; H. ^* s
#/etc/init.d/libvirtd start
2 {' D: t: P  }; E6 y# _8 F" \8 ?! E但是这也只能保证 nat 选项中有 default 选项,桥接仍不能选择设备,要彻底解决Xen虚拟机网络设备问题请参考问题(6)
5 a; A' z# M! e6 Z# R. C
4 W; o) I7 c1 W1 J1 g, u( j参考:   XEN故障与解决方法汇总! |, l* R, d9 M7 a# G' p0 @
( q* E- E5 T8 h! \2 X) _" t
############################################& e8 z- S3 Q, ~8 u9 M
) P- ]2 Z8 c, \

/ e' M* ~  j% p/ c1 K
4 @0 i$ q( ~; L7 i- R7 P. Q(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:
; }; [- Z( q. Q' f& [: y% n
6 _0 h7 D% ]0 l  T% \* }'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working. ( s! P0 k! B/ ~' J% y
---------------------------------------------------------------------------------------9 p: v7 y; T! z( N) n( b9 A
Unable to complete install 'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working. ')
. L) T+ I0 X& |  ^7 FTraceback (most recent call last):
8 |9 t; T6 |/ t. z% ?# U* B$ ^  File "/usr/share/virt-manager/virtManager/create.py", line 611, in do_install( N- H1 P5 E0 w, b
    dom = guest.start_install(False, meter = meter)  X& b2 v" |' c% c" O/ z2 e
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install
8 |  s5 ?7 p8 u8 F  W5 {% c4 f    return self._do_install(consolecb, meter)) x! ?0 R. b/ v" m0 Q$ w6 j
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install6 l  G& U0 ~  B  j
    self.domain = self.conn.createLinux(install_xml, 0)1 x" A7 _) i# H. W6 O! P
  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux
7 q1 k: p: C: X9 h6 @    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)1 E! l$ e; {4 C3 n% l
libvirtError: virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')   ~% ?& ?- Z8 k6 _4 H2 h. Y* s
'---------------------------------------------------------------------------------------
3 p8 }/ }; j; j############################################4 t, V( J/ c: p3 r
* E; v+ s2 W' b2 T3 K; {/ D
原因分析:5 v" U/ P9 @! E
从错误提示中可以查看到设备(vif) 不能连接,突然想到之前创建虚拟机时在网络连接设置时桥接方式不能选择,只能选择nat方式连接网络(见问题5),很可能和这个问题也有关系;/ M8 X/ h+ C+ S3 }% v! i! J
5 ]% U' A' D3 S7 J/ g
+ e  c; {4 S7 @! B
解决办法:1 N1 S( u/ ?& w- S. H
# k4 i3 i$ u8 \- V( B

" i; L; Z/ ~- k' w; U. c
8 ]/ K' R; `) o因为我使用的机器是好几年前的,系统是 Cent OS 5.2,不知道xen相关包有没有安装正常,于是使用 yum -y install xen* 重新安装了 xen 相关包,发现有几个包的确没有安装上 。安装完毕,重启系统后创建虚拟机,该问题不再出现。
$ k0 C! q7 u4 g3 B5 A! R: [: P/ A8 B
如何使用 yum 安装xen相关软件包,请参见  CentOS 5.4下使用yum安装Xen2 C9 b6 ?$ Y! o# a. F* Z

& Q6 [+ u; l( v# a( p# `1 ~1 ~# F5 ^
# f6 [: b- Y5 D' ]9 d8 G! {# r& o0 f
2011-04-29  更新该问题
* v6 `1 ?# B/ _* D; P. F* c+ u4 V  n) O$ [
) C! m, c  F$ H% H/ T$ @: J
+ L0 M# c$ h, ]8 o( b( _
后来我在另外一台机器上做实验室时一直提示该错误,就算重新安装了 xen,还是无法解决问题,后来终于从一个国外的网站上得到了提示,这个网站现在不记得了,忘记搜藏了。. Z' N  d( E6 J- }2 y# C) z
* t, W2 {% G" e! v
# ~7 t8 q# O4 Y2 I3 ]6 C
% p! d* v$ x2 G) I+ M
网站上说,启动虚拟机桥接设备需要这样几个内核模块支持:netbk ,netloop,于是我使用 modprobe 命令手动加载了这两个模块,并且重新启动了 xend,这是生成了网桥设备 xenbr0,
5 [% y1 r; ?; v* j9 C0 b! C7 M, K0 W3 s2 C' D, q. _/ a
我的测试和使用日志如下:
) p, d+ v: k, B9 e
4 u& w  ^1 Q4 e
2 J: c7 {* p6 _7 B* b+ |" O* x* S! L! }
安装虚拟机系统时,出现以下错误:+ W& |0 @* _8 K' l5 b# Y7 i1 [
7 M9 K9 M: J% f% Y+ @( [! W& ?# u
virt-install -n vm02-CentOS-5.5-full -r 2048 --vcpus=4 -f vm02-CentOS-5.5-full.img -s 20 --nographic -l http://10.10.103.14:8088/CentOS/5.5/   
/ E3 f9 N, z% C, I, d! Z6 k- L
; }: d! X* D- n[root@hdfs05 vm01-CentOS-5.5-full]# ./install_vm.sh 2 s$ \  V" n8 f" b/ q0 z' M
Would you like a fully virtualized guest (yes or no)?  This will allow you to run unmodified operating systems. yes
  \4 k) U1 t/ j" B/ L7 @7 f
0 P$ e$ T# P3 r) s9 y, G/ W  \" q9 L
Starting install...- l/ t7 M6 }3 P& l
Retrieving file .treeinfo 100% |=========================|  417 B    00:00     4 N3 w2 K/ ]" V$ k( C: Y, ?: f6 @
Retrieving file boot.iso. 100% |=========================|  10 MB    00:00     + o- _& [/ T) {8 ?1 R3 s
Creating storage file...  100% |=========================|  20 GB    00:00     ( `; I1 V; Q/ P9 j, m& J! M% E. M8 ~
virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')
4 m9 R% g  g) \Domain installation may not have been5 B5 a$ y" ^# b) m! h: O. h
successful.  If it was, you can restart your domain
) w+ r& _- h) f) }; j1 u% N0 v by running 'virsh start vm02-CentOS-5.5-full'; otherwise, please
% |# V" h5 m; G6 ]" g3 X* n/ e! U restart your installation.
' X3 S" _- ?; @1 S二, 26  4月 2011 09:23:28 ERROR    virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.'). F' d+ I7 [# t, Z4 S# V
Traceback (most recent call last):' w0 v3 Z7 O% E& v0 V$ _! n% ^! Z
  File "/usr/bin/virt-install", line 502, in ?* P+ O. y+ x0 R2 e
    main()* Z/ z5 j: f7 q6 `
  File "/usr/bin/virt-install", line 462, in main3 e3 y6 |  _6 H8 ~: A5 T" i
    dom = guest.start_install(conscb,progresscb)/ L* E$ K3 c) e
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install" L9 \9 P' m5 U$ O0 o- ^
    return self._do_install(consolecb, meter)& r( C) h! d" T% V
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install
2 `5 w/ a7 p6 L1 h* S, G3 j% ^; k' _    self.domain = self.conn.createLinux(install_xml, 0)
7 q6 v: B  e: Q/ m  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux- L7 P) B# H( `3 V& r' P
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
: f( p  H# V) x7 ]: m/ llibvirtError: virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')& Z& B0 [# c& A' a6 y! }; e% @% K

" m$ D6 X' p0 F. B这是 xenbr0、vif0.0 未启动导致的问题。
% ?2 g2 S" d2 w
1 l4 T$ Z$ g" M, b" u; {! P重启机器后
4 e) X; \. @9 {( K5 D/ j5 ]( Q7 A$ V" T
[root@hdfs05 ~]# xend start
8 c, d2 b% g) c0 T7 k  \[root@hdfs05 ~]# xm list
8 [( C9 J& _; L. p) Z  I5 M. qName                                      ID Mem(MiB) VCPUs State   Time(s)+ m/ v! l( W' c# G5 l  ]. M
Domain-0                                   0     7931     8 r-----     40.59 D: L/ N0 M1 V5 `. B
[root@hdfs05 ~]# ifconfig
2 ^& ?7 p) k( k/ X& Leth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  
( c. c4 C+ d9 z& }# ^: ~- K. ]; |          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.05 c! Y+ K  N% W: T) ^) J
          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link
) d1 _$ G' S8 H/ k' |- U4 g          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:10 |) c: o4 n% g4 L: j: E! e5 f
          RX packets:4942 errors:0 dropped:0 overruns:0 frame:0, a/ B+ z5 [1 _+ y/ C
          TX packets:111 errors:0 dropped:0 overruns:0 carrier:0- w7 r' C  V& V" H
          collisions:0 txqueuelen:1000 & s6 E. ]' _: T2 ~: l4 F7 _
          RX bytes:681358 (665.3 KiB)  TX bytes:14358 (14.0 KiB)* R9 s4 x. R% C8 `
          Memory:d8320000-d8340000
6 ~0 z& d5 K1 `5 }7 P# r& B+ v$ |+ |7 l% r; Z
eth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B    ?# \. a0 E* s" s7 d, t
          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0
6 W5 R! r9 h; P6 g" e          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link+ y4 \% \5 f  [& E( T9 _
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1# j1 i- V6 ?( o1 P* i; J
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0- Q" Y' N; P- m2 h# @; n, ]3 Q1 m
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0$ D0 L4 ~! n: w. U4 O" W5 S& q1 d. Z
          collisions:0 txqueuelen:1000
4 A' i. C/ h: R* s  [4 K3 ]          RX bytes:4970 (4.8 KiB)  TX bytes:552 (552.0 b)
6 \" L" S# G7 l6 [: H( Z; e0 E          Memory:d8360000-d8380000
2 O  H" x* `* K! Y6 P6 K/ o: M: W) h8 b: B( C/ v' W/ m7 y
lo        Link encap:Local Loopback  
1 i1 ^, Y% ?3 r0 B4 Y          inet addr:127.0.0.1  Mask:255.0.0.0
" o! E+ u- g1 _% j2 _) u/ Z          inet6 addr: ::1/128 Scope:Host
7 B5 S$ _, a7 k& K2 Q          UP LOOPBACK RUNNING  MTU:16436  Metric:1
. y& U8 T& x$ |  @          RX packets:87189 errors:0 dropped:0 overruns:0 frame:07 V$ M/ i. V% J4 w
          TX packets:87189 errors:0 dropped:0 overruns:0 carrier:0
5 k9 c) c( c  y: V, F$ U          collisions:0 txqueuelen:0 5 U! N# v# r+ x3 P% x9 O
          RX bytes:118287320 (112.8 MiB)  TX bytes:118287320 (112.8 MiB)3 q0 J1 I% g  X/ Y4 x

$ `& u; l4 J8 w3 M" o+ ~; c[root@hdfs05 ~]# /etc/init.d/libvirtd
- E. ^# W5 ^3 Q; `& bUsage: /etc/init.d/libvirtd {start|stop|status|restart|condrestart|reload}
: ~7 O3 h% F) Q" p% q+ ?# C, G[root@hdfs05 ~]# /etc/init.d/libvirtd status
* I5 `1 o: o, Z/ |libvirtd is stopped! Z/ r4 g; |7 ]* p
[root@hdfs05 ~]# /etc/init.d/libvirtd start  启动 libvirtd 服务
5 j) d2 h3 f! BStarting libvirtd daemon:                                  [  OK  ]
: D5 O5 c6 \' z5 S$ q$ x[root@hdfs05 ~]# ifconfig ,生成了网桥设备 virbr0 + S/ @- \9 C+ w* w5 |/ x5 y
eth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  
4 j2 k+ [. F. J% ]4 g( m( I& H          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.0
& Z; p. d) L3 V          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link8 f6 H% E$ _4 W) Q+ {! E) L
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
: e. s3 H% U  @* M- e' z) r8 [          RX packets:5082 errors:0 dropped:0 overruns:0 frame:0& r; ]& S# p, h: a  j3 s
          TX packets:175 errors:0 dropped:0 overruns:0 carrier:0" ?6 z2 @7 N% |
          collisions:0 txqueuelen:1000 % Z* S' E- q7 R! y" {, [9 e# l( k
          RX bytes:710500 (693.8 KiB)  TX bytes:23050 (22.5 KiB), G5 y5 x% R4 S- Q0 u8 n9 ?- h0 N
          Memory:d8320000-d8340000
6 X, X9 s% V# A0 ^& p0 W
; e- A8 g. K$ K3 ]. e9 Ueth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  1 w4 U) j" ~6 O+ M* B! A+ M
          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0
- a0 r0 H7 w! L, H. s' R% f2 _          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link
! s* `2 [3 s2 i2 M: p7 K' L/ R1 k/ y, S( I          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
1 V3 I4 ^: k  g  Y' M* _. F          RX packets:20 errors:0 dropped:0 overruns:0 frame:0( {1 s, P0 }4 W$ b& ~& j7 p* y
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
4 @5 z6 W, M( y. ~7 }          collisions:0 txqueuelen:1000 : Y$ o+ P$ d9 w  V  ^3 V9 V. _
          RX bytes:4970 (4.8 KiB)  TX bytes:552 (552.0 b)9 G! i, u2 c9 \% T# U
          Memory:d8360000-d8380000 / `4 ^0 W, N! C( c9 ^

" Q7 i! j2 Y9 D0 X3 _lo        Link encap:Local Loopback  
, U2 `# @- D4 f/ ~          inet addr:127.0.0.1  Mask:255.0.0.07 C+ q. L0 o$ C
          inet6 addr: ::1/128 Scope:Host* p: S) ]6 N' O1 r# `/ g
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
. ]4 y' Y& {! y, f          RX packets:87613 errors:0 dropped:0 overruns:0 frame:0
* y4 c7 [: d3 O3 X7 |7 F2 {          TX packets:87613 errors:0 dropped:0 overruns:0 carrier:0
! i9 Y; o. H" y  y* r/ l2 B          collisions:0 txqueuelen:0 & \- \9 l, K: A* e5 Z& t
          RX bytes:118861744 (113.3 MiB)  TX bytes:118861744 (113.3 MiB)
0 r, Q6 c0 u. T7 Y
) y/ w  V% h0 _' y- S4 qvirbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
$ c4 a$ m% q: Y+ g6 d8 k          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0* _. H' k9 r) o) U$ G
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
" h: _8 [2 \1 }$ N          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1% F7 X% Z6 Z6 A; P# ^
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
/ l- I: k2 X' t2 C/ [          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0# r+ q+ W3 V, e  O
          collisions:0 txqueuelen:0
4 J! Y, B% H7 l2 D" g4 L          RX bytes:0 (0.0 b)  TX bytes:328 (328.0 b)
) v8 J0 p6 f5 O5 e0 ~/ o
0 ^; N& G0 P$ w9 T[root@hdfs05 ~]# xend stop! k1 \( K/ u( F7 H0 g. x8 b
[root@hdfs05 ~]# /etc/init.d/libvirtd stop
7 B. v% E- e4 U8 Z/ `8 eStopping libvirtd daemon:                                  [  OK  ]
1 ?/ \5 u- I5 _1 o: b6 y[root@hdfs05 ~]# /etc/init.d/libvirtd start1 L9 ?" O- o  l& z6 n
[root@hdfs05 ~]# xend start1 S2 E% t' {; G" t9 a5 M4 w2 n5 i
[root@hdfs05 ~]# ifconfig% R5 ]# @! r$ h: M' D
eth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  " y$ m0 p$ l9 ]# b7 I
          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.0
/ i& Y6 d5 O9 d5 z. _9 |          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link4 P) `6 d4 ?% d, b" V0 [4 Z
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
: {& r" ^4 I& e/ X1 |          RX packets:5508 errors:0 dropped:0 overruns:0 frame:0$ B7 e2 o: B" A0 v- u
          TX packets:299 errors:0 dropped:0 overruns:0 carrier:0
1 a2 H- K  c8 u          collisions:0 txqueuelen:1000
; Y$ D* ^" b- b  i2 [* j3 Z, E) l          RX bytes:757440 (739.6 KiB)  TX bytes:42402 (41.4 KiB)
1 n$ v% Z4 f; J2 {- p          Memory:d8320000-d8340000 1 W+ |9 b; L1 z
, z/ n4 g( V% ^: s4 S
eth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  7 g: ]8 Y( c! A/ D
          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0$ p- z4 a2 V$ x
          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link
" X2 q: A  q: X$ |          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
% d  n4 ~% l0 C3 r- f( P          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
2 {5 c/ A0 }- f* I0 N( i. @          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
) ^! S$ X4 ^) n% n4 w9 e  a          collisions:0 txqueuelen:1000
, O7 s! T- \, j0 i9 M( f          RX bytes:4970 (4.8 KiB)  TX bytes:552 (552.0 b)2 D4 b' u6 R. k. c0 t& Q, H/ Q+ F
          Memory:d8360000-d8380000 $ w0 t. s) p% ]3 D/ k

5 }1 a) X  X; C9 Zlo        Link encap:Local Loopback  
) e, b, L1 r  {1 j# }          inet addr:127.0.0.1  Mask:255.0.0.0
. o: m% _0 O7 T. h( }! _7 a! n          inet6 addr: ::1/128 Scope:Host4 y2 C+ c" C2 D/ V  |
          UP LOOPBACK RUNNING  MTU:16436  Metric:14 I% v! ~+ L: j3 J& I; j
          RX packets:91038 errors:0 dropped:0 overruns:0 frame:0
% n) z4 r5 N" M+ s          TX packets:91038 errors:0 dropped:0 overruns:0 carrier:0: ?- H3 l$ M! b, i& G; l* Q
          collisions:0 txqueuelen:0
+ {9 W1 ]$ Z! K8 ]          RX bytes:123483512 (117.7 MiB)  TX bytes:123483512 (117.7 MiB)5 N0 J+ }/ I- K; x
9 X4 T) ~! M4 A& u3 L6 H6 L0 V' O6 x
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
9 E4 b: ~$ S6 J' T, [. @          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0$ a4 k4 I8 d. X3 _
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link6 X1 |$ A2 n7 L7 y+ y0 g- Z
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
1 H  n. n0 B/ j! h) o/ G          RX packets:0 errors:0 dropped:0 overruns:0 frame:0$ P# }( q3 S6 R5 U, X9 ~
          TX packets:5 errors:0 dropped:0 overruns:0 carrier:03 u0 ?7 U- H( i' f
          collisions:0 txqueuelen:0 7 F  w  b1 E  l0 u) a; I
          RX bytes:0 (0.0 b)  TX bytes:398 (398.0 b)! a( g9 L0 K' q& F' O6 ~) d
; S" G/ A5 V7 Q0 I6 f, w6 R$ b
xenbr0 未启动,; R% ]% `4 ]* B1 Z$ _4 G0 e
" r% `' {. ]% g) B, x; d
查看Xend启动日志,出现错误“Link veth0 is missing”' m2 X% x( I) E0 C5 ?" O" s
' ?! Z3 d( q7 @( U& _
[root@hdfs05 ~]# vim /var/log/xen/xend-debug.log
  A- [+ ]5 u+ N9 l$ {+ T7 o  1 ; s) r. y9 Q( N6 r* R" P/ q* {
  2 Link veth0 is missing.
! [* S7 E3 R, H6 ?  3 This may be because you have reached the limit of the number of interfaces" T! ]! n; S" f; L$ @0 F
  4 that the loopback driver supports.  If the loopback driver is a module, you
! p7 I# j" @9 @- M  m9 V4 w# R  5 may raise this limit by passing it as a parameter (nloopbacks=<N>); if the
+ E: W- l: Y6 C  6 driver is compiled statically into the kernel, then you may set the parameter
* Z) x; o0 n; u  7 using loopback.nloopbacks=<N> on the domain 0 kernel command line.$ }# Q# w! G' F3 d
  8
5 |7 s5 A0 {& d* W! E' e- r4 S6 |3 ^6 E, n
使用脚本手动启动,出现错误
  m# g$ q; ]; S! W* e, P
9 V4 Q5 m1 _7 B$ i6 V[root@hdfs05 ~]# /etc/xen/scripts/network-bridge status
) Z9 ~8 i' M; N; ]* H) G) x============================================================% m' `% B; k7 l
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000, N3 q0 O" n* ^- b" L$ ?5 Q" u
    link/ether 00:1d:7d:48:38:1a brd ff:ff:ff:ff:ff:ff& E3 ?+ j1 f, C! P: |
    inet 10.10.111.5/16 brd 10.10.255.255 scope global eth0
7 Q; e9 t- G% S0 P1 F    inet6 fe80::21d:7dff:fe48:381a/64 scope link " s  ?& g- v5 T' k4 T3 |1 |6 F
       valid_lft forever preferred_lft forever
9 e$ n9 h2 b/ o* Q  LDevice "xenbr0" does not exist.- r% Y( J2 e: t* ~9 q

5 s: y" p& \) B[root@hdfs05 ~]# /etc/xen/scripts/network-bridge start
7 q- R: V2 Q* }# o2 y0 ^, S; M/ I$ }. [- L  D/ K
Link veth0 is missing.
$ r$ |1 P* s- X& b0 a' ]This may be because you have reached the limit of the number of interfaces+ O, ^! m5 L( g% t5 J1 x
that the loopback driver supports.  If the loopback driver is a module, you
- x2 L. J; n* U8 b2 u0 cmay raise this limit by passing it as a parameter (nloopbacks=<N>); if the
2 M  P) c! @+ Q2 P0 e5 _! E2 a4 |) kdriver is compiled statically into the kernel, then you may set the parameter
) F5 \  ~6 f% c; f$ y2 C1 fusing loopback.nloopbacks=<N> on the domain 0 kernel command line.1 j5 l# h. f# A: K$ O
% v7 v2 s( F, H0 F( W5 P
查看加载的模块5 c' U* u+ n$ c! M- J3 L. J5 h
/ b6 h4 c2 e% O! l8 F
[root@hdfs05 ~]# lsmod | grep net
, t4 P! P: g3 Knfnetlink              40457  2 ip_nat,ip_conntrack- C7 q* A8 y5 {2 q
5 y* r* ^7 U0 m0 I
正常情况下的 glnode04 上是:
! I+ Q, B' d2 i$ t' z  O- l[root@glnode04 Xenoprof]# lsmod | grep net
; L; v8 Y/ _& o# l) ~netloop                40129  0 - ?2 ~# T4 |+ I6 \. ?3 u' I
netbk                 129153  0 [permanent]& Z0 H9 J; p- Q+ d( `; T  Q
0 Q2 l/ P; E4 m8 r( d
手动加载模块 netbk ,netloop
$ M, V7 J4 a, O( m$ B
! a5 C& ~6 m2 l0 }6 j[root@hdfs05 ~]# modprobe netloop4 \% m, R4 v" O) K5 h
[root@hdfs05 ~]# modprobe netbk
, N& d2 w1 F# `' @! E8 H[root@hdfs05 ~]# lsmod | grep net
1 m  u6 N/ V/ S' @7 b# Inetbk                 129153  0 [permanent]/ m1 F+ Q* s( Y3 l; m  _
netloop                40129  0 8 Q4 p; _: h  y" B! [% B3 r& m
nfnetlink              40457  2 ip_nat,ip_conntrack
3 e& m8 \! T- }$ q# C5 Z* E+ b. m, E
模块加载后重启 xend,2 }! S) o# z6 d+ j( F; y" E. p
" {3 z' |& m# `' |
[root@hdfs05 ~]# xend stop8 R& y2 `& N. r6 ^3 _( ~) a
[root@hdfs05 ~]# xend start 启动消耗很长时间,像死机一样,网络跟断了一样,bash关闭了,过一段时间后网络好了。
  x/ u. b2 q; B, O. R......* D  ?5 V" D" ]6 \+ L! J
[root@hdfs05 ~]# ps -ef | grep xend% H( |5 V/ b2 v  J' H5 ?) Z! R) G% ]
root      4504     1  0 09:35 ?        00:00:00 python /usr/sbin/xend start  L- ^6 U/ j3 \3 G7 v
root      4505  4504  0 09:35 ?        00:00:00 python /usr/sbin/xend start4 G/ t# j7 N( b7 T6 J, p' R
root      4813  4773  0 09:37 pts/1    00:00:00 grep xend1 j( }7 u' [# O* x% [3 w

" ]' w( @5 y1 k1 l: o8 d! i' C开启另外一个 bash,查看设备,发现 xenbr0 设备启动了
* T3 R( L  ~1 i1 v5 @# F" \3 U4 ~7 I2 j9 s  v
[root@hdfs05 ~]# ifconfig
2 h* v- C) J/ O; X2 r: @3 c1 X( I  Neth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  
3 D  i5 V! }1 s; k% G          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.0
5 d) G8 u5 w6 @4 p( U) V. A* ]$ U3 V0 W          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link8 [" d. g2 q/ R5 W1 |! e
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1( ]$ l' E# f+ X' v
          RX packets:1079 errors:0 dropped:0 overruns:0 frame:0
1 g: i, y+ i3 n4 u4 X* [+ ]* V          TX packets:80 errors:0 dropped:0 overruns:0 carrier:0
% H2 p4 R9 }8 Q' U          collisions:0 txqueuelen:0
, H, X1 H) S5 ^3 C6 L0 u( ?. A. T          RX bytes:158475 (154.7 KiB)  TX bytes:12704 (12.4 KiB)3 a+ e& k% E& V% v* m% e

- p! y( ]0 m  Q" y" W8 D6 ceth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  
9 `3 @  ]" g) Y, U+ Q  m: c0 q* I          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0
! B6 d" d% f6 Q0 S* R$ j/ d          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link
1 Y4 u/ ~6 y- t' e8 H: e          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  k2 \0 I7 F8 i
          RX packets:0 errors:0 dropped:0 overruns:0 frame:07 u* t- R0 v' k" {4 e
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:00 W+ v! s8 o  N, R
          collisions:0 txqueuelen:0 ( z" h2 }- H# D9 v- a/ b$ q
          RX bytes:0 (0.0 b)  TX bytes:552 (552.0 b)( \9 C; L! l) I+ A; ?
3 d7 S5 s! M1 r
lo        Link encap:Local Loopback  ( P) H+ |7 P7 F% f
          inet addr:127.0.0.1  Mask:255.0.0.0
  D3 y/ x. s2 z0 d          inet6 addr: ::1/128 Scope:Host: d- C; U& D; _) h5 L* O! ~
          UP LOOPBACK RUNNING  MTU:16436  Metric:1# J+ ~+ m* z/ O: G
          RX packets:107602 errors:0 dropped:0 overruns:0 frame:0- i, ?+ u4 v. f. p, d& W. u; m
          TX packets:107602 errors:0 dropped:0 overruns:0 carrier:09 W2 q; }/ l" d9 ^, c$ ]
          collisions:0 txqueuelen:0 8 r7 }5 y; u4 F6 [/ L3 T9 `$ M! B
          RX bytes:145810320 (139.0 MiB)  TX bytes:145810320 (139.0 MiB)1 {, ^7 n$ ]: P& ]- X0 q

+ ?( b" Z, E5 D6 C' \peth0     Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  
! h: c- d* |8 C  n" ?3 D6 [$ h          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link+ @: ~/ i) _) Q
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:11 v/ s- `8 Y$ S% L' n2 n2 S
          RX packets:7926 errors:0 dropped:0 overruns:0 frame:0' F4 c$ E5 r# E: N
          TX packets:803 errors:0 dropped:0 overruns:0 carrier:09 b3 g- |. r( s
          collisions:0 txqueuelen:1000 . f" y% j3 Q' r% U: n7 [4 k
          RX bytes:1048526 (1023.9 KiB)  TX bytes:140794 (137.4 KiB)# m- r( J# G) U7 J! u
          Memory:d8320000-d8340000 7 A( n/ w! ?2 M  r6 F3 p+ ]2 E( M
3 r* }1 ?4 Z: ]1 P2 r! G1 L
peth1     Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  
8 e+ _) C4 Q  A) k          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link! K8 _; W% U' B4 L( v
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
/ H- H& p6 R6 G* \          RX packets:32 errors:0 dropped:0 overruns:0 frame:0
- A( P+ p% c' C6 @" w4 ]          TX packets:278 errors:0 dropped:0 overruns:0 carrier:0: L8 B/ V. a6 ~( I& [; \( a6 I
          collisions:0 txqueuelen:1000
1 a0 N$ ~' {! G8 h          RX bytes:6444 (6.2 KiB)  TX bytes:35772 (34.9 KiB)2 H  V5 q% `4 _" v# E! Z1 o
          Memory:d8360000-d8380000 " k$ T% t4 r$ f* _  S! S8 G
/ r$ p+ J' R8 z" L5 s7 D
vif0.0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  # I% Z+ B" [$ I3 H" a- i% x. F8 ~
          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
4 m6 a; T8 \2 o4 I          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
1 Q& ]& Z; v# @- k! u) T          RX packets:101 errors:0 dropped:0 overruns:0 frame:0
3 e1 A& |; H, ?( F% K          TX packets:1098 errors:0 dropped:0 overruns:0 carrier:0
9 Y) k' f* U2 F4 t  b5 J+ B: i          collisions:0 txqueuelen:0 - T, R' ^5 `* s5 [6 C
          RX bytes:17258 (16.8 KiB)  TX bytes:159729 (155.9 KiB)1 E% r9 C2 C1 p: I

! ~$ g3 o3 h' Z9 Kvif0.1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF    r" |  l8 O% _  k- f& a; X
          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link* o# v( D3 l" ^- c, O! J
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1+ U! [$ T; G* }: j9 c* ~
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0; }3 C4 B* Y+ H4 |. h5 E
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:04 ^1 G* S, X: _2 h
          collisions:0 txqueuelen:0
: ^3 I/ |5 V' o/ c          RX bytes:552 (552.0 b)  TX bytes:0 (0.0 b)
1 c4 s( {/ N* F. y+ w. W+ k$ s8 J# Q2 q5 }* }+ o* V
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
9 s' \1 A* I7 {% e6 x7 ^0 z- v7 R          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.03 p+ m5 w5 _9 w0 _. l  {; p+ X
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
( @4 f; J" a7 N, s3 [# f. U, G          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1/ ?/ M) O7 r* z
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
' g/ C4 `$ u- M3 Q: s/ A  T1 U          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0% o5 o, \, u. d6 L$ t& N$ K# i
          collisions:0 txqueuelen:0 6 Q$ H5 i8 t7 p4 @
          RX bytes:0 (0.0 b)  TX bytes:468 (468.0 b)6 f/ }. e1 b& d1 j( J! T; c

1 a% V) s6 n+ `5 wxenbr0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  + D% f6 M1 |2 z3 `# H2 @
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
4 z. }& k( w1 Y9 T+ |7 a          RX packets:629 errors:0 dropped:0 overruns:0 frame:0
6 D+ {& ?# G' f; L7 n) m          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
1 T) |* w$ u) z; C/ t8 O4 N5 O4 c          collisions:0 txqueuelen:0 1 k. Y9 c  C+ Y2 K# d) n7 @* S, S
          RX bytes:107389 (104.8 KiB)  TX bytes:0 (0.0 b)& w+ X, J! t8 I; q. R% [0 ]; {

4 a2 L# M1 T0 [' v* V/ {xenbr1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  - p  `  B( M4 r" d( Z
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:16 e& |+ X: G6 q- M; ~9 T* D
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
, p+ {. f! k: Y          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
% C0 S* D+ O. m+ {$ K0 y6 Z- z          collisions:0 txqueuelen:0
$ o/ Q4 e# z+ w6 i/ r0 L          RX bytes:440 (440.0 b)  TX bytes:0 (0.0 b)# W& R) g: z6 O% ?4 M: C1 R# J

# Z+ y* ^5 C/ z2 o- [[root@hdfs05 ~]# xend  stop2 A$ M( _4 Y2 q3 [7 t
[root@hdfs05 ~]# xend  start  生成的网桥设备不变,xend启动一次后,设备即生成了$ I6 E6 M! A% W  ?, v+ r- d
[root@hdfs05 ~]# xm list: A; C7 _9 ?9 `# M1 K
Name                                      ID Mem(MiB) VCPUs State   Time(s)4 ^7 i, t2 a( q3 n: T3 s: M; U
Domain-0                                   0     7931     8 r-----     52.0
1 y5 O3 W% b6 T! e& v
7 @9 s) ?. Q& c7 A: @查看网桥设备
2 |, v$ q2 \6 t% u5 l( w+ R* o
; y1 I  v1 [1 ^3 o[root@hdfs05 ~]# brctl show/ {0 C6 e& j0 Y9 j
bridge name    bridge id        STP enabled    interfaces
8 o. ^8 E6 U5 N. Fvirbr0        8000.000000000000    yes        
- b, C7 F; n  U# p/ M. A+ j8 Gxenbr0        8000.feffffffffff    no        peth0: L+ P# R$ M! ~) ~7 M- n$ r1 A
                            vif0.0
0 k; {& @  |8 i7 r* j- G" z  ]xenbr1        8000.feffffffffff    no        peth1- M6 H& n" f6 a
                            vif0.1
" x* K' e; I& V7 o6 I# S
0 F/ C" a( H9 u: o! B1 O
. J+ }* x& Q/ L2 \6 J# F
* X! O) d( c( G, i4 j; Y0 t, H5 u############################################$ g; [8 v+ b7 j+ T* u  z. m3 \/ a
2 ^2 l$ O( F) E) o" p

, j# @! y: d+ B2 [* Y0 O
/ X5 x8 h: `* w2 U* b1 V# L2 y(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前8 Y# Q, L. B  Z# Q
. i: S4 j: Q+ T5 \% F6 H
--------------------------------------------------------------------------------------------------------
4 K$ d  V! C' g( `5 v
8 L$ Z& r& R& a. A半虚拟化安装时,选择 nat 上网方式,IP 配置使用 DHCP 方式,此时卡在 TCP/IP 配置界面,5 w7 {, }8 a: g/ f
Xen Sending request for IP information for eth0 不能成功, 卡在这里,不能通过。
! ~6 `* u( y- Q* l/ n1 D) A( h. s6 M; X& i/ l5 a# A( u9 |8 g7 l
--------------------------------------------------------------------------------------------------------
5 U+ W: Z* n4 z$ _% m' o& k############################################; W. N$ \9 ~4 v) O- e( Z9 R7 t! D) Z

# t$ A* Z/ O, O+ {( y; m解决办法:
$ z  `! O. K( X! pIP选择手动配置,配置 ip地址/子网掩码;
3 ?1 H- A7 Q+ j9 e6 v# n/ u$ r( p( A$ Q' m2 }1 R7 Z* V
全虚拟化安装时不存在此问题。 5 @* z) \  i" C6 d
: _5 D5 h- m/ V- A/ F& E- X
############################################
+ r; Y  U. @# V8 O1 o; `  e/ I; p9 q* h) r

# B2 x% \0 \4 V: X  v( U
& T6 K- k& y% F) K6 y$ Y(8) 启动虚拟机时出现错误:File "/usr/bin/pygrub", line 28, in ? ImportError: No module named LiloConf9 r* h8 I; h% \" n1 V
--------------------------------------------------------------------------------------------------------$ M' y  j# r" n6 _
[root@glnode04 xen]# xm create /etc/xen/vm01-centos-5.5-pv
$ o& j2 b4 G9 U8 ^Using config file "/etc/xen/vm01-centos-5.5-pv".* [: c! I: u0 E( G2 h
Traceback (most recent call last):& b& U! f- l4 r% L
  File "/usr/bin/pygrub", line 28, in ?
5 V# a( _& Q) a3 m# C- g    import grub.LiloConf
8 m; a- Y5 P1 ^  t8 G8 oImportError: No module named LiloConf
9 @, y4 e0 L5 L( E2 f. O
9 [2 d) f" A8 M提示 /usr/bin/pygrub 文件的第 28 行的 import grub.LiloConf 出错,这又是 python 的问题,import 出错。
0 T- h9 P9 |3 _) r) k5 A8 T3 |3 _9 \; y8 t
手动执行 pygrub 命令,仍是出现这样的错误.
6 M: R) i+ K7 |, B* W8 b+ c3 x" Q[root@glnode04 xen]# /usr/bin/pygrub
9 G9 C2 @/ P  @Traceback (most recent call last):, j* g! M6 E9 H3 B9 m" L
  File "/usr/bin/pygrub", line 28, in ?
) x/ A+ K! E' t# i* ~% }5 N    import grub.LiloConf7 ?2 M# o3 G  m; y
ImportError: No module named LiloConf- \/ S$ a" J9 k& @# t

. C7 X7 {6 `$ w- c- s正常情况下执行 /usr/bin/pygrub 是这样的1 N1 ]( d' ]; p0 v, f6 v

* r) }- \, D  {% t) _[root@gmnode14 xen]# /usr/bin/pygrub
- c$ M4 r% T: G- Y! Y! Q+ NUsage: /usr/bin/pygrub [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <p_w_picpath>' Q( Q! I" h8 _3 x2 E9 o8 k

8 b# E/ G& q% i4 Q* K- y- @[root@gmnode14 xen]#
) F% K; n* `! y" @--------------------------------------------------------------------------------------------------------
. ?! Q; w& p$ @: O1 b  h, Q2 e4 w% |4 x( a# R
############################################
- o# l) E. z2 ]9 O, _  i) ^% f' L/ `, N$ D$ Q9 ?8 q+ K
查看 /usr/lib 下 python 库,发现有3项:$ W6 i5 Z$ k. _2 W4 h
[root@glnode04 xen]# ls /usr/lib/python
, `2 H( e) k* M) [. L; \% |2 Epython/           python2.3  python2.4/+ @) w# C& e: k' w! [% z; z. O$ ~' F
$ T, S% Y- E" d/ ?
这地方有问题,CentOS默认安装的是Python 2.4.3,库文件和可执行文件的路径是:1 K  z) E0 Q+ }  i7 V- L: n  Z
/usr/lib/python2.4, {& P5 m: E* A: x0 @
/usr/bin/python2.4
; n4 @. D1 W+ r/ K7 e' J9 W
/ b7 h/ d( x/ [1 o/ H! ?而现在多了两个库文件python和python2.3,将这两项删除,或者重命名,再次测试,问题解决。
* j3 s/ R7 j$ G7 I$ s
9 S2 ]2 X3 `! H/ ~( \' w& A[root@glnode04 xen]# /usr/bin/pygrub
2 k' W  d/ ?  n9 M& q9 s$ cUsage: /usr/bin/pygrub [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <p_w_picpath>
$ r. `/ J9 Q) c, X5 `. j; n2 T, S2 w* J- S- }
[root@glnode04 xen]# xm create /etc/xen/vm02-CentOS-5.5-pv
- I3 H( ~. [( iUsing config file "/etc/xen/vm02-CentOS-5.5-pv".# Q9 \4 k1 z  N5 H9 T
Started domain vm02-CentOS-5.5-pv/ X+ A/ F4 @& ~3 X7 G
启动虚拟机正常.! U/ p' z4 u% s# }

5 S7 D- ?& @; b, |( Z###########################################
1 K0 y2 X, S" a$ s8 k2 f5 J5 g6 ~8 J) a$ d-----------------------------------
$ [6 t5 t3 Y( I6 H: U6 x安装Xen、创建Xen虚拟机、使用Xen虚拟机过程中经常出现的错误总结/ ?* }2 L5 \5 |) O$ C6 N0 ^
https://blog.51cto.com/newyue/855972
3 ~) ~  u& ]% N/ p- ^0 Q$ t6 K  [+ P
3 B1 i8 i2 Q, Y
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 00:20 , Processed in 0.018099 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表