1. 程式人生 > >案例:使用KVM命令集管理虛擬機

案例:使用KVM命令集管理虛擬機

pri virt fun ble -o 虛擬 snap network ges

一、KVM基本功能管理

1、查看命令幫助

virsh -h 或者
virsh --help

技術分享圖片

2、查看KVM配置文件存放目錄

ls /etc/libvirt/qemu

3、查看虛擬機狀態

virsh list --all

4、虛擬機關機與開機

virsh shutdown c7-1 //關機
virsh start c7-1 //開機

  • 強制關閉關閉電源系統

virsh destroy c7-1

技術分享圖片

5、通過配置文件啟動虛擬機

virsh create /etc/libvirt/qemu/c7-1.xml
virsh list --all //查看啟動狀態

6、掛起虛擬機

virsh suspend c7-1

virsh list --all

技術分享圖片

7、恢復虛擬機

virsh resume c7-1
virsh list --all

技術分享圖片

8、配置虛擬機實例伴隨宿主機啟動自啟動

virsh autostart c7-1

  • 上述命令將創建/etc/libvirt/qemu/autostart/目錄,目錄內容為開機自啟動的系統。

9、導出虛擬機配置

  • 相當備份虛擬機

virsh dumpxml c7-1 > /etc/libvirt/qemu/c7-2.xml

10、虛擬機的添加與刪除

  • 首先需要關機,然後才能刪除

virsh shutdown c7-1
virsh undefine c7-1

  • 查看刪除結果,c7-1的配置文件會被刪除。也就是c7-1.xml會被刪除。
  • 而磁盤文件不會被刪除,也就是c7-1.raw不會被刪除。

virsh list --all

  • 通過查看狀態看不到c7-1信息,說明該虛擬機被刪除。

11、通過備份的配置文件重新定義虛擬機

cd /etc/libvirt/qemu
mv c7-2.xml c7-1.xml

  • 重新定義虛擬機

virsh define c7-1.xml

  • 查看虛擬機狀態

virsh list --all

12、修改虛擬機配置信息(修改系統內存大小、磁盤文件信息等)

vim /etc/libvirt/qemu/c7-1.xml

  • 或者通過virsh命令修改

virsh edit c7-1

技術分享圖片

二、KVM文件管理

1、轉換raw/img文件格式為qcow2

  • 首先查看當前磁盤文件格式

qemu-img info /vdir/c7-1.raw

技術分享圖片

  • 關閉虛擬機,轉換磁盤文件格式時,需要關閉虛擬機,且轉換完成後不影響虛擬機的使用。

virsh shutdown c7-1
qemu-img convert -f raw -O qcow2 /vdir/c7-1.raw /vdir/c7-1.qcow2

......

 <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type=‘file‘ device=‘disk‘>
      <driver name=‘qemu‘ type=‘qcow2‘/>
      <source file=‘/vdir/c7-1.qcow2‘/>
      <target dev=‘vda‘ bus=‘virtio‘/>
      <address type=‘pci‘ domain=‘0x0000‘ bus=‘0x00‘ slot=‘0x06‘ function=‘0x0‘/>
    </disk>
......

技術分享圖片

2、利用virt-cat查看虛擬機內部文件

  • virt-cat命令是由軟件包libguestfs-tools提供。

yum install libguestfs-tools -y

  • 安裝完成後,我們就可以像在終端中查看文件的形式一樣查看虛擬機內部文件,且該種查看方式不需要虛擬機在開啟中的狀態。

virt-cat -a /vdir/c7-1.qcow2 /etc/sysconfig/network

virt-cat -a /vdir/c7-1.qcow2 /etc/sysctl.conf

技術分享圖片

3、利用virt-edit命令編輯文件

virt-edit /vdir/c7-1.qcow2 /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
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="eth0"
UUID="65cab493-29f8-40d5-aab0-bbfff3e958b5"
DEVICE="eth0"
ONBOOT="yes"

技術分享圖片

4、virt-df查看虛擬機磁盤信息

virt-df -h c7-1

技術分享圖片

三、虛擬機快照

1、創建快照

  • 虛擬機想要使用快照功能,磁盤格式必須跟上一章一樣,磁盤文件格式必須為qcow2

virsh snapshot-create c7-1

  • 查看當前快照版本信息

virsh snapshot-current c7-1

  • 查看指定虛擬機快照信息

virsh snapshot-list c7-1

  • 創建新快照

virsh snapshot-create c7-1

2、恢復虛擬機狀態至1382572463

virsh snapshot-revent c7-1 1382572463

3、刪除快照

virsh snapshot-delete c7-1 1382572463

案例:使用KVM命令集管理虛擬機