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

xen的安装摘自网络

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2024-8-15 17:28:24 | 显示全部楼层 |阅读模式
一、xl安装centos7
- \$ k8 s0 e4 R7 |% `9 u- E1、准备
, Y0 I; m% s3 X# E  r1.1 下载光盘的两个文件
/ w  Q2 h5 A6 O4 k$ i代码语言:javascript' ]' j' g# b% H9 s% }* Z* t# Q
复制* c% q  L, N3 ?# }" l. w5 N
下在光盘镜像 isolinux目录下的两个文件% m( b/ \' \4 S, i) h% [
[root@node1 ~]# ll7 T' U. X( K& s. {
total 40228
: ^% g: P3 W/ g- ?8 w5 z1 \drwxr-xr-x 35 root root     4096 Sep 11 08:39 busybox-1.22.1( r2 a5 P/ n4 ]! T$ t( M
-rw-r--r--  1 root root  2218650 Sep 11 08:08 busybox-1.22.1.tar.bz2- i+ A. y* j8 x( b  V
-rw-r--r--  1 root root 34815427 Sep 12 05:22 initrd.img
5 d/ Z' k$ F& _. ?- g-rw-r--r--  1 root root  4152336 Sep 12 05:22 vmlinuz& W! D- N8 P6 P
  E$ m5 _, Q0 {: W
创建目录存放:7 O/ O# {, W( g
[root@node1 ~]# mkdir /images/kernel% [; }8 K/ }2 L5 d
[root@node1 ~]# mv vmlinuz initrd.img /images/kernel/+ d) r- ^" Z* D' V6 F0 A
1.2 准备新虚拟机的配置文件* k& A% j9 j6 ^8 P$ g
代码语言:javascript& m' Y$ S3 n" p& M. R
复制' u  ]& ^* Q% k4 d) `& t2 _
[root@node1 xen]# pwd, K$ c: H# _5 o4 [, `, x4 {1 J
/etc/xen' Q8 B) m; N9 G' F7 t0 A5 t
[root@node1 xen]# cp busybox centos
7 v1 r3 T9 R5 H0 |& }: }" L
  J$ f( C  z  O5 ~. S! [8 y( N; t8 N[root@node1 xen]# vim centos & A5 D  O5 U+ X

% T/ P' d4 g6 @  h3 ]name = "centos-01"
- @' z# \) G. X! V, v$ O; Xkernel = "/images/kernel/vmlinuz"
( B! y/ r* s" N7 K" {4 A- Qramdisk = "/images/kernel/initrd.img". d" h3 N. R; q# V8 n7 w
extra = ""
) r& ~( B/ [6 Q5 A' Svif = [ 'bridge=xenbr0' ]$ L% i1 @  o3 @! w: C5 @
disk = [ '/images/xen/centos6.6.img,qcow2,xvda,rw' ]
. G  W5 F+ }" f0 r9 b7 p, m- B- _
6 O6 f& X% r( I4 _+ H$ M8 Z#root = "/dev/xvda ro"
4 I  A% y, H* f! j1.3 准备磁盘映像文件
) [* {  W, k$ Q' V% {9 `8 C1.3.1 创建磁盘映像文件% x: }! G. H0 t7 G) \
代码语言:javascript& W3 O- M4 C  F  i
复制
+ i) t! R+ K$ a+ G, T[root@node1 xen]# qemu-img create -f qcow2 -o size=320G,preallocation=metadata /images/xen/centos7.img# R+ }8 s. |- |$ `* k% V* \
1.4 开机测试
6 Z' F, P* S* _) h* D代码语言:javascript/ {6 ^- o5 C7 w, ~- \) z
复制- a, d- t+ F+ }8 ?2 i
[root@node1 xen]# xl create /etc/xen/centos* C- A9 o5 ~; Q% Q1 V7 w$ O& p

- z& k+ T. D) R0 s, I$ Z[root@node1 xen]# xl list5 |2 e% U, C3 J) H, Q
Name                                        ID   Mem VCPUs  State   Time(s)+ N7 p+ U5 n. P0 P: Q0 d! d* X2 o: w
Domain-0                                     0  1024     1     r-----     691.5
7 a& `+ F9 Z9 ~% x( M/ t4 c+ Tcentos-01                                  21   512     1     r-----       5.8
4 a" B$ R4 @2 l0 h* H连接控制界面:
2 l4 s0 L  X+ r) W& z  _' ]5 W[root@node1 xen]# xl console centos-001
" V, \. I$ ~) x$ l2 O$ ^1 h" R7 m' p, q$ o* O; f+ p! }: }7 i. }

$ h8 H4 e" N2 s) m" `- i' K. u3 A- _6 g$ l
手动配置IP:
; C! \2 G. x( u' e0 e8 n6 P, m
1 y$ o* S' j  K. m. F2 F, W选择镜像FTP目录; d9 Z; a7 j: J; C8 d# g
- ?- W1 y9 `/ \- M( f
( u+ y5 `! i: v) n% i" h
' f' V! N+ A5 q- l

; D/ ?$ y' v3 Q; {1 S. |8 `9 N& Z1 K* m0 p7 K- a2 Q
以此类推安装系统即可
& R* M0 P/ y  H& N0 x% W% r# v1 O/ H5 S9 ~$ G+ K+ |

+ P1 u0 R7 Z1 n/ i二、基于自动化安装(kistat文件安装)
; E$ ~- Z* q# T4 U1 y) m, w1、删除之前的虚拟机
$ ?- s  ?( s; w8 m0 X! i3 G1 r代码语言:javascript
+ n7 x2 D; g, ~! E" T; b/ J. [复制5 S  i( E$ O0 `8 e9 F
[root@node1 ~]# xl destroy centos-0012 k  E3 Q9 [6 l) f: V
2、由于我没有ks文件,这个实验只能不做了,只看马哥视频过一遍 。自己手动安装了一遍centos6.6; P4 G) J% ^+ b3 h  P
代码语言:javascript' O6 c1 r. x. {( a# k
复制
5 g9 C# e) c' ~3 Z. P修改配置文件  }% \+ \8 v  `/ K3 X
vim /etc/xen/centos* w  k* X4 Y0 e: A7 y4 s& F
extra = "ks=http://172.16.0.1/centos6.x86_64.cfg"
) X: u& W8 l9 a$ a; Q" e! pon_reboot = "shutdown"
/ _! L" z" L; r) h- d+ K" ^  W9 [7 a! |. O7 Y# A- c
开机后就会自动安装系统# k4 K/ d$ q; i. Z  E
[root@node1 xen]# xl create /etc/xen/centos
: X6 G' [/ z1 D; D/ X8 @. C2.1 安装完毕后修改配置文件(下次就会直接引导新系统,而不是重新安装)
5 B1 ]) s! a$ P! i代码语言:javascript& u" R; W8 h5 W
复制3 y# n3 V( O% y; ?0 p
vim /etc/xen/centos7 _3 s0 G. t& C; P6 K& Z; Z
name = "centos-001"; k4 V" Y# `7 M

, D+ U- s# h" ~2 N! x- jbootloader = "pygrub"' t2 F' E$ F: Q; @. w
memory = 512$ z$ H: `& ^& H: j+ x& g
vcpus = 1
" u  Q1 X9 r# ?, ^vif = [ 'bridge=xenbr0' ]
# B! b/ e% V9 x/ bdisk = [ '/images/xen/centos6.6.img,qcow2,xvda,rw' ]
6 Y, z% Z1 v( w8 q3 V2.2 关机
3 R1 H; X" o8 U$ e  A! H. _代码语言:javascript; A7 W/ T6 S) ?/ N* W
复制" a5 H" V5 Z( I9 m% H3 I
# xl shutdown centos-001' X0 i1 N8 t$ N% r, Y! X
三、定制系统模板
: A' P6 X; k! D1 g7 m% P& ?1、安装设置cloud-init3 J% K- m& }' ]8 `8 U
代码语言:javascript1 a# I; g8 C2 H# l$ o6 s
复制
& b9 J8 Z. Y$ B9 ^' ]3 ?* \[root@node1 xen]# yum info cloud-init' E1 S1 l3 t' p, r
Loaded plugins: fastestmirror, security  Z9 O5 Y5 B" {: j5 f
Loading mirror speeds from cached hostfile5 {/ e; u( R3 \! E: k, d1 f$ N
Available Packages
9 K: j: m) h) E+ U; U" ^' g4 zName        : cloud-init
$ ?  Q* R( h- cArch        : noarch
2 e9 y& S! k6 r0 _Version     : 0.7.4
* U3 i1 W; P$ c6 s' p( LRelease     : 2.el6, L6 x0 A* S+ N
Size        : 487 k4 A- x+ }: m$ q
Repo        : ali-epel
  ~9 x4 I& i" i2 ?& e0 NSummary     : Cloud instance init scripts( t1 J! C: `& I1 d3 U, E4 a
1.1 剔除磁盘唯一信息,生成随机MAC地址
" n- X7 z* `, C$ ]& W四、其他
- j2 B: W0 y8 y* Z) g1、使用VNC
8 L2 P; [! k$ I) {8 W8 M: c1 W, d1、编辑vnc配置文件
6 T2 J/ i0 @# N" l' W代码语言:javascript) o0 J% i, x/ K! o7 i1 }
复制
9 J: G" O) v! ]" F( W' X[root@node1 xen]# vim /etc/xen/busybox
0 r* r. V. O& U/ u: j+ j
( I5 J: M5 Z% e- ?1 V4 H5 P- \vfb = [ 'sbl=1' ]
; O0 c# i2 P9 @2 e测试:% M6 ]. v1 G4 g3 `
  G& A# o+ b$ D, n) |, n
2、VNC
& [% [1 n3 W* G) K2.1 Dom0安装vnc
) d8 |0 |& [/ I1 x5 i代码语言:javascript! \6 i5 L" J( H4 R3 G
复制7 b1 U4 V" ^4 D9 T
[root@node1 ~]# yum install tigervnc3 N* {% \5 [- ^

  i4 }  g  ~  u. Q3 _+ {[root@node1 ~]# vim /etc/sysconfig/vncservers
' `6 s7 h3 G- g( i! W% ~$ u) m9 S, b! y$ ?% {
VNCSERVERS="1:root"# d& j& ?3 Z$ X9 _: E0 F
VNCSERVERARGS[1]="-geometry 800x600"
! n* E" w  {* Z2.2 修改虚拟机配置
5 I3 @8 N  k6 `3 ]9 C/ T0 }. u代码语言:javascript6 C  {' g7 |$ y4 {2 X# Q; J& w
复制' h! r" T( n  I/ p1 J" |3 g6 p
[root@node1 ~]# vim /etc/xen/centos
/ n' o/ t. k. ^, x) B' g7 F" h" }/ m
vfb = [ 'vnc=1' ]% M9 q- w7 \% t% d; W1 @
2.3 通过windows远程连接
' j# T7 m2 H3 B; L7 j代码语言:javascript: R3 p! u* V5 Q+ ]2 j3 }. }
复制
0 ~9 a% B- I8 Q  {2 uvfb = [ 'vnc=1,vnclisten=0.0.0.0,vncpasswd=123456' ]( v# S; R1 t5 E) |* P* r
2.4$ z) U" T6 \3 B2 Q- j' i' X6 ]
五、使用Dom0中的物理磁盘分区为DomU提供存储空间$ F% n% @3 P! P6 ~" U
1、分区格式化! \' t4 f9 ^7 u; y! q2 N
代码语言:javascript
. S0 \) F; f  h  q# e复制
9 d  q5 M6 C( B& Z( afdisk /dev/sda1 n3 T9 T2 F$ {3 H- ?( X
Last cylinder, +cylinders or +size{K,M,G} (24134-32636, default 32636): +30G8 k) S2 F; g: [4 D. v2 K4 a7 e
/dev/sda11          24134       28050    31463302+  83  Linux
, Q8 ?/ _" u7 _
, E- W% V) L: q9 G% a; [- ACommand (m for help): t  X2 {+ P5 F6 R! m0 J
Partition number (1-11): 11
1 y7 z, {& `: K$ X$ J8 q% X% BHex code (type L to list codes): 8e
' w3 }: \4 R; V: x, W/dev/sda11          24134       28050    31463302+  8e  Linux LVM1 Q( Y8 w  G! W9 @3 b

$ I$ {" r- x  k# z( {: p* C" g: X[root@node1 ~]# partx -a /dev/sda7 F$ ]/ d3 L# {4 h2 S2 v* H" T$ s
[root@node1 ~]# partx -a /dev/sda
7 c/ E9 o; _6 E1.1 创建LVM卷. C* J- r; z5 W% e( _4 K+ G+ s
代码语言:javascript
  c$ ^4 G! [9 u0 Q& J复制0 Y( A2 y* a/ b( k
如果遇到系统grub损坏,进入拯救模式:9 L  A  h9 L% F  B) R! Z
# grub-install /dev/sda
% i2 Q+ B4 G& k* v2 G- V9 p# h
) J& y; v+ w! K6 S1 X. G创建物理卷
* ]7 J! B' I# o' @. t4 B" m# g8 D9 x[root@node1 ~]# pvcreate /dev/sda110 `% `( Y. M: r( ]. m
  Physical volume "/dev/sda11" successfully created
& M% o* U3 o. Q% ^2 x  C$ m
% \: ^: T0 Q7 u! ]( w) ]9 j4 c: D. y创建卷组:6 D2 N2 b, U/ f# G3 }
[root@node1 ~]# vgcreate myvg /dev/sda11  h- @% J7 Z* z; O* }& c1 M5 \
  Volume group "myvg" successfully created2 X/ j4 ^1 V7 B" D

% h+ a% r. \* C; l4 z& \0 B+ J' G1 ^, C创建名为“bbox”的逻辑卷" |# d, j( O0 L+ b
[root@node1 ~]# lvcreate -L 2G -n bbox myvg6 E1 w( k# `7 v0 w% g
  Logical volume "bbox" created.
9 R$ d. x3 B& X( ~& g% X0 A8 S1 T* j4 x, o6 c8 \* J6 r7 z9 M
格式化:
3 ^$ s% q' q4 l& G5 J& b[root@node1 ~]# mke2fs -t ext2 /dev/myvg/bbox6 f$ c/ @* C+ F, t; a( c* P
* e/ p$ Y8 J4 E
挂载:
7 S) u' r. e) r/ v# c[root@node1 ~]# mount /dev/myvg/bbox /mnt/2 w0 Z. r% A5 `7 z/ F2 ?0 F
2、提供映像文件
6 f, j2 U& m$ N2 Y: b代码语言:javascript
. L4 R3 g3 y* ~* ~7 g5 U' g复制, G) H' C4 K5 S" `- A9 t
[root@node1 ~]# cp -a busybox-1.22.1/_install/* /mnt/3 @" @9 |9 ?% A6 O
2.1 创建其他系统目录和文件1 ^! H2 n& M# n
代码语言:javascript( V  F3 j3 v& k1 Y6 u
复制7 C- Q/ q( n" f" i; c
[root@node1 mnt]# cd /mnt/
; b. a  V# m* C6 N* ~1 P[root@node1 mnt]# mkdir -pv proc dev sys tmp etc var boot usr
# [. V" l7 k" _3、提供虚拟机配置文件
6 g2 {+ N9 V* {4 U% h代码语言:javascript; W. U6 C( ~' Q  {& a' ^
复制
2 n' A7 L$ W& A  M* W5 ~# cd /etc/xen/
% E5 N/ k0 E  g[root@node1 xen]# cp busybox bbox
1 G7 H) t( G  M
& L, r6 _6 P. W" R[root@node1 xen]# vim bbox ) Y; r% e6 J9 K; S' Q' Z& x6 F
2 L- J- |! T% [6 J. b
name = "bbox-001"
: h3 {3 N8 r2 Ykernel = "/boot/vmlinuz"
3 \, N2 W# I8 s  framdisk = "/boot/initramfs.img"& ^9 W; {- D- f/ H  \7 _) x+ R
extra = "selinux=0 init=/bin/sh"
; c/ x& R  B* ovif = [ 'bridge=xenbr0' ]
! [+ O. d0 [4 M# c. f
1 l$ P+ u4 ~7 ddisk = [ '/dev/myvg/bbox,raw,xvda,rw' ]
# q) e. g( A. \# g1 {) n0 e4、启动测试* h+ `! B% U% D9 O1 c
代码语言:javascript! z$ y# S  {1 M$ M' G1 V$ M
复制7 I! a/ X% t$ V
查看生成的配置信息:
2 y2 ]' H  J# F7 L% [  ~9 j[root@node1 xen]# xl create bbox -n
- M, j( \, }3 T3 e) J) J5 k* n4 B5 I$ p
启动测试:5 m7 H3 R9 w9 Q! t1 {* ~: @6 @9 a; q& L
[root@node1 xen]# xl create bbox -c# N9 o% O5 C5 m& [5 m9 t

+ p/ d& ~" N9 y/ #
$ U8 g( v. ]) j$ o五、libvirt实现xen虚拟机管理: E) P6 c* k  b9 q% `
1、安装
5 I1 H1 Z- t) ^3 J0 V代码语言:javascript% S* i; {% _5 F: ]7 V% R+ c, C
复制& \, O! `) X  M- Y1 H) [2 g
[root@node1 xen]# yum install libvirt libvirt-daemon-xen.x86_64 virt-manager1 U$ R. g2 s$ M
1.1 启动服务5 {* F& J* ]* e- ^
代码语言:javascript
- q& L2 K# ~3 p1 C( u复制
, s0 Q" [) o2 T$ [[root@node1 xen]# service libvirtd start
" @! u/ ~; J7 F* q) \+ K% t) U2、 virt-manager
% ]$ L) O" n. Q0 H4 {+ N! A代码语言:javascript
/ W+ {) ~+ \' |复制
* X$ {% t$ j- Z8 r% q* R$ @' [) \启动,会弹出图形界面
- ?2 {3 I9 O7 b3 @. E; D[root@node1 xen]# virt-manager  H# p# N: B$ x( P9 z1 l

$ ^+ @5 ~- C. D$ R/ r% U- m弹出第一个窗口点 no
7 X3 e1 H4 I6 d0 }) p
: t$ ]4 w* c# a8 e. k
' e3 N/ ?& @# c( t% X# ?# [创建虚拟机:3 I* ~' W$ f' N* p' ~
# E1 u) _, d  r5 D1 |+ ~

& N0 K! N) {* V" y7 }* X4 K3 n% a5 a图形界面很简单,就不截图了。
3 B$ ^. u: K1 z' }% i5 ]7 j) p0 h# R

! P/ d' o9 C7 B$ m磁盘目录 /var/lib/libvirt/images/
- w# `' N( t7 N8 W, ^' V, z! w4 p+ ^5 L/ Q- u/ P2 o
4 I) y% R' r4 O& i; `' L( x
: e, D( o9 }" O$ X; d* t
3、安装virt
) N" l8 N$ Q. ~( Q0 h6 d0 B2 E7 I4 e9 H代码语言:javascript6 ~& L$ H* T* `2 k1 q$ T
复制
4 b% g" A. V; ?" _$ [4 {* O[root@node1 ~]# yum install libvirt-client
" W. P0 E; {. q0 r, V- r# x; [) K
9 g! Z  b, e+ U0 c. d[root@node1 ~]# virsh help
2 K! }$ z  `  M' V4 r/ L  P; K3.1" ~$ P. x* e; ^8 A/ G# m/ V& T
代码语言:javascript
- ?* f$ e( c# m- T( ~复制, E0 E- o0 o6 T, z1 B1 t( [* M
查看处于运行的虚拟机* Y, _  |, u% k9 S" q! e" K3 e  N% A
[root@node1 ~]# virsh list( X. d" Y9 B) f3 H
Id    Name                           State5 l+ K- ^9 V0 M' N5 W  H0 o* b
----------------------------------------------------
& D+ d3 k, C8 x5 Z; p2 E- h 0     Domain-0                       running
" |( R9 x6 v8 V% U) f+ Q7 E, m% U3 ?$ |+ f" x/ s
关闭虚拟机
' \3 @; C1 U( x% ?$ g+ u[root@node1 ~]# virsh destroy centos
  r/ U3 m' m0 x6 z
: F+ _7 n; b" h0 |7 v- w. G  o
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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