|
|
系统版本(已经安装完xen的内核)
( S3 y M m) V3 G# K3 ]' F, B+ b' I8 j! f/ H
. g" x8 C* W0 _* `* n( G
! B$ S4 `. |3 P9 R! o9 z. U安装步骤分2部7 _5 S1 I' a" \; k' m
' j4 J6 I) X' A1 S0 u$ x( w
xen安装
3 B% b5 y9 C2 ~5 C3 ?% m) q. E首先看看系统支持不支持xen /proc/cpuinfo
* L5 L! D( j* V4 l如果想让Xen提供全虚拟化,那么你的中央处理器必须符合下列条件。
$ @ O- U, p- i! b3 d# j/ m) @Intel 中央处理器提供vmx标签。& w2 d# K; b7 e- I0 K
AMD中央处理器提供svm标签。1 K) M0 F7 i, i% U0 b9 T9 }; `
你可以利用直接查看/proc/cpuinfo 的flags参数来判断中央处理器是否拥有上述标签。1 I6 l2 r1 D2 ^/ J: k
cat /proc/cpuinfo |egrep '(svm|vmx)'2 N; B& D. x2 m! E$ g M& r
然后安装1 t% d2 M3 i* ^, v; l# m% k
7 i. \$ s% R5 l- x/ D
2.虚拟机安装
6 u9 Q& q a `8 B- k" f通常使用virt-install来安装虚拟机(需要通过libvirt来使用xen)
. H) V5 q! l2 Y+ } R
! ^; R2 n4 h# v( g0 Kyum install python-virtinst libvirt libvirt-daemo-xen virt-viewer1 ]$ E- g2 V, \5 f
$ [+ s7 n( u( g, Gservice libvirtd start7 }0 u/ I/ b9 [) H! q }, L
' j: h8 T! w" F/ A0 }+ m! w, Schkconfig --level 35 libvirtd on
8 `, t D- b! E H3 ~4 ?- V) M( }, F
下面开始安装虚拟机1 X* {- ~+ C' l
- i8 @/ n5 z+ a: \6 A(1)设置一个虚拟硬盘(10g的虚拟磁盘)
3 H& a3 t6 K5 n+ f1 P3 i9 |* P* I; j t6 N z. K) I( |
mkdir -p /xen/vhd/1 p. O' b5 r# n+ x1 N
- x- I+ J: A* c' r/ G W' a% X! V" f
dd if=/dev/zero of=/xen/vhd/yao-xen.img bs=1M count=10240
; x+ N* t& b2 }9 ? t
0 e" g! Q' B ]' Evirt-install --name yao-xen111 --ram 512 --vcpus=1 --disk /xen/vdisk/yao-xen.img --cdrom /home/yao/iso/CentOS-6.5-x86_64-minimal.iso
9 Q+ k: P" U2 r- S T( g2 Z. V8 p
' s( z7 i! C& _就开始安装------图1(安装完毕自动重启)
7 \9 v# Y; {% g. p1 a9 S; n
! g: f) J% z) Z% o5 rwKiom1Ui7KLSeI6_AAMMDu6P9SQ340.jpg
; R' j& q% O2 N X" Y. Y7 X& a3 M) w8 l1 J/ f
& l2 n P7 F2 n; n( L
: z1 O* m$ w' h3 v! P# virt-install -?
" a+ i: h( @( ? V- B5 hUsage: virt-install --name NAME --ram RAM STORAGE INSTALL [options]
: X9 v1 w; h" q" H0 |
9 N* n, k9 O7 E1 L% Zvirt-install: error: no such option: -?! f% M1 s" c% T5 g8 {1 c1 h+ l
[root@yao ~]# virt-install+ J d7 ]6 t' L
ERROR
5 P) I( j7 b6 p8 U/ \8 y6 v--name is required: T: y& V7 w5 J" c
--ram amount in MB is required
; ?2 y. u% f( M+ D7 {% z--disk storage must be specified (override with --nodisks)
4 y, \& h: P4 u* JAn install method must be specified
% L& c& J- L* ]+ _9 [% p& e0 K(--location URL, --cdrom CD/ISO, --pxe, --import, --boot hd|cdrom|...)
( e1 S! P* C! A) g" c0 d8 [" t( J. {0 c) j+ D& P2 m+ h$ L% e
3.网络配置1 x+ z( d( i. r3 e/ U0 X
4 W5 ?, S3 U+ @9 V7 \# u4 g
连接6 T* ]( B7 Z+ L+ Z
ifconfig (发现多了一个网卡)6 E. a! O/ I) a
. w( e6 Q% J$ ^; B/ n \( v! avirbr0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
0 u8 i9 F: i, ?- w+ b inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.00 {' E# ]7 ]6 `9 K Z
UP BROADCAST MULTICAST MTU:1500 Metric:1
1 u( ^7 F- e" e) R RX packets:0 errors:0 dropped:0 overruns:0 frame:06 Y: m# N4 h* e# l! X* B
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0* [1 Z- \/ r5 r. A. s
collisions:0 txqueuelen:07 ~% Y' [2 o' N7 y
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)$ v1 f/ `$ ^3 h: w& E. Z8 \( E
我们切到虚拟机里面(默认xen为nat)
# t3 q7 m; _8 {. }8 p ^# t/ Yifconfig /etho 192.168.122.12 netmask 255.255.255.0
& \, c+ |- C! {4 H% j
7 D- @% J, T9 h4 Dping 192.168.122.1 可以通
* o8 B( K, S1 [ v
+ G( Q' j2 m& }* m7 s C8 N8 d. j但是一般情况下我们需要桥接到虚拟机,接下来我们就开始设置桥接网络- E' b. l1 R, u' e
4 D. h7 A- k+ Y4 L: X/ j5 R" m
===================================================================
; S0 z" M* h R$ F8 J7 q4 u( ]7 B A
默认XEN使用NAT模式,当启用一个虚拟机以后。6 E' Z9 q* Y, z8 f3 d4 v
查看xl list7 r5 h! k5 A) ]# h4 o
# xl list' s+ y; \" `$ W1 j9 @
Name ID Mem VCPUs State Time(s). t' y" q+ I3 }; W3 f
Domain-0 0 1024 2 r----- 240.9
3 W8 h7 M4 Q8 Qyao-xen 1 515 1 -b---- 14.6+ q5 ^9 D$ w% B! h4 u8 ]9 C
3 I' v: n' `0 b得知网卡为vif1% V' z p, G" G0 @% r
5 o* V0 r: g7 V: v9 ^8 b
然后brctl show: m$ Y& [% g3 @/ \1 H
可以看到
7 y% i0 Q9 h$ B# brctl show' c8 l3 N: S: `! B" `
bridge name bridge id STP enabled interfaces+ Q% P! E+ ^; }/ W2 N: O
virbr0 8000.000000000000 yes vif1.0' \. x+ \3 K5 d; z
-------------------------------------------------------------------3 t9 Y" w. @( D- I
virbr0为默认到nat地址,这里我们要修改为桥接。分2步
& c# n: U8 v# r9 m; Y1建立桥接网卡3 w" e+ Q' {- U% _1 |/ N
2设在虚拟机yao-xen的虚拟网卡对应到网络 ' M- A" s& ]+ \* V: O
(1)以下为本机到网卡配置+ B. J4 }4 ^; C! z/ C; r
-----ifcfg-eth0---------7 X% E( y, X3 c& l3 Y9 q- u
DEVICE=eth0* N9 a6 s. Y9 G- r2 Z1 I
TYPE=Ethernet9 \4 y4 c7 T) s* \/ O' o1 a
ONBOOT=yes
: @# h0 G8 v4 \) @NM_CONTROLLED=no 这个参数是networdmanager相关的,可以把个关了
9 ^. k+ q. `2 D- ?. g6 Y3 I. L
7 @ |3 q' b( f( B; V, OBRIDGE=xenbr0" ?$ n9 ~% a1 _% H; R0 i5 F
7 Q$ Q N q* d0 Z) B ]# w$ ` N; @& ~+ V( C" G L' w
---------ifcfg-xenbr0------
: g/ Q) p5 R- \# oDEVICE=xenbr0; ]+ |- a& j/ S5 B" q8 z
BOOTPROTO=static
& N. g7 r- u P0 n* [; HIPADDR=192.168.31.1096 ~0 q$ T: c( K4 a
NETMASK=255.255.255.0" e( s6 Y g# _8 D6 A c& y* x
GATEWAY=192.168.31.1
! D8 d7 `9 m- E; s# D' y; B2 E8 qONBOOT=yes
: x2 j! S1 j" y/ DTYPE=Bridge
7 v6 l9 J+ \7 q$ Q9 {# g& n1 @! `7 r# n5 i; Z/ ~5 z0 M
-------------------------------------------7 ^+ \9 G. I- A! x% d
(2)重启网络. q* Z( T- G- d1 y
service network restart
0 ?. C4 \* m x4 P, z) o7 B6 I& D这样配置完 默认eth0就没有ip
+ D5 I. v4 b" B
1 ^" [/ @6 U/ V7 I3 g9 [( U+ G0 s* Q
然后手动修改
- u* ]* ~( Z- X) P9 o( C7 D( e' p/etc/xen/scripts/network-bridge0 g+ n* r" o, a/ b5 {' q4 n! l- `+ H
(1)关闭xen网络脚本
+ i" F" j k3 w& S! H. w t+ V: J! V# n8 \! s R
/etc/xen/scripts/network-bridge stop0 z2 |8 c! E2 f/ W8 R; ]
p4 V& I5 N. a0 H2 a(2)修改xen配置文件
% [2 V3 q7 E2 B1 W3 n( I
& t0 a' {3 F7 t4 T: [% _2 W1 {vi /etc/xen/xend-config
8 _+ @& W# V. g0 O' l9 L
" k/ I i; Y# E注释下面两行# t$ ~$ X7 N3 r7 B; c
0 i5 b$ \& W6 c' I3 H6 h* Z4 F
#network-script network-bridge)' R# |2 m3 m6 t9 u$ g
+ S; N; K# m6 F: z#(vif-script vif-bridge) ; t! I: i4 W8 f0 A
2 h3 Y+ G" S5 B% P* S" G& s& n: GwKiom1Ui7KSBCKL6AALsTEsaYbQ455.jpg
- D! o }- F2 _4 K, l$ ?" f2 p
(3)重启xend
- [5 w) o5 A- l) f4 }service xend restart
0 d' Y4 j7 ?! B& E* N------到目前为止网桥已经OK接下来就是将虚拟网卡配置对应到网络! j) `" E: w3 |/ f3 T1 I" V' n6 I
2 Z3 Y9 l. ^' q# g3 E$ C6 v: ^
) r4 _) }) H. d* c回到xl list
. N2 `& @$ z" }1 X3 M: i# {, Lbrctl show
4 b: O$ M& [$ F# u- L然后我们使用brctl来管理虚拟机到网络. p, `5 {/ F; b$ U
brctl delif virbr0 vif1.0 (将vif1.0从nat×××). h3 O y: S4 _$ a, I' n
brctl addif xenbr0 vif1.0 (将vif1.0配置到桥接网络)* Q# Q; }/ h6 c6 O0 t, p9 g1 q
. |. M( { N4 m. s
$ }& a! z! Q3 n3 C4 J接下来就进虚拟机里面 重现配置下网络
) ]+ E0 e' [9 d: N( ^ v! \- Mifconfig eth0 192.168.31.154 netmask 255.255.255.0
+ E' {$ V( j/ L4 y9 N' G9 vping 192.168.31.16 ?- ]) d; F# S
ping 192.168.31.200
1 J2 k3 w, A1 d+ \' zarp -a
4 a/ l1 D1 ~+ z; a4 M[root@localhost ~]# arp -a
& f2 {2 |6 p7 B' q0 p) A8 gXiaoQiang (192.168.31.1) at 8c:be:be:28:ba:85 [ether] on eth0' `# x, f. |0 Y
android-3cc237f4872e1d13 (192.168.31.200) at ec:89:f5:b4:8e:0e [ether] on eth0* j4 ]' L$ Z4 U+ t
? (192.168.31.100) at <incomplete> on eth0) R3 o6 |) @" e! u3 N0 L
? (192.168.31.109) at 8c:89:a5:9b:47:5a [ether] on eth0) u5 Y6 r" y8 m
! @) t6 I3 T9 G7 B8 c8 z$ BwKioL1Ui7emSL6taAAMXgp9dJ38904.jpg+ @$ I9 W: D. f' ^
4 s* C1 N* T% S4 i& S=======================OK 桥接网络搞定=====================
6 v+ r$ l# z7 q
8 m. E, p2 O5 z7 U" P5 ?) H- Q以后我们安装虚拟机到时候只需要在! y% R& C4 Y$ E) j5 Y
. i' f/ D# }% j2 W/ G" _" Y& S$ Svirt-install --network bridge=xenbr0的参数就可以(更多参数 请自己查看)0 q8 n; P* }" L, @
. j" g: k! C$ ]4 v7 ?7 f
=======================图形化界面===========================
, q, z; B8 D3 G8 A/ J/ _) ?
6 E1 g s& @2 D- N图形化界面工具我们使用virt-manager,以及libvirt
4 ?# s9 M6 _3 G6 ^$ p. E A! d8 c# R* s9 a: I) i% v
yum install virt-manager libvirt
, v# M/ e7 O, V" g% I+ n6 }: j
% |: p' t% m ^Package virt-manager-0.9.0-28.el6.x86_64 already installed and latest version
- I4 r% E: {* ]' L8 H) u9 hPackage libvirt-1.2.10-3.el6.x86_64 already installed and latest version1 C- z+ {7 x" Q
Nothing to do
F8 G1 x: s1 q P* a$ h+ Z, f" v* W9 Z$ [6 {, O$ E* a
3 x' H/ J' e0 {一共会安装下面这些依赖包
6 R3 `; K8 @; b2 F7 q# rpm -qa|grep -e libvirt -e virt-manager( R9 N5 G3 y9 D! h
libvirt-python-1.2.10-2.el6.x86_64
- M3 |3 q' A+ V! ?8 w$ y, V. Llibvirt-daemon-1.2.10-3.el6.x86_64
) E" b( ~) i% Plibvirt-daemon-driver-qemu-1.2.10-3.el6.x86_642 u5 L! d! P* R! e& V9 A* A
libvirt-daemon-driver-nodedev-1.2.10-3.el6.x86_64* Z. G8 Z7 d/ U. R' b8 }- M* ]
libvirt-1.2.10-3.el6.x86_646 d5 x4 C% D8 Z/ h
libvirt-daemon-driver-libxl-1.2.10-3.el6.x86_64
* s, v3 I1 y: p+ C: c$ l3 [libvirt-daemon-driver-nwfilter-1.2.10-3.el6.x86_647 i8 h7 e+ D! F) U
libvirt-daemon-driver-interface-1.2.10-3.el6.x86_64
; v1 A' \4 A- H, s3 g9 }! Dlibvirt-daemon-driver-lxc-1.2.10-3.el6.x86_64
- s+ t3 n# P4 I" ]) p) Ulibvirt-daemon-driver-storage-1.2.10-3.el6.x86_64
( j& U! U! W5 J$ S7 v, d3 n& \virt-manager-0.9.0-28.el6.x86_644 M+ J" d; R, B: ^" `/ y. V* t2 S
libvirt-daemon-driver-secret-1.2.10-3.el6.x86_64
* r& |1 ?/ T6 l" u) }9 c, Xlibvirt-daemon-config-network-1.2.10-3.el6.x86_645 R: T/ \! W7 l; |6 g& O
libvirt-daemon-driver-xen-1.2.10-3.el6.x86_64. D! d$ s& J( s
libvirt-daemon-driver-network-1.2.10-3.el6.x86_64
7 p# Y+ Y8 I% Qlibvirt-client-1.2.10-3.el6.x86_64" t/ S" W$ S" W7 E
libvirt-daemon-config-nwfilter-1.2.10-3.el6.x86_64
9 V3 X2 B% i- X- Z& G- l4 ^
8 Q2 F! Y) N: [8 _$ l- e% ^- e" y2 s+ ]# T
9 |/ k! r( l$ y% ?- _+ o使用virt-manager8 N: P7 X: I+ _, y* K
: l, ^( g& e2 K/ k; S
打开》应用程序》系统工具》虚拟机管理器》点击localhost
* p b$ r0 z* U6 k( n& x! a
8 Q6 v3 h" ]# ^5 |4 g: I" a T如果提示错误,错误忘记时什么了。一般是连接不了本地localhost
0 N0 e# p0 \/ j: C$ I& [7 o0 }. s. P+ C6 G% v8 @& j! V
因为解析不了localhost,所以我们到/etc/hosts下添加一项% `4 M- i! r- r `. K, _
. z, c( z- G. S( v/ W+ Xvi /etc/hosts; u* q M$ l0 j# V
3 c, y3 R2 Q% C/ |* n! [
127.0.0.1 localhost
" ?6 G' o; T7 O- b5 h, K" L$ j* D8 t. h' h5 P& s
如果还是连接不上,请查看主机名
, l9 [5 ?2 p4 n8 f$ d4 C6 o
; U: b- ~4 |, c* n2 R E1 B修改主机名为
4 O+ y, o& }( }! y# [& H, n# H
hostname localhost
0 @5 l. `% B" E) H/ T' k# u$ l- B3 i7 V/ K: x$ T
然后再打开virt-manager(虚拟机管理器)界面就如下,操作和vmware一样了! r# H, F" o+ v$ _- E& Z
) r5 ] d% \. w$ W4 D
|
|