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

xen的基本命令

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2024-8-15 17:24:09 | 显示全部楼层 |阅读模式
虚拟机的组成部分9 `/ Y  x& x. N2 n
1.虚拟机配置文件
. h8 ^; [$ @7 O( X8 M; T* ~: b[root@localhost ~]# ls /etc/xen/' V; T2 L6 }6 N  w, r' E0 _
auto               scripts                              xend-pci-quirks.sxp      xmexample.hvm' h1 Z0 _3 s9 R% }
qemu-ifup      xend-config.sxp                xmexample1               xmexample.vti( M' H; ~* g( H' I: J
rhel5u8-1      xend-pci-permissive.sxp      xmexample2" R. o3 o+ |5 s1 {
2.储存虚拟机的介质
5 S! }$ W- r4 I& e' \% R1 u. J& k[root@localhost ~]# ls /var/lib/xen/p_w_picpaths/  [( F  {8 t  R: E, K6 f
rhel5u8-1.img
3 l- r0 L( G- O7 f9 H: Z" S1 H* f' k0 `) ^0 B2 q! u4 D7 v
#虚拟机的基本管理命令:查看、启动、关闭
+ ~: C6 `: u. O1 X2 v% F7 t% f# s使用xm查看虚拟机
2 \5 G- o& r4 j2 s4 V9 K[root@localhost ~]# xm list
- E# C1 R# `! R% }* |Name                                      ID Mem(MiB) VCPUs State   Time(s)% H6 [$ H( s: ]( V
Domain-0                                   0     3490     2 r-----    533.8
- Z) X: x8 Z- R1 {* p, h1 O2 B; J& u( {! `5 c* e
Domain-0 系统必须安装创建、管理、删除虚拟域的工具。它们包括 xm 和 xend 程序和服务。& h; U5 Q- x0 |4 ?5 I0 `5 @1 @+ }
尽量减少在 Domain-0 中运行程序和服务,Domain-0 中 CPU 的使用率直接影响其他虚拟域 CPU 资源的分配。* |0 d; @7 T: u- ?1 o$ `# a

6 a3 H% i" o# }5 K% H1 q* e#使用xm启动虚拟机) i3 Q8 f. |3 o. A
[root@localhost ~]# xm create rhel5u8-11 @8 a" U2 S% N3 [( L3 k
Using config file "/etc/xen/rhel5u8-1".
- O- o7 v0 b0 X% }1 SStarted domain rhel5u8-1. j& v4 ~, }4 T0 O
8 [0 w/ h2 c& C& S* w+ o$ c+ d! e
[root@localhost ~]# xm list1 ?( @3 v+ R9 d4 L0 i6 B
Name                                      ID Mem(MiB) VCPUs State   Time(s)1 q/ C' D, x( }2 S8 A* ]* u
Domain-0                                   0     3490     2 r-----    535.2: E% ^  V9 K3 Z" b/ \+ {  i+ T8 b8 i
rhel5u8-1                                  2      520     1 r-----      3.7
! ]  ]/ Y/ `0 ~8 |. L' A1 P" D, m5 B' W* C  ^* g
#使用xm关闭虚拟机2 j0 Y; E" C5 R. ]" u  h7 F8 d/ ^
[root@localhost ~]# xm shutdown 2; w- c# F! H9 b( [( W: o) x
! v. A! F; v5 F* l, }& d
#使用virsh查看虚拟机
( `0 J- T, v* F5 {: h- f[root@localhost ~]# virsh list
# S; G( V$ Z- |! Z3 P5 S+ ]( u Id Name                 State% l# O3 d& D4 d4 t9 r% P, J+ p; r' Q
----------------------------------
  U6 B* ]0 r+ U2 G0 C4 M  0 Domain-0             running/ G' p# h9 D) }
. M! y2 \& J5 D& ?3 p7 D
#使用virsh启动虚拟机' c' E, Y* s+ s" T$ |
[root@localhost ~]# virsh start rhel5u8-1
. U: p: H1 D: XDomain rhel5u8-1 started
6 N3 O& D0 `! O8 v! u& P! P% K& t. p8 z( e3 R& |! [4 F& P
[root@localhost ~]# virsh list
6 ^/ a% o! P/ K. C Id Name                 State1 a1 R: q" v- H: t
----------------------------------
5 @" k* {5 g3 P) F; Q- O  0 Domain-0             running
. U6 j; Q0 i, f% E. e  3 rhel5u8-1            running
& Y& K' B. e$ \3 W4 x3 [1 V. Q  M  `' r; ]) ~5 ^
#使用virsh关闭虚拟机8 [4 u8 j. ~1 Y. }$ p
[root@localhost ~]# virsh shutdown rhel5u8-1  r' Q; x6 E( a2 S
Domain rhel5u8-1 is being shutdown
3 f) s. t( u2 z, C& |
& z  z) b. a0 H7 o: m#制作客户机主要磁盘
; x* i4 I( ~2 @% fmkdir -p /data/vm0 M' H4 j, O) H! _: ~0 k0 E( b0 Y
dd if=/dev/zero of=/data/vm/CentOS_001.img bs=2k seek=4096k count=1. w+ R# L! ?% X; a# T
1.#制作客户机交换磁盘
6 s! b9 b8 @" q" o# M#dd if=/dev/zero of=/data/vm/swap.img bs=2k seek=512k count=1
: e# W' x: L8 Q/ X9 {3 B- Z* m; e
' ]4 n4 y" y/ `3 E9 V; e从本机切换到虚拟机的命令行(FristXen的地方换成你的虚拟机名字)
+ l9 g- a* y( V8 {$ u0 ]8 U  X0 Q; g; v: I; A& L% P3 t
[root@vps ~]# xm console FirstXen  D8 I3 m9 ]' \$ l6 v  m& |+ \
1 B- ^& G+ L2 L6 v' J! j( p
2.在物理机里确认已经启动的所有虚拟机和状态& U7 N$ s2 }9 W8 q( O$ \
) c2 A/ F7 E# {" g: E! T9 u
[root@vps ~]# xm list
) I6 e4 @9 a' k8 w, I( ?5 r1 b1 `9 e' W- N' u, m
3.启动,关闭,重启虚拟机(FristXen的地方换成你的虚拟机名字)
# j# I! C4 W5 c( i# J( u8 H# {  }& Z
[root@vps ~]# xm create/shutdown/reboot FirstXen, I$ N% ~$ ]. t# ~5 v) F
1 u, G9 t4 m- c
更多操作请执行xm help或者man xm
! R1 V# c1 o/ ~) t4.用virt-clone复制一个虚拟机,被复制的对象首先要处于关闭状态。
& ^( ]0 X# H: t4 ]) H% m我从FirstXen复制一个新的虚拟机命名为SqlNode1,img文件保存为/vps-hdc/vps1/SqlNode1.img
8 r/ G5 j2 H1 k3 L& z# h4 z$ ^/ f: S: C' ~& v8 G  }5 U5 h' F
+ y8 y: R3 h9 }7 [: U+ P- k( ~# e* S
[root@vps ~]# xm shutdown FirstXen1 T$ e% e$ F  A7 i
[root@vps ~]# virt-clone --original FirstXen --name SqlNode1 --file /vps-hdc/vps1/SqlNode1.img' {% R$ v/ \6 Q$ r$ y
Cloning/vps-hdc/vps1/FirstXen.img                       |  15 GB     02:56
& a4 z* P0 n2 ]( N1 M+ yClone'SqlNode1'created successfully.
% \* V" v9 k2 f3 V% e
% ]) ]& \* m1 `5 {' |, I, exm list               #查看各个域状态6 O4 y  S  i+ G& ?' f( b& L3 m
xm shutdown web_001   #关闭web_001这个虚拟机. N( M) }- e' N# n9 I
ctrl + ] 键切换到物理机. I% B+ h! @0 b
XM命令:7 [9 J% L( J8 Y( Q
    xm create vm1 #其中vm1 为虚拟机的配置文件,位于/etc/xen/vm/vm11 v0 M# K; z- d" f: C( f  f) X) P
    xm create -c vm1 #如果需要启动控制台,则可以运行命令4 h# F$ a  b# A0 s% x/ T: D5 E1 G* H" V/ X
    xm list #可以列出所有的虚拟机
& _, V8 m( C0 v4 P    xm console <domid> #可以显示某虚拟机的控制台
+ |2 ]! {; i" W% ]1 K. q: \5 U    xm reboot|shutdown <domid> #可以重起和关闭id 为domid 的虚拟机6 q. b4 ]! t/ K4 {4 ^) f+ H
    xm destroy <domid> #可以销毁id 为domid 的虚拟机) I- a- E, P1 f2 X# V4 d$ X
    xm console fc5 #从终端或控制台登录正在运行的虚拟操作系统0 e+ ^/ R7 C: X% L! [
    xm save <DomId> <File> # 存储正在运行的虚拟操作系统的状态
: k  l7 C& |# X9 f    xm restore <File> # 唤醒虚拟操作系统
7 s1 l. O! |; Z6 G  J    xm pause <DomId> #停止正在运行的虚拟操作系统" s# P. k* h( }: i, M  o3 g
    xm unpause <DomId> #激活停止的虚拟操作系统( n' P/ \& ^* m# R- Q% L0 K9 H
    xm mem-set <DomId> <Mem> #调整虚拟平台/虚拟操作系统的占用内存  o2 C5 E, e+ ]3 O5 `
    xm shutdown 虚拟操作系统的Name或DomID #关闭被虚拟的系统
$ L! c4 P6 p7 C! o( Z! T( }    xm destroy <DomId> #立即停止虚拟的系统 (重要);( h" o- a: ], m/ p! ]
    xm vcpu-set <DomId> <VCPUs> #调整虚拟平台及虚拟操作系统的虚拟CPU个数
' a% [- k8 H: V! n! u- k8 F    xm top 或 xentop # 查看虚拟系统运行的状态6 E, d  F/ I: [7 [/ }: S
    xm save VM1 VM1.chk # stop the domain and save its current state into a file called VM1.chk
$ I3 @: [+ f4 Q! i    xm restore VM1.chk #resume execution of this domain0 |' `: \% ?  Y
#如果觉得手动安装虚拟机比较麻烦,可以手动到 http://stacklet.com/去下载已经装好的镜像文件
$ h0 F  d5 u  Y. o! J# b' m#===============================  XEN虚拟机复制  ============
  A: ~& r- h# _% t$ R+ ~#关闭运行中的虚拟机
% d& C8 r2 n2 B5 V( Fxm shutdown web_001# w4 ]! D6 c3 ^2 Q
#复制虚拟机的镜像文件和配置文件
( k1 g5 K9 P/ ^, P3 Zcp /data/vm/web_001.img /data/vm/web_002.img) p% I# p* q$ ~" M
cp /etc/xen/web_001 /etc/xen/web_002; u! ^' B1 K: D0 c% q5 g
#修改新复制虚拟机的配置文件
$ @- a  I  K  |& C$ ^$ |vi /etc/xen/web_002( y* N4 H1 `& }# I0 i  W9 z) R
一般的情况下,xend服务器启动了,xenweb_0s也会自动启动。
' ~. q5 \1 \* p/ j+ g; m- d# /etc/init.d/xend start 启动xend4 \/ s7 N. G$ b: E4 P
# /etc/init.d/xend stop 停止xend
& |% b- R6 n3 L2 c+ Y% G9 ?& t# /etc/init.d/xend restart 重启xend
& d$ {7 W2 X/ P# /etc/init.d/xend status 查看xend状态
% t4 V  B" U+ a! w) {# /etc/init.d/xendomains start 启动xenweb_0s
- T0 j6 o+ t7 ?6 s8 z( O9 |( X# /etc/init.d/xendomains stop 停止xenweb_0s
! e' }# U3 J2 s/ l# /etc/init.d/xendomains restart 重启xenweb_0s
6 ~" G: c* O5 C/ @5 I# /etc/init.d/xendomains status 查看xenweb_0s状态' k4 z3 |) A' }2 G: I7 X
XEN控制虚拟主机的常用命令:
. h& @2 ^) t3 x# ^: |虚拟主机列表* I8 W+ \. ~8 N( s- g. P$ T
# xm list
; }4 M2 @( m/ K$ Q; [/ S关闭虚拟主机,web_001为虚拟主机名,也可用id代替
! A) j8 ?% U& F# xm shutdown web_001
4 e9 K- a$ U; E- k7 Q; c1 y启动一个虚拟主机,web_001为虚拟主机名
' z; D" f3 q, w& L) b, ?- Y; G; U# xm create web_001
! I' x- Z$ y4 t, G5 _# l4 w通过-c 参数调用 console 启动并跟踪虚拟主机状态
" B' z6 D0 |6 Z  C+ J# xm create web_001 -c
0 Q5 R7 C/ H* ], O2 B显示虚拟机的控制台
  Y2 }3 E; y& W4 r# xm console web_001$ s* h! K2 k; L# f
重起虚拟机
: C0 E- w: @  T2 `4 M8 f# xm reboot web_001: l- q; a2 h1 i1 k* u
销毁并立即停止虚拟机,类似关掉电源一样关机
/ U$ Y5 D( e" C$ x; b# xm destroy web_001* y$ J' C5 _- P% H/ {  s7 h* Q. f
存储正在运行的虚拟作系统的状态
% M" X2 ?+ W/ m6 Z# ?. B' o# xm save web_001 <File># Y  B1 P* j; {$ [
唤醒虚拟操作系统
3 Z- u( z- b# p9 K- c% P# xm restore <File>
& t$ b4 C7 _/ n: n暂停正在运行的虚拟操作系统" F1 m* N4 ?- s0 S; A
# xm pause web_001
+ t+ G5 o  o5 p9 Z) H- Y激活停止的虚拟操作系统
* R; b6 L0 d" r/ |" r5 ]7 l( W# Y# xm unpause web_001
- t; w% e6 q* @4 _& |. Y( t' b! @调整虚拟平台/虚拟操作系统的占用内存
+ p$ h) c/ s. f! l9 N% s# xm mem-set web_001  1289 K8 ]' N; k5 g9 r5 z, }
调整虚拟平台及虚拟操作系统的虚拟CPU个数
$ N2 ~6 y5 n  \1 f! @3 E5 w# xm vcpu-set web_001 2
5 z$ i! u% _8 t( Q3 A6 w1 K7 `查看虚拟系统运行的状态) a8 \' E5 i5 M" r/ f
# xm top+ a# [% J3 Z3 J/ Y
6 Y: y) W* B5 x
# xentop
* T' W, W$ C1 ?+ d使用virt-install 创建Xen虚拟机
$ }: @0 l- O5 d$ ^使用virt-install 创建Xen虚拟机 [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  {* ~! ]) S, @
-------------------------; v" A# V* x0 D3 }' l
virt-install 参数解析:" V9 z0 }4 e, d4 E+ s! E; e$ ?
-n  vm01-CentOS-5.5                          # 虚拟机的名称,这里我们的名称是  vm01-CentOS-5.55 _5 D/ H( a: r. u" o9 A
-r 1024                                              # 虚拟机的最大内存,单位 MB 。这里我们的内存是 1G& b! l8 H/ o; s0 q, w9 Y/ z
--vcpus=4                                          # 虚拟机的 CPU 数量,这里我们的数量是 2 个3 X, _# z8 d8 `. M6 O6 g2 D: N
-f  vm01-CentOS-5.5.img                   # 虚拟机虚拟硬盘的名称,我们这里用 vm01-CentOS-5.5.img
$ r$ I6 J, c. d' M% m2 _1 P--nographic                                        # 不安装图形界面。
. G  Y! G! ?. v3 [# c-l   nfs:10.10.113.14:/opt/CentOS/mirrors/5.5        # 系统的镜像路径。 Xen 只支持 FTP/HTTP/NFS! i, A, I5 V, r6 ?2 `* y
-------------------------
% h+ D4 `, J: Q. M3 n* ]. k) K" D6 ?# j7 I% G
创建完毕,在当前目录下,生成镜像文件 vm01-CentOS-5.5.img;* Y8 T, q& H( J; L. z* V8 H" g/ T
% V2 x! ]- C1 X
在 /etc/xen 目录下,生成虚拟机配置文件 vm01-CentOS-5.5;8 ~) W! C9 S* h1 \& g
安装xen) \7 x$ D( O- W7 w7 i4 z
Yum install xen*% i) i0 F, _* D/ o- z$ A8 Y
Xm list 查看xen/ d; u/ N; R+ f. J$ F" W) H
安装httpd服务 yum install httpd
. m/ |; [$ @: F9 P, ]9 v挂载光盘在xen上面装系统 mount  /dev/cdrom /var/www/html/iso4 v0 ?# L1 ~8 R! B6 l
看看能不能访问镜像  http://ip/iso
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 01:22 , Processed in 0.025929 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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