|
|
楼主 |
发表于 2019-9-28 15:15:53
|
显示全部楼层
1.创建虚拟机映像/ L7 u* C1 X7 l8 L8 `
2 W" z3 M5 C" S$ [9 L+ G' `
dd if=/dev/zero of=xen.img bs=1M count=16000
: {* J3 N( O5 k' M. `5 i
4 G$ |: x2 J1 |; \dd if=/dev/zero of=xen2.img bs=1M count=16000
( ]4 c( F, R/ _5 B% j% ]7 v; k/ O i7 F3 F+ t+ t. o z
mkfs -t ext3 xen.img) M* S! d: C! ^0 m
3 d9 H5 Z- d: k ?6 A6 g; Q" amkfs -t ext3 xen2.img
4 N' z9 ]" p7 I. ]/ q
: l; c4 U2 a$ I: M5 S; ~3 V$ `2 imount -o loop /domU/xen.img /mnt
- }2 {! G$ l" h' ^ s1 }% T
) O) R0 u0 i2 t& q5 }. ccp -ax /{bin,dev,etc,lib,lib64,opt,root,sbin,usr,var} /mnt
2 A! d! W7 d+ W3 y* }: V3 \4 P/ ?4 c! W4 U* y; {
mkdir /mnt/{home,proc,selinux,srv,sys,tmp}
) U; ~' F m2 y* M# x5 j( D% u* A/ _, O+ R
创建swap盘- Z' Y2 c& o, K* l L4 x5 [
5 L7 @' Q% B6 c4 j9 Q3 O9 s
mkswap /slview/swap1.img
- y0 [2 Y1 J& H5 x1 N* N, }4 n% J
1 Q" g" f8 I3 z1 Evi /mnt/etc/fstab: _! m. f5 ?, X M3 f$ s+ P
5 N( X4 q/ S |& W0 F' S7 E
/dev/hda1 / ext3 defaults 1 1
4 e; W' c4 }" d+ `) `
' @, g0 d$ ]8 @/ B' utmpfs /dev/shm tmpfs defaults,size=1024m 0 0
2 R( o z0 Q3 l! V5 l" K, O- k9 z/ ^5 q8 u: T( b, K! C6 Y
devpts /dev/pts devpts gid=5,mode=620 0 0+ ]$ O+ g. i4 V/ C
% R4 d# ]6 G2 U6 c* N" ]1 Asysfs /sys sysfs defaults 0 0
! i7 B( A: }* Y! {: V& F3 f; B& D) _' j f% w2 }& u5 j" O* o
proc /proc proc defaults 0 05 s1 R+ ~' V1 X0 @, K5 B
+ n+ d, e' @7 v# M, Q. q
/dev/sdg swap swap defaults 0 0
# Y! y- d5 a' Z# o: V# d, v% ^1 r' p) K# p, F: H; b
---edit network
' _ S i- w: c* J4 }2 ?2 E0 z3 U- V5 @! l! D
vi /mnt/etc/sysconfig/network0 b9 [$ ]0 g9 ^! t% Q) f
: @0 B* `7 u* \) g6 t8 @! L
---edit ifcfg-eth0$ U! `) b7 d/ P* G# O
6 l) N, w" n2 z( x- I- V# J
vi /mnt/etc/sysconfig/network-scripts/ifcfg-eth0
- a/ I- \1 z7 ~3 ~; T1 k& W: J# Q8 u& p
DEVICE=eth0: T% h; E6 X& ?
BOOTPROTO=static1 |( O( Q" w- {5 ^: [: R
ONBOOT=yes2 b0 P& W; X" r$ b
IPADDR=192.168.24.210) c+ ^% m" P, S
NETMASK=255.255.255.0; {- I+ R! y; K' k( i
NETWORK=192.168.24.0
9 F6 r% s9 c9 y- `( G! bBROADCAST=192.168.24.255% u9 s# Y* S+ }) B, o" u
7 i9 x7 s3 y [% }-----gen initrd$ c; `+ p6 s. F4 ]
9 C$ ]8 v+ O& d7 C3 p V
mkinitrd -v -f --fstab /mnt/etc/fstab --with xenblk \% N; b3 J- C0 v. Q# k. K4 Q; T
$ _% b: c+ ]9 x
--with xennet --preload xenblk --preload xennet \" ~4 g2 T& h" q1 k$ N0 j7 c2 m" L" i' r3 L
* z# s0 s6 ?5 P; K5 g' jinitrd-2.6.18-194.el5xen.wd.img `uname -r`
6 Y& D F8 e, {3 W+ F: N* ]: |0 x
( v7 V! K z' t" `6 h0 c+ L C% Fumount /mnt
$ e, j' x' c! C& I1 k) F& S2 u& S- V, P
---在/etc/inittab
9 A0 x+ s3 b$ }5 c) H
' W5 a( R0 C4 D! j2 M: O2 t" Mco:2345:respawn:/sbin/agetty xvc0 9600 vt100-nav
0 F6 F9 q! c6 t5 {
: ?7 @6 f/ y* Z8 t' d>init q9 S e" q! |* Z& i
! [, [0 w9 N( w- L' S# ^
>ln -s /dev/console /dev/xvc0
' w7 G. Q; ]! j' p# d) p0 `; p1 X8 Z% h3 a& t: E% O5 Q, R5 h- G
---创建内网网桥
5 O3 p. o, H2 L# D3 e
! J" Q- B( g9 s, l7 i7 Uvi ifcfg-xenbr2
* |8 [" h# y$ ]) h- A6 ]# x VDEVICE=xenbr25 _6 r; s) D* M7 J' ^( F% W
BOOTPROTO=static
9 j/ s& g# S3 K" z; g, bONBOOT=yes0 e1 n/ Q& C" F* Y
TYPE=Bridge
- ~0 f, j3 y3 N9 O9 k启动网桥& j1 }( z* K) N: H3 g5 s4 x$ p
ifup xenbr2
' ?- B$ @' s& x1 m* N# q2 o( y& i- G8 y
----编辑虚拟机配置文件; _4 q8 R. O4 K. C" ^
: ^; M6 E, n2 I' @3 f% B! D5 M
name="oradb1"
/ n* Q+ f7 x+ I9 B- s7 V9 ^kernel="/boot/vmlinuz-2.6.18-238.el5xen", N8 C2 S: @3 z# C8 l: y+ i$ S* x2 b. R
ramdisk="/boot/initrd-2.6.18-238.el5xen.wd.img"8 E3 s( _1 {/ [7 T8 C# F# c
memory="2048"2 H5 T- ?$ F4 Y9 z7 a7 P
vcpus = 2) R: K. _3 k& z! o+ O
vif=['mac=00:16:3e:2e:40:cf,bridge=xenbr0','mac=00:16:3e:2e:a9:41,bridge=xenbr1']
* _0 K! m1 x! ~9 K W. [* H6 sdisk=['tap:aio:/slview/db1.img,sda1,w','tap:aio:/slview/vot1.img,sdb,w!','tap:aio:/slview/vot2.img,sdc,w!','tap:aio:/slview/ocr1.img
) F; l& c _$ m# q) U B" y,sdd,w!','tap:aio:/slview/ocr2.img,sde,w!','tap:aio:/root/data1.img,sdf,w!','tap:aio:/slview/swap1.img,sdg,w','tap:aio:/slview/ocr3.
`9 q( U' [, ~8 _) G6 Vimg,sdh,w!','tap:aio:/slview/flash1.img,sdi,w!','tap:aio:/slview/flash2.img,sdj,w!','tap:aio:/root/data2.img,sdk,w!']
6 P: p2 G4 B+ i$ B/ E+ L( {- Vroot="/dev/sda1 rw". n" x3 U$ u+ l% m
# g: G- z( I1 q( C/ L" ~' v' v; J
网桥配置:
4 L: |" d# G5 x) N# `" M
( a$ z9 E! I1 ^) {, G t" v修改 Xend 配置文件 /etc/xen/xend-config.sxp ,取消下面两行的注释:" [# S$ \) I3 \& C
% t, m$ D) F. m0 |. [
(network-script network-bridge)6 @' f5 e7 J! p1 {
9 S! `. Q3 u1 y4 X6 \ q9 ~8 M(vif-script vif-bridge)
) T6 ]; \ ?1 d. j
" P [; {) f$ X5 Q. W. Y使用brctl show来查看网桥
0 w- h. I! i* ~
: W0 d ^7 T( l) WDomU的config中设置vif = ['bridge=xenbr0']4 b; a) J* O( C9 j& \
: q$ J' F# \* N8 T6 F存储配置) E# Q9 w8 P9 G! \
# W; M9 E! V1 N; |& r- x
[root@db6 xen]# cat oralinux+ j$ O& n$ k& \
- C- q7 h' k6 ]# ^8 F, l4 S$ J
name = "oravm1"- W' \; \ [7 X N1 ]4 ?0 F/ y
! a$ p, w. C" Z$ B8 m+ W7 m2 Skernel = "/boot/vmlinuz-2.6.18-194.el5xen"* @# H7 a% v2 m X0 S
7 l$ m5 n0 C- g8 ]/ C5 O
ramdisk = "/boot/initrd-2.6.18-194.el5xen.wd.img"
' W F _3 @. b w
$ @' A- {* _% @' M( M# i& {memory = "256"
) d: G4 x% ]( s# {' P& l# `
! u& o* v" q4 o5 d4 j# Q0 cvcpus = 2% K/ H# R/ ]6 p% ~" a9 U3 f
( W/ N) I0 }% u3 Y1 |" ~vif = [ 'ip=192.168.1.140,bridge=xenbr0','ip=192.168.100.140,bridge=xenbr1' ]
$ w( U& \* r- r. z
2 H9 b! m5 e9 u- rdisk = [ 'file:/domU/xen.img,hda1,w','file:/domU/sdb.img,sdb,w!','file:/domU/sdc.img,sdc,w!','phy:/dev/mapper/oradata1,sdn,w!' ]/ A7 _4 f+ E- o! r
! y9 Z! X+ l9 ]! |- troot = "/dev/hda1 ro "3 M) ]4 r* P X6 { G: p6 B' ~7 P, c
5 n* \0 W8 Q" y# Y) Z! F
------------------------------------------------------虚拟机-----------------/ ~+ K: i- u1 c J" e' j
0 a" o! u+ O, R强制多虚拟机共享存储" f7 W2 [1 e( b# F8 g) {4 f. v
7 K: l5 U" p+ D& |/ z
phy:/dev/sda,sda,w! 加叹号) Z4 ]8 J* P. Y7 _9 i3 A
" F& C. v% x( w* A% W
需要让xend为两块网卡创建bridge,需要修改/etc/xen/xend-config.sxp,将(network-script 'network-bridge')# Q. a( v, h. f' u1 C+ q, v
) w6 e8 x' O9 A; f2 h改为:
2 g' M- p7 U0 h4 {! U7 d" d6 S& |: h: |3 o! W: Q6 {( _
(network-script 'my_network_script')( z5 N: b$ n+ k, C! K9 q, @0 c+ O0 t
' Y7 n! q/ t( I7 u3 y$ }9 u o' V. smy_network_script是我们自己的脚本,创建/etc/xen/scripts/my_network_script内容如下:# v8 ~7 B( J9 }# I; ?
- E. o: @& L4 i- q! ^#!/bin/sh
, W3 F6 Q; X0 F% ^; p. L2 C% }& W1 J( r" p. z7 u
dir=$(dirname "$0")
- ~7 F6 O$ }( l2 O
' r0 Y5 m0 X6 k/ O0 l- L4 i"$dir/network-bridge" "$@" vifnum=0 netdev=eth0 bridge=xenbr0, [( e9 c2 ]) v
, E3 ~ e/ o9 t* N2 z$ \"$dir/network-bridge" "$@" vifnum=1 netdev=eth1 bridge=xenbr1
* }+ P* K; z+ ]! J1 t- D3 v0 ^- |* f: C1 g \8 E% w
将my_network_script加上执行权限:
6 _* D0 x8 H% R& M" `& A5 I; ~
3 x2 E$ j# X, z1 N6 n7 y" Vchmod a+x /etc/xen/scripts/my_network_script
O0 k8 M1 \ V9 r( X/ _
4 C8 E. S9 B; h6 [. L- x0 @5 L" h重启服务器,可以用ifconfig看到xend创建的4个网络接口, X4 H6 [ s2 c( M. \& V
* |( l9 P( c+ {6 e* d- ]$ c4 t
可以看到虚拟交换机上的连接如下:5 p( @% }5 B; m' E
[root@rac2 xen]# brctl show% f8 g* k: `9 s: f
bridge name bridge id STP enabled interfaces
' L! J9 ~% O `" zxenbr0 8000.feffffffffff no vif1.0 dom1的eth0
! o+ ?# {0 e/ g peth0 主机的物理网卡0, W8 o* c3 P% o5 ?- U9 D
vif0.0 Dom0的eth0
- `. O; A& Y5 r+ Sxenbr1 8000.feffffffffff no vif1.1 Dom1的eth1
+ h" L- p5 _& U/ ] peth1 主机的物理网卡1
8 v1 f& [' h6 _5 }. f2 i9 { vif0.1 Dom0的eth1
$ ~$ z! r7 q' {7 f& U9 ?9 G; ^5 v1 J" M, ?
编辑虚拟机配置文件:, I* L0 p2 V, h2 P; C
5 Q, o5 N9 O& P, x1 V
Error: Device 2048 (vbd) could not be connected. Failed to find an unused loop device& B, |, M8 `2 z2 d
% e. U/ T. W% {. \( R1 T& @
Error: Device 2064 (vbd) could not be connected. losetup -r /dev/loop8 /domU/sdb.img failed: b4 z( |. V# i- L" I5 h
7 @0 X: m0 C% H7 s* u# k
>losetup -a 查看loop设备使用情况
! l. N" ? v* x) j' n- W+ S
+ i. x; `) Q- C% g: f, r- ~) N再卸载 loop 模块 rmmod loop
( T' C( p0 m/ d, n
# m" R/ u C" F! J; B& T# `>vi /etc/modprobe.conf
3 c; }/ M0 p# ^2 f& I3 U5 H9 n8 q, @5 i ^8 ]# G+ }4 T. a
options loop max_loop=16
, z2 H- e# i! ?
0 Y6 N; ]8 l5 r1 g2 r再重新加载 loop 模块检查是否生效" i2 M$ ~" Z$ Z* o$ C) l1 l6 {2 N
& r& b- Y2 E, W, ?* Y1 n; S
modprobe loopdmesg | grep loop # 应当能见到 loop: loaded (max 16 devices)
6 ?8 h3 {$ l) q' G2 K" E
! `, f% d" E* [& U8 b' \最后建立 loop 设备文件5 K `9 _3 T- y) S; F7 N
4 F+ [/ {) e% g& G* c8 _& V; `' Kls -d /dev/loop*
1 T& _( G( j; I% C! s( ], G. f: Y" y6 X6 {/ U% K
mknod -m0660 /dev/loop9 b 7 8
( _4 N* e7 v. ]' r8 \$ f: b! B! S0 ~9 h6 r( t2 K& {
chown root:disk /dev/loop9
/ e( C: |' [6 d9 `/ b
# R7 v) a' ~- C5 v1 T' nmknod loop8 b 7 8+ A% ]/ O: |0 j5 a, J7 X: w- H
) X2 t- {( F ^, O- [8 E E
mknod loop9 b 7 9
* Q$ t9 {! L0 U3 m
- w* E: ?6 ~4 LQ: ADDRCONF(NETDEV_UP): vif1.0: link is not ready
0 ~8 q8 r R+ E. O) a+ \, a0 M8 |6 ?& _8 z, s; {1 p
A: 将/dev/sda1改为/dev/hda1
" H0 D7 B0 _; |) o# k( N
8 ?( d. U2 ^% Q7 ?2 h4 ~& G( hQ: 使用vnc报以下错误4 m% H9 }9 \* S2 e; I* P5 I
[root@db1 ~]# su - grid) Q+ J+ S$ i0 @0 U6 g
-bash-3.2$ xclock
! c2 q" S6 o2 i1 n+ a: M' KXlib: connection to ":1.0" refused by server
/ k+ B* U6 f$ B4 k1 T. ^Xlib: No protocol specified! a6 l" M+ s' Q+ [
Error: Can't open display: :1.0( Z; C. R, f2 t/ i
1 B# P$ q5 E/ }7 ]+ L) wA: 用root帐号执行下列命令既可
; d/ B3 n- ]) m! ^5 X# q* jxhost + localhost( D6 e7 o: i; u
# Z. @5 U$ B1 I, V+ BQ:fdisk分区表无法保存3 `, X/ M( ` F5 y
A:
- Q. o! i0 n0 i5 Ochmod 755 *.img
* k" f5 J3 w/ m! b# F5 j/ h* Ifile:/slview/db1.img 改成tape:aio:/slview/db1.img* F/ @& ~- ~5 ~
- Y% R' B% x; B Q$ ~
Q:mkrootdev: expected fs options
* ~4 I3 Y# Z5 v& a: N. i2 j mount: missing mount point
( q' Y0 g( c' m6 E setuproot: moving /dev failed No such file or directory* N5 ~3 c% t/ @2 ]
setuproot: error mounting /proc: No such file or directory
c% Y/ F1 i- y- c setuproot: error mounting /sys: No such file or directory- F* o7 M0 i8 y$ I z( |
switchroot: mount failed: No such file or directory
% T! _) h1 \ P3 dA:mkinitrd, /fstab内容
( y g3 t0 S) f0 v7 T
1 m+ c$ L3 } _: gQ: /sbin/hwclock: error while loading shared libraries: libaudit.so.0: cannot open shared object file: Permission denied5 p4 S! c5 H$ n; Q ]
& ?0 ?+ O: ^2 v0 [
A: 关闭selinux |
|