- 积分
- 16844
在线时间 小时
最后登录1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
(1) 启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4
7 |+ ~% o: @6 k c- a( `, b: S(2) 使用 virt-install 创建Xen虚拟机时出现错误:ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
# y8 |7 w, n7 J3 z(3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed
$ m& \: l v2 q( \$ r; z(4) virt-install 安装虚拟机是出现错误:ERROR 无法连接到 'localhost:8000': 拒绝连接 9 Y- z1 e# G% l" V8 \' O. Q. ?4 {9 C
(5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续, ]6 E# G+ l) I' Y3 I* q0 s
(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:
K: P6 E1 ~( v'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.2 G4 V$ F- G& i
/ s O4 R# p9 {7 L* @: \. j, [! E
(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前! I) h) X+ E1 p) g( f
7 {: r" X' R% W) V# Z* A& [+ C3 A% y- V% K4 q8 |% C, j) S. P O
! }: [& K" v* U+ w3 f
5 `( b: x# n& r C
, Y- w- K) Z2 ^9 t! w
错误总结
, y! w$ U7 W" w, e. R0 o. F# S, K- v, `; e4 P
使用 CentOS 5.2 默认安装的 Xen,启动 Xend 时出现如下错误:
, ]! q- S# v$ a+ p(1) 启动 Xend 时出现错误 ImportError: /usr /lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 0 [8 `1 B8 Q9 R
--------------------------------------------------------------------------------------
3 y$ s! I% q- b6 _/ F {: T) K[root@glnode04 ~]# xend; A. F8 R+ K# s7 ` a' y: Q
Traceback (most recent call last):! a9 [8 e. U4 h
File "/usr/sbin/xend", line 51, in <module>
3 \/ a( j ]1 L0 { from xen.xend.server import SrvDaemon
/ w: k6 F" J/ Q0 u8 m. f" t8 ~9 S File "/usr/lib64/python/xen/xend/server/SrvDaemon.py", line 20, in <module>" O8 @) c) Q9 P8 m; T" p
import xen.lowlevel.xc
, d, b2 ?7 Z! T% g( fImportError: /usr/lib64/python/xen/lowlevel/xc.so: undefined symbol: Py_InitModule4
4 v! X" }$ _/ x" `[root@glnode04 ~]# xm list
; g) {* }9 Y" n* q |: uTraceback (most recent call last):: l& I) b1 L3 b
File "/usr/sbin/xm", line 8, in <module>/ u9 a# d8 U2 u% m9 f
from xen.xm import main6 N! X( K @! ]4 L+ |. C! _
File "/usr/lib/python/xen/xm/main.py", line 45, in <module>
) N2 a- B7 K6 a' H! H2 e, ?8 U! C from xen.util import security
0 E; V0 x/ x0 x1 X File "/usr/lib/python/xen/util/security.py", line 25, in <module>
) x3 L8 Y1 n" D7 v0 s from xen.lowlevel import acm( J0 _& f. _' V1 @) {
ImportError: /usr/lib/python/xen/lowlevel/acm.so: undefined symbol: Py_InitModule4 8 E* m E4 w1 h7 \
----------------------------------------------------------------------------------------) t. d! w: K/ v$ `7 f Z, Q- H, A, O
############################################. ?* l# o, T- Z
% [7 t' L4 K1 T9 _$ `
原因分析和解决办法:/ f; W. B% }& H
直觉是 python import 时出现的错误,查看文件/usr/sbin/xend,第51行是“from xen.xend.server import SrvDaemon”,就是这行出错。/ ~3 B5 G" I* p5 M3 D$ p' q: i( @& _; G
查看 python 版本+ Q9 o- n# Z9 `/ A2 Z% ^8 ^( R
[root@glnode04 ~]# python -V
' R( }0 D7 I8 {+ w6 kPython 2.5, P2 I+ n, @5 ]$ F
查看 python 安装路径5 K- y. M% ?' J9 z0 }
[root@glnode04 ~]# which python+ l- b3 i& r V" c8 I
/usr/local/bin/python8 ?7 P+ e2 r% `6 K8 y1 o
查看系统安装的 python 的rpm包版本. Y/ j, [; b4 O
[root@glnode04 ~]# rpm -q python
# \, a q6 O% I0 G! kpython-2.4.3-21.el5 从这可以看出 python 版本和 rpm 包所示的版本不一致,这个 rpm 包是 CentOS 5.2 自带的.
1 m3 p" n5 K( s# I) I% @
" @* L, }6 l& u2 {0 f9 [( D系统是CentOS 5.2, 我们发现使用的不是CentOS 5.2 默认安装的 python,默认安装的是 Python 2.4.3,CentOS 5.2 默认将python安装在/usr/bin下。 $ {0 w, S) [4 l
[root@glnode04 ~]# /usr/bin/python -V
' e1 M1 A" q+ g& _ YPython 2.4.3, R+ i0 Q$ D* H: `9 I; G
由此可以想到可能是环境变量 PATH 的设置导致我们在命令行执行 python 时使用的是 /usr/local/bin/python,可能是 PATH 的值中 /usr/local/bin 在 /usr/bin 之前; : }5 i9 ] H H' g, a' l
检查 ~/.bashrc 发现的确如此,环境变量 PATH 设置是 export PATH=/usr/local/bin:$PATH,将其修改为6 l7 u- u5 r; n/ u& x& `' X8 v8 G
export PATH=$PATH:/usr/local/bin,然后 source ~/.bashrc,或者退出 shell,重新开启一个 shell,
# M# q, @( f9 l测试 python ,发现使用的是默认版本。
) ]$ J0 h3 n- U& r1 n[root@glnode04 ~]# python -V$ k$ k) K# k3 K9 i
Python 2.4.3
# |# w% A! T, Y5 ^) c0 _! ~
+ u) t" S# z3 c1 D2 K启动 Xend ,正常,没有问题。
" m6 q1 \- Q1 a) N[root@glnode04 ~]# xm list
& H/ ~4 {5 h# w/ AError: Unable to connect to xend: No such file or directory. Is xend running?" W( G6 D# s1 n/ L4 q) P' i- E) c
[root@glnode04 ~]# xend& J+ v8 S2 H; ^4 }: B
usage: /usr/sbin/xend {start|stop|restart}" X, q7 s2 `6 I% D- F
[root@glnode04 ~]# xend start* Z/ I' o S/ I* h; t8 h" Q
[root@glnode04 ~]# xm list
/ \ N; v u3 VName ID Mem(MiB) VCPUs State Time(s)
& C9 N1 S& D2 ^3 G2 I4 v7 WDomain-0 0 7931 8 r----- 463.9: g+ {* R a. Q$ p+ V; s
6 J, B$ A/ x! ]" p0 q1 c
分析原因,是因为 Xen 是python写的,执行 Xen 相关工具时需要调用 python 相关库,如果版本对应不一致,或者库路径不一致,则会出错。
. X6 ~( O# v4 Z5 `4 a1 ?% t) z- v" g: S, g" [, o
############################################8 j* d- l" q x( t- Q
9 q+ O+ L; ~8 e, U$ B! J
! ` t& }) a, g- ?7 \( p: y7 s
3 X" u8 C4 r2 W0 p# R(2) 使用 virt-install 创建Xen虚拟机时出现错误: ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效 Z2 L% p4 z/ T- | N( U- s* }
: n5 T- [. r5 T# r4 i8 R, S. @2 a7 p
----------------------------------------------------------------------------------------
) K; U: S3 v' h) M6 D
" `) }% t, i6 Y4 \, q+ J- 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/ N7 u- k/ S% r, S1 Z# n- T
4 H: N( C# q, L
Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating systems.no 8 f; G9 m/ A8 P& H
3 d+ ^- I8 ]: i* O; LStarting install...& a: h# J$ s+ z! ~, n& E: b
Retrieving file .treeinfo 100% |=========================| 417 B 00:00
' p, A5 Y7 ]$ yRetrieving file vmlinuz.. 100% |=========================| 2.0 MB 00:00 - q2 m& o9 R1 ]- n* @' E
Retrieving file initrd.im 100% |=========================| 7.7 MB 00:00
: s! x0 ?8 @! s* h& p& rvirDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效, t, k: J: s- v" W8 r
Domain installation may not have been
( G# j: X$ m! x- { successful. If it was, you can restart your domain
$ D, ^8 J& h, m1 ~5 c( J8 z; |* g5 M by running 'virsh start vm02-CentOS-5.5'; otherwise, please
, t' _5 Z0 @" v5 o# T v3 r restart your installation.
) { F# O, ]3 N6 E三, 20 4月 2011 19:21:08 ERROR virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效
, h2 r' ?" w' d4 M( G4 aTraceback (most recent call last):# e4 H: L* E: {$ ~7 p
File "/usr/bin/virt-install", line 502, in ?
; ^3 M8 D: q$ u% O( i. j% n main()6 i' p! {; j, r) e$ A- U
File "/usr/bin/virt-install", line 462, in main# `/ U3 }1 H6 ]4 U. Y/ p
dom = guest.start_install(conscb,progresscb)" v/ |: j3 ^ a p4 k
File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install
8 m1 P: Y+ @8 E2 w. w return self._do_install(consolecb, meter)
! h9 k7 T+ o7 ^% }' c- d/ m File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install
% F4 }8 B3 Q8 ~+ c, z3 x! W self.domain = self.conn.createLinux(install_xml, 0)
* q4 W3 t* X) ?* J3 y File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux: g" d; w! }# k( t P/ @
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
% w0 C6 W6 U+ o, K+ blibvirtError: virDomainCreateLinux() failed XML描述 domain 不是良好的格式或者无效 " d( \% z3 y. U- }3 J
----------------------------------------------------------------------------------------
) ?9 {$ u7 ~; a7 p( e############################################
1 {9 ?1 V( I% b s+ m- j解决办法:
' R; y& V; T) ^* O
# d0 s2 _6 v: V1 D, v3 r/ p$ e安装前先启动 libvirtd 服务。
' l4 j( D6 N( V$ B, F" Z$ ~0 H3 W5 k- r+ @) \' e
[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status
1 V$ w* a/ S ^( ?libvirtd is stopped
- f k9 w4 D R, m: ~4 f[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd start
g1 z9 O- R9 M bStarting libvirtd daemon: [ OK ]
+ o0 S/ a \+ m: r) k( O
% d9 W8 \2 P+ H* W0 B0 i, {$ |( W) u! M2 J \- @
- _' Z. k/ ]. [5 ^- U
原因分析:- @3 P, K+ y3 I+ v& {6 R
出现此报错应该是主机的libvirtd服务没有启动,而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。% |0 F% G* R$ V. H0 N; m
解决方法有两个:. p) V" ^$ E- Z
(i)启动libvirtd服务后重新用原来的virt-install命令安装客户机操作系统;
9 u) |4 v3 }* w( q#/etc/init.d/libvirtd start
+ e& r& D/ r* A7 ?5 h
3 h+ D. _/ r3 a" K(ii)、在原来的virt-install命令后面加-b参数指定需要连接的网桥,如果未调整网络,一般默认的网桥应该为xenbr0
8 G1 l9 a" |8 m% M要查看网桥的名称可以使用brctl命令查看
J; Z3 h' P7 V0 O3 j( b2 o# ]5 i
6 W; ?' l1 r( O[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status9 T$ t6 P) i h4 `# t5 y# F
libvirtd is stopped; Q D+ b0 l, u3 M4 v4 S
[root@glnode04 vm02-CentOS-5.5]# brctl show # libvirtd是关闭时网桥virbr0也不存在9 o0 g' L7 P3 b) i3 R4 B( d
bridge name bridge id STP enabled interfaces" N3 y% I! l( F2 v# |
[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd start
8 H* E2 i1 I4 y- L" u2 KStarting libvirtd daemon: [ OK ]
7 K9 e' ]6 h D8 h2 v# n# I3 A[root@glnode04 vm02-CentOS-5.5]# /etc/init.d/libvirtd status& f# r8 u5 t; F$ V
libvirtd (pid 20863) is running.../ y+ t+ h5 Q9 k: ]4 s
[root@glnode04 vm02-CentOS-5.5]# brctl show
& Z/ L) P/ B* obridge name bridge id STP enabled interfaces
9 v; ?9 ]! e: H" j4 u. @4 D: s) l4 fvirbr0 8000.000000000000 yes
* ^ y3 T- [3 }9 {. g3 l+ Z. D; E% F7 J# u6 L7 ?" h( _: g
此处我们已经关闭了libvirtd服务,剩下的网桥的名称为xenbr0(如果创建了多个网桥,选择自己需要的网桥名称)
4 ?8 P" d A4 o#virt-install -n kiro-test -r 256 --vcpus=1 -f /data/rh5 --nographics -p -d -l "http://192.168.0.1" -b xenbr0* {6 z2 T. q+ t/ N8 }( r4 i$ H/ |
3 M( f7 T+ |% j% o3 {6 I+ n) ?4 Z参考: XEN故障与解决方法汇总
0 g" x- }8 j* j8 a( c7 {7 A0 P6 \; H$ N
; Q1 F; t, p! M5 ]; }' F2 C. i############################################- R; M1 F* W; U% i
; c$ U5 R0 @# P5 N Y; \
" Q/ e5 O% F% o o; Y5 Z
1 p8 [" L. h! W1 g& x: i$ ~ Y: J(3) virt-manager 中连接虚拟机管理者Dom 0时出现错误:虚拟机管理者连接失败 libvirtError: virConnectOpenReadOnly() failed
# L3 N; |+ T Y' \) ]% }" d/ l1 f$ b0 Q0 E3 k/ J9 B3 L+ b
----------------------------------------------------------------------------------------- n( X/ f! {% d6 z/ W+ ]( T
Unable to open connection to hypervisor URI 'xen:///':8 X( ]( J7 s- C6 y1 n
libvirt.libvirtError virConnectOpenReadOnly() failed
0 @( _8 q3 A4 x- l+ KTraceback (most recent call last):1 D1 x4 S* [3 p: o. t
File "/usr/share/virt-manager/virtManager/connection.py", line 307, in _open_thread
5 @ t7 _; c. W" l; Q8 j' | self.vmm = libvirt.openReadOnly(self.uri)2 }8 o" q- b3 b/ M
File "/usr/lib64/python2.4/site-packages/libvirt.py", line 132, in openReadOnly6 W/ W; u6 `% i6 g; M6 C0 W+ ]
if ret is None:raise libvirtError('virConnectOpenReadOnly() failed')
9 a& b f' b. t- I2 OlibvirtError: virConnectOpenReadOnly() failed! w3 v& Z9 A7 R$ u
8 n9 k3 \+ A! w+ u3 u
' ]+ o P3 N( J; h
6 i5 F# b! y( C7 A9 `* b$ O, a$ ]( s% }) m$ u- V& T
; S7 U' E' c! h+ u
----------------------------------------------------------------------------------------
9 k2 I2 n) M2 Q6 i% x+ P1 O
, L' ^8 i# v3 h; H############################################
+ z# i( x' t; @% a9 P解决:* P7 m0 j1 I: e. k& j2 @
. g E- G1 K$ y/ @6 ^/ n/ ?修改 xen 配置文件,按如下方式修改:
$ h6 C: M4 Q+ e1 ~- B/ b9 N[root@glnode04 ~]# vim /etc/xen/xend-config.sxp, ~* H ~1 Y6 y0 @" }2 R
0 L+ h: m+ c) }8 }( L: G: w
(xend-http-server yes)3 K- N! y5 F4 y' u: A% l7 i
(xend-unix-server yes)
4 @. V2 e/ U: ^% [8 s* e7 D
9 g1 Z# u* _( z- Y! T重新启动 Xend 服务
; V' ~; ]; V% u- a7 F+ Y+ L' X1 Q9 y( C$ o8 [* Z, ^3 R0 \1 I9 n! H) h
[root@glnode04 ~]# xend restart
; W( M3 ?5 e; Q+ j5 g$ R% X; [############################################
( k& l; q( j" m! f
; E# Q% `$ W" n1 w+ @" {- ^9 }
1 v/ ~7 [5 t; E! w2 H& [# z& p4 p! ~. R' N7 L z0 A s
(4) virt-install 安装虚拟机是出现错误:ERROR 无法连接到 'localhost:8000': 拒绝连接1 g0 i0 u; q& l& X2 }1 g7 q+ {
+ j! \0 x8 M+ l. \1 Y& N
----------------------------------------------------------------------------------------
5 q, I4 w% a! S& n4 N0 H( b! C9 P, F5 t. k0 @2 E
[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; E e5 V. S6 L& P
ERROR 无法连接到 'localhost:8000': 拒绝连接! Q! u% w% u% C' \9 N
Traceback (most recent call last):
; O/ }, G: I% J, C4 B1 j File "/usr/sbin/virt-install", line 861, in ?4 U# u M5 Y/ V% Z0 C: @5 y4 ?$ F
main()( E+ W# Y8 N3 J f3 h1 M& M
File "/usr/sbin/virt-install", line 636, in main
1 I r$ v1 @" |6 d) l conn = cli.getConnection(options.connect)
& w+ M3 i1 n2 c1 p! j File "/usr/lib/python2.4/site-packages/virtinst/cli.py", line 126, in getConnection' I* A3 [2 \7 k& w7 m- ^ D' d9 l
conn = libvirt.open(connect)
2 V& K- J; ~- E% f! ` File "/usr/lib64/python2.4/site-packages/libvirt.py", line 159, in open5 J3 u) v& ^6 Z- L5 y* X# g' H
if ret is None:raise libvirtError('virConnectOpen() failed')
" ~, F, `3 j7 d; Q% {2 UlibvirtError: 无法连接到 'localhost:8000': 拒绝连接: r- i) o7 j0 x! |
----------------------------------------------------------------------------------------/ [6 _9 M9 I! M
############################################3 [; @3 m( O' c
解决:
3 D$ u: D3 S& v( C4 T {
0 e. @* S" V1 X4 }. N5 I) g% t& C" E @0 J, G' g
5 C( D- W4 o ~6 W7 d; S
修改 Xend 配置文件,然后,xend restart
8 t2 z( B3 |" Y) y( ], m) W. D) K1 { F# V. ]9 E
[root@gmnode14 yum.repos.d]# vim /etc/xen/xend-config.sxp
. ]4 s* P" g1 E6 H, E* r9 }3 O. J8 \: j# E5 ^5 b l
(xend-http-server yes)4 G8 }) e9 ?+ Z% |- `
(xend-unix-server yes)
9 G2 T v2 h: H: ?8 C6 C/ C9 q4 ^" k& Z" }1 u
(xend-port 8000)
$ W- T! R* }* i
+ R( ~) \# R; y h############################################
0 U1 I+ ^# B2 p/ Q. r6 B" m. c( c6 [+ y! H% `
(5) virt-manager 安装Xen虚拟机连接网络时nat和桥接设备均为空,无法选择,安装不能继续
8 T7 l: y% v2 U( X) n$ L5 d# V/ U) U2 m) ]- J$ j! c
' h' D2 L8 [3 w( z3 N" V/ J. g5 I
% h+ _# Z: Q8 R6 F% [+ u- I& |8 \4 {
) R' Y- _* d% G+ f- Y
5 M! x- g9 k+ s
1 f' } @/ _- U" V4 i+ D* e3 R) X
############################################
" |+ _ {& R/ j; {5 l
6 @7 \1 b6 w! E* I( f& M" T9 R分析原因:# V Z7 }' b# ^& Q, S0 w
- l4 X/ i1 t. p; ?0 U& x0 S/ Q出现此报错应该是主机的libvirtd服务没有启动,
0 X6 K0 P4 w% B, g# n+ X/ L$ {" |- ^
而virt-install工具在进行客户机系统安装的时候错误地将客户机的网卡连接到libvirtd服务起的网桥virbr0上,此时libvirtd是关闭的,所以virbr0也不存在了,就出现了上面的错误信息。
, Z8 l+ B2 N7 n0 x2 o0 f. Q2 a3 J; L" L3 ^- E
解决方法:
4 P0 o- ]5 d4 |5 N3 D# g$ k9 S- q3 `. i: u" S( a B3 t
启动libvirtd服务后重新运行 virt-manager 来安装客户机操作系统;8 X3 \2 p* g9 w: W
+ a" {7 [ H! K& c5 F+ x% p# O#/etc/init.d/libvirtd start$ z: e# f& N! [
但是这也只能保证 nat 选项中有 default 选项,桥接仍不能选择设备,要彻底解决Xen虚拟机网络设备问题请参考问题(6)
& ~/ B' [, {: a$ Y0 ^
# Y* n( M2 O: n3 L: L5 C' E参考: XEN故障与解决方法汇总
+ N. s* {; N/ ?; { U" p; A
# T/ f; d$ Y8 {+ [" y) {6 J4 L############################################
( S8 A @. C( y+ N( L
& t1 C- [4 U& P" b. p. A+ `! b$ g# C" D; p6 n/ @
+ a% S" O+ m7 i/ B(6) virt-manager 或者 virt-install 安装虚拟机系统过程中出现错误:. z }, o' e7 k& ?6 l
0 \, m5 {! `; n
'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.
; x6 q" \3 Q6 [5 n8 ^---------------------------------------------------------------------------------------) T. y6 K3 Y+ T6 A* h: A0 x# t$ U3 U
Unable to complete install 'libvirt.libvirtError virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working. '), W8 J! g1 o5 E1 ?/ R+ v) U9 w
Traceback (most recent call last):
( Q2 n" V! K: L) }9 `( G- B0 p- X7 o File "/usr/share/virt-manager/virtManager/create.py", line 611, in do_install! \+ L3 c c! P. X; l' k) V, u
dom = guest.start_install(False, meter = meter)
" c7 L9 T6 B+ e# X' y( o' A File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install, w6 z/ Y# f# Q+ p, {: _
return self._do_install(consolecb, meter)
$ ]+ O9 L; I% c9 t% C3 @ File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install
4 c8 ?, S9 @6 u0 {8 }+ K self.domain = self.conn.createLinux(install_xml, 0). ~7 l7 t! D" Y+ p
File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux) x; m1 _' M$ _6 x
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)( G) Y6 S5 i8 Y L4 p3 o# z
libvirtError: virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.') + F' K( ~! _ @# @* e4 P4 I5 j
'---------------------------------------------------------------------------------------
& u% A* u: Q5 t/ m############################################
k; C6 _; j- N+ B5 ?
+ j O7 x( a( v# h原因分析:
; R& l5 y9 X3 k8 }从错误提示中可以查看到设备(vif) 不能连接,突然想到之前创建虚拟机时在网络连接设置时桥接方式不能选择,只能选择nat方式连接网络(见问题5),很可能和这个问题也有关系;
: m( e+ _# g2 \' `' F4 ]' q0 R3 K: v4 `) t' ~' }7 M
6 f2 S% s& z) C" v8 a/ W+ @
解决办法:9 F- e/ J: {: k2 T
/ a# o- G. w5 q. w
# n# K% W2 E0 w, {6 D. m* s$ S
1 a$ g0 a. D2 c7 W
因为我使用的机器是好几年前的,系统是 Cent OS 5.2,不知道xen相关包有没有安装正常,于是使用 yum -y install xen* 重新安装了 xen 相关包,发现有几个包的确没有安装上 。安装完毕,重启系统后创建虚拟机,该问题不再出现。: F: Q S1 K) N8 r( ~$ Y2 k
- c; z% H+ l6 K如何使用 yum 安装xen相关软件包,请参见 CentOS 5.4下使用yum安装Xen
Q; j6 a: k5 \/ ]1 w: ?
: V+ ^" d Z3 W: j5 ^, }7 l: q6 _2 f9 g2 o; A1 \
% Z& O {! o3 |2011-04-29 更新该问题
8 ~8 ^0 q0 t6 B/ w& Q0 j8 o: Q; J& h7 f# W) ?9 K. D
6 N' H; @8 A" E/ W' T F; D
0 i9 N9 @$ d- \' J, x后来我在另外一台机器上做实验室时一直提示该错误,就算重新安装了 xen,还是无法解决问题,后来终于从一个国外的网站上得到了提示,这个网站现在不记得了,忘记搜藏了。
" k& f7 X# j3 `2 m0 N: r$ b% |7 f' u+ t5 `1 T) R& T
/ ~% I4 m3 ^3 Q3 r- W
% c% x, a) A% x# o
网站上说,启动虚拟机桥接设备需要这样几个内核模块支持:netbk ,netloop,于是我使用 modprobe 命令手动加载了这两个模块,并且重新启动了 xend,这是生成了网桥设备 xenbr0,; P% E8 Y/ @0 L: i* {) t
5 d1 k2 B4 T8 z+ K0 s
我的测试和使用日志如下:
8 `* z7 Z/ E6 f, S" c2 r J9 [" s' W3 I
# @' Y9 k0 w# {1 \8 _8 E( j
5 T) ]2 s( ?/ ~. }! t9 D. c安装虚拟机系统时,出现以下错误:) O6 n/ L% F; b3 A' D/ ~ o4 Q" k
: p- T, G, F, i" rvirt-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/ 8 V! n2 g/ j8 @7 P/ ^
, m: Q8 a/ ^& ?$ d* c% t; M$ r
[root@hdfs05 vm01-CentOS-5.5-full]# ./install_vm.sh 3 [3 v, p" O; n! J
Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating systems. yes
0 s. f4 V' e& W: I; j3 a# e! G* b+ `
1 [0 c3 H8 O- |2 X/ D0 fStarting install...% ^+ v4 t) {8 @7 f$ }. Y
Retrieving file .treeinfo 100% |=========================| 417 B 00:00 7 T) y8 u3 w! q, @" ^0 z" f
Retrieving file boot.iso. 100% |=========================| 10 MB 00:00 . F+ r. o& |* @1 i( P) V; M [1 C
Creating storage file... 100% |=========================| 20 GB 00:00
! H$ _. \! y9 H* O/ evirDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')8 X$ v; A2 R( w6 P
Domain installation may not have been0 } X( h1 T8 s, K
successful. If it was, you can restart your domain
2 k2 G% A7 Y. w7 Q$ V by running 'virsh start vm02-CentOS-5.5-full'; otherwise, please, h8 b5 v u* j- G
restart your installation.$ s1 x0 G7 ~+ {& v! h9 U/ J% V
二, 26 4月 2011 09:23:28 ERROR virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')8 j+ X5 U: ]( Y. @6 l
Traceback (most recent call last):
5 s1 M, c/ n/ \ x: w File "/usr/bin/virt-install", line 502, in ?! {; F! K; E2 H
main()
5 J+ |/ v3 x q+ n0 `5 T4 N, r- M File "/usr/bin/virt-install", line 462, in main2 o+ ^3 f( `8 z+ b9 m) k2 M1 `
dom = guest.start_install(conscb,progresscb)
2 {5 c) `2 l1 o/ X, x+ d' z" i. w& @ File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 813, in start_install+ H) K6 D; C8 Z y
return self._do_install(consolecb, meter)
6 d# z" p& }, {! F; a S- P6 n File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 834, in _do_install7 \2 d$ s) V4 u2 y0 M7 N1 |
self.domain = self.conn.createLinux(install_xml, 0)" n# _( Y- ]& i8 }, A2 _- e
File "/usr/lib64/python2.4/site-packages/libvirt.py", line 573, in createLinux' n2 b7 B7 t3 M
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
3 q: j7 \4 Z: tlibvirtError: virDomainCreateLinux() failed POST操作失败: (xend.err 'Device 0 (vif) could not be connected. Hotplug scripts not working.')+ P% h5 Y) M, b# d, l
" ]& [1 b- C9 n! A
这是 xenbr0、vif0.0 未启动导致的问题。- Y. u/ G1 x' K) ~/ U
* J6 a& `( ` ~重启机器后
2 J2 E d2 d5 C0 _
7 f1 s4 X: B4 A/ {9 G[root@hdfs05 ~]# xend start: `3 @( v5 E2 B) N/ H% }& e
[root@hdfs05 ~]# xm list( S9 S5 Q; Q, S) S
Name ID Mem(MiB) VCPUs State Time(s)2 H- Q3 f- Q' M7 M
Domain-0 0 7931 8 r----- 40.5
* ^. A% i& ^3 I$ V1 T) M[root@hdfs05 ~]# ifconfig
/ H8 |* C+ {4 `) e- L5 m8 V8 veth0 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1A ( [( J6 q$ z, r- `/ u0 {0 C" t
inet addr:10.10.111.5 Bcast:10.10.255.255 Mask:255.255.0.0
X) A. v: f, t* o1 v inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link
0 N& }' l- v1 y$ | UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:17 x3 L8 C8 P; Y( a
RX packets:4942 errors:0 dropped:0 overruns:0 frame:0- q, e8 V( a/ U2 r! C
TX packets:111 errors:0 dropped:0 overruns:0 carrier:09 T, U4 }( x# L$ W
collisions:0 txqueuelen:1000 1 H0 ^/ B2 ?( t `
RX bytes:681358 (665.3 KiB) TX bytes:14358 (14.0 KiB)1 P% o0 {( y( Y" u
Memory:d8320000-d8340000
! m( l- o1 [1 ~/ d2 R$ |2 k: }
/ E6 b7 A: v: [# `) }eth1 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1B
% B1 m, C& k F inet addr:10.10.141.4 Bcast:10.10.255.255 Mask:255.255.0.0$ Y) e# U) Q. F# I
inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link
. E6 `- _% w# B5 G9 k UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:17 z* j: h) Y' ?$ D: S
RX packets:20 errors:0 dropped:0 overruns:0 frame:0
! }% x( t0 H1 M8 R# A9 w f TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
8 J4 B' X s0 L4 l3 S, c/ B collisions:0 txqueuelen:1000
& F" x8 D4 K( w& Q RX bytes:4970 (4.8 KiB) TX bytes:552 (552.0 b)8 B8 j7 I/ g; `5 E
Memory:d8360000-d8380000
) Q) F4 h! [* l# m4 h
/ ^, D8 A4 z2 o0 ~7 `9 Wlo Link encap:Local Loopback
- Z0 ^. y; H" b9 R7 X1 d- _ R/ @ inet addr:127.0.0.1 Mask:255.0.0.06 U$ y/ T5 g0 o$ G. ]1 ?4 d
inet6 addr: ::1/128 Scope:Host8 m) S& i. {* E0 b$ T$ f1 R
UP LOOPBACK RUNNING MTU:16436 Metric:1) I; e7 M* \5 D9 a( `2 m2 M
RX packets:87189 errors:0 dropped:0 overruns:0 frame:0" _4 W& f) B9 u, c$ d1 i! F0 y
TX packets:87189 errors:0 dropped:0 overruns:0 carrier:0
. ^5 e- X2 ~0 Y' e2 d collisions:0 txqueuelen:0 / l7 h2 ~) c) a+ `
RX bytes:118287320 (112.8 MiB) TX bytes:118287320 (112.8 MiB)+ Z% L% i! z4 C U& @& e: N7 B
( C: q& |1 b0 }7 f8 p4 N/ f[root@hdfs05 ~]# /etc/init.d/libvirtd
2 x3 l: P7 O% K" R' e" i" QUsage: /etc/init.d/libvirtd {start|stop|status|restart|condrestart|reload}
, y: Y: |. J9 a* n& m! \! I[root@hdfs05 ~]# /etc/init.d/libvirtd status
+ [( q0 |$ y0 d6 S% A4 Slibvirtd is stopped
" h! [( W0 p. ?5 R5 _/ `[root@hdfs05 ~]# /etc/init.d/libvirtd start 启动 libvirtd 服务1 ^8 t% j+ x' t: Y' w( B9 b6 P% f
Starting libvirtd daemon: [ OK ]
' A( @" h3 v( `, e[root@hdfs05 ~]# ifconfig ,生成了网桥设备 virbr0
# e9 a- x# \6 ^( |eth0 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1A 3 Q2 c/ `) E, A/ ?9 K# u1 b; V0 i
inet addr:10.10.111.5 Bcast:10.10.255.255 Mask:255.255.0.0/ Q p/ [ D3 h8 A1 s; U, p
inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link
8 G! b" ^# t* J9 G; E UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
2 {+ d( T- N+ g3 g d RX packets:5082 errors:0 dropped:0 overruns:0 frame:0( t P$ r1 z1 _" L
TX packets:175 errors:0 dropped:0 overruns:0 carrier:0/ }& y- W! X- m( |7 T% j& p0 y
collisions:0 txqueuelen:1000
+ D9 T; k5 T& W& r RX bytes:710500 (693.8 KiB) TX bytes:23050 (22.5 KiB) d+ E# x/ U1 V" d7 `
Memory:d8320000-d8340000
2 J' i3 A1 q; ~8 i( J: |& r& O8 E/ @) I% \
eth1 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1B
/ t: o* A: b8 B8 W inet addr:10.10.141.4 Bcast:10.10.255.255 Mask:255.255.0.0/ t/ a( m' X, D9 h/ D
inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link/ S* X' B r& q0 k/ S) t
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
7 f8 f- W# k" `, A0 K RX packets:20 errors:0 dropped:0 overruns:0 frame:0
. Y$ g( Y% g/ h9 L( Q% M TX packets:8 errors:0 dropped:0 overruns:0 carrier:04 V8 N2 P3 o7 o! Z( ?$ U
collisions:0 txqueuelen:1000
2 ]; ^) d1 @0 F; f/ E5 u' p+ y- B3 { RX bytes:4970 (4.8 KiB) TX bytes:552 (552.0 b)
; Y9 @9 a) l U# \ Memory:d8360000-d8380000
5 \, _) F/ n% w8 B
; H7 n7 l1 ]/ s0 l0 b# f2 Blo Link encap:Local Loopback " K" R3 F4 F& ^% Y$ ]- G
inet addr:127.0.0.1 Mask:255.0.0.0
: R! v5 s `! ~$ y0 g5 M; n! { inet6 addr: ::1/128 Scope:Host! c6 Y4 T2 J' A
UP LOOPBACK RUNNING MTU:16436 Metric:1
3 q2 d! t+ C. |: C; z. ~ RX packets:87613 errors:0 dropped:0 overruns:0 frame:0+ c. J2 i$ D3 k7 E( P
TX packets:87613 errors:0 dropped:0 overruns:0 carrier:0
% `* H8 w/ {3 ]( a- A collisions:0 txqueuelen:0 , B/ I, X5 o, y& {- j
RX bytes:118861744 (113.3 MiB) TX bytes:118861744 (113.3 MiB)
4 o* V8 D0 y3 v! j m: @6 y# X
virbr0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
6 j" U( V0 z" _% d! Z- L, a inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
; o1 G' d6 ?, V. |/ p, N+ ? inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link8 @3 ^) B# T0 @5 g# o% n
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
, R& T0 i, q6 u+ H" B! H RX packets:0 errors:0 dropped:0 overruns:0 frame:0
R5 l* W f" D* l8 T% P* H TX packets:4 errors:0 dropped:0 overruns:0 carrier:0. g& l+ L# x2 c5 l2 X3 ^1 f
collisions:0 txqueuelen:0 9 g* C: V% m: v0 Z( { _7 Z; |
RX bytes:0 (0.0 b) TX bytes:328 (328.0 b)
2 x1 q1 g7 Z: U* x. X
# J6 v: q2 c) R+ r[root@hdfs05 ~]# xend stop
: [( ~0 w% U3 c4 |4 A" M `[root@hdfs05 ~]# /etc/init.d/libvirtd stop
3 E* G1 L- V( o4 s5 {3 GStopping libvirtd daemon: [ OK ]7 e! m/ v( P* O& p( \& u, y
[root@hdfs05 ~]# /etc/init.d/libvirtd start3 N; T/ t& K ]/ w
[root@hdfs05 ~]# xend start5 M r% {- f% z+ C5 j+ a
[root@hdfs05 ~]# ifconfig/ ~- G7 ] n/ V
eth0 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1A ) O1 n. D: {" Q8 z- m1 u7 e$ m; e; Z
inet addr:10.10.111.5 Bcast:10.10.255.255 Mask:255.255.0.0" J4 L$ S4 ?4 {" [! Z1 O( M
inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link, V: {& b6 j8 E
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1) i4 _. b0 x s3 U+ ?$ w
RX packets:5508 errors:0 dropped:0 overruns:0 frame:01 G2 f3 @# N, i& b
TX packets:299 errors:0 dropped:0 overruns:0 carrier:0
! n( e4 Y- P- |% Y3 k7 s collisions:0 txqueuelen:1000 ' E( q. A, h! O/ r+ W2 }
RX bytes:757440 (739.6 KiB) TX bytes:42402 (41.4 KiB)
* V- U% ^! U/ y! A3 ~ Memory:d8320000-d8340000 & G: v1 G$ @9 ]. [% U% Z' e1 o1 D" E
/ P, |1 o( U% q, p) m' R
eth1 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1B 9 l; B3 E& y* ?/ N
inet addr:10.10.141.4 Bcast:10.10.255.255 Mask:255.255.0.0
0 N7 ~! x7 c/ ?( i" I2 h4 R inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link% k& J8 O) c: q; I5 I1 d
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
$ t% Q Y' ]- [2 K; b RX packets:20 errors:0 dropped:0 overruns:0 frame:0
- q* B- E% N) w# c, b TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
[/ _( n8 \/ I* N/ Q collisions:0 txqueuelen:1000
* K8 W( E8 H. T: N+ U) r4 ]/ l7 k# V RX bytes:4970 (4.8 KiB) TX bytes:552 (552.0 b)" Y9 g4 g# Q% G# N. n5 y( e* H5 m
Memory:d8360000-d8380000 9 L4 o! O7 }4 h2 q6 L
; \ p! G. O# |2 g( f: l- T Q
lo Link encap:Local Loopback 6 p* C( P! L; M6 O
inet addr:127.0.0.1 Mask:255.0.0.0: I$ @6 P6 B) W5 R: [
inet6 addr: ::1/128 Scope:Host
6 @3 m0 E; F/ K( D UP LOOPBACK RUNNING MTU:16436 Metric:1" W+ ~, h: ~; L& `. j6 L
RX packets:91038 errors:0 dropped:0 overruns:0 frame:0' ]- z/ v' y8 B+ l
TX packets:91038 errors:0 dropped:0 overruns:0 carrier:0
q5 R" G) S" X' | X: D collisions:0 txqueuelen:0
4 ?9 d6 Q" q1 ^: K5 P2 t/ ] t RX bytes:123483512 (117.7 MiB) TX bytes:123483512 (117.7 MiB) ]) b6 t- `3 t) |, s* o; ?4 c
: c9 }6 A; S" a0 ]) l& s
virbr0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
) B* D% g, _5 M inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.08 M/ T: a) M7 T9 Q* W& _
inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
* L0 }# x( S7 V7 q6 A. N7 } UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1% U( g* M+ F, C) T- Y' F( _; \
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
0 S% o9 m" M4 W( g u TX packets:5 errors:0 dropped:0 overruns:0 carrier:01 o2 x8 }& ]# F, S! T* c- ?5 g
collisions:0 txqueuelen:0
9 G: ]5 u0 A1 |! d: H RX bytes:0 (0.0 b) TX bytes:398 (398.0 b)$ b7 |% S/ Q$ J" J! s1 m
) e" }% w/ j' j) o. C! t% ixenbr0 未启动,1 V# ]$ n7 m5 O4 q- p W6 T
% `' q2 I: v9 E* R) C7 U
查看Xend启动日志,出现错误“Link veth0 is missing”2 E! v2 v4 S# e" ?4 V- @
$ x0 B; W$ \* A7 ?[root@hdfs05 ~]# vim /var/log/xen/xend-debug.log 0 S2 W- ~! z" c" @1 \. [( ]( V
1
" t5 z0 x: G6 l# C r 2 Link veth0 is missing.
8 K) p6 `# r5 t# s. Y- M! I1 ] 3 This may be because you have reached the limit of the number of interfaces! O% }3 ]: L, ?) `
4 that the loopback driver supports. If the loopback driver is a module, you D( j) d! ^9 a
5 may raise this limit by passing it as a parameter (nloopbacks=<N>); if the, d8 Q+ \9 Q" k" V
6 driver is compiled statically into the kernel, then you may set the parameter9 K7 ]+ _# [; @! d3 T5 f
7 using loopback.nloopbacks=<N> on the domain 0 kernel command line.
" m6 V/ ?8 h: k+ {# X 8 1 \( m, u# j4 r- b
2 C* l" \7 ^' Z% B5 G9 L
使用脚本手动启动,出现错误
; ]( V4 n1 c8 B4 I0 v; O/ ?0 c6 C1 {. T* a; V6 t- c7 l, c: o9 E
[root@hdfs05 ~]# /etc/xen/scripts/network-bridge status
- B2 p3 N8 T2 u, P+ i7 P; G' k3 W============================================================
. W4 |% ~& W. S0 u4 B2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000# e' @2 J: J! `* P
link/ether 00:1d:7d:48:38:1a brd ff:ff:ff:ff:ff:ff! l3 M, ^: Z" v8 ~7 h1 W: M0 d, i
inet 10.10.111.5/16 brd 10.10.255.255 scope global eth0+ Q7 i9 Z" ]: D, H' P! h' C6 q
inet6 fe80::21d:7dff:fe48:381a/64 scope link
S% m$ G' w" {; G9 o& [ valid_lft forever preferred_lft forever/ p9 L1 B, {! v
Device "xenbr0" does not exist.
b/ O5 b) z" `. @4 Z; r( B/ g
: ]! I1 g% ]1 }9 ][root@hdfs05 ~]# /etc/xen/scripts/network-bridge start
! E4 k8 t7 G- i% S! h
3 g' S. ^! u. w5 R5 PLink veth0 is missing.
" g: d# `& L p# A U# i" [This may be because you have reached the limit of the number of interfaces9 Y9 R- _; k% s2 M: u' }
that the loopback driver supports. If the loopback driver is a module, you$ w2 o, I4 \7 D2 W ]# r% U
may raise this limit by passing it as a parameter (nloopbacks=<N>); if the
- Q* O0 | {: j. [. Y8 mdriver is compiled statically into the kernel, then you may set the parameter
4 U* D2 l3 O3 @3 ^8 D; h j; Yusing loopback.nloopbacks=<N> on the domain 0 kernel command line.
8 i* W$ u( ]8 y) C
4 y1 g5 n0 F( I( A8 _/ w查看加载的模块6 u9 b) y/ d) N9 d' E3 f0 n
) M, p/ E0 v1 r- `[root@hdfs05 ~]# lsmod | grep net# S% v/ S3 j; G! l4 m$ \
nfnetlink 40457 2 ip_nat,ip_conntrack
& q- k' ^6 }' ~5 J F* l6 d
m" \# ~6 l5 m! I- O正常情况下的 glnode04 上是:" M h/ D& _1 ?# f
[root@glnode04 Xenoprof]# lsmod | grep net
7 c* K. _* i: @1 B0 E$ I2 fnetloop 40129 0 % Z& q8 a% }5 ]7 R3 T
netbk 129153 0 [permanent]
: n# n! n+ j+ k. A6 p6 A4 U" a2 I6 t/ j- H# Y1 g
手动加载模块 netbk ,netloop0 E! x0 F- l" m9 a7 {
0 l- b. R: e! B: Z8 E5 c[root@hdfs05 ~]# modprobe netloop' g6 n& Y7 v6 Z. j' P
[root@hdfs05 ~]# modprobe netbk) E% ]" g w! W& I
[root@hdfs05 ~]# lsmod | grep net* t r0 J6 ^* r+ F& x* l/ T4 c. ^$ w
netbk 129153 0 [permanent]
* B% [- E0 w- [& ?% r# Rnetloop 40129 0
5 X2 z: Z" z1 I4 n( Knfnetlink 40457 2 ip_nat,ip_conntrack; `* K- h3 R1 e# ~, I R6 }! n
* l0 \/ C' z* K
模块加载后重启 xend,
. R4 O; h1 j4 s* r3 J7 X# w. ?* s( z- W0 t( e" M
[root@hdfs05 ~]# xend stop
! ^# w, f) G$ w/ e Q4 h# N4 j[root@hdfs05 ~]# xend start 启动消耗很长时间,像死机一样,网络跟断了一样,bash关闭了,过一段时间后网络好了。$ U' C6 O/ d7 I4 `
......3 I, W- }8 p% y2 J0 Z( D5 i. X
[root@hdfs05 ~]# ps -ef | grep xend. C, J6 M/ E' r: ?1 W6 ?
root 4504 1 0 09:35 ? 00:00:00 python /usr/sbin/xend start
: A' Y6 s: O( O6 Z0 D% Droot 4505 4504 0 09:35 ? 00:00:00 python /usr/sbin/xend start
) O a3 q5 V9 |( s* troot 4813 4773 0 09:37 pts/1 00:00:00 grep xend
0 W7 P1 {- W; s$ L! Q" W- B! ]1 h1 [1 L2 T0 P! T
开启另外一个 bash,查看设备,发现 xenbr0 设备启动了
+ N$ z8 f5 V% k: u2 ]7 U) N! {3 Q) M
7 K$ `! O( S( e5 v[root@hdfs05 ~]# ifconfig7 t& \- X2 N" j& n9 l
eth0 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1A
' t r5 z4 q+ U' R' d' L inet addr:10.10.111.5 Bcast:10.10.255.255 Mask:255.255.0.0
; p3 x9 L8 X z! v inet6 addr: fe80::21d:7dff:fe48:381a/64 Scope:Link. o5 g- ^% n9 E/ \
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:13 j1 f4 [3 y4 r. Z8 r& E% N
RX packets:1079 errors:0 dropped:0 overruns:0 frame:0
2 a6 m/ T5 q) I; w TX packets:80 errors:0 dropped:0 overruns:0 carrier:0+ H: P9 p7 @5 o3 [+ L
collisions:0 txqueuelen:0
3 k: L/ t' Y7 K8 N5 Q! H RX bytes:158475 (154.7 KiB) TX bytes:12704 (12.4 KiB)
% N8 E# U% B2 U2 ?5 k
: Y$ t# x. L( @1 Y0 Xeth1 Link encap:Ethernet HWaddr 00:1D:7D:48:38:1B + r$ c" F9 [- ` A; \. ^: b
inet addr:10.10.141.4 Bcast:10.10.255.255 Mask:255.255.0.00 N( I, Z: u: i6 p$ d* g( F
inet6 addr: fe80::21d:7dff:fe48:381b/64 Scope:Link$ q; [ r' _3 u6 v9 j3 n. t
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1. h" {- \7 G$ E0 E" t
RX packets:0 errors:0 dropped:0 overruns:0 frame:06 y9 {" ] ?! G# d/ F" V7 k
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0( M) A! c) u* \$ h. p8 ~) [+ r( G
collisions:0 txqueuelen:0 6 }* o/ u9 H. i; d8 X) p; Q6 S
RX bytes:0 (0.0 b) TX bytes:552 (552.0 b)
8 L; J) h _: o* t, E p! N a; e6 w" n* ?5 b
lo Link encap:Local Loopback
/ T% F O2 A/ U% D inet addr:127.0.0.1 Mask:255.0.0.0' z+ O- D% D6 A0 L# u6 u' ^3 I
inet6 addr: ::1/128 Scope:Host% M" _# f. v- J9 X1 ]
UP LOOPBACK RUNNING MTU:16436 Metric:1
/ c! i( v/ r& h( B RX packets:107602 errors:0 dropped:0 overruns:0 frame:0) d8 z; L4 r% u' I5 }
TX packets:107602 errors:0 dropped:0 overruns:0 carrier:0( A5 V7 n3 k$ T5 d2 @8 m
collisions:0 txqueuelen:0 9 s0 W; c- \, R; Y3 b# n
RX bytes:145810320 (139.0 MiB) TX bytes:145810320 (139.0 MiB)
6 I0 G2 @3 l% O: h0 G, o f9 x3 E# p. v' Q
peth0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF # u. k8 I7 s J# ?8 C( q# \
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
3 Q; y! Y+ F, { UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
: ]/ v z: O- ^# W3 m RX packets:7926 errors:0 dropped:0 overruns:0 frame:0* V2 ~. R( L: _$ a2 u' Z
TX packets:803 errors:0 dropped:0 overruns:0 carrier:0
8 s% }( ?' B1 f6 f6 i* @ collisions:0 txqueuelen:1000 : C1 N! A& F7 f! z# _* t
RX bytes:1048526 (1023.9 KiB) TX bytes:140794 (137.4 KiB)4 q/ t) y* {2 Q/ L9 W) Q' p9 L
Memory:d8320000-d8340000 1 u- u4 ?2 w! S% q9 S
4 D" w$ P2 l4 h: c2 Z6 speth1 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
: S" N9 n6 i; q6 U8 y inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
" Y2 \ ?" D7 ~' Z4 R4 _* h UP BROADCAST RUNNING NOARP MTU:1500 Metric:19 T7 k: z1 I0 t6 a8 s
RX packets:32 errors:0 dropped:0 overruns:0 frame:0
; I p& n+ M' g; Z! D& A TX packets:278 errors:0 dropped:0 overruns:0 carrier:0/ w$ ]7 _- ^ }( C& A
collisions:0 txqueuelen:1000
, B8 x9 r' N, M9 ` RX bytes:6444 (6.2 KiB) TX bytes:35772 (34.9 KiB)
$ j3 N# T( Z* s F' J# _9 {2 _ Memory:d8360000-d8380000 N% z. ]6 s: A1 J% D- ]
7 {6 s/ Y5 _; Ovif0.0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
0 q$ g: F. r* K, J. l4 B9 U inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link% ], a8 q' @7 Y) h9 t+ G4 r
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1; P; A1 G1 _8 d; S) K/ Z. J
RX packets:101 errors:0 dropped:0 overruns:0 frame:06 K$ I, K$ O" @
TX packets:1098 errors:0 dropped:0 overruns:0 carrier:04 V) B6 `5 u1 @& o7 a* ?
collisions:0 txqueuelen:0
. a+ |( ?! B" _7 [ RX bytes:17258 (16.8 KiB) TX bytes:159729 (155.9 KiB)! k+ ^/ q3 W& }/ B
4 ]+ p$ s+ z2 y+ i. V2 n% n) rvif0.1 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF " G; B" g, l4 ^( ^# A6 Y6 }. x
inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
) N# B4 R! X) T" R) Z( P. G7 I UP BROADCAST RUNNING NOARP MTU:1500 Metric:1$ D8 Y8 R- K5 S6 h* T; L$ K7 U
RX packets:8 errors:0 dropped:0 overruns:0 frame:0# ~9 F6 s5 |5 v& M* x+ @* @
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0+ a k+ B3 n) v e
collisions:0 txqueuelen:0
+ A) S/ c g1 ~8 N RX bytes:552 (552.0 b) TX bytes:0 (0.0 b)& d h; n3 g9 y4 C, B1 t: ~
0 e9 [, ^/ ^! |( u1 a8 `
virbr0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
# ~+ r8 M" w0 J9 J/ W# R4 y( B' K& g i4 S inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
0 `: W# J6 w t' N+ w inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link4 I t& I- v b% O5 e: l2 Q+ K0 A
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
/ X7 }& I9 e" I" u; B' p8 q! ~ RX packets:0 errors:0 dropped:0 overruns:0 frame:01 a' t* o8 \& D0 V( |! m) h
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0. `, o3 z* C# V7 s6 _" i3 C3 C
collisions:0 txqueuelen:0
$ t! @7 `6 G' f$ _ RX bytes:0 (0.0 b) TX bytes:468 (468.0 b)
) } C) z* T" H/ e8 W9 R% S' ^
' o8 D1 _6 _* F! k0 y- Y4 Q; Kxenbr0 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
@* i) u" T2 i# }0 j o# _ UP BROADCAST RUNNING NOARP MTU:1500 Metric:1% e& l$ D# t. E. ] g/ ?2 @ R
RX packets:629 errors:0 dropped:0 overruns:0 frame:0
" l h( I5 n3 G: q. Y2 J TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
7 l$ o9 j- Q" _2 M& X collisions:0 txqueuelen:0
3 z5 d f F# Z+ m+ a& s2 F RX bytes:107389 (104.8 KiB) TX bytes:0 (0.0 b)0 C# \: f( y, d( o( R
$ j8 h+ k0 K+ A! a5 bxenbr1 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF ( Y9 R/ L, c: \( O/ |
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
* I$ v$ Z9 {: U, e# C0 e RX packets:8 errors:0 dropped:0 overruns:0 frame:0, P% i* \6 e) j
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0) L1 M6 d, ]& T3 G; a# ]. @/ M' a* E9 H
collisions:0 txqueuelen:0
1 R3 j. L8 O; O r( m RX bytes:440 (440.0 b) TX bytes:0 (0.0 b)
% D& a8 m2 ^* }" t D1 f2 t( M8 X" l
[root@hdfs05 ~]# xend stop8 |) L! @( j: m
[root@hdfs05 ~]# xend start 生成的网桥设备不变,xend启动一次后,设备即生成了4 m* {( M6 U3 Q* p, W/ @
[root@hdfs05 ~]# xm list
: `- B6 @, i8 X W; u) t0 [$ \, EName ID Mem(MiB) VCPUs State Time(s)
$ K. R! J( @; s% m! j0 e8 s1 NDomain-0 0 7931 8 r----- 52.0
8 o- Z0 N7 R" ~7 M n6 D* I7 S! Z2 S! ]8 ^6 K
查看网桥设备0 f) T1 n( e( Z
' e, n8 b2 a4 E, S4 F; o# _
[root@hdfs05 ~]# brctl show. a _" V* h$ m- R* t0 ]" }7 y
bridge name bridge id STP enabled interfaces
/ Q4 _6 y- Q# ~# X# d. s: Zvirbr0 8000.000000000000 yes
2 k$ q' r: } r5 U0 Axenbr0 8000.feffffffffff no peth0
! ], M& _, h3 X2 Z1 I vif0.0
1 E0 R/ ~$ w8 D5 y) W. Bxenbr1 8000.feffffffffff no peth1+ z% F+ o( `. K& w$ j- o+ I- S
vif0.1) d5 w. {2 C1 ~' j& R1 D
% v, F* B9 \5 o- w' s
- J7 v, T& K; H8 ?$ P
* W9 I! b7 d" B+ g
############################################$ j# d) u; k1 e- F z" O ~. T
7 J. h/ m% l2 J7 R- X- p
7 C0 L$ B" A0 p" @$ D- C8 ]' L
! ~8 t5 r N% W(7)半虚拟化安装,选择nat上网方式、IP配置使用 DHCP 方式时,虚拟机系统安装过程卡在 TCP/IP 配置界面,停滞不前
0 @$ q5 t) o* c1 d
. l; s) O% R6 T, i--------------------------------------------------------------------------------------------------------
+ }0 {5 k9 [! L; U0 b5 T$ n7 I
( o' ~$ P1 W C半虚拟化安装时,选择 nat 上网方式,IP 配置使用 DHCP 方式,此时卡在 TCP/IP 配置界面,' V/ k% I: n! Z* q# n
Xen Sending request for IP information for eth0 不能成功, 卡在这里,不能通过。5 O, f5 H- ^5 a3 e
! N6 S/ S: A) d2 L' y
--------------------------------------------------------------------------------------------------------
0 e2 k% ~. l# i############################################
! U9 t5 b) K: |# v
5 T( o/ r1 `8 @3 z* d" u4 D- O6 f解决办法:8 `' y( S6 t( f# i. S% Q+ C! |
IP选择手动配置,配置 ip地址/子网掩码;: g- v/ Y, u& q$ v z3 N
/ e1 ^' t7 o8 Z* y% K+ D9 b3 h
全虚拟化安装时不存在此问题。 ' y5 n9 |+ o9 T g& i9 \
& ^1 }, Z) Z. }. [############################################+ F \- N9 M$ f
- l0 P7 ~- D$ M
' m( M A3 a- ?/ e1 D! l6 F
+ n+ C/ b! p; f3 {# D2 o. }+ F) `$ @
(8) 启动虚拟机时出现错误:File "/usr/bin/pygrub", line 28, in ? ImportError: No module named LiloConf
, `" D. G0 P- }+ o; f3 T* B5 {/ g--------------------------------------------------------------------------------------------------------
* l3 U( @: ?' t9 ?$ p( t* d0 D- A[root@glnode04 xen]# xm create /etc/xen/vm01-centos-5.5-pv
' s1 i) p, `# o: e- gUsing config file "/etc/xen/vm01-centos-5.5-pv".9 L# h- ]- j3 N/ r2 w& }" [# \5 F
Traceback (most recent call last): R( d3 {, H% {0 I. i
File "/usr/bin/pygrub", line 28, in ?
1 }% Z9 w& e; A# w7 H import grub.LiloConf
% G0 T% P/ x) K2 {ImportError: No module named LiloConf
: S5 q% q# [ r% O5 `& E: Q+ k+ x8 m1 O/ u& Q7 C s, \) m; h+ A6 b
提示 /usr/bin/pygrub 文件的第 28 行的 import grub.LiloConf 出错,这又是 python 的问题,import 出错。
# \9 S5 @' h4 |) w, X4 T/ D+ B2 B+ ]3 ]8 I9 C( e3 n n( x
手动执行 pygrub 命令,仍是出现这样的错误.
! F f3 B* s% l" I[root@glnode04 xen]# /usr/bin/pygrub 7 `3 v2 \0 T* W* ~! k! R
Traceback (most recent call last):
( v) k1 X! m- r, N File "/usr/bin/pygrub", line 28, in ?
1 ?. Q5 b8 ~- b5 X% T8 y- D import grub.LiloConf7 ^1 Q; |! ^) I
ImportError: No module named LiloConf
0 l0 u' D- B+ m+ G' m9 A
4 I5 Z& k3 m, A* g% x, H正常情况下执行 /usr/bin/pygrub 是这样的
' I4 c( o6 K, f5 N
; s& M* F2 k7 T2 @1 M! r0 i[root@gmnode14 xen]# /usr/bin/pygrub
+ U9 B1 b/ h5 j: l, T- lUsage: /usr/bin/pygrub [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <p_w_picpath># n. e5 l1 w9 o4 u7 ~
% a8 Y: S$ \; @* K: c( U! B7 Z9 w
[root@gmnode14 xen]#
$ B4 {- m' Z5 z r& c% g--------------------------------------------------------------------------------------------------------
1 f# {8 i6 c* p6 T) F, f; K3 f$ j# d. w
############################################
# n. }+ p' D% u# A( F6 k2 B6 E2 g* c1 k) e6 r7 v" u
查看 /usr/lib 下 python 库,发现有3项:) E4 Y d5 W0 M4 F
[root@glnode04 xen]# ls /usr/lib/python1 H* t9 Z$ R9 I7 X: U5 j7 n
python/ python2.3 python2.4/2 D5 ` E, f( s9 B. d1 J( W4 `
# `1 }; v U2 z$ M% z: `
这地方有问题,CentOS默认安装的是Python 2.4.3,库文件和可执行文件的路径是:
- [8 O7 D/ x; M2 \. c/usr/lib/python2.4) B" `1 w0 X7 W
/usr/bin/python2.4
. U9 e- O! B7 R+ j8 v% f4 v* ?; t
而现在多了两个库文件python和python2.3,将这两项删除,或者重命名,再次测试,问题解决。 - o$ T# [- n. K
, ~8 P! p- b6 p0 c' Q& \9 N6 E
[root@glnode04 xen]# /usr/bin/pygrub , n) E* R: E, n# { Q( v
Usage: /usr/bin/pygrub [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <p_w_picpath>: N; ~) L. q& o9 w" Z& g7 j& R2 ~5 n
$ j, ~8 A. E* a( Z9 x8 \/ H[root@glnode04 xen]# xm create /etc/xen/vm02-CentOS-5.5-pv
I% ]- `) |: H6 `9 xUsing config file "/etc/xen/vm02-CentOS-5.5-pv".4 }3 }9 I. M9 y( h% Q
Started domain vm02-CentOS-5.5-pv
( r- p ]8 p l* D启动虚拟机正常./ q+ v) O1 P7 M% ~* k! n
1 S; j$ G5 Z1 l" U
###########################################, j( _6 G6 l# n- q
-----------------------------------
$ z# c/ }) s/ ^" l, O- p5 F7 s安装Xen、创建Xen虚拟机、使用Xen虚拟机过程中经常出现的错误总结
6 h' ]: ?* F" N1 t* L. S: Rhttps://blog.51cto.com/newyue/855972! p+ `/ Y9 v5 E* W* E
$ o1 k/ ^* ~' l- R) }3 d9 V% W
|
|