Centos部署KVM虛擬化平臺(可跟做)

一、KVM概述

KVM是Kernel Virtual Machine的簡寫,目前Linux發行版必須在64位的系統環境才能運行KVM,同時硬件需要支持VT技術。

1、案例前置知識點

KVM自Linux2.6.20版本後就直接整合到Linux內核,它依託CPU虛擬化指令集(如Intel-VT、AMD-V)實現高性能的虛擬化支持。由於與Linux內核高度整合,因此在性能、安全性、兼容性、穩定性上都有很好的表現。

下圖是一個簡單的KVM虛擬化架構,在KVM環境中運行的每個虛擬化操作系統都將表現位單個獨立的系統進程。因此它可以 很方便地與Linux系統中的安全模塊進行整合(SELinux),可以靈活地實現資源的管理及分配。
Centos部署KVM虛擬化平臺(可跟做)

二、實施案例

1、環境需求:

  • Centos操作系統3臺;
  • Windiws 7操作系統1臺;

所需鏡像和工具請訪問:https://pan.baidu.com/s/1fPhMgWJAjnmgJI5w267QCA
提取碼:7x2p

2、編輯虛擬機支持虛擬化

1)修改處理器爲2個,勾選虛擬化引擎

Centos部署KVM虛擬化平臺(可跟做)

2)檢查CPU是否支持虛擬化

[root@centos01 ~]# cat /proc/cpuinfo | grep vmx
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp

3、安裝KVM所需軟件

[root@centos01 ~]# ln -sf /lib/systemd/system/graphical.target 
/etc/systemd/system/default.target        
<!--將命令行改爲圖形化運行,重啓虛擬機即可生效-->
[root@centos01 ~]# rm -rf /etc/yum.repos.d/CentOS-*   
                                  <!--刪除系統自動yum源-->
[root@centos01 ~]# mount /dev/cdrom /mnt/ <!--掛載操作系統光盤-->
mount: /dev/sr0 寫保護,將以只讀方式掛載
[root@centos01 ~]# rpm -qa | grep qemu-kvm <!--檢查kvm模塊是否安裝-->
qemu-kvm-1.5.3-141.el7.x86_64
qemu-kvm-common-1.5.3-141.el7.x86_64
[root@centos01 ~]# rpm -qa | grep qemu-kvm-tools<!--檢查kvm調試工具是否安裝-->
[root@centos01 ~]# yum -y install qemu-kvm-tools <!--安裝調試工具-->
[root@centos01 ~]# rpm -qa | grep qemu-kvm-tools<!--檢查kvm調試工具是否安裝成功-->
qemu-kvm-tools-1.5.3-141.el7.x86_64
[root@centos01 ~]# rpm -qa | grep virt-install       
                        <!--檢查創建虛擬機工具是否安裝-->
[root@centos01 ~]# yum -y install virt-install <!--安裝創建虛擬機工具-->
[root@centos01 ~]# rpm -qa | grep virt-install<!--檢查創建虛擬機工具是否安裝成功-->
virt-install-1.4.1-7.el7.noarch
[root@centos01 ~]# rpm -qa | grep qemu-img<!--檢查磁盤管理工具是否安裝-->
qemu-img-1.5.3-141.el7.x86_64
[root@centos01 ~]# rpm -qa | grep bridge-utils<!--檢查網絡工具是否安裝-->
bridge-utils-1.5-9.el7.x86_64
[root@centos01 ~]# rpm -qa | grep libvirt<!--檢查虛擬機管理工具是否安裝-->
libvirt-daemon-driver-qemu-3.2.0-14.el7.x86_64
libvirt-client-3.2.0-14.el7.x86_64
libvirt-daemon-driver-interface-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-disk-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-core-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-mpath-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-iscsi-3.2.0-14.el7.x86_64
libvirt-daemon-kvm-3.2.0-14.el7.x86_64
libvirt-daemon-driver-nodedev-3.2.0-14.el7.x86_64
libvirt-gconfig-1.0.0-1.el7.x86_64
libvirt-daemon-driver-storage-rbd-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-scsi-3.2.0-14.el7.x86_64
libvirt-libs-3.2.0-14.el7.x86_64
libvirt-daemon-driver-network-3.2.0-14.el7.x86_64
libvirt-daemon-driver-nwfilter-3.2.0-14.el7.x86_64
libvirt-glib-1.0.0-1.el7.x86_64
libvirt-daemon-driver-storage-gluster-3.2.0-14.el7.x86_64
libvirt-daemon-3.2.0-14.el7.x86_64
libvirt-daemon-config-network-3.2.0-14.el7.x86_64
libvirt-gobject-1.0.0-1.el7.x86_64
libvirt-daemon-driver-storage-logical-3.2.0-14.el7.x86_64
libvirt-python-3.2.0-3.el7.x86_64
libvirt-daemon-driver-secret-3.2.0-14.el7.x86_64
[root@centos01 ~]# rpm -qa | grep virt-manager<!--檢查圖形管理虛擬機工具是否安裝-->
virt-manager-common-1.4.1-7.el7.noarch
[root@centos01 ~]# yum -y install virt-manager<!--安裝圖形管理虛擬機工具-->
[root@centos01 ~]# rpm -qa | grep virt-manager       
                          <!--檢查圖形管理虛擬機工具是否安裝成功-->
virt-manager-1.4.1-7.el7.noarch
virt-manager-common-1.4.1-7.el7.noarch
[root@centos01 ~]# lsmod | grep kvm <!--檢查虛擬化模塊是否開啓-->
kvm_intel             170086  0 
kvm                   566340  1 kvm_intel
irqbypass              13503  1 kvm
[root@centos01 ~]# systemctl start libvirtd <!--啓動虛擬化服務-->
[root@centos01 ~]# systemctl enable libvirtd      <!-設置開機自動啓動-->

4、使用WinSCP工具導入鏡像

1)使用winSCP將操作系統光盤導入到虛擬化管理器中(工具請訪問網盤自行提取)

Centos部署KVM虛擬化平臺(可跟做)

2)輸入IP地址和用戶名密碼,登錄即可

Centos部署KVM虛擬化平臺(可跟做)

3)跳過警告即可

Centos部署KVM虛擬化平臺(可跟做)

4)導入操作系統

Centos部署KVM虛擬化平臺(可跟做)

5)驗證是否上傳成功

[root@centos01 ~]# pwd    <!--查看當前位置-->
/root
[root@centos01 ~]# ls         <!--驗證是否上傳成功-->
anaconda-ks.cfg  CentOS-7.4-x86_64-1708.iso  initial-setup-ks.cfg

5、虛擬化管理器創建虛擬機

1)打開虛擬化管理器

[root@centos01 ~]# virt-manager
Centos部署KVM虛擬化平臺(可跟做)

2)創建新的虛擬機

Centos部署KVM虛擬化平臺(可跟做)

3)瀏覽操作系統光盤

Centos部署KVM虛擬化平臺(可跟做)

4)選擇光盤

Centos部署KVM虛擬化平臺(可跟做)

5)保持默認,單擊前進即可

Centos部署KVM虛擬化平臺(可跟做)
Centos部署KVM虛擬化平臺(可跟做)

6)自定義內存大小

Centos部署KVM虛擬化平臺(可跟做)

7)自定義磁盤大小

Centos部署KVM虛擬化平臺(可跟做)

8)自定義虛擬機名稱,單擊完成即可

Centos部署KVM虛擬化平臺(可跟做)

9)選擇第一行,回車鍵開始安裝

Centos部署KVM虛擬化平臺(可跟做)

10)開始初始化配置

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

Centos部署KVM虛擬化平臺(可跟做)

11)安裝完成,重啓虛擬機

Centos部署KVM虛擬化平臺(可跟做)

12)接受許可協議

Centos部署KVM虛擬化平臺(可跟做)

13)創建賬戶

Centos部署KVM虛擬化平臺(可跟做)

14)賬戶設置密碼

Centos部署KVM虛擬化平臺(可跟做)

三、虛擬化的基本管理使用

1)查看虛擬機運行狀態

[root@centos01 ~]# virsh list --all
 Id    名稱                         狀態
----------------------------------------------------
 2     centos                         running

2)關閉虛擬機

[root@centos01 ~]# virsh shutdown centos
域 centos 被關閉

3)啓動虛擬機

[root@centos01 ~]# virsh start centos
域 centos 已開始

4)設置虛擬機開機自動啓動

[root@centos01 ~]# virsh autostart centos
域 centos標記爲自動開始

5)強制關閉虛擬機

[root@centos01 ~]# virsh destroy centos
域 centos 被刪除

1、掛起和恢復虛擬機

1)掛起虛擬機

[root@centos01 ~]# virsh suspend centos
域 centos 被掛起

2)恢復掛起的虛擬機

[root@centos01 ~]# virsh resume centos
域 centos 被重新恢復

2、備份恢復虛擬機

1)備份虛擬機

[root@centos01 ~]# virsh dumpxml centos > /etc/libvirt/qemu/centos01.xml

2)刪除虛擬機

[root@centos01 ~]# virsh undefine centos
域 centos 已經被取消定義

3)查看備份的虛擬機

[root@centos01 ~]# cd /etc/libvirt/qemu/
[root@centos01 qemu]# ls
autostart  centos01.xml  networks

4)恢復虛擬機

[root@centos01 qemu]# virsh define centos01.xml 
定義域 centos(從 centos01.xml)

5)查看恢復虛擬機的運行狀態

[root@centos01 ~]# virsh list --all
 Id    名稱                         狀態
----------------------------------------------------
 4     centos                         running

6)修改虛擬機配置文件的兩種方法

[root@centos01 ~]# vim /etc/libvirt/qemu/centos.xml
[root@centos01 ~]# virsh edit centos

3、克隆和快照

1)克隆虛擬機

[root@centos01 ~]# virsh shutdown centos
域 centos 被關閉
[root@centos01 ~]# virt-clone -o centos -n centos02 -f /var/lib/libvirt/images/centos02.qcow2 
正在分配 'centos02.qcow2'                      |  30 GB  00:11     

成功克隆 'centos02'。

2)創建快照

[root@centos01 ~]# virsh snapshot-create centos
已生成域快照 1574274181

3)恢復快照

[root@centos01 ~]# virsh snapshot-revert centos 1574274181

4)查看快照

[root@centos01 ~]# virsh snapshot-list centos
 名稱               生成時間              狀態
------------------------------------------------------------
 1574274181           2019-11-21 02:23:01 +0800 shutoff

5)刪除快照

[root@centos01 ~]# virsh snapshot-delete centos 1574274181
已刪除域快照 1574274181

[root@centos01 ~]# virsh snapshot-list centos
 名稱               生成時間              狀態
------------------------------------------------------------

—————— 本文至此結束,感謝閱讀 ——————

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章