找回密码
 注册
查看: 530|回复: 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 ! r; s; t' X" |9 X4 q
(2) 使用 virt-install 创建Xen虚拟机时出现错误:ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效 1 F+ n( v5 g1 {
(3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed
& h" N# D% w0 y: @$ n+ O3 M* c(4) virt-install 安装虚拟机是出现错误:ERROR    无法连接到 'localhost:8000': 拒绝连接
( N+ ?* J) o8 S% V, B7 k9 y; r" V(5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续
. `9 g+ @, ]9 ]# N, u. i(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:
; g# T2 S" a- ~* [& x8 ?1 B'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.- C& [, {, a$ Z; W  G

1 s6 d2 {; U0 X0 Y' l9 E- I9 t(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前
+ h) e5 n2 h  ]8 s! Q
& ]9 ]/ o4 m# o  X
% }) C4 ~0 L6 X; E
. c7 m( B/ E9 V, [* p5 c' t
8 e& D3 F/ P7 `2 Y- w( d7 W1 B  m) l" e
错误总结$ `# _# t2 ~" H& Y5 z
9 v* ^. V6 z, i& \2 w. W8 o
使用 CentOS 5.2 默认安装的 Xen,启动 Xend 时出现如下错误:  g7 N& [( l, k4 L
(1)  启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 * p; X- A. _2 T
--------------------------------------------------------------------------------------$ X4 z: W. x6 Y3 a4 z
[root@glnode04 ~]# xend, B; V1 F2 A' v. ^$ v# j8 u
Traceback (most recent call last):. g! |6 v0 j. }, G! C
  File "/usr/sbin/xend", line 51, in <module>
. M* \0 [! x) [+ o    from xen.xend.server import SrvDaemon
" j: |- A$ T% {; H  File "/usr/lib64/python/xen/xend/server/SrvDaemon.py", line 20, in <module># K+ S8 M7 p( L. w- |: f8 i# L
    import xen.lowlevel.xc
7 g3 ]+ `$ F( P8 r0 |/ jImportError: /usr/lib64/python/xen/lowlevel/xc.so: undefined symbol: Py_InitModule4
1 T6 f9 q3 L* \+ b5 ]3 s& ^. W5 l9 \; E[root@glnode04 ~]# xm list* q2 o2 x* V8 c! j
Traceback (most recent call last):4 ~: l: P6 `+ ~# Z9 y9 d" S4 _
  File "/usr/sbin/xm", line 8, in <module>
  e0 @6 I" b# p' V. P2 [    from xen.xm import main
5 m6 S, @* r2 l' k  S. N1 f/ S* T  File "/usr/lib/python/xen/xm/main.py", line 45, in <module>- ~& J6 `- i. [( ~3 G1 k
    from xen.util import security
  a" g8 d4 A9 a) J7 U2 q; e! c  O% d  File "/usr/lib/python/xen/util/security.py", line 25, in <module>) P7 e* H% N8 `4 u0 n) E9 ~
    from xen.lowlevel import acm
. w: t3 H' O' O) v% H7 O0 {7 t7 |ImportError: /usr/lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 : i5 B0 b# q( D
----------------------------------------------------------------------------------------
- x2 ^( M) [3 T" d4 `0 Y' C############################################
+ m' W4 ^( j/ p1 x
& `5 P+ O! x$ o- I2 Y原因分析和解决办法:/ D. a' r1 s0 J4 K/ E/ X
直觉是 python import 时出现的错误,查看文件/usr/sbin/xend,第51行是“from xen.xend.server import SrvDaemon”,就是这行出错。
4 J$ [) S* X, p2 u" y: ^查看 python 版本
  N0 s! H- J% q7 I/ ^" N( N" }[root@glnode04 ~]# python -V' w: K, B$ \5 N8 J7 ]
Python 2.5% z' Q  r6 r$ f" J. [
查看 python 安装路径1 g. `' K, c1 o' A2 O. p
[root@glnode04 ~]# which python
$ u5 {, n; a# {( }/ L: y. C+ L/usr/local/bin/python
0 z2 f7 [( q$ m. t查看系统安装的 python 的rpm包版本
1 W/ z, H* h6 r" n[root@glnode04 ~]# rpm -q python
; [6 Q" J5 z/ s$ p5 F/ V& apython-2.4.3-21.el5  从这可以看出 python 版本和 rpm 包所示的版本不一致,这个 rpm 包是 CentOS 5.2 自带的.( g7 }  s, d* W. K2 L* |6 Z

+ z6 D" D: z7 O, ^/ a2 r系统是CentOS 5.2, 我们发现使用的不是CentOS 5.2 默认安装的 python,默认安装的是 Python 2.4.3,CentOS 5.2 默认将python安装在/usr/bin下。  4 p& j' |4 v& y2 K6 G
[root@glnode04 ~]# /usr/bin/python -V; W" c5 c4 j. _$ Y+ @
Python 2.4.3
; j$ u* H7 G9 o% O2 j" G& L4 P# W& g/ k由此可以想到可能是环境变量 PATH 的设置导致我们在命令行执行 python 时使用的是 /usr/local/bin/python,可能是 PATH 的值中 /usr/local/bin 在 /usr/bin 之前; ; X0 D' i1 V1 p- k% ?
检查 ~/.bashrc 发现的确如此,环境变量 PATH 设置是 export PATH=/usr/local/bin:$PATH,将其修改为3 ^1 E  X' N9 t( a2 I0 S
export PATH=$PATH:/usr/local/bin,然后 source ~/.bashrc,或者退出 shell,重新开启一个 shell,
# v- l3 m9 u: _' D+ y/ }% j! F测试 python ,发现使用的是默认版本。8 U1 J% b3 [4 P" ^
[root@glnode04 ~]# python -V# I# n2 R% W  U/ N0 v! D
Python 2.4.3# G5 C, L- G9 G; ?

5 ~$ q, ]( ?" ^6 C0 o/ `启动 Xend ,正常,没有问题。. G- c. z. s9 ~* S/ e2 M% z
[root@glnode04 ~]# xm list
+ q/ S3 Q0 U" g' n& N/ DError: Unable to connect to xend: No such file or directory. Is xend running?1 [0 o3 ?8 _7 U2 L; H, F. a
[root@glnode04 ~]# xend
# K) ]. K8 X, C& nusage: /usr/sbin/xend {start|stop|restart}
4 o6 A. r' g6 X# v7 S; v/ {1 M' a[root@glnode04 ~]# xend start
- a4 H# A, j) E1 F  p[root@glnode04 ~]# xm list9 C. L) u3 a1 J4 k4 w# m& i
Name                                      ID Mem(MiB) VCPUs State   Time(s)( d3 w: w9 U* b' i5 E
Domain-0                                   0     7931     8 r-----    463.9) H. Y6 v' @' F) J1 q

4 _: R- Z0 Y5 S3 L4 R7 e分析原因,是因为 Xen 是python写的,执行 Xen 相关工具时需要调用 python 相关库,如果版本对应不一致,或者库路径不一致,则会出错。8 d9 R2 `( }/ v
$ ?( U6 {! _4 S+ d" g& t& }
############################################6 l2 @4 h4 F- |
( ~0 v& U, @+ Q6 s  K
; u! g8 d# {' H

$ V( e4 r/ `; X9 C# U6 ?' R; K$ a(2) 使用 virt-install 创建Xen虚拟机时出现错误: ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
3 H. J6 a/ ]6 k  T% B; y# [
: N5 k0 ?) n/ R/ r% G3 u, R----------------------------------------------------------------------------------------& P, H, X# ~" I: o2 t
. j8 H: M- K& p: v
[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/8 Z8 h) b: ~$ @& _

5 X& _7 C5 I7 ]; g; R# ?Would you like a fully virtualized guest (yes or no)?  This will allow you to run unmodified operating systems.no
0 [( |: z4 Z$ \3 u1 @: b
+ Q0 ]- S1 i: xStarting install...' o2 I/ S* E. w% Q
Retrieving file .treeinfo 100% |=========================|  417 B    00:00     
# s. x- ?- {, o& C; ^6 ^Retrieving file vmlinuz.. 100% |=========================| 2.0 MB    00:00     4 P) _+ V! _) V2 V
Retrieving file initrd.im 100% |=========================| 7.7 MB    00:00     
  b* K, O4 e* v& s0 g, IvirDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
( |2 r" Z+ t" `4 P) S1 K2 a4 bDomain installation may not have been
2 @& u% D. w5 l9 T successful.  If it was, you can restart your domain
- G9 t9 s3 w: u* Y0 {- p by running 'virsh start vm02-CentOS-5.5'; otherwise, please! U  B& g% a6 C. [
restart your installation., D$ H( K3 N; P8 J# |
三, 20  4月 2011 19:21:08 ERROR    virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效' T7 U5 S' h" Z' j2 V. k# [# c
Traceback (most recent call last):
: A. e! t. S3 s) `  File "/usr/bin/virt-install", line 502, in ?
7 C: T$ y2 F' S2 P    main()8 o2 M6 @/ D3 `9 g
  File "/usr/bin/virt-install", line 462, in main2 l! V) p- `- H! L8 {: J0 v
    dom = guest.start_install(conscb,progresscb)
& s3 U" g$ S' k) a. P  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install2 z# X$ ]0 `* z, @  I9 S: I2 b* R
    return self._do_install(consolecb, meter)3 o6 W1 ~3 u0 `9 |+ W" }
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install
% s, ?! O; h3 a# [7 R4 M    self.domain = self.conn.createLinux(install_xml, 0)* w# Q$ f6 k" S$ o5 ^" }  g
  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux& C+ T) q  b1 ^! a
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
" T9 l2 D# E( j& \! IlibvirtError: virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
! e! [+ ?* {/ R  r! A----------------------------------------------------------------------------------------, u3 t. g3 y, N2 q
############################################
* |8 e5 ?0 `+ w& {1 ]0 n6 k3 d解决办法:
) y% W  f! }! \; Q& y
# x& w, e+ ~+ g: i安装前先启动 libvirtd 服务。& t* _" N3 v9 F% _' y

, u8 n$ X. O8 t2 Z+ I; W+ C, Q1 |[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status, _( d) Z- t& H0 ], X0 K
libvirtd is stopped
( S+ Z% m& u& u2 h% C2 r[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd start) a' ^! f7 V! Y9 Y& B, U
Starting libvirtd daemon:                                  [  OK  ]
) ^; d$ Y+ n- X
5 X8 e( H# l' e( ?  l) x1 R* J7 p. c# }( G$ I9 E. Y
* ?" c! b4 w/ f5 z4 s3 w
原因分析:/ E- V3 a+ P8 T- U- l
出现此报错应该是主机的libvirtd服务没有启动,而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。
$ L0 v; X$ J* p2 D8 ]解决方法有两个:
. y) g; }+ ?+ u/ A(i)启动libvirtd服务后重新用原来的virt-install命令安装客户机操作系统;
2 ~4 q$ `' @& o4 z4 T, z" L/ R: V#/etc/init.d/libvirtd start
9 H& g, r) K& ~0 q! F
; z' n) |4 t2 k, q(ii)、在原来的virt-install命令后面加-b参数指定需要连接的网桥,如果未调整网络,一般默认的网桥应该为xenbr0' ], E' }: O, l7 j) x1 V& ^9 W3 t
要查看网桥的名称可以使用brctl命令查看( H, [" H& r+ P% w" V! M
5 L- a' x5 Q( j. s
[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status
3 M) z$ ]- }- s! I6 F/ @( ulibvirtd is stopped
5 O: _$ y' C1 t0 O  }[root@glnode04 vm02-CentOS-5.5]# brctl show  # libvirtd是关闭时网桥virbr0也不存在: p4 M$ z% Q* V- O
bridge name    bridge id        STP enabled    interfaces; e8 r3 Q3 y7 q) @
[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd start) c7 x% C1 M7 Q8 g6 N; c% Q/ |  `
Starting libvirtd daemon:                                  [  OK  ]
. z7 i% N. |4 d[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status) c. |& u8 J  d$ X3 @8 k% @
libvirtd (pid 20863) is running...# V! w. R9 J" }5 e6 h+ o2 N2 A* j
[root@glnode04 vm02-CentOS-5.5]# brctl show% P, e& S4 V. p- t6 V
bridge name    bridge id        STP enabled    interfaces
  g6 e1 v( R4 Lvirbr0        8000.000000000000    yes    ) U* u+ ?' R9 ~
, D" o7 |) ]' y: R/ t! L9 c
此处我们已经关闭了libvirtd服务,剩下的网桥的名称为xenbr0(如果创建了多个网桥,选择自己需要的网桥名称)
! d1 {& W! @' t  s& U#virt-install -n kiro-test -r 256 --vcpus=1 -f /data/rh5 --nographics -p -d -l "http://192.168.0.1" -b xenbr0
& H# P7 d# y$ |4 x
4 \; s+ Y( ^) q. M参考:   XEN故障与解决方法汇总/ @7 [# i7 t7 f, I

# K! I( v& b. D3 S8 j( J$ z
( I  N. Z/ \" m0 y9 _7 a/ n############################################
6 _6 G8 R$ ?2 s6 c) A7 d8 G, c* F& `, N8 W7 C3 m0 j1 E" L, E" J
* P/ S+ H* p, v( G
( t1 s3 _9 O# A& d5 q) O+ M
(3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed
; S: B7 H4 y9 w7 V( u+ }/ l1 X1 U7 T- L: d% u5 ?( ]# z
----------------------------------------------------------------------------------------
& O, V8 a- U! V0 V8 H9 XUnable to open connection to hypervisor URI 'xen:///':
$ \7 p& c7 G! _: q6 J: wlibvirt.libvirtError virConnectOpenReadOnly() failed
; Y7 V0 O/ L  v+ PTraceback (most recent call last):
7 X* _0 I; \2 s5 {  File "/usr/share/virt-manager/virtManager/connection.py", line 307, in _open_thread
+ L  m/ Q" p, n- w/ S3 Q    self.vmm = libvirt.openReadOnly(self.uri). D" ?& a, v5 W
  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 132, in openReadOnly
' @; }7 W: X  |+ R    if ret is None:raise libvirtError('virConnectOpenReadOnly() failed')8 f4 c( _1 I2 ~* l) ]
libvirtError: virConnectOpenReadOnly() failed5 [  I6 ?: N  U: \0 B' C1 y
$ o+ n- j) o: v' o. }$ x, r
! {" b( P' Y5 Z' n1 q& x' A2 a3 ^0 D

+ V" F+ ]* K* O+ ^  }( c7 C; k$ Z8 e( A

  b# z  d5 |2 ]' S----------------------------------------------------------------------------------------
) C0 [0 a; a0 k  n& O! F# ]' R% c- Y+ A: A2 }2 t7 r
############################################# E5 ]. S7 Z% g* ~( ?- |5 A; _* @
解决:+ K- p$ {4 H% p3 t

& Y. Z) ~9 R+ v0 s  t/ T. l6 n修改 xen 配置文件,按如下方式修改:
% o0 W9 J  [% l, m; u- R8 Y[root@glnode04 ~]# vim /etc/xen/xend-config.sxp3 p$ R. k% p7 N- X' L7 ^' g
$ R+ U& E4 X% z( e3 S$ U2 _! ^
(xend-http-server yes)3 R* d: c! p7 G% Z# K/ l, V: b7 M
(xend-unix-server yes)
6 k: ~$ Z; w9 u1 q  T  x& h8 R: ~/ a# d
重新启动 Xend 服务
. O5 s2 |  `0 R2 U: a0 o& l( e# Y9 o) P. h
[root@glnode04 ~]# xend restart$ j7 s+ s- [5 l) m/ }
############################################: i( C. \. g2 V( Y% f. ?
' V( C( V- ^! U% Q/ n

; L8 }; s. a( e/ q5 q4 G, E# J& {5 l. M8 x, k
(4) virt-install 安装虚拟机是出现错误:ERROR    无法连接到 'localhost:8000': 拒绝连接
' a- E+ Y9 }! J) a! Y7 U$ x0 ^: q* s3 ~: k; a: X
----------------------------------------------------------------------------------------
  G/ @; A1 C8 q% n" G' u, l7 @3 F4 v7 V: Q- W/ s( b
[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
* O& k- g* L' S8 j, o/ {7 xERROR    无法连接到 'localhost:8000': 拒绝连接  E8 t% z( _0 h' s
Traceback (most recent call last):& P# p' p0 B4 d: W! P* l- ~
  File "/usr/sbin/virt-install", line 861, in ?9 j7 W  ~, F, p) b# S4 R' X7 z
    main()6 V8 Y6 F7 ^5 Y
  File "/usr/sbin/virt-install", line 636, in main/ V3 q/ s3 U* [/ m3 ?  A* p
    conn = cli.getConnection(options.connect)- T, v. d# }( P$ e7 Y
  File "/usr/lib/python2.4/site-packages/virtinst/cli.py", line 126, in getConnection
9 p+ L' B8 T% ]- v7 D& h    conn = libvirt.open(connect)
2 z  C% s3 x) X2 W" n/ x1 c  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 159, in open
7 i. b' }! C( T* Z0 ^! P! n. ]    if ret is None:raise libvirtError('virConnectOpen() failed')
( S1 g, @. v& a- B7 ^% IlibvirtError: 无法连接到 'localhost:8000': 拒绝连接
$ k( r/ _2 g2 V0 P----------------------------------------------------------------------------------------
& q/ f- K' I/ v  y# n############################################
/ G% w3 Y9 `) r% g, B9 O* {6 I解决:3 H3 j2 c- A' S& n! \  u

2 P  X3 ]! U& r) V. \& j6 J1 z/ e# q  T
) X2 e/ H1 M0 `6 W* t
修改 Xend 配置文件,然后,xend  restart ( }0 u7 w2 [$ [8 x7 p6 u( N5 P
+ `/ S3 z; U" C( G0 W
[root@gmnode14 yum.repos.d]# vim /etc/xen/xend-config.sxp
: u5 H$ P0 c5 f1 o/ V9 N
, k$ ]: @7 Y0 V' }2 g- J0 e5 e0 T- B4 ](xend-http-server yes)8 s! z7 p0 Y! h+ J( G
(xend-unix-server yes)/ B1 W, \1 A- w
+ P7 E) S% d3 F* k4 L. L+ U3 r
(xend-port            8000)
( e5 i* C* I/ M7 r/ {
7 ~& K) x4 @9 f/ O' t. `/ `! Y* z8 i############################################% ]! R7 G) X. u: }& _- x
' T; F5 F4 z7 m+ f' ]
(5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续
$ j3 B9 o. }3 E3 R, @' |" O6 `; E* c: y9 m+ _. O. w8 ~. }
# O7 G# l0 y# G" D+ Y
4 k: q( M0 \/ C; K* G# p5 d. C
# V8 h/ t9 L$ i+ ^# r% q

: S' k& b( W! d: ~  {: A3 ]8 Q0 s. q. i1 |* ]

: h6 c5 \1 z' U/ P7 o% e############################################( J+ J: x! Y* J4 Y
+ q, g/ n; u6 \; R5 ^8 f
分析原因:8 D; p' q! G" E/ M) x
: O: O* t. H) Y: G4 `- `, H
出现此报错应该是主机的libvirtd服务没有启动,
+ c. k5 m" |$ \$ u9 g. c
6 I! Q& n: _) N7 Q2 `  e$ O而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。7 j/ \, r8 M; M# ~+ v

# J5 B, }4 \' @9 o1 ^) }: y/ _解决方法:' M; M' R4 u0 Q0 {1 U2 U  |( g

9 c/ \, d' J- H: A9 E启动libvirtd服务后重新运行 virt-manager 来安装客户机操作系统;
- K% `6 g& O6 M8 H! n, {: J& Q
0 g; i9 T/ n5 v#/etc/init.d/libvirtd start
9 U4 r6 n0 H, c9 A2 L# d* e但是这也只能保证 nat 选项中有 default 选项,桥接仍不能选择设备,要彻底解决Xen虚拟机网络设备问题请参考问题(6)
1 [# j! ?0 v0 p$ i8 D  j8 i5 F
1 N! G) e# h* _$ Q7 o2 A参考:   XEN故障与解决方法汇总
' k( g9 z4 l6 d/ _5 h
& P% ^  g# E- b) A2 d, O############################################
2 m8 b( _( Y3 i: T5 S7 p% o0 g( q; n  `. |+ F/ e' Z8 g
% D' L- e0 e/ I8 F: C5 m$ q5 Z3 Q) V

1 ^( o8 N# J' v9 t) D/ F0 w- k7 w(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:$ u+ w0 W; T$ z1 J/ F

# u" e5 m% x% U'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.
* i: Z$ J: n4 `2 x) m# P. J---------------------------------------------------------------------------------------
. y: u* U' j) Q3 |9 ^Unable to complete install 'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working. ')
. g; B& U. X3 B% r8 u, ~8 C' r8 F% sTraceback (most recent call last):
1 I5 t  {& J8 ]+ ~4 {6 I  File "/usr/share/virt-manager/virtManager/create.py", line 611, in do_install% W1 V* F2 A2 y1 @: |% q
    dom = guest.start_install(False, meter = meter)# e) g5 P5 `1 p+ V+ a  p4 h
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install
) k" Q3 n8 P- f2 I    return self._do_install(consolecb, meter)% `) A# N, f# p' g2 Y3 z
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install" l8 v. J7 ]0 k4 L3 V
    self.domain = self.conn.createLinux(install_xml, 0)
9 Z, m4 A& N6 \: h  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux& G6 l3 V+ C7 M
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)% i* j9 ]" F- {0 Z' `
libvirtError: virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.') * S9 l+ {- {+ b* `* f/ C- D
'---------------------------------------------------------------------------------------
' ], d, k7 i, y( }" x2 P4 z############################################7 ]  u$ R- D  ]" ^9 y8 E9 ]
! H& ^% ~9 _3 _/ D7 t
原因分析:6 H8 U, {! F0 I6 l/ f( P
从错误提示中可以查看到设备(vif) 不能连接,突然想到之前创建虚拟机时在网络连接设置时桥接方式不能选择,只能选择nat方式连接网络(见问题5),很可能和这个问题也有关系;
+ J  ]) u' L( n9 h8 M+ }' |" S. S% H9 `
( z& f; c$ V, a8 s( Y2 B  D8 X( f
解决办法:
8 C6 n$ |9 I- [$ I! b
* C; G0 s  h7 w  P( e* z4 ]4 D3 ~: r

, V$ i+ A5 n. g8 z. _& @因为我使用的机器是好几年前的,系统是 Cent OS 5.2,不知道xen相关包有没有安装正常,于是使用 yum -y install xen* 重新安装了 xen 相关包,发现有几个包的确没有安装上 。安装完毕,重启系统后创建虚拟机,该问题不再出现。- }! s. q8 F( b% S  F" t
: O7 H8 p0 J* G8 |0 |- j' y) m
如何使用 yum 安装xen相关软件包,请参见  CentOS 5.4下使用yum安装Xen
! O% {- X# |+ f% E" V! i( q- l! A! |9 n

, y" Z& Z5 v$ p6 ^  h8 |) a9 h# {. E( j* o+ W5 l; A
2011-04-29  更新该问题/ p* t' b: [% W) c7 M$ e6 j
9 v+ n8 l! G/ b# s6 g! l5 |0 B
9 d) N; v$ K7 F: z) Z+ ~5 o

6 {; W' R# `( s后来我在另外一台机器上做实验室时一直提示该错误,就算重新安装了 xen,还是无法解决问题,后来终于从一个国外的网站上得到了提示,这个网站现在不记得了,忘记搜藏了。1 T( |! `& k) v5 |( M% o0 P

: ]- D. n/ T/ ?/ b
* X& ?2 a# M+ w) ~; C) g% w) P7 e
7 X' m- ?7 L4 q- h网站上说,启动虚拟机桥接设备需要这样几个内核模块支持:netbk ,netloop,于是我使用 modprobe 命令手动加载了这两个模块,并且重新启动了 xend,这是生成了网桥设备 xenbr0,
" R3 L% u* k) P) ]' G8 o7 B" M( T( X
我的测试和使用日志如下:, I! C7 `+ ?) ]! \0 s+ \1 S
8 ]) ~/ P. g* s0 `7 J2 C" U2 @
2 s" V9 a9 B' B$ E3 t- [2 V1 _

' l& L5 i# P% ?0 t安装虚拟机系统时,出现以下错误:: _  N$ T% b+ m5 p8 q
( y8 l6 x1 Y& N
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/   
/ T6 V; s+ @# |* Z6 D/ Y
# i& T/ {: U* W$ M5 c9 T! V. Y[root@hdfs05 vm01-CentOS-5.5-full]# ./install_vm.sh 4 |2 F" l/ [9 C# _5 F
Would you like a fully virtualized guest (yes or no)?  This will allow you to run unmodified operating systems. yes
  Y8 Q: M! X0 {! w6 C2 P5 ~) I5 w& x
6 e4 ^6 H' l; `* X. [+ y  J4 h6 k1 P) }- j" L6 a' O: e9 K
Starting install...- _0 b$ q/ P  u( J
Retrieving file .treeinfo 100% |=========================|  417 B    00:00     
) c0 R. @. H. R# bRetrieving file boot.iso. 100% |=========================|  10 MB    00:00     
# }9 B7 K, B- a1 X7 j5 S: {7 MCreating storage file...  100% |=========================|  20 GB    00:00     
# b  \, r( m, S1 p. R* E* v( xvirDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')
1 ~/ e7 b5 t: _. SDomain installation may not have been
8 B' X8 Z* i7 k successful.  If it was, you can restart your domain
6 ?+ {$ L) K# _+ E3 N$ w/ @1 f by running 'virsh start vm02-CentOS-5.5-full'; otherwise, please6 F0 @/ J3 ]! X3 _+ i7 F6 Y
restart your installation.* P1 S$ j- e9 F* Z2 |
二, 26  4月 2011 09:23:28 ERROR    virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')+ X5 O9 D, ~6 O4 t8 L& R2 h2 y; I6 b
Traceback (most recent call last):
! c8 A/ H1 P' q# r  File "/usr/bin/virt-install", line 502, in ?
6 ?# @0 |$ k# |    main()
2 L0 T% u5 R* o8 A, y# R+ C  q  File "/usr/bin/virt-install", line 462, in main
, |1 V% E3 c% F5 o    dom = guest.start_install(conscb,progresscb)
1 Q' H9 \- A8 R* q  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install! R$ L/ s" \/ w
    return self._do_install(consolecb, meter)4 G: B% o2 ]5 \+ g4 X+ O. x
  File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install
' c- u7 Y0 v% e    self.domain = self.conn.createLinux(install_xml, 0)
& U/ c9 ]1 _" U" ~7 Z: k  File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux% A7 G0 @# D& U/ T& r! l$ U
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)6 r  Z# e1 D/ t" ]
libvirtError: virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')
( E3 F7 A# ^0 ?# g0 T  B6 e; b7 V1 m; o
这是 xenbr0、vif0.0 未启动导致的问题。
1 X+ v! _( A7 ?0 n- S1 }6 }7 \7 e3 `- e: D; @6 K5 N
重启机器后# r/ l% u% T3 f+ H0 j8 z  j# E
4 s4 s, u) G" g$ i3 \9 X
[root@hdfs05 ~]# xend start
4 k$ w7 E' t1 Y% v  g/ Z[root@hdfs05 ~]# xm list" F3 T6 r# S: j/ p! J+ E  T) ]" p
Name                                      ID Mem(MiB) VCPUs State   Time(s)
. F& q: [. B  n% J/ x. c3 K9 X8 S; bDomain-0                                   0     7931     8 r-----     40.5
2 h3 {2 [, Q' N+ i# G[root@hdfs05 ~]# ifconfig
. B$ o. F2 Q) |% _eth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  4 }& V" s$ ]5 Q6 r) |
          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.00 E- S  }) R2 A* P, ?: q! C
          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link
) |9 i) I$ m' V! l5 a. [7 Y/ e          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
, R& Z  {" j/ m( r" ~! I9 T          RX packets:4942 errors:0 dropped:0 overruns:0 frame:0
/ T/ D" v8 b# b5 g          TX packets:111 errors:0 dropped:0 overruns:0 carrier:0% ^3 v( h3 @$ `# S8 h
          collisions:0 txqueuelen:1000 ) ^" V4 d: u+ F9 t+ z2 c5 J
          RX bytes:681358 (665.3 KiB)  TX bytes:14358 (14.0 KiB)) |# I, e* ?8 X: v3 x  d, F, Y
          Memory:d8320000-d8340000 5 w$ L. w! X, ]1 D. h! J
/ o' E4 F8 B3 {: V; Z' f
eth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  ; f! w- {1 b0 N1 R, c
          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.07 |8 ?: I5 @- }0 r7 s
          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link
# L4 y$ h- f$ v          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1- d2 _& K3 c- e6 n3 m
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
  K- ?) ^, B7 N8 |+ t  h8 g          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
8 x$ m3 {1 _* [- @7 G5 L          collisions:0 txqueuelen:1000 9 Z% u  d% h/ O- K. r; m' [- G. _+ _
          RX bytes:4970 (4.8 KiB)  TX bytes:552 (552.0 b)) k/ c) o, `0 c: C/ p" q
          Memory:d8360000-d8380000 & p# Y# n( Q3 N- L8 r! U' Q0 T

; q: F& [4 `( l. [# w9 h& Qlo        Link encap:Local Loopback  0 X7 T# q4 r3 a# l  S
          inet addr:127.0.0.1  Mask:255.0.0.0
( ?8 ~/ v; r5 ]- Y  Y          inet6 addr: ::1/128 Scope:Host
( ^: y/ W8 f0 A$ s+ R' c% a          UP LOOPBACK RUNNING  MTU:16436  Metric:1- d! X/ w1 X% H- x' h& m
          RX packets:87189 errors:0 dropped:0 overruns:0 frame:0
! _" W6 B5 W# x2 @( Z# x2 p6 W          TX packets:87189 errors:0 dropped:0 overruns:0 carrier:0
9 ]1 ?; x8 c) |- F, m! {          collisions:0 txqueuelen:0
6 d( E3 ?  d8 I0 u6 c7 a& m          RX bytes:118287320 (112.8 MiB)  TX bytes:118287320 (112.8 MiB); u( c( n: f+ b' ?* w5 V1 U
0 K1 ~1 g3 j( f9 C% N( @
[root@hdfs05 ~]# /etc/init.d/libvirtd ( ^2 U& v; z0 Q  m6 o; l2 T( }
Usage: /etc/init.d/libvirtd {start|stop|status|restart|condrestart|reload}1 J6 j9 I+ |+ u) M8 G9 ^
[root@hdfs05 ~]# /etc/init.d/libvirtd status
1 R. W, m+ }) T3 ~2 F) |6 h9 e* elibvirtd is stopped3 ?4 C5 f+ ?+ O6 G. m3 @" r0 N
[root@hdfs05 ~]# /etc/init.d/libvirtd start  启动 libvirtd 服务
6 E6 b" t! I' q2 G4 k2 V5 Q& YStarting libvirtd daemon:                                  [  OK  ]5 |% K( T) g4 u: J) a
[root@hdfs05 ~]# ifconfig ,生成了网桥设备 virbr0 9 a1 S2 i5 i0 _% j; D- V
eth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A    M/ A5 y+ M' g9 b) b* A/ a' W
          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.02 q/ ?1 v( d4 W# f, r0 j
          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link) b# V0 E) F$ F  X" U
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:13 V+ O" m8 g0 A! O, [0 i' [
          RX packets:5082 errors:0 dropped:0 overruns:0 frame:08 Y9 i7 h! n9 d' ~# X8 j
          TX packets:175 errors:0 dropped:0 overruns:0 carrier:0
5 q: a! S- D2 u          collisions:0 txqueuelen:1000 - ~- j5 A$ s) F, Z( \7 R) ^
          RX bytes:710500 (693.8 KiB)  TX bytes:23050 (22.5 KiB). r- ~" E1 j: p( N2 U
          Memory:d8320000-d8340000 8 y: x; Y% @8 J' u6 V5 y
7 _  p( ]. F; C5 q
eth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  
4 G, M% l$ T( M% T! {          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0
5 k/ t* @; i6 `0 q: K          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link
. O. z# I7 M  Z# ]% N" \( }          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
5 x6 N9 P* O6 v& e( P# v          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
! E" d! R8 f4 U/ {: Q          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
! R& k7 n& a; T5 t( ~          collisions:0 txqueuelen:1000 - k# N8 f0 v3 n3 A
          RX bytes:4970 (4.8 KiB)  TX bytes:552 (552.0 b); Q4 y) k9 X/ v- e% x
          Memory:d8360000-d8380000 $ C( s, ^3 v! h9 v
, N0 `0 o; N6 K. V! X
lo        Link encap:Local Loopback  
* Q1 A7 D; B3 w. V, s4 W  x          inet addr:127.0.0.1  Mask:255.0.0.0
) [7 S& `4 ~% B2 ]8 i          inet6 addr: ::1/128 Scope:Host
/ l! y& o3 P! W+ B' }          UP LOOPBACK RUNNING  MTU:16436  Metric:1
4 K/ y. |/ B$ y; V& C          RX packets:87613 errors:0 dropped:0 overruns:0 frame:01 y! v  s& \1 B! _( R. y6 n
          TX packets:87613 errors:0 dropped:0 overruns:0 carrier:0
' A4 f0 ?' \" E0 D$ C* x          collisions:0 txqueuelen:0
6 w; |8 R# v1 o! a0 ]8 v  H, n8 I          RX bytes:118861744 (113.3 MiB)  TX bytes:118861744 (113.3 MiB)% H3 b0 R# X& r9 B+ w6 I
& a7 _9 }9 H! T3 Q" q9 v: S
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  5 v% j3 M" S. q" V: E/ V& ?' C
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0) A* q' s1 q/ j; V6 B# H8 x: S
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
# Y5 {4 }( {3 S6 f          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1% f2 o# D4 Z8 E9 ]3 q3 m9 \
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0& U9 B# D5 K+ b7 p
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
% P( s: w9 U" E# I5 T! I0 |          collisions:0 txqueuelen:0 ; a3 e: ~. \4 Y7 |
          RX bytes:0 (0.0 b)  TX bytes:328 (328.0 b)
4 h1 Y1 e( {" G* n! d5 b' Z$ `
% U" o* H7 `6 w* z) z6 ^[root@hdfs05 ~]# xend stop, C! @: n; m( `9 f7 o; l" z! V/ W
[root@hdfs05 ~]# /etc/init.d/libvirtd stop1 P, H/ D# K! h4 Z
Stopping libvirtd daemon:                                  [  OK  ]
& M" k8 P' g+ X7 Y[root@hdfs05 ~]# /etc/init.d/libvirtd start
$ {3 @9 _* s6 H8 T1 ~/ r. e2 \! p' {[root@hdfs05 ~]# xend start
0 g8 X1 B' P' A# w9 T[root@hdfs05 ~]# ifconfig/ ~3 W- b1 Y9 D) c
eth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  
! m" G) G& A. g! {5 g1 I) ]9 a          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.0
% O8 e% i4 S. y. D: ~* l# K; R6 [          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link
) ~/ [' y9 V* @+ [; c5 M3 j7 T. F0 d% `          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
: o+ q9 r$ Y1 N$ s5 a# {( u6 |          RX packets:5508 errors:0 dropped:0 overruns:0 frame:05 y: D$ ]3 L) m( J4 T: y  P
          TX packets:299 errors:0 dropped:0 overruns:0 carrier:05 s! V( d$ q' h4 d8 N1 z$ i
          collisions:0 txqueuelen:1000 , D6 A% `+ n/ I+ C$ J5 Z5 K) C
          RX bytes:757440 (739.6 KiB)  TX bytes:42402 (41.4 KiB)
9 q9 C# M1 x* B5 r          Memory:d8320000-d8340000 1 }: v5 v3 \. D" J3 t( k

+ j) d8 T# c+ X0 P' e8 Leth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  : n8 a0 J- b& S2 b) u
          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0. z- H4 L, i8 I9 e( G  A% ?
          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link& c8 `; O( Z% z  J- O+ ?, X
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:14 H! b! b. b0 f( Q+ l4 V# L; I/ K
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
/ h1 j4 g3 O* J( w          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
" Q* O; y2 h7 P$ H7 u+ J          collisions:0 txqueuelen:1000 5 C% X( A# [' L. ]! ^) e# A4 u4 x8 e
          RX bytes:4970 (4.8 KiB)  TX bytes:552 (552.0 b)
+ q) P& p: d* y- ^) B" g          Memory:d8360000-d8380000
6 m6 ~- z) A4 K8 k1 f: x9 J( \( b" X' E/ o0 c: Q
lo        Link encap:Local Loopback  
4 ]' q- y3 G8 ]7 A/ [) @          inet addr:127.0.0.1  Mask:255.0.0.0
& w" v' ?7 B' L          inet6 addr: ::1/128 Scope:Host
) E) _& L7 P+ d- l5 G          UP LOOPBACK RUNNING  MTU:16436  Metric:1
+ Y+ @0 y' p( Y7 ^  Y+ d! ]          RX packets:91038 errors:0 dropped:0 overruns:0 frame:00 p( E5 g. R3 @' n0 E  Y' A0 [( ^
          TX packets:91038 errors:0 dropped:0 overruns:0 carrier:0
; \) J. M6 ^  e! m          collisions:0 txqueuelen:0
6 ]% t. a1 K! z+ X) f% R: p          RX bytes:123483512 (117.7 MiB)  TX bytes:123483512 (117.7 MiB)8 ?1 h7 o; p/ a
( z$ h  q# Q9 b6 _' i5 U
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  ( l+ o. J% c6 s
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.04 |7 [$ D4 m% V" M: |
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link4 n! i9 C( u: e- u
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1! ]. G1 v8 Y6 U% a$ d0 P
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
0 D9 `( @5 z' L$ m7 J/ S          TX packets:5 errors:0 dropped:0 overruns:0 carrier:0. J8 l  W4 U" W, U0 R
          collisions:0 txqueuelen:0   [- Y& h  x1 C2 Z! C8 W
          RX bytes:0 (0.0 b)  TX bytes:398 (398.0 b)
5 P' A/ m8 ~" [9 o& y9 E3 g4 [/ q3 Q2 w
xenbr0 未启动,# x, n% W' f4 t1 _8 M  R% c( T, [, L9 @6 H
: ?( N1 w" }  ?4 g0 Q3 a
查看Xend启动日志,出现错误“Link veth0 is missing”- \* h( x+ D. s2 Q1 {

" w* j& g, J( }4 B[root@hdfs05 ~]# vim /var/log/xen/xend-debug.log
( A5 q; ?0 ?5 N" F  J" V' s  1
" c: o+ O0 l1 ~5 i2 o  2 Link veth0 is missing.2 _2 ^4 b2 V' C2 i0 D; h
  3 This may be because you have reached the limit of the number of interfaces
6 n' F2 C; d( t5 b4 R  4 that the loopback driver supports.  If the loopback driver is a module, you
7 V7 g" O( {4 F0 N  5 may raise this limit by passing it as a parameter (nloopbacks=<N>); if the
$ f& C* \$ ~' A8 Y2 F$ g+ z  6 driver is compiled statically into the kernel, then you may set the parameter; H; l  k: h2 p. g" P
  7 using loopback.nloopbacks=<N> on the domain 0 kernel command line.
/ c4 E7 c6 B8 T8 E( z+ D  8 : f/ ^* I- o6 i* i* ]% P" Q

5 Q4 i' C. z( A! F8 Q6 o* D使用脚本手动启动,出现错误
7 z+ j( O6 Z- S% R
% o1 h. `7 N6 E5 f[root@hdfs05 ~]# /etc/xen/scripts/network-bridge status. b8 d# W3 n3 t% _
============================================================# _' l8 ?* [8 q+ h$ t! E# m
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 10008 m1 L2 d0 z" x- x! V1 S/ z
    link/ether 00:1d:7d:48:38:1a brd ff:ff:ff:ff:ff:ff0 b, X0 d! O" t/ z
    inet 10.10.111.5/16 brd 10.10.255.255 scope global eth0
  U" d. C' ]3 T; X% x    inet6 fe80::21d:7dff:fe48:381a/64 scope link 8 G7 m! r3 u& X, N7 g. R3 I
       valid_lft forever preferred_lft forever
: u0 ^8 L0 g2 D! i2 S' ^% R+ ~6 VDevice "xenbr0" does not exist.
" D. V( @7 [/ w) m: W
4 y9 ?1 F; K" V[root@hdfs05 ~]# /etc/xen/scripts/network-bridge start2 O; j$ b& W- `; Z, c, [1 P4 I4 z/ o* ~

0 ]' A/ M" N: ^  v  yLink veth0 is missing.
- |3 |3 [' \% I5 c: }: d& rThis may be because you have reached the limit of the number of interfaces
; x' x! ?+ Q; I5 a( ^2 ethat the loopback driver supports.  If the loopback driver is a module, you
/ {  |1 E; [* b2 {" nmay raise this limit by passing it as a parameter (nloopbacks=<N>); if the; F6 ]% o# }6 u" N
driver is compiled statically into the kernel, then you may set the parameter
' h) C- g4 w# ?( P6 H# ousing loopback.nloopbacks=<N> on the domain 0 kernel command line.# ~/ E5 c& D9 q1 L  e4 h
* i: Y' L9 K6 @2 r5 c1 H
查看加载的模块, r+ p1 ]( S% R) F" Z

$ _  Q! y- O* p! M& n[root@hdfs05 ~]# lsmod | grep net! y2 d: q+ v1 h: j
nfnetlink              40457  2 ip_nat,ip_conntrack) F# e1 Q! X0 H+ O5 p2 y

* ^- h9 M+ F' ?, w% O. V正常情况下的 glnode04 上是:  l: w4 M! @2 u  i- O8 l4 Y+ m
[root@glnode04 Xenoprof]# lsmod | grep net
4 n$ A% R; Q  @9 j' A6 Gnetloop                40129  0 2 u5 x, T, K* s# ?; f0 Q
netbk                 129153  0 [permanent]2 ~# ?, ?* b+ _' z0 R" i5 k
* |, i$ G7 H- e1 i2 i. z, B
手动加载模块 netbk ,netloop
8 D3 P5 Q* o: }% p) K+ ~+ _
2 `2 e4 H- k7 t9 c7 Y[root@hdfs05 ~]# modprobe netloop/ ~# A' g! m4 r4 ^
[root@hdfs05 ~]# modprobe netbk6 x+ `" J, z0 c. }! e
[root@hdfs05 ~]# lsmod | grep net
4 u9 S1 u3 W" ]$ Vnetbk                 129153  0 [permanent]: K5 G3 K9 D5 g( E: b
netloop                40129  0
% I# C, {6 j+ x/ W" O% \# h. Anfnetlink              40457  2 ip_nat,ip_conntrack" P  H* ]$ I9 `; N+ W

' ^, b6 g& m1 `+ l* y模块加载后重启 xend,
: ^# d/ ?" R; \9 X0 @
+ z  _0 D  E  k% h& Y4 ~9 w/ N[root@hdfs05 ~]# xend stop
' v& d) V) R* x4 P+ q' O, S[root@hdfs05 ~]# xend start 启动消耗很长时间,像死机一样,网络跟断了一样,bash关闭了,过一段时间后网络好了。0 ^$ q  ]1 Y3 {
......8 y  _# E) v; P' D* o/ _
[root@hdfs05 ~]# ps -ef | grep xend
: {5 b  Q0 C5 z& Croot      4504     1  0 09:35 ?        00:00:00 python /usr/sbin/xend start4 E. U4 J2 s4 q4 v! }3 E
root      4505  4504  0 09:35 ?        00:00:00 python /usr/sbin/xend start7 Y6 p9 @  t0 f0 s( [8 [
root      4813  4773  0 09:37 pts/1    00:00:00 grep xend6 y( q" o0 O( Y$ d. _* m/ e
. n% ]9 O3 S7 x. X: \
开启另外一个 bash,查看设备,发现 xenbr0 设备启动了2 u8 B% M- Q  P$ v3 a

7 ?+ K+ ^5 l8 {* r, o0 N8 r[root@hdfs05 ~]# ifconfig
8 G4 b% X2 u3 M) Z( t0 l% O! M* d& Peth0      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1A  
8 e% W* H8 \- W0 I          inet addr:10.10.111.5  Bcast:10.10.255.255  Mask:255.255.0.08 i0 h9 O8 m1 f" i0 J6 \
          inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link
8 C$ I# o1 c& \/ z7 a# J          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1" F# ]0 X5 u4 X: U1 G1 x! p9 E
          RX packets:1079 errors:0 dropped:0 overruns:0 frame:0
+ B8 M3 W3 ?7 u+ O" K9 y$ l3 M          TX packets:80 errors:0 dropped:0 overruns:0 carrier:04 ?3 P& i* Y7 q* A; b& v
          collisions:0 txqueuelen:0
9 d5 k9 D) s# G3 ]' {5 \          RX bytes:158475 (154.7 KiB)  TX bytes:12704 (12.4 KiB)& f! M) _: }4 a) P8 m* `
% u$ H4 y8 P) M1 d  _; S( J( m/ L
eth1      Link encap:Ethernet  HWaddr 00:1D:7D:48:38:1B  
# K, ^& U1 {0 g) B7 a% L+ w, K- w          inet addr:10.10.141.4  Bcast:10.10.255.255  Mask:255.255.0.0, J; h' n4 g0 X+ u4 k) P4 P4 _
          inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link9 |2 ^+ ~. e# X6 ]+ c, L
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1% S7 m; c+ G) W. o
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
( p& A  E- G7 b! v          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
9 F9 d+ \* F, r8 C2 r* F          collisions:0 txqueuelen:0 ( m7 ]% M" E& V4 T
          RX bytes:0 (0.0 b)  TX bytes:552 (552.0 b)
/ J" l  Y0 s( c3 [
2 A7 V# \9 N2 Wlo        Link encap:Local Loopback  6 ~& b* |2 L5 j
          inet addr:127.0.0.1  Mask:255.0.0.0: o, a2 f" x! N5 f4 W: p/ Q. u/ a
          inet6 addr: ::1/128 Scope:Host
8 ^( h. T, Z0 D9 M0 ?0 n7 n: I          UP LOOPBACK RUNNING  MTU:16436  Metric:1% X5 V5 i& u4 k# m+ b
          RX packets:107602 errors:0 dropped:0 overruns:0 frame:06 f4 T) W; e5 {- j
          TX packets:107602 errors:0 dropped:0 overruns:0 carrier:0. y4 I, s0 Z' ^$ y: g& W
          collisions:0 txqueuelen:0 . q9 @/ j2 Q2 X! \- s
          RX bytes:145810320 (139.0 MiB)  TX bytes:145810320 (139.0 MiB)5 k* K8 {$ U0 ]$ N9 d/ w: }
- u4 \8 L1 k: A0 i, O8 b* l1 q
peth0     Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  
4 C5 c, @; k/ o" y2 ?4 n8 H          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
* D' F" I% c) H- _+ t; V) |& K          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1; U: U: x" X: }& l
          RX packets:7926 errors:0 dropped:0 overruns:0 frame:0
, q7 B+ _7 s4 t" ~/ |6 Y1 x8 |          TX packets:803 errors:0 dropped:0 overruns:0 carrier:0
( s7 G! M( E( P$ A% a  B- G          collisions:0 txqueuelen:1000
- z8 ], }2 U7 D  X9 }7 L          RX bytes:1048526 (1023.9 KiB)  TX bytes:140794 (137.4 KiB)  u  l* y( o3 C
          Memory:d8320000-d8340000   W+ H) p+ g4 A) A
$ ?$ R) _* x- P3 w$ c
peth1     Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  
2 n/ ]7 l/ }1 d  t          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link/ H5 h: U' S; C: i; Y6 V% i
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1+ g  K1 d! I& p* u
          RX packets:32 errors:0 dropped:0 overruns:0 frame:0
9 S4 \# R; H2 v+ Z4 a3 O          TX packets:278 errors:0 dropped:0 overruns:0 carrier:09 ^* l6 s% e0 j: g) t
          collisions:0 txqueuelen:1000 $ J) y3 }3 g9 F3 j( K
          RX bytes:6444 (6.2 KiB)  TX bytes:35772 (34.9 KiB)% B! B! P( H: X0 N
          Memory:d8360000-d8380000 # P. E+ p0 o6 i& A4 }) M
  w( @5 r" f, ?! b
vif0.0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  + n6 Z+ D# v# z  J" l+ |
          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
6 r- i* ^# ~5 h; e, i          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1. B- z1 a. J/ i
          RX packets:101 errors:0 dropped:0 overruns:0 frame:0
. X  h, V# {$ U& N8 E9 n; F; w          TX packets:1098 errors:0 dropped:0 overruns:0 carrier:0: [! {' ~! ^7 x! o% q4 u, z
          collisions:0 txqueuelen:0
) I% B- N/ b" K4 _1 F3 n          RX bytes:17258 (16.8 KiB)  TX bytes:159729 (155.9 KiB)- w, {$ O& m$ L5 U0 e

1 h6 p- P: }9 j- r! \" Tvif0.1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  . g; w& y# c5 E1 z, Y/ R4 H: Q
          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link3 ?' ]& x) `) _1 T
          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
! N- _8 T" g$ I$ e, d# F8 d          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
; W4 @# h. [: r- {7 G          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0  D4 t& L# W! `& i
          collisions:0 txqueuelen:0
* B7 R/ i* w, b3 u# ^1 K0 E          RX bytes:552 (552.0 b)  TX bytes:0 (0.0 b)
  P( I# S0 K, v4 M  G% V% }7 \5 i4 X, [7 R( o! |' Q, _+ |/ R0 g
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  6 E% h% Y0 m% s, W$ V
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
- P2 j, x0 n# `. O' f/ ?' c8 T          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link  ^* r3 r) j: T- S, f2 x: V$ b
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1( _& u1 b8 j6 i
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0- J6 B. ~! e1 n# E7 P, Y. A+ g
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:00 g* x2 P5 _" ]1 v# s
          collisions:0 txqueuelen:0
4 I; q% C; U. I" k; _( |: T4 D1 J          RX bytes:0 (0.0 b)  TX bytes:468 (468.0 b)/ w& W( T2 y9 ~& G9 j

. N# ^$ s5 P% W" @* {8 Mxenbr0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  
# T6 V" G1 r" w          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:14 Z1 R! s2 a, o# t! s4 A7 \' [
          RX packets:629 errors:0 dropped:0 overruns:0 frame:0
: N+ m$ o5 J/ ?5 j          TX packets:0 errors:0 dropped:0 overruns:0 carrier:02 s1 `) @& D2 u1 c7 t
          collisions:0 txqueuelen:0 ! \) K" D: w9 F$ ^: }7 t& q1 k$ y
          RX bytes:107389 (104.8 KiB)  TX bytes:0 (0.0 b)* D# A, E9 G) L; h2 n) L# {

% u( T& L& t+ V& E* m# _xenbr1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF  
' s/ V. G- y% E7 _9 o* j! D" K          UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
8 I7 V( |$ {; H6 p( C          RX packets:8 errors:0 dropped:0 overruns:0 frame:0: ]/ M+ c* g1 V& T
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0. n* x" x4 g0 X4 E. J3 c1 M6 h
          collisions:0 txqueuelen:0
- s5 R* f* P& j, H' j; D) a# N- |          RX bytes:440 (440.0 b)  TX bytes:0 (0.0 b)
& s/ Q/ W* @* i% q; b& \
$ N& Z- X/ i* B. K" G* |+ \- L[root@hdfs05 ~]# xend  stop
6 k  V3 [: ]" I3 f$ ~[root@hdfs05 ~]# xend  start  生成的网桥设备不变,xend启动一次后,设备即生成了
. O$ t7 ]" o' Q+ ][root@hdfs05 ~]# xm list
' I' d' Y  m" sName                                      ID Mem(MiB) VCPUs State   Time(s)
& f  i/ V5 |" F& ~Domain-0                                   0     7931     8 r-----     52.0
6 M4 ^, m6 y4 f5 v: X4 _3 X8 [* H  ?/ l+ q$ |  e. W
查看网桥设备
. o+ X/ c$ ^6 @* n
$ @5 v+ b% E2 @( p6 m[root@hdfs05 ~]# brctl show
: y( X6 i9 q2 @+ Mbridge name    bridge id        STP enabled    interfaces% t1 ^- }; o1 g% r6 U: f* L& a
virbr0        8000.000000000000    yes        
- ~1 t3 T+ p  F$ X! r2 Q6 Nxenbr0        8000.feffffffffff    no        peth0
/ W$ H/ I  H8 S7 P$ T                            vif0.0& o! M$ H4 f3 q7 U3 h
xenbr1        8000.feffffffffff    no        peth1
% S7 O+ ?8 m* b' L                            vif0.1( m% a' S$ q8 S5 {% u/ d$ Y; }# y

5 C5 e/ M/ J( }8 n! w6 w4 ^, t
$ L; T* \/ T& B. v' Q  n' f/ j. m; S  @+ ~0 N$ a( }1 t4 B
############################################( e0 Y  a/ ]1 J( [7 X% O0 r% B+ N

3 V5 M5 V& n9 q* r0 T- \4 l4 ~( Y% M$ L9 V: ]3 e. m0 H$ K7 N

1 m3 P- }! X- D7 o: J, g- {" M(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前' D6 ~: M5 {$ |+ j2 \

, ^; x) C2 |" F. X( V--------------------------------------------------------------------------------------------------------) ?( g- w5 \/ K" U
: C  ^$ C4 ]" v) l5 F) e
半虚拟化安装时,选择 nat 上网方式,IP 配置使用 DHCP 方式,此时卡在 TCP/IP 配置界面,
7 |# r! \/ _% _" XXen Sending request for IP information for eth0 不能成功, 卡在这里,不能通过。+ [9 a; b  }1 E) j  h1 H* N

3 ?$ M6 i5 b, P8 \4 J6 x; {--------------------------------------------------------------------------------------------------------
; q$ z2 ^- `7 \' k5 W2 Z############################################
, }. v: f' }8 u1 q& S  @+ j; ]' I2 X; h
解决办法:3 l7 @: t8 j) l7 q
IP选择手动配置,配置 ip地址/子网掩码;; _0 v, r5 l6 H6 k! |) F) ^* j# o

( |- r2 m7 @8 r+ B& w9 _4 Y  V% Y全虚拟化安装时不存在此问题。
. h) v4 P$ b4 W, z4 a
$ l$ Z% d% I: C8 j) b' l############################################" s; E  f# k6 ~; u2 K6 k
8 i( C$ m3 X1 e$ \. ^' `6 H
- y# B- d& b) O" k* U5 ]
! `1 O0 I1 C8 a  H
(8) 启动虚拟机时出现错误:File "/usr/bin/pygrub", line 28, in ? ImportError: No module named LiloConf( P* j- Q, ]1 g, u! p
--------------------------------------------------------------------------------------------------------
  V  X3 k" U* C7 ~[root@glnode04 xen]# xm create /etc/xen/vm01-centos-5.5-pv ( J! _0 b4 H7 L7 @# v3 E& [: O
Using config file "/etc/xen/vm01-centos-5.5-pv".
# ?5 e% I( |3 Q! B1 W# m, G: U0 A  \Traceback (most recent call last):
6 u, s& o' c7 B" \4 Y! R; z  File "/usr/bin/pygrub", line 28, in ?
# Z, |! X" H: o2 N$ R    import grub.LiloConf
) r; _$ n- T: F1 G5 l) C; }ImportError: No module named LiloConf
! {# R$ e$ J0 o# _; R# M' y* h
提示 /usr/bin/pygrub 文件的第 28 行的 import grub.LiloConf 出错,这又是 python 的问题,import 出错。
2 }5 \. O' r# W& {5 a- J  ^# D7 _3 \: m" ^8 W9 f" P
手动执行 pygrub 命令,仍是出现这样的错误.) X3 f  A; d/ }3 R! }% i! B* D
[root@glnode04 xen]# /usr/bin/pygrub
  e" ~! k4 Z: p( ETraceback (most recent call last):
5 f$ ~, R2 X- e7 c  File "/usr/bin/pygrub", line 28, in ?
5 a3 _1 v. v5 K) N    import grub.LiloConf
* }& W9 y% r+ a% D3 `" qImportError: No module named LiloConf' M/ m: I+ n5 N& c' l- F  g

+ e* _( r. Z: w: w0 ~0 a正常情况下执行 /usr/bin/pygrub 是这样的( Y3 `' k5 g* ^/ k

. ^$ e- `! M) \6 o[root@gmnode14 xen]# /usr/bin/pygrub! g$ r& T% I' C) ]9 C
Usage: /usr/bin/pygrub [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <p_w_picpath>
, _, a1 k9 l* s( f2 ]
% x% a$ P/ p/ Z4 E( }; v6 R" I[root@gmnode14 xen]#! H8 {  N4 N7 u( t# F
--------------------------------------------------------------------------------------------------------
% b0 |! x7 o. m5 B- T1 s3 V" P
% U0 K! l+ p7 P& Y############################################* B2 Q" c9 P' x; D# Z

6 p4 u7 E: d( S7 i查看 /usr/lib 下 python 库,发现有3项:
2 ]6 t$ ]3 P8 [  r5 T8 I[root@glnode04 xen]# ls /usr/lib/python# k0 X  ?3 s' c; a! F
python/           python2.3  python2.4/$ j: E' `9 C: x

' l3 \# q* M' c* H  L这地方有问题,CentOS默认安装的是Python 2.4.3,库文件和可执行文件的路径是:
1 G4 c) z+ s/ H9 x/usr/lib/python2.4
+ }' f* D# K4 e6 m  @' `/usr/bin/python2.4
' @- a: C# q# a  r' e
- \/ Z2 {: W$ f& Q而现在多了两个库文件python和python2.3,将这两项删除,或者重命名,再次测试,问题解决。
2 i4 \+ E0 }  g1 w: ]7 P, \- w8 V. \  ^$ ^7 g% q% p- U8 C
[root@glnode04 xen]# /usr/bin/pygrub 8 L. D+ G6 |) ^# x. c5 O
Usage: /usr/bin/pygrub [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <p_w_picpath>' C, k. Q, t/ O8 x8 C! f2 `

" p, p# n2 [" O. T[root@glnode04 xen]# xm create /etc/xen/vm02-CentOS-5.5-pv
& w1 `9 L+ c! @9 ^, e( V! X. yUsing config file "/etc/xen/vm02-CentOS-5.5-pv".
% @3 F- w/ ^+ z! W2 tStarted domain vm02-CentOS-5.5-pv9 q3 e3 p; h/ O! Z& e1 t
启动虚拟机正常.# |- M0 _- n) k, e4 b

& d6 W' l: ^& u) O; o6 f, I###########################################: p: _; a" O7 W2 w. ]6 r7 L
-----------------------------------7 b6 U/ f, r$ D9 f8 y: Y
安装Xen、创建Xen虚拟机、使用Xen虚拟机过程中经常出现的错误总结9 t  a; o! M; s% {' d$ B5 B
https://blog.51cto.com/newyue/855972" O9 B! z! i2 M' }+ V

* L/ f4 ]/ }! m, [2 ]/ t
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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