虛擬化

目錄

一、了解虛擬化
二衰齐、常見虛擬化軟件
三任斋、虛擬化架構(gòu)
四、KVM介紹
五耻涛、Centos7上安裝KVM
六废酷、配置網(wǎng)卡
七、創(chuàng)建虛擬機安裝Centos7
八犬第、虛擬機管理
九锦积、克隆虛擬機
十、快照管理
十一歉嗓、磁盤格式
十二丰介、磁盤擴容(raw)
十三、磁盤擴容(qcow2)
十四鉴分、調(diào)整cpu內(nèi)存和網(wǎng)卡
十五哮幢、遷移虛擬機

一、了解虛擬化

VMware Workstation就是虛擬化
虛擬化簡單講志珍,就是把一臺物理計算機虛擬成多臺邏輯計算機橙垢,每個邏輯計算機里面可以運行不同的操作系統(tǒng),相互不受影響伦糯,這樣就可以充分利用硬件資源
關(guān)鍵詞Hypervisor(VMM) 虛擬機管理器
虛擬化技術(shù)分為全虛擬化和半虛擬化
早期的CPU硬件不支持虛擬化柜某,虛擬機上的操作系統(tǒng)(guestos)要想使用cpu資源,需要通過VMM來翻譯指令敛纲,這個過程比較耗費資源喂击,這種虛擬化技術(shù)叫做全虛擬化(VMware Workstation)
半虛擬化技術(shù)通過修改guestos內(nèi)核,讓guestos可以直接使用CPU資源淤翔,而不需要翻譯指令了翰绊,從而節(jié)省了資源,但修改內(nèi)核比較雞肋(XEN)
后續(xù)cpu廠商直接支持虛擬化,不需要通過VMM翻譯指令了监嗜,無所謂半虛擬化和全虛擬化
參考 http://www.cnblogs.com/xusongwei/archive/2012/07/30/2615592.html http://itoedr.lofter.com/post/1472ba_69c62fa

二谐檀、常見虛擬化軟件

VMware系列
VMware workstation、VMware vsphere(VMware esxi)裁奇、VMware Fusion(Mac)
Xen 開源 半虛擬化
XenServer 商業(yè)桐猬,廠商Ctirx,基于Xen的
KVM 開源 基于linux內(nèi)核模塊
Hyper-V 商業(yè)框喳,廠商微軟
Openvz 開源 基于linux 虛擬機和宿主機共用一個內(nèi)核
VirtualBox 開源 Sun公司開發(fā) Oracle收購Sun
http://developer.huawei.com/ict/forum/thread-23385-1-1.html

三课幕、虛擬化架構(gòu)

參考 http://developer.huawei.com/ict/forum/thread-23385-1-1.html

四、KVM介紹

KVM是以色列初創(chuàng)公司Qumranet開發(fā)五垮,2008年9月RedHat公司收購了Qumranet
KVM是Linux內(nèi)核的一個模塊乍惊,它把Linux內(nèi)核變成了一個Hypervisor
KVM是完全開源的,RedHat基于KVM的虛擬化解決方案叫做RHEV
KVM在Linux操作系統(tǒng)里面以進程的形式出現(xiàn)放仗,由標準的Linux調(diào)度程序進行調(diào)度润绎,這使得KVM能夠使用Linux內(nèi)核的已有功能
只有一個KVM內(nèi)核模塊還不能實現(xiàn)虛擬化的全部功能,就好比操作系統(tǒng)只有內(nèi)核還不能成為一個完整的操作系統(tǒng)一樣
QEMU是一個開源的虛擬化軟件诞挨,純軟件莉撇,可以虛擬化所以的硬件,性能不強
KVM基于QEMU開發(fā)了一個能夠運行在用戶空間的工具QEMU-KVM
磁盤惶傻、網(wǎng)絡(luò)設(shè)備等都是通過QEMU-KVM這個工具模擬出來的
KVM和QEMU-KVM通信是通過/dev/kvm實現(xiàn)的
libvirt是用來管理KVM虛擬機的API棍郎,其命令為virsh

  • KVM架構(gòu)圖

五、Centos7上安裝KVM

前提是CPU支持虛擬化
虛擬機設(shè)置內(nèi)存4G银室,增加一個50G的虛擬磁盤涂佃,處理器2核,虛擬化引擎三個虛擬化相關(guān)的選項打上對勾
關(guān)閉iptables或者firewalld
關(guān)閉selinux
格式化新磁盤蜈敢,掛載到/kvm_data
檢查cpu參數(shù)是否支持虛擬化
grep -Ei 'vmx|svm' /proc/cpuinfo
安裝kvm
yum install -y virt-* libvirt bridge-utils qemu-img

[root@minglinux-01 ~] free  #內(nèi)存
              total        used        free      shared  buff/cache   available
Mem:        3863532      741024     2514740       45368      607768     2821328
Swap:       2097148           0     2097148
[root@minglinux-01 ~] cat /proc/cpuinfo| grep "cpu cores"| uniq  #核數(shù)
cpu cores   : 2
[root@minglinux-01 ~] grep -Ei 'vmx|svm' /proc/cpuinfo  #有vmx表示cpu支持虛擬化  
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm ibrs ibpb stibp tpr_shadow vnmi ept vpid fsgsbase tsc_adjust smep arat spec_ctrl intel_stibp arch_capabilities
···

#查看系統(tǒng)磁盤情況
[root@minglinux-01 ~] fdisk -l

磁盤 /dev/sda:32.2 GB, 32212254720 字節(jié)辜荠,62914560 個扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標簽類型:dos
磁盤標識符:0x000236bc

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      411647      204800   83  Linux
/dev/sda2          411648     4605951     2097152   82  Linux swap / Solaris
/dev/sda3         4605952    62914559    29154304   83  Linux

磁盤 /dev/sdb:53.7 GB, 53687091200 字節(jié),104857600 個扇區(qū)  #/dev/sdb就時新增的虛擬磁盤
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標簽類型:dos
磁盤標識符:0xbffc2ce5
···

#格式化磁盤
[root@minglinux-01 ~] mkfs.ext4 /dev/sdb
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdb is entire device, not just one partition!
無論如何也要繼續(xù)? (y,n) y
/dev/sdb is apparently in use by the system; will not make a 文件系統(tǒng) here!
[root@minglinux-01 ~] dmsetup status
vg1-lv1: 0 614400 linear 
[root@minglinux-01 ~] dmsetup remove_all
[root@minglinux-01 ~] mkfs.ext4 /dev/sdb
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdb is entire device, not just one partition!
無論如何也要繼續(xù)? (y,n) y
文件系統(tǒng)標簽=
OS type: Linux
塊大小=4096 (log=2)
分塊大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
3276800 inodes, 13107200 blocks
655360 blocks (5.00%) reserved for the super user
第一個數(shù)據(jù)塊=0
Maximum filesystem blocks=2162163712
400 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424

Allocating group tables: 完成                            
正在寫入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成   


#掛載磁盤并設(shè)置開機自動掛載
[root@minglinux-01 ~] blkid /dev/sdb
/dev/sdb: UUID="e2119ff0-fb55-4347-a381-495e519eb26e" TYPE="ext4" 
[root@minglinux-01 ~] mkdir /kvm_data
[root@minglinux-01 ~] mount /dev/sdb /kvm_data/
[root@minglinux-01 ~] vim /etc/fstab 
#文件最后加入如下一行
12 /dev/sdb           /kvm_data      ext4    defaults   0 0

#關(guān)閉iptables或者firewalld抓狭,關(guān)閉selinux
[root@minglinux-01 ~] systemctl stop firewalld
[root@minglinux-01 ~] systemctl stop iptables
[root@minglinux-01 ~] systemctl disable firewalld
[root@minglinux-01 ~] systemctl disable iptables
Removed symlink /etc/systemd/system/basic.target.wants/iptables.service.
[root@minglinux-01 ~] iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@minglinux-01 ~] getenforce 
Disabled

#最后安裝kvm
[root@minglinux-01 ~] yum install -y  virt-*  libvirt  bridge-utils qemu-img

六伯病、配置網(wǎng)卡

配置網(wǎng)卡,增加橋接網(wǎng)卡
設(shè)置一個br0網(wǎng)卡否过,TYPE為Bridge午笛,IP地址設(shè)置為ens33的ip
ens33配置文件里把IP地址去掉,增加BRIDGE=br0
檢查KVM模塊是否加載
lsmod|grep kvm
啟動libvirtd服務(wù)
systemctl start libvirtd
brctl show可以看到兩個網(wǎng)卡br0和virbr0

#設(shè)置br0橋接網(wǎng)卡苗桂,之前已經(jīng)創(chuàng)建過药磺,兩個網(wǎng)卡
[root@minglinux-01 ~] cat /etc/sysconfig/network-scripts/ifcfg-br0 
TYPE=Bridge
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0
#UUID=c0f01c3c-028a-4219-86db-bc442037da9b
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.162.130
GATEWAY=192.168.162.2
NETMASK=255.255.255.0
BROADCAST=192.168.162.255
DNS1=119.29.29.29
DNS2=8.8.8.8

[root@minglinux-01 ~] cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
#UUID=c0f01c3c-028a-4219-86db-bc442037da9b
DEVICE=ens33
ONBOOT=yes
#IPADDR=192.168.162.130
#GATEWAY=192.168.162.2
#NETMASK=255.255.255.0
#BROADCAST=192.168.162.255
#DNS1=119.29.29.29
BRIDGE=br0

[root@minglinux-01 ~] ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
    link/ether 00:0c:29:3f:e6:9f brd ff:ff:ff:ff:ff:ff
    inet6 fe80::20c:29ff:fe3f:e69f/64 scope link 
       valid_lft forever preferred_lft forever
3: ens37: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 00:0c:29:3f:e6:a9 brd ff:ff:ff:ff:ff:ff
4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:0c:29:3f:e6:9f brd ff:ff:ff:ff:ff:ff
    inet 192.168.162.130/24 brd 192.168.162.255 scope global br0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe3f:e69f/64 scope link 
       valid_lft forever preferred_lft forever

#檢查KVM模塊是否加載
[root@minglinux-01 ~] lsmod|grep kvm
kvm_intel             183720  0 
kvm                   578558  1 kvm_intel
irqbypass              13503  1 kvm

#啟動libvirtd服務(wù)
[root@minglinux-01 ~]  systemctl start  libvirtd
[root@minglinux-01 ~] ps aux |grep libvirtd
root      15584  3.6  0.4 1006920 15496 ?       Ssl  20:51   0:00 /usr/sbin/libvirtd
root      15774  0.0  0.0 112720   984 pts/0    S+   20:51   0:00 grep --color=auto libvirtd

#查看橋接網(wǎng)卡
[root@minglinux-01 ~] brctl show
bridge name bridge id       STP enabled interfaces
br0     8000.000c293fe69f   no      ens33
virbr0      8000.525400eae033   yes     virbr0-nic

七、創(chuàng)建虛擬機安裝Centos7

上傳centos7的鏡像文件到虛擬機
命令行安裝centos7
virt-install --name=minglinux01 --memory=512,maxmemory=1024 --vcpus=1,maxvcpus=2 --os-type=linux --os-variant=rhel7 --location=/data/CentOS-7-x86_64-DVD-1804.iso --disk path=/kvm_data/minglinux01.img,size=10 --bridge=br0 --graphics=none --console=pty,target_type=serial --extra-args="console=tty0 console=ttyS0"
各選項含義依次是虛擬機名稱誉察、內(nèi)存与涡、最大內(nèi)存(可在線調(diào)整內(nèi)存)惹谐、CPU核數(shù)持偏、CPU最大核數(shù)驼卖、操作系統(tǒng)類型、操作系統(tǒng)版本鸿秆、系統(tǒng)鏡像路徑(可以是鏡像網(wǎng)絡(luò)地址)酌畜、虛擬磁盤路徑名稱大小、橋接網(wǎng)卡名字卿叽、是否開啟圖形桥胞、一些終端屬性。

#rz工具最大支持2G的文件考婴,這里使用xftp傳輸
[root@minglinux-01 ~] ll CentOS-7-x86_64-DVD-1804.iso 
-rw-r--r-- 1 root root 4470079488 3月  22 21:09 CentOS-7-x86_64-DVD-1804.iso
[root@minglinux-01 ~] mv CentOS-7-x86_64-DVD-1804.iso /data/

#開始安裝
[root@minglinux-01 ~] virt-install --name=minglinux01 --memory=512,maxmemory=1024 --vcpus=1,maxvcpus=2 --os-type=linux --os-variant=rhel7 --location=/data/CentOS-7-x86_64-DVD-1804.iso --disk path=/kvm_data/minglinux01.img,size=10 --bridge=br0 --graphics=none --console=pty,target_type=serial --extra-args="console=tty0 console=ttyS0"

開始安裝......
搜索文件 .treeinfo......                                                      |  354 B  00:00:00     
搜索文件 vmlinuz......                                                        | 5.9 MB  00:00:00     
···
···
Installation    #出現(xiàn)一些安裝選項

 1) [x] Language settings                 2) [!] Time settings
        (English (United States))                (Timezone is not set.)
 3) [!] Installation source               4) [!] Software selectionb | Help: F1 
        (Processing...)                          (Processing...)
 5) [!] Installation Destination          6) [x] Kdump
        (No disks selected)                      (Kdump is enabled)
 7) [ ] Network configuration             8) [!] Root password
        (Not connected)                          (Password is not set.)
 9) [!] User creation
  Please make your choice from above ['q' to quit | 'b' to begin installation |
  'r' to refresh]: 
#感嘆號的選項需要進行選擇設(shè)置贩虾,語言時區(qū)什么的就不列出了,第8項密碼設(shè)置123456沥阱。最后選'b' to begin installation 


#第5項配置
Installation

 1) [x] Language settings                 2) [x] Time settings
        (Simplified Chinese (China))             (Asia/Shanghai timezone)
 3) [x] Installation source               4) [x] Software selection
        (Local media)                            (Minimal Install)
 5) [!] Installation Destination          6) [x] Kdump
        (No disks selected)                      (Kdump is enabled)
 7) [ ] Network configuration             8) [!] Root password
        (Not connected)                          (Password is not set.)
 9) [!] User creation
        (No user will be created)
  Please make your choice from above ['q' to quit | 'b' to begin installation |
  'r' to refresh]: 5
================================================================================
================================================================================
Probing storage...
Installation Destination

[x] 1) : 10 GiB (vda)

1 disk selected; 10 GiB capacity; 10 GiB free ...

  Please make your choice from above ['q' to quit | 'c' to continue |
  'r' to refresh]: c  
================================================================================
================================================================================
Autopartitioning Options

[ ] 1) Replace Existing Linux system(s)

[x] 2) Use All Space

[ ] 3) Use Free Space

Installation requires partitioning of your hard drive. Select what space to use
for the install target.

  Please make your choice from above ['q' to quit | 'c' to continue |
  'r' to refresh]: 2
================================================================================
================================================================================
Autopartitioning Options

[ ] 1) Replace Existing Linux system(s)

[x] 2) Use All Space

[ ] 3) Use Free Space

Installation requires partitioning of your hard drive. Select what space to use
for the install target.

  Please make your choice from above ['q' to quit | 'c' to continue |
  'r' to refresh]: c   
================================================================================
================================================================================
Partition Scheme Options

[ ] 1) Standard Partition

[ ] 2) Btrfs

[x] 3) LVM

[ ] 4) LVM Thin Provisioning

Select a partition scheme configuration.

  Please make your choice from above ['q' to quit | 'c' to continue |
  'r' to refresh]: 1  
================================================================================
================================================================================
Partition Scheme Options

[x] 1) Standard Partition

[ ] 2) Btrfs

[ ] 3) LVM

[ ] 4) LVM Thin Provisioning

Select a partition scheme configuration.

  Please make your choice from above ['q' to quit | 'c' to continue |
  'r' to refresh]: c
Generating updated storage configuration
Checking storage configuration...


  Please make your choice from above ['q' to quit | 'c' to continue |
  'r' to refresh]: c
Generating updated storage configuration
···
···
Running post-installation scripts
.
        Use of this product is subject to the license agreement found at /usr/share/centos-release/EULA

        Installation complete.  Press return to quit
域安裝仍在進行缎罢。您可以重新連接
到控制臺以便完成安裝進程。

#最后出現(xiàn)這哥退出提示時不需要按回車考杉,按ctrl+]退出安裝控制臺策精,虛擬機minglinux01會繼續(xù)進行重啟。
#直接按回車minglinux01進行重啟會導致宿主機也重啟了

八崇棠、虛擬機管理

安全完虛擬機需要重啟咽袜,要退出虛擬機使用快捷鍵ctrl ]
ps aux |grep kvm //查看kvm進程
virsh list //查看虛擬機列表,只能看到運行的虛擬機
virsh list --all //查看虛擬機列表枕稀,包括未運行的虛擬機
virsh console minglinux01//進入指定虛擬機
virsh shutdown minglinux01 //關(guān)閉虛擬機
virsh start minglinux01 //開啟虛擬機
virsh destroy minglinux01//類似stop询刹,這個是強制停止
virsh undefine minglinux01//徹底銷毀虛擬機,會刪除虛擬機配置文件抽莱,virsh list --all就看不到了
ls /etc/libvirt/qemu/ //可以查看虛擬機配置文件
virsh autostart minglinux01//宿主機開機該虛擬機也開機
virsh autostart --disable minglinux01//解除開機啟動
virsh suspend minglinux01//掛起
virsh resume minglinux01//恢復

[root@minglinux-01 ~] ls /kvm_data/
lost+found  minglinux01.img
[root@minglinux-01 ~] virsh list
 Id    名稱                         狀態(tài)
----------------------------------------------------

[root@minglinux-01 ~] virsh list --all
 Id    名稱                         狀態(tài)
----------------------------------------------------
 -     minglinux01                    關(guān)閉

[root@minglinux-01 ~] virsh start minglinux01
域 minglinux01 已開始

[root@minglinux-01 ~] virsh list
 Id    名稱                         狀態(tài)
----------------------------------------------------
 2     minglinux01                    running

[root@minglinux-01 ~] virsh suspend minglinux01
域 minglinux01 被掛起

[root@minglinux-01 ~] virsh list
 Id    名稱                         狀態(tài)
----------------------------------------------------
 2     minglinux01                    暫停

[root@minglinux-01 ~] virsh resume minglinux01
域 minglinux01 被重新恢復

[root@minglinux-01 ~] virsh list
 Id    名稱                         狀態(tài)
----------------------------------------------------
 2     minglinux01                    running

#進入虛擬機
[root@minglinux-01 ~] virsh console minglinux01
連接到域 minglinux01
換碼符為 ^]


CentOS Linux 7 (Core)
Kernel 3.10.0-862.el7.x86_64 on an x86_64

localhost login: root
密碼:
[root@localhost ~]# 
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:5e:a1:45 brd ff:ff:ff:ff:ff:ff

#自動獲取ip地址范抓,網(wǎng)段和宿主機一樣,這樣獲取到的ip是動態(tài)的食铐,也可以設(shè)置為靜態(tài)ip
[root@localhost ~]# dhclient eth0
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:5e:a1:45 brd ff:ff:ff:ff:ff:ff
    inet 192.168.162.132/24 brd 192.168.162.255 scope global dynamic eth0
       valid_lft 1798sec preferred_lft 1798sec
[root@localhost ~]# ping baidu.com
PING baidu.com (220.181.57.216) 56(84) bytes of data.
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=1 ttl=128 time=75.1 ms
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=2 ttl=128 time=99.7 ms
64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=3 ttl=128 time=114 ms
 
--- baidu.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 75.152/96.455/114.494/16.228 ms

[root@localhost ~]# yum install -y net-tools
[root@localhost ~]# ifconfig 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.162.132  netmask 255.255.255.0  broadcast 192.168.162.255
        ether 52:54:00:5e:a1:45  txqueuelen 1000  (Ethernet)
        RX packets 6461  bytes 11138596 (10.6 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3697  bytes 213441 (208.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 256  bytes 22272 (21.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 256  bytes 22272 (21.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

#看一下內(nèi)存大小匕垫、CPU核數(shù)和磁盤空間
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            479          87         140           6         251         228
Swap:          1023           0        1023
[root@localhost ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores   : 1
[root@localhost ~]# df -h
文件系統(tǒng)        容量  已用  可用 已用% 掛載點
/dev/vda3       8.0G  1.1G  7.0G   13% /
devtmpfs        486M     0  486M    0% /dev
tmpfs           496M     0  496M    0% /dev/shm
tmpfs           496M  6.7M  490M    2% /run
tmpfs           496M     0  496M    0% /sys/fs/cgroup
/dev/vda1      1014M  124M  891M   13% /boot
tmpfs            48M     0   48M    0% /run/user/0

#按ctrl+]退出minglinux01回到minglinxu-01
[root@minglinux-01 ~] top |grep qemu-kvm #有一個qemu-kvm進程,該進程占用多少資源對應(yīng)虛擬機minglinux01占用多少資源
 27255 qemu      20   0 1794888 498620   9752 S   1.0 12.9   1:11.75 qemu-kvm                           
 27255 qemu      20   0 1794888 498620   9752 S   1.0 12.9   1:11.78 qemu-kvm                           
 27255 qemu      20   0 1794888 498620   9752 S   1.0 12.9   1:11.81 qemu-kvm 

#查看虛擬機配置文件
[root@minglinux-01 ~] ls /etc/libvirt/qemu/
minglinux01.xml  networks

#虛擬磁盤文件虐呻,這個文件刪除虛擬機才是完全銷毀
[root@minglinux-01 ~] ls /kvm_data/
lost+found  minglinux01.img


九象泵、克隆虛擬機

virsh shutdown minglinux01
virt-clone --original minglinux01 --name minglinux02 --file /kvm_data/minglinux02.img
--original指定克隆源虛擬機
--name指定克隆后的虛擬機名字
--file指定目標虛擬機的虛擬磁盤文件
如果minglinux01虛擬機開機狀態(tài),則提示先關(guān)閉或者暫停虛擬機

[root@minglinux-01 ~] virsh shutdown minglinux01
[root@minglinux-01 ~] virt-clone --original minglinux01 --name minglinux02 --file /kvm_data/minglinux02.img
正在分配 'minglinux02.img'                                                    |  10 GB  00:02:37     

成功克隆 'minglinux02'斟叼。
[root@minglinux-01 ~] virsh list --all
 Id    名稱                         狀態(tài)
----------------------------------------------------
 -     minglinux01                    關(guān)閉
 -     minglinux02                    關(guān)閉

[root@minglinux-01 ~] ls /etc/libvirt/qemu/
minglinux01.xml  minglinux02.xml  networks

#啟動進入minglinux02
[root@minglinux-01 ~] virsh start minglinux02
[root@minglinux-01 ~] virsh console minglinux02
[root@localhost ~]# ifconfig 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.162.132  netmask 255.255.255.0  broadcast 192.168.162.255
        ether 52:54:00:bf:74:ab  txqueuelen 1000  (Ethernet)
        RX packets 233  bytes 13766 (13.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 41  bytes 3828 (3.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

十偶惠、快照管理

創(chuàng)建快照 virsh snapshot-create minglinux01
raw格式的虛擬磁盤不支持做快照,qcow2支持
qemu-img info /kvm_data/minglinux01.img //查看minglinux01.img信息朗涩,同時會查看到快照列表
virsh snapshot-list minglinux01 //列出所有快照
virsh snapshot-current minglinux01//查看當前快照版本
ls /var/lib/libvirt/qemu/snapshot/minglinux01//查看所有快照配置文件
virsh snapshot-revert minglinux01 1553268958//恢復指定快照
virsh snapshot-delete minglinux01 1553268958//刪除快照

[root@minglinux-01 ~] virsh snapshot-create minglinux01
已生成域快照 1553268958
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux01.img
image: /kvm_data/minglinux01.img
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 1.3G
cluster_size: 65536
Snapshot list:
ID        TAG                 VM SIZE                DATE       VM CLOCK
1         1553268958                0 2019-03-22 23:35:58   00:00:00.000
Format specific information:
    compat: 1.1
    lazy refcounts: true
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux02.img
image: /kvm_data/minglinux02.img
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 1.3G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: true
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux02.img
image: /kvm_data/minglinux02.img
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 1.3G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: true
[root@minglinux-01 ~] virsh snapshot-list minglinux01
 名稱               生成時間              狀態(tài)
------------------------------------------------------------
 1553268958           2019-03-22 23:35:58 +0800 shutoff
[root@minglinux-01 ~] virsh snapshot-current minglinux01
<domainsnapshot>
  <name>1553268958</name>
  <state>shutoff</state>
  <creationTime>1553268958</creationTime>
···
···
[root@minglinux-01 ~] virsh snapshot-create minglinux01
已生成域快照 1553269577
[root@minglinux-01 ~] virsh snapshot-list minglinux01
 名稱               生成時間              狀態(tài)
------------------------------------------------------------
 1553268958           2019-03-22 23:35:58 +0800 shutoff
 1553269577           2019-03-22 23:46:17 +0800 shutoff

[root@minglinux-01 ~] virsh snapshot-revert minglinux01 1553268958

[root@minglinux-01 ~] virsh snapshot-delete minglinux01 1553268958
已刪除域快照 1553268958

[root@minglinux-01 ~] virsh snapshot-list minglinux01
 名稱               生成時間              狀態(tài)
------------------------------------------------------------
 1553269577           2019-03-22 23:46:17 +0800 shutoff

#有寫東西不一樣
[root@minglinux-01 ~] du -sh /kvm_data/*
16K /kvm_data/lost+found
1.4G    /kvm_data/minglinux01.img
1.3G    /kvm_data/minglinux02.img
[root@minglinux-01 ~] ls -lh /kvm_data/minglinux0*
-rw------- 1 root root  11G 3月  22 23:35 /kvm_data/minglinux01.img
-rw------- 1 qemu qemu 1.3G 3月  22 23:39 /kvm_data/minglinux02.img

十一忽孽、磁盤格式

虛擬磁盤常用格式raw、qcow2
qemu-img info /kvm_data/minglinux01.img//查看虛擬磁盤格式
qemu-img create -f raw /kvm_data/minglinux01_2.img 2G//創(chuàng)建2G的raw格式磁盤
把raw格式的磁盤轉(zhuǎn)換為qcow2格式
qemu-img convert -O qcow2 /kvm_data/minglinux01_2.img /kvm_data/minglinux01_2.qcow2
轉(zhuǎn)換后用ls -lth查看磁盤文件的大小,可以看到qcow2文件比較小兄一,raw文件大小和我們指定空間大小一樣是2G厘线。
qcow2用多大就分多大,占用更小空間出革。
raw格式的磁盤性能比qcow2要好造壮,但是raw格式的磁盤無法做快照
給minglinux02轉(zhuǎn)換為raw格式的磁盤
virsh shutdown minglinux02
qemu-img convert -O raw /kvm_data/minglinux02.img /kvm_data/minglinux02_3.raw
virsh edit minglinux02//更改格式和文件路徑
virsh start minglinux02

#創(chuàng)建2G的raw格式磁盤
[root@minglinux-01 ~] qemu-img create -f raw /kvm_data/minglinux01_2.img 2G
Formatting '/kvm_data/minglinux01_2.img', fmt=raw size=2147483648 
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux01_2.img
image: /kvm_data/minglinux01_2.img
file format: raw
virtual size: 2.0G (2147483648 bytes)
disk size: 0

#把raw格式的磁盤轉(zhuǎn)換為qcow2格式
[root@minglinux-01 ~] qemu-img convert -O qcow2 /kvm_data/minglinux01_2.img /kvm_data/minglinux01_2.qcow2
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux01_2.img
image: /kvm_data/minglinux01_2.img
file format: raw
virtual size: 2.0G (2147483648 bytes)
disk size: 0
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux01_2.qcow2 
image: /kvm_data/minglinux01_2.qcow2
file format: qcow2
virtual size: 2.0G (2147483648 bytes)
disk size: 196K
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
#對比
[root@minglinux-01 ~] ls -lht /kvm_data/
總用量 2.6G
-rw-r--r-- 1 root root 193K 3月  22 23:51 minglinux01_2.qcow2
-rw-r--r-- 1 root root 2.0G 3月  22 23:50 minglinux01_2.img
-rw------- 1 qemu qemu 1.3G 3月  22 23:49 minglinux02.img
-rw------- 1 root root  11G 3月  22 23:47 minglinux01.img
drwx------ 2 root root  16K 3月  22 20:15 lost+found

#給minglinux02轉(zhuǎn)換為raw格式的磁盤
[root@minglinux-01 ~] qemu-img convert -O raw /kvm_data/minglinux02.img /kvm_data/minglinux02_3.raw

[root@minglinux-01 ~] ls -lht /kvm_data/
總用量 3.9G
-rw-r--r-- 1 root root  10G 3月  23 00:11 minglinux02_3.raw
-rw------- 1 root root 1.3G 3月  23 00:09 minglinux02.img
-rw-r--r-- 1 root root 193K 3月  22 23:51 minglinux01_2.qcow2
-rw-r--r-- 1 root root 2.0G 3月  22 23:50 minglinux01_2.img
-rw------- 1 root root  11G 3月  22 23:47 minglinux01.img
drwx------ 2 root root  16K 3月  22 20:15 lost+found

#修改minglinux02配置文件,更改格式和文件路徑
[root@minglinux-01 ~] virsh edit minglinux02
編輯了域 minglinux02 XML 配置骂束。
#修改內(nèi)容如下
     33       <driver name='qemu' type='raw'/>
     34       <source file='/kvm_data/minglinux02_3.raw'/>

#啟動minglinux02耳璧,可以看到啟動后其虛擬磁盤文件的屬主屬組后變?yōu)閝emu
[root@minglinux-01 ~] ls -l /kvm_data/
總用量 4057272
drwx------ 2 root root       16384 3月  22 20:15 lost+found
-rw-r--r-- 1 root root  2147483648 3月  22 23:50 minglinux01_2.img
-rw-r--r-- 1 root root      197120 3月  22 23:51 minglinux01_2.qcow2
-rw------- 1 root root 10739515904 3月  22 23:47 minglinux01.img
-rw-r--r-- 1 root root 10737418240 3月  23 00:11 minglinux02_3.raw
-rw------- 1 root root  1388707840 3月  23 00:09 minglinux02.img
[root@minglinux-01 ~] virsh start minglinux02
域 minglinux02 已開始

[root@minglinux-01 ~] ls -l /kvm_data/
總用量 4057272
drwx------ 2 root root       16384 3月  22 20:15 lost+found
-rw-r--r-- 1 root root  2147483648 3月  22 23:50 minglinux01_2.img
-rw-r--r-- 1 root root      197120 3月  22 23:51 minglinux01_2.qcow2
-rw------- 1 root root 10739515904 3月  22 23:47 minglinux01.img
-rw-r--r-- 1 qemu qemu 10737418240 3月  23 00:11 minglinux02_3.raw
-rw------- 1 root root  1388707840 3月  23 00:09 minglinux02.img

#給明minginux02創(chuàng)建快照  
[root@minglinux-01 ~] virsh snapshot-create minglinux02
錯誤:不支持的配置:存儲類型 vda 不支持磁盤 raw 的內(nèi)部快照

十二、磁盤擴容(raw)

qemu-img resize /kvm_data/minglinux02_3.raw +2G
qemu-img info /kvm_data/minglinux02_3.raw
virsh destroy minglinux02
virsh start minglinux02
virsh console minglinux02
fdisk -l 查看磁盤情況展箱,并分新的分區(qū)
除了對已有磁盤擴容外旨枯,還可以額外增加磁盤
qemu-img create -f raw /kvm_data/minglinux02_2.raw 5G
virsh edit minglinux02 //增加<disk>…</disk>,注意更改source混驰、target召廷、slot
virsh destroy minglinux02
virsh start minglinux02

#給minglinux02機器磁盤擴容
[root@minglinux-01 ~] ls -lh /kvm_data/
總用量 3.9G
drwx------ 2 root root  16K 3月  22 20:15 lost+found
-rw-r--r-- 1 root root 2.0G 3月  22 23:50 minglinux01_2.img
-rw-r--r-- 1 root root 193K 3月  22 23:51 minglinux01_2.qcow2
-rw------- 1 root root  11G 3月  22 23:47 minglinux01.img
-rw-r--r-- 1 qemu qemu  10G 3月  23 00:33 minglinux02_3.raw
-rw------- 1 root root 1.3G 3月  23 00:09 minglinux02.img
[root@minglinux-01 ~] qemu-img resize /kvm_data/minglinux02_3.raw +2G
Image resized.
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux02_3.raw
image: /kvm_data/minglinux02_3.raw
file format: raw
virtual size: 12G (12884901888 bytes)
disk size: 1.3G
#擴容后需重啟進入虛擬機才能生效
[root@minglinux-01 ~] virsh destroy minglinux02
域 minglinux02 被刪除

[root@minglinux-01 ~] virsh start minglinux02
域 minglinux02 已開始

[root@minglinux-01 ~] virsh console minglinux02
連接到域 minglinux02
···
[root@localhost ~]# fdisk -l

磁盤 /dev/vda:12.9 GB, 12884901888 字節(jié),25165824 個扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標簽類型:dos
磁盤標識符:0x00002d30

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     2099199     1048576   83  Linux
/dev/vda2         2099200     4196351     1048576   82  Linux swap / Solaris
/dev/vda3         4196352    20971519     8387584   83  Linux
#新增的2G磁盤空間是不能加現(xiàn)有分區(qū)的账胧,想要利用上這2G空間可以建立新的分區(qū)竞慢,不要把原來的分區(qū)破壞
[root@localhost ~]# fdisk /dev/vda
歡迎使用 fdisk (util-linux 2.23.2)。

更改將停留在內(nèi)存中治泥,直到您決定將更改寫入磁盤筹煮。
使用寫入命令前請三思。


命令(輸入 m 獲取幫助):p

磁盤 /dev/vda:12.9 GB, 12884901888 字節(jié)居夹,25165824 個扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標簽類型:dos
磁盤標識符:0x00002d30

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     2099199     1048576   83  Linux
/dev/vda2         2099200     4196351     1048576   82  Linux swap / Solaris
/dev/vda3         4196352    20971519     8387584   83  Linux

命令(輸入 m 獲取幫助):n
Partition type:
   p   primary (3 primary, 0 extended, 1 free)
   e   extended
Select (default e): p
已選擇分區(qū) 4
起始 扇區(qū) (20971520-25165823败潦,默認為 20971520):
將使用默認值 20971520
Last 扇區(qū), +扇區(qū) or +size{K,M,G} (20971520-25165823,默認為 25165823):
將使用默認值 25165823
分區(qū) 4 已設(shè)置為 Linux 類型准脂,大小設(shè)為 2 GiB

命令(輸入 m 獲取幫助):p

磁盤 /dev/vda:12.9 GB, 12884901888 字節(jié)劫扒,25165824 個扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標簽類型:dos
磁盤標識符:0x00002d30

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     2099199     1048576   83  Linux
/dev/vda2         2099200     4196351     1048576   82  Linux swap / Solaris
/dev/vda3         4196352    20971519     8387584   83  Linux
/dev/vda4        20971520    25165823     2097152   83  Linux

命令(輸入 m 獲取幫助):q
#磁盤擴容的方式外,還可以使用額外增加磁盤的方式給虛擬機擴容
#創(chuàng)建新的虛擬磁盤
[root@minglinux-01 ~] qemu-img create -f raw /kvm_data/minglinux02_2.raw 5G
Formatting '/kvm_data/minglinux02_2.raw', fmt=raw size=5368709120 
[root@minglinux-01 ~] qemu-img info /kvm_data/minglinux02_2.raw
image: /kvm_data/minglinux02_2.raw
file format: raw
virtual size: 5.0G (5368709120 bytes)
disk size: 0

#改配置文件
[root@minglinux-01 ~] virsh edit minglinux02
編輯了域 minglinux02 XML 配置狸膏。
#新增了一組<disk>…</disk>
     32     <disk type='file' device='disk'>
     33       <driver name='qemu' type='raw'/>
     34       <source file='/kvm_data/minglinux02_3.raw'/>
     35       <target dev='vda' bus='virtio'/>
     36       <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
     37     </disk>
     38     <disk type='file' device='disk'>
     39       <driver name='qemu' type='raw'/>
     40       <source file='/kvm_data/minglinux02_2.raw'/>
     41       <target dev='vdb' bus='virtio'/>
     42       <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
     43     </disk>
[root@minglinux-01 ~] virsh destroy minglinux02
域 minglinux02 被刪除

[root@minglinux-01 ~] virsh start minglinux02
域 minglinux02 已開始

[root@minglinux-01 ~] virsh console minglinux02

[root@localhost ~]# fdisk -l  #可以看到新增了一塊磁盤/dev/vdb

磁盤 /dev/vda:12.9 GB, 12884901888 字節(jié)沟饥,25165824 個扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤標簽類型:dos
磁盤標識符:0x00002d30

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048     2099199     1048576   83  Linux
/dev/vda2         2099200     4196351     1048576   82  Linux swap / Solaris
/dev/vda3         4196352    20971519     8387584   83  Linux

磁盤 /dev/vdb:5368 MB, 5368709120 字節(jié),10485760 個扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

十三湾戳、磁盤擴容(qcow2)

qemu-img resize /kvm_data/minglinux01.img +2G
若提示qemu-img: Can't resize an image which has snapshots贤旷,需要刪除快照
qemu-img info /kvm_data/minglinux01.img
virsh destroy minglinux01
virsh start minglinux01
virsh console minglinux01
fdisk -l 查看磁盤情況,并分新的分區(qū)
除了對已有磁盤擴容外砾脑,還可以額外增加磁盤
qemu-img create -f qcow2 /kvm_data/minglinux01_2.img 5G
virsh edit minglinux01 //增加<disk>…</disk>幼驶,注意更改source、target韧衣、slot
virsh destroy minglinux01
virsh start minglinux01

#第一種方法是對磁盤擴容
#minglinux01.img做過快照盅藻,對其進行擴容時會報錯
[root@minglinux-01 ~] qemu-img resize /kvm_data/minglinux01.img +2G
qemu-img: Can't resize an image which has snapshots
qemu-img: This image does not support resize
[root@minglinux-01 ~] virsh snapshot-delete minglinux01 1553269577
已刪除域快照 1553269577

[root@minglinux-01 ~] qemu-img resize /kvm_data/minglinux01.img +2G
Image resized.

#第二種方法是增加磁盤
#其實和raw類型的一樣的购桑,就不多試了

十四、調(diào)整cpu內(nèi)存和網(wǎng)卡

virsh dominfo minglinux01 //查看配置
virsh edit minglinux01//更改如下部分內(nèi)容
<memory unit='KiB'>1048576</memory>
<currentMemory unit='KiB'>624288</currentMemory>
<vcpu placement='static' current='1'>2</vcpu>
virsh shutdown minglinux01
virsh start minglinux01
virsh setmem minglinux01 800m//動態(tài)調(diào)整內(nèi)存
virsh dumpxml minglinux01 > /etc/libvirt/qemu/minglinux01.xml//需要把配置寫入到配置文件里
virsh setvcpus minglinux01 2 //動態(tài)調(diào)整cpu數(shù)量
virsh domiflist minglinux01//查看網(wǎng)卡
virsh attach-interface minglinux01 --type bridge --source virbr0//增加一塊新的網(wǎng)卡氏淑,并設(shè)置為nat網(wǎng)絡(luò)模式(virbr0類似vmware的vmnet8)其兴,這里如果寫--source br0,則網(wǎng)絡(luò)模式為橋接
virsh dumpxml minglinux01 > /etc/libvirt/qemu/minglinux01.xml//需要把配置寫入到配置文件里

#查看虛擬機配置
[root@minglinux-01 ~] virsh dominfo minglinux01
Id:             -
名稱:       minglinux01
UUID:           c3abff95-a517-40d3-9053-13e100858e8a
OS 類型:    hvm
狀態(tài):       關(guān)閉
CPU:          1
最大內(nèi)存: 1048576 KiB
使用的內(nèi)存: 524288 KiB
持久:       是
自動啟動: 禁用
管理的保存: 否
安全性模式: none
安全性 DOI: 0

#改配置文件方式調(diào)整內(nèi)存
[root@minglinux-01 ~] virsh edit minglinux01
#更改如下部分內(nèi)容
···
      5   <currentMemory unit='KiB'>624288</currentMemory>
      6   <vcpu placement='static' current='2'>2</vcpu>
···
[root@minglinux-01 ~] virsh console minglinux01
連接到域 minglinux01
換碼符為 ^]


CentOS Linux 7 (Core)
Kernel 3.10.0-862.el7.x86_64 on an x86_64

localhost login: root
密碼:
Last login: Sat Mar 23 02:05:46 on ttyS0
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            577          84         380           6         112         352
Swap:          1023           0        1023

#直接在線動態(tài)調(diào)整內(nèi)存
[root@minglinux-01 ~] virsh setmem minglinux01 800m

[root@minglinux-01 ~] virsh dominfo minglinux01
Id:             10
名稱:       minglinux01
UUID:           c3abff95-a517-40d3-9053-13e100858e8a
OS 類型:    hvm
狀態(tài):       running
CPU:          1
CPU 時間:   62.7s
最大內(nèi)存: 1048576 KiB
使用的內(nèi)存: 819200 KiB
持久:       是
自動啟動: 禁用
管理的保存: 否
安全性模式: none
安全性 DOI: 0
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            767          84         570           6         112         542
Swap:          1023           0        1023

#動態(tài)調(diào)整cpu數(shù)量
[root@minglinux-01 ~] virsh setvcpus minglinux01 2

[root@minglinux-01 ~] virsh dominfo minglinux01
Id:             10
名稱:       minglinux01
UUID:           c3abff95-a517-40d3-9053-13e100858e8a
OS 類型:    hvm
狀態(tài):       running
CPU:          2
CPU 時間:   64.0s
最大內(nèi)存: 1048576 KiB
使用的內(nèi)存: 819200 KiB
持久:       是
自動啟動: 禁用
管理的保存: 否
安全性模式: none
安全性 DOI: 0
[root@minglinux-01 ~] virsh setvcpus minglinux01 1 #減少不行
錯誤:不支持的配置:failed to find appropriate hotpluggable vcpus to reach the desired target vcpu count

#如下命令把配置寫入到配置文件里讓虛擬機重啟還生效
[root@minglinux-01 ~] virsh dumpxml minglinux01 > /etc/libvirt/qemu/minglinux01.xml
#virsh edit minglinux01看到的內(nèi)容沒有改變夸政,實際上配置文件minglinux01.xml的內(nèi)容已經(jīng)改變了,重啟虛擬機就會加載配置文件中設(shè)定的配置

#查看網(wǎng)卡
[root@minglinux-01 ~] virsh domiflist minglinux01
接口     類型     源        型號      MAC
-------------------------------------------------------
vnet0      bridge     br0        virtio      52:54:00:5e:a1:45

#增加一塊新的網(wǎng)卡榴徐,設(shè)置為nat網(wǎng)絡(luò)模式
[root@minglinux-01 ~] virsh attach-interface minglinux01 --type bridge --source virbr0
成功附加接口

[root@minglinux-01 ~] virsh domiflist minglinux01
接口     類型     源        型號      MAC
-------------------------------------------------------
vnet0      bridge     br0        virtio      52:54:00:5e:a1:45
vnet1      bridge     virbr0     rtl8139     52:54:00:5f:83:e0

#增加一塊新的網(wǎng)卡守问,設(shè)置為橋接模式
[root@minglinux-01 ~] virsh attach-interface minglinux01 --type bridge --source br0
成功附加接口

[root@minglinux-01 ~] virsh domiflist minglinux01
接口     類型     源        型號      MAC
-------------------------------------------------------
vnet0      bridge     br0        virtio      52:54:00:5e:a1:45
vnet1      bridge     virbr0     rtl8139     52:54:00:5f:83:e0
vnet2      bridge     br0        rtl8139     52:54:00:0f:bf:b2

#進入虛擬機查看網(wǎng)卡
[root@localhost ~]# ifconfig 
ens9: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.122.105  netmask 255.255.255.0  broadcast 192.168.122.255
        inet6 fe80::6ccd:d72b:1815:8830  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:5f:83:e0  txqueuelen 1000  (Ethernet)
        RX packets 24  bytes 2429 (2.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 67  bytes 6396 (6.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens10: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.162.133  netmask 255.255.255.0  broadcast 192.168.162.255
        inet6 fe80::de66:f443:b986:538d  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:0f:bf:b2  txqueuelen 1000  (Ethernet)
        RX packets 128  bytes 6456 (6.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 13  bytes 1454 (1.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 52:54:00:5e:a1:45  txqueuelen 1000  (Ethernet)
        RX packets 5376  bytes 262940 (256.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
#ens9是NAT模式,ens10是橋接模式

#當前的修改只保存在了內(nèi)存里坑资,如果想網(wǎng)卡修改永久生效還需要把配置寫入到配置文件中
[root@minglinux-01 ~] virsh dumpxml minglinux01 > /etc/libvirt/qemu/minglinux01.xml

十五耗帕、遷移虛擬機

該方式要確保虛擬機是關(guān)機狀態(tài)
virsh shutdown minglinux01
virsh dumpxml minglinux01 > /etc/libvirt/qemu/minglinux03.xml // 如果是遠程機器,需要把該配置文件拷貝到遠程機器上
virsh domblklist minglinux01 //查看虛擬機磁盤所在目錄
rsync -av /kvm_data/minglinux01.img /kvm_data/minglinux03.img //如果是遷移到遠程袱贮,則需要把該磁盤文件拷貝到遠程機器上
vim /etc/libvirt/qemu/minglinux03.xml //因為是遷移到本機仿便,配置文件用的是minglinux01子機的配置,不改會有沖突攒巍,所以需要修改該文件嗽仪,如果是遠程機器不用修改
修改domname: <name>minglinux03</name>
修改uuid(隨便改一下數(shù)字,位數(shù)不要變)
修改磁盤路徑
virsh define /etc/libvirt/qemu/minglinux03.xml //定義新虛擬機
virsh list --all //會發(fā)現(xiàn)新遷移的minglinux03子機

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末柒莉,一起剝皮案震驚了整個濱河市闻坚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌兢孝,老刑警劉巖窿凤,帶你破解...
    沈念sama閱讀 223,207評論 6 521
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異跨蟹,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,455評論 3 400
  • 文/潘曉璐 我一進店門搓扯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來介劫,“玉大人,你說我怎么就攤上這事痢艺∏薏ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 170,031評論 0 366
  • 文/不壞的土叔 我叫張陵腹备,是天一觀的道長衬潦。 經(jīng)常有香客問我,道長植酥,這世上最難降的妖魔是什么镀岛? 我笑而不...
    開封第一講書人閱讀 60,334評論 1 300
  • 正文 為了忘掉前任弦牡,我火速辦了婚禮,結(jié)果婚禮上漂羊,老公的妹妹穿的比我還像新娘驾锰。我一直安慰自己,他們只是感情好走越,可當我...
    茶點故事閱讀 69,322評論 6 398
  • 文/花漫 我一把揭開白布椭豫。 她就那樣靜靜地躺著,像睡著了一般旨指。 火紅的嫁衣襯著肌膚如雪赏酥。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,895評論 1 314
  • 那天谆构,我揣著相機與錄音裸扶,去河邊找鬼。 笑死搬素,一個胖子當著我的面吹牛呵晨,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播熬尺,決...
    沈念sama閱讀 41,300評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼摸屠,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了粱哼?” 一聲冷哼從身側(cè)響起餐塘,我...
    開封第一講書人閱讀 40,264評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎皂吮,沒想到半個月后戒傻,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,784評論 1 321
  • 正文 獨居荒郊野嶺守林人離奇死亡蜂筹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,870評論 3 343
  • 正文 我和宋清朗相戀三年需纳,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片艺挪。...
    茶點故事閱讀 40,989評論 1 354
  • 序言:一個原本活蹦亂跳的男人離奇死亡不翩,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出麻裳,到底是詐尸還是另有隱情口蝠,我是刑警寧澤,帶...
    沈念sama閱讀 36,649評論 5 351
  • 正文 年R本政府宣布津坑,位于F島的核電站妙蔗,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏疆瑰。R本人自食惡果不足惜眉反,卻給世界環(huán)境...
    茶點故事閱讀 42,331評論 3 336
  • 文/蒙蒙 一昙啄、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧寸五,春花似錦梳凛、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,814評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至十性,卻和暖如春叛溢,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背烁试。 一陣腳步聲響...
    開封第一講書人閱讀 33,940評論 1 275
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留拢肆,地道東北人减响。 一個月前我還...
    沈念sama閱讀 49,452評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像郭怪,于是被迫代替她去往敵國和親支示。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,995評論 2 361

推薦閱讀更多精彩內(nèi)容