- 积分
- 16843
在线时间 小时
最后登录1970-1-1
|

楼主 |
发表于 2019-11-19 14:28:17
|
显示全部楼层
4.KVM的相关命令7 U1 v2 L* N1 {- A3 R# j9 h
, [ h8 ]6 ?. p
) ?3 g3 g; h3 o; C
/ ?; U3 K/ t- M+ O/ C
4.1退出虚拟机
; m: \: |# t6 e0 C4 M
3 i- [* v. |. F0 _# L/ S4 ^ctrl + ]
. O O1 }2 c5 @# ^2 g
- `, |* O/ l; [8 V- ~4 \1 ]
3 H& M& k4 ]9 Z9 r% a/ Q4 \9 Y+ N0 q! y
4.2进入虚拟机
+ g! F C! }8 X2 ^/ }5 x! H. l) ? ?
) e3 p6 _, G# \% z8 t' ^4 q9 V: bvirsh console centos740 [: M" r, c& [$ }( Y
: H; a+ c+ q% x7 n) B& d
" ]8 T6 C# D3 `& d/ [
/ @- B1 j: C+ v# f; d. j3 Z# O- `4.3查看虚拟机的及状态 l" j, E3 S! n
0 `5 g1 Y1 `. j, H, ?2 `
virsh list& s, A; F9 R/ _$ B c0 p6 v
. |* j% a% F. c- d
virsh list --all
/ X) ^# o: E& m- W$ i
& y* T7 g/ m$ U, t% R3 U1 j( s X9 i* d# k: y
. e* L* N' D5 X6 H5 F0 {9 I4.4启动虚拟机
% o4 [; |; ^+ Y( S. i/ p3 r5 m, E) b$ \
virsh start centos74
/ [- g/ o! L( Y4 V8 h, L+ g5 O; o3 Z9 J( U2 A
$ A0 M. e% q8 t; e- y' h
. h a$ R0 y: J! @6 h' C6 F8 q& T4.5关闭虚拟机1 u2 j+ `- |0 J, S7 p- j }
# }# W$ j; r# b+ y+ S% _
virsh shutdown centos74
; Q% o# U2 ^9 b* |( R
% R, G9 ]4 w4 S0 {- Y7 N& b$ Y) w$ T
) Z5 ?! L+ n# B) J- W3 J4.6强制关闭虚拟机
( N& E4 ?9 U& D ^: E8 M
$ L: f- O/ z \" m, ~/ Tvirsh destroy centos74
) \( O" [: A2 i) k% v6 I$ ^- f1 D) ?9 I
# p9 ~+ l0 D. A6 h8 ^) x c0 X k; c- `8 O4 v; m
4.7删除虚拟机' l2 C8 w9 r# d0 H# ?2 w" p3 H
! Q; P9 u; f2 e, U! S/ H/ S8 c
virsh shutdown centos745 d8 d. s8 d, A) D
7 l) E' e" V: q: l0 ^' n% gvirsh undefine centos74
?; w2 ~1 ]! A; L# U" l
G0 F) A! V% d: v8 u
, }3 ~" O8 P) j% H0 G y2 J: x/ p
6 _, h0 W' b; s2 s8 f" w5.磁盘管理* K6 Z! S% u& v( e5 l/ E
0 d) l# }3 @ ?2 V" A5 v- k1 z7 O" K: \( G+ W9 M" g# i
% Q& V. Z" `/ |+ |
5.1查看当前虚拟机硬盘信息+ A8 ^% P# i( {( o, D- M
' C# k' l* A+ j4 o
[root@KVM ~]# qemu-img info /var/linux/images/centos74.img
6 N1 S3 P2 [0 @% M" H) }. u7 }9 J9 b/ P$ X8 ~, u4 y, v0 O
image: /var/linux/images/centos74.img
2 P4 `* [" Y- v) Z0 Z
( y" a+ v, Y( d, O/ R, F7 Gfile format: qcow2
) _8 N3 ~7 `1 p/ C* ]* G; {1 p% f+ |; p( |' |! F2 g. D
virtual size: 20G (21474836480 bytes)
7 V' X9 S6 O- | a- t+ N' L& r3 Q/ M) O" Q; ^5 D" L1 V2 @6 r
disk size: 1.2G6 B/ \/ f2 E1 ^8 _& g2 W+ t
: y! ] g! v* jcluster_size: 65536$ ?, x( I! o# s5 a
( R( @- @7 _" R: t* ^" D. H3 I: zFormat specific information:
8 m. a$ m0 t" ~& z7 k3 |
g! l& _ _7 p# F- M compat: 1.1+ f8 k1 x& T o3 L P$ F4 G
* _ ^$ d; k8 }. ?6 p
lazy refcounts: false9 k0 m( p5 H7 y- y& z
2 B @- Z0 F1 C) s* h8 Q* } refcount bits: 16
h, {& C! S) A8 H% |
; D6 F4 l' z' ] corrupt: false
! i: T5 k4 x0 J* G( Y. @( R, c
$ V* C+ N* y5 P8 t R# _3 u9 O% G1 P, Q$ b/ _
, s. `: z: d& ^+ Y
5.2转换磁盘格式(qcow2转换为raw)' F, t0 S, {8 Y5 M \) D
8 \+ I( s1 S8 V) {' n[root@KVM ~]# qemu-img convert -f qcow2 -O raw /var/linux/images/centos74.img /var/linux/images/centos74.img # ^3 P: r& I. v& r% P
* ]6 S$ d% W5 l2 Q
6 j h8 O, `) P
6 @3 G: N4 }# J* {# n5.3KVM虚拟机添加硬盘: w8 U1 `- `; i. ?( R4 \- d# h' q
) i3 {( S8 C1 H! {9 T& J" ?1 {
- k% U" b- z: b( }9 F& E5 [) n. l! ?
% U& ^% t7 C# `5.3.1创建一块新的硬盘
- s) [% b. e. Y- [
' B4 Q# D2 J2 j[root@KVM ~]# qemu-img create -f qcow2 /var/linux/images/centos74-add.qcow2 2G4 p4 m1 O K1 i) x$ e
& `! }3 c5 V) c0 @# a) A8 g7 ~
, G) B9 p( U7 k
* q2 D+ b j; p! _2 s
5.3.2查看创建的硬盘信息. q5 _( {" l) y" P& Q; R; U
" T! h% e0 r+ z9 f) S[root@KVM ~]# qemu-img info /var/linux/images/centos74-add.qcow2 ! h: S+ ]+ a% _0 E
* \! o8 i" l7 m( d' s! S* Vimage: /var/linux/images/centos74-add.qcow2. X" H# E% b# W" t7 I4 C2 U
$ K% D- K. U0 K" I1 Z, Cfile format: qcow29 d2 }3 p3 Z5 W
1 w" `; j8 P- X( K k
virtual size: 2.0G (2147483648 bytes)
J. l0 ^ W& g& E( c* v/ F: q0 p7 B0 ?5 N
disk size: 196K
# v! n6 L+ I1 o0 k6 x ^8 V! } I& z! y2 t& B, |1 B1 c
cluster_size: 65536
; E6 @5 E- ?2 }; \, T6 j; V4 b4 _! f( L8 ]' b3 {
Format specific information:
" y" Q* s" Q) W
4 A3 ?4 v6 I# q: P. F compat: 1.1
. o; U( a1 t: {: j6 Y# S8 O% `0 ~* e
lazy refcounts: false# q/ t! i& a6 e( J! k, i ?
5 ^& n4 \# H6 `6 |' m( N9 y! K
refcount bits: 16) H( [5 V' B9 k& b' S7 G
/ z, A$ I' H' j+ N* Y0 E- Y
corrupt: false
, b" B& a/ u0 m: r
+ T3 q! H: `* h4 M$ v* f+ G! M7 V" x5 q
7 C( k5 ~2 B: f6 W. v5 u5.3.3为虚拟机添加硬盘
7 S- c. i8 X0 C
+ \+ N/ N0 z! T! D3 p[root@KVM ~]# virsh attach-disk centos74 /var/linux/images/centos74-add.qcow2 vdb --live --cache=none --subdriver=qcow2, `4 T* o4 V2 O4 t; j5 u
& a6 ~4 f* G9 vDisk attached successfully7 d! z/ y! M7 i, g2 |# ~/ {
2 p7 S6 G5 d9 X0 Z8 N
4 x9 d9 T4 |2 y% i3 F* k
- y3 s' |5 `; O' l说明:vdb 第二块硬盘
1 T H/ K+ H$ m0 O% Z) L
& p1 B& }1 h, ~$ U q2 J( u( \ --live 热添加2 N2 v& t; G; L
* V, v* m" b; [5 P* B# t
--sudbriver 驱动类型
6 \* _9 q% G2 e# @% ~+ `
. a' q; g" }0 B& ]' m5 } detach-disk 分离磁盘设备
3 V; {& Q2 v' v
8 [* P4 c, J* Y7 H/ C attach-disk 附加磁盘设备8 y. M9 J8 t7 \' O( E
* z& w% p: z$ Y4 H& F
/ s' D# A, ?! G
5 `" z8 x7 ]- q3 {5.4格式化磁盘(在KVM虚拟机中操作)
, d- ] M7 l- `6 X# X7 Y+ ?3 u, Q
! h: Y- J/ K, Y5 u6 r[root@centos74 ~]# mkfs.xfs /dev/vdb3 F& \3 g( l9 w1 H) P
! d( o. i% I ?* \3 b
1 W' s8 c p' S4 Y; ^
8 O" C: `5 x. n2 L9 t, M6.快照管理8 B$ d4 j- ~0 V( d3 D
+ N7 D. `8 l- {. k- |8 i& W
; b% V. \. f7 n; H, O# j8 M
4 X: N8 r/ q2 i6.1创建快照+ k, ?7 \6 o& z) U
" i( y5 E6 b% J
[root@KVM ~]# virsh snapshot-create cnetos743 z( U1 a# X9 ?4 x- y
) v2 ~% t9 ]3 F# U$ I0 B
6 M. H8 U% ^0 y) W8 W' T) L
2 v2 k) K- i6 d* N4 J) k9 d; ^6.2查看主机快照列表
' p. M6 d: h' H2 t
5 Y# z1 a& o# {1 q[root@KVM ~]# virsh snapshot-list centos743 \8 t1 h. p6 l" c$ p( `, p8 a
& f2 E, R' q( c/ b
8 O( r: j; o$ p- z
* s# d: `* x3 r' [+ [$ b& |
6.3查看快照信息
4 y: O7 O- \6 _8 b+ _6 _
: ^- B2 H0 G, A3 |7 P9 h[root@KVM ~]# virsh snapshot-info centos74 --spanshotname 1516607756# N/ t1 z( C3 [3 d1 S
% |+ m7 {+ O5 D
' a9 f& r4 l% p8 b- P+ Q2 c
9 w O5 j' n# ?" M3 m# R; C% v6.4还原快照/ J5 F- g1 V5 N7 V! t/ x
' W- v# q# X9 W' ][root@KVM ~]# virsh snapshot-revert centos74 --spanshotname 1516607756' W/ I5 h3 b* u) | E8 Z
9 ^% ] r. C# e2 |8 ?. G* j
7 J0 [6 y' g2 k6 v5 ]# r1 i. {3 j
$ R+ i& c5 h$ h1 A0 s. Z# z6.5删除快照
/ v! x7 N2 w/ d) E; l0 @5 q# ]2 g- ^- ^' V. w/ C
[root@KVM ~]# virsh snapshot-delete centos74 --spanshotname 1516607756
5 @7 E. }* Z. {6 }9 L- O
8 h" i) q6 X7 e! P. ]& I' y1 \+ n; T. B- H( Z& H9 I' b
+ l+ Y( I" l9 K3 d# d
7.KVM虚拟机克隆3 y {) y7 U) j( T& w
( h7 n* i1 x+ K2 l7 @ _1 o* p3 e
[root@KVM ~]# virsh-clone --auto-clone -o centos747 S8 _3 u0 }% i% p
# a7 F K# f( W c" z# f9 t
3 N3 Y5 \6 m n+ x, }. T, `& M+ s: \. a
8.KVM虚拟机冷迁移
+ Z: C- j6 g: w; ?' Z) c
8 B: T+ U3 T8 P1 j% [
/ E4 L! A0 ~4 \* c t9 [# i& i( b; t% g+ H- \5 h
8.1在KVM02中安装kvm组件 c& P+ z7 k+ V/ c
) n% z3 ]. w! `! G* }6 @[root@KVM02 ~]# yum install -y libvirt* virt-* qemu-kvm*. b" i1 U5 z/ J3 P
5 Y+ {1 u, ]# R F& q; U' u' m
1 t7 B( D' z7 Z5 y0 j1 I
1 t z! f7 [% v" r: Y; Y% A8.2配置桥接网络% z' A; D& m4 E% A" q% O) E
: b$ O" v; T2 V9 ^4 }
[root@KVM 02~]# virsh iface-bridge eth0 br0: q, q# }; o# a8 d* Y
. B) R$ H) v/ i" B' v; N$ W
8 e4 h6 g$ {; x) j- p$ y x& _3 {
6 s% K& n$ H7 Z2 }. z, p4 X
8.3KVM主机将虚拟机关闭,导出配置文件
+ i9 K8 q- m3 y+ }: U& O/ F/ m, ]9 H z- o
[root@KVM ~]# virsh shutdown centos74
" d, s6 a+ O- o/ X# _( @4 Q% U* W" U* |7 P& Y b. D8 C; @
[root@KVM ~]# virsh dumpxml centos74 > centos74.xml
1 a4 F/ y: h6 [7 E
8 w. E& Q6 A O7 m* G
7 _7 U; H$ H# T4 M3 U2 i* j, G7 m) f: @& O% h
8.4将虚拟文件传输到KVM02上4 |6 G: g" P1 v/ ? G- x3 J; s) k
0 P+ s3 j& ^8 O4 j+ O$ N
[root@KVM ~]# scp -rp centos74.xml 10.0.0.102:/data" F- B, U3 ~3 N+ ?
$ _7 R1 U% D2 q4 G. [" @. d
' z/ {( h$ z( u# `
- \3 J0 a# l' h. r% t8.5KVM02主机导入文件
$ s# O2 p9 V- V; o" U5 Q
2 h9 ~! H' j/ ^ ^' E* c$ U[root@KVM02 ~]# virsh define centos74.xml
; D7 i. P! H7 }" }
7 s+ |5 G1 ]- e2 U+ x
H% @# G! h, f3 k! D* n2 ~* b Q5 k3 a/ @7 N9 V
8.6启动虚拟机- ?1 m1 L" p1 K% A* z
9 `0 g1 K* `2 |! l& h# c[root@KVM02 ~]# virsh start centos74
: S; e r& s7 W6 K, h! }7 t6 J0 C) }6 w# m+ J
7 G' Y) ]6 m6 z& }# ^. W
6 O' y5 o u: k
9.KVM虚拟机热迁移' t/ [! s# g8 t3 E
, L; ^ f) @! W* a. V+ K1 |
) D2 i* J6 _$ k7 \+ ?2 f! i B( F5 ?' A8 ?
9.1KVM虚拟机热迁移的核心
: X+ h9 O6 R# c* B y/ I% p( I: e5 w& ?: X" C6 H9 ~
共享存储。这里使用NFS共享存储(详情参考:https://blog.51cto.com/13520761/2087720)8 S/ d9 L9 b. N$ B1 F) S
% q4 d3 `' R. |. l1 O. x& A, T0 A
( q1 t4 ^/ J# j5 _- D
) t/ D1 r" g9 H$ L" Y/ s" J4 S2 n" P9.1安装virt-manager所需桌面及vnc-server1 L& y! B* m# ]( J$ y0 t/ W# E
z$ @5 P7 M+ e7 f[root@KVM ~]# yum groupinstall "GNOME Desktop" -y9 g' t3 Y. E0 H
# m W4 U K h4 i) i% s9 K, {9 S[root@KVM ~]# yum install -y tigervnc-server
5 O0 F8 V$ ?. T* m7 ^( }8 p8 l& X7 e* _
[root@KVM ~]# yum install -y opnssh-askpass
. E: C+ E! {' D! o6 v3 X2 C# h
1 X8 y1 ?0 R5 S0 F; f7 Z1 [2 f$ o {, w: p
4 |0 f* w1 @6 S: U. c, [4 v9.2复制vnc配置文件
; P' }# y2 ?7 |# F. z2 D3 [5 t5 j1 c l7 l4 B6 H1 J3 b1 l
[root@KVM ~]# cp /usr/lib/systemd/system/vncserver@.server /usr/lib/systemd/system/vncserver@\:1.server! ?/ K4 p- g: _4 y
# s5 O+ ^5 ]( E: [0 h% E
5 @& f! G1 Y- e) W# _3 ^
" h9 e2 j" o4 E; f; E9.3修改配置文件
9 x9 U0 ?+ `+ B3 I3 B4 t2 o# x7 |! f4 h# W- g* l( w2 B
[root@KVM ~]# % t, Z3 ]1 }% I! i
# n& L- U0 a. W% jegrep -v "^#|^$" /usr/lib/systemd/system/vncserver@\:1.service
; K: L. t: u0 C0 M
# x6 H7 P# q, G5 X[Unit]6 h. l6 `/ w6 Z, W4 @
8 v( h/ X8 d1 m+ V! ]
Description=Remote desktop service (VNC)# ^# e" ?: y1 U" Y
+ s, K# t3 ^9 D l, P3 i' E8 oAfter=syslog.target network.target8 ^4 v6 S% {3 [- z9 a
+ w; X$ `, U" @& _+ Z
[Service]! C1 A N3 T1 i4 {- V4 t
/ z$ ?9 s, w$ H" cType=forking
" G' W3 B$ G" Q& O
4 y8 B8 s5 ]" f4 h" X6 TUser=root; ? Q3 D8 c0 z' Z: q
1 C7 ? I$ b% f: W$ m: X% `5 GExecStartPre=-/usr/bin/vncserver -kill %i
( Y5 u! e$ l$ I) I& J
. a# I% k- a4 z1 C0 |' kExecStart=/usr/bin/vncserver %i& u1 h' S. v* j. J7 N5 E" d. Y6 Z
; e% Z& ^: {1 z ] Q0 \0 sPIDFile=/root/.vnc/%H%i.pid
# B: ^7 }3 [- ?
& i1 ~0 c! e' h) U7 {& ]ExecStop=-/usr/bin/vncserver -kill %i. V/ U# q: x# l6 E/ l1 K/ f
+ d. L1 [+ R& ]8 r/ d) C9 o
[Install]
/ L% g3 A. K' P* L
+ W9 D/ H z+ P$ |WantedBy=multi-user.target
6 H+ A8 o4 P3 a5 O
/ g" `, u* d6 ~! j
9 h7 q; O7 K; N5 X- P, o( q* }3 E' d4 M+ Z5 Y$ P% O0 y
9.4设置vnc连接时的密码
; X8 |/ F- p% n
+ Q7 g' p" j; I# Q, m# j[root@KVM ~]# vncpasswd) e: @5 H7 ?8 V6 x7 q
: R2 Q4 G/ ]4 W" X& s2 s, G
; w f2 f" Z+ p6 s6 n3 o
. c0 l r$ k" _2 f! e9.5启动vnc服务3 x( n! I+ U0 e( m
7 m$ x+ q& h; K4 S
[root@KVM ~]# systemctl start vncserver@\:1.services- Q" P7 z8 O& Q! i, x, H4 w* a
6 Z" N8 A C3 `' E1 |& U& ~
|
|