1. 程式人生 > >項目實戰13—企業級虛擬化Virtualization - KVM技術

項目實戰13—企業級虛擬化Virtualization - KVM技術

重啟網絡服務 切換 開源 monit bridge dbr linux ping 遠程

項目實戰系列,總架構圖 http://www.cnblogs.com/along21/p/8000812.html

KVM的介紹、準備工作和qemu-kvm 命令詳解

1、介紹

(1)介紹

  KVM:就是Keyboard Video Mouse的縮寫。KVM 交換機通過直接連接鍵盤、視頻和鼠標 (KVM) 端口,讓您能夠訪問和控制計算機。KVM 技術無需目標服務器修改軟件。這就意味著可以在 Windows 的 BIOS 環境下,隨時訪問目標計算機。KVM 提供真正的主板級別訪問,並支持多平臺服務器和串行設備。

  KVM 技術已經從最初的基礎SOHO辦公型,發展成為企業 IT 基礎機房設施管理系統。可以從kvm 客戶端管理軟件輕松的直接訪問位於多個遠程位置的服務器和設備。KVM over IP 解決方案具備完善的多地點故障轉移功能、符合新服務器管理標準 (IPMI) 的直接界面,以及將本地存儲媒體映射至遠程位置的功能。

  KVM 是個"怪胎",原本是類型2 的主機虛擬化;但一旦在OS 上加載了kvm.ko 模塊,就會"感染"OS,使其變為hypervisor(kvm),原本的軟件空間作為控制臺,轉化成類型1 模式的主機虛擬化

技術分享圖片

(2)KVM的組件

① kvm.ko:模塊

  API 應用程序編程接口

qemu-kvm:用戶空間的工具程序;

  qemu-KVM是一種開源虛擬器,它為KVM管理程序提供硬件仿真。

   運行中的一個kvm虛擬機就是一個qemu-kvm進程,運行qemu-kvm程序並傳遞給它合適的選項及參數即能完成虛擬機啟動,終止此進程即能關閉虛擬機;

③ libvirt 虛擬化庫:Libvirt是一個C工具包,可以與最近版本的Linux(以及其他操作系統)的虛擬化功能進行交互。主包包含了導出虛擬化支持的libvirtd服務器。

  C/S:

    Client:

      libvirt-client

      virt-manager

  Daemon:

    libvirt-daemon

(3)KVM模塊load進內存之後,系統的運行模式:

  內核模式:GuestOS執行IO類的操作時,或其它的特殊指令操作時的模式;它也被稱為"Guest-Kernel"模式;

  用戶模式:Host OS的用戶空間,用於代為GuestOS發出IO請求;

  來賓模式:GuestOS的用戶模式;所有的非IO類請求

2、使用KVM 的準備

(1)前提:

① 必須跑在x86 系統的架構上

② 必須支持硬件級虛擬化

  vmx:Intel VT-x

  svm:AMD AMD-v

③ 在虛擬機上再虛擬化,需開啟虛擬化 Intel VT-x/EPT

技術分享圖片

(2)判斷CPU是否支持硬件虛擬化:

[root@master ~]# grep -i -E ‘(vmx|svm|lm)‘ /proc/cpuinfo

註意:vmx 或 svm 必須出現一個,表示是支持的

  vmx:Intel VT-x

  svm:AMD AMD-v

技術分享圖片

(3)安裝前準備

① 裝載KVM 模塊

[root@master ~]# yum install libvirt-daemon-kvm qemu-kvm virt-manager -y

[root@master ~]# modprobe kvm 裝載kvm 模塊

② 檢測kvm 模塊是否裝載

[root@master ~]# lsmod |grep kvm

技術分享圖片

[root@master ~]# ll /dev/kvm 字符設備

技術分享圖片

③ 安裝用戶端工具 qemu-kvm

[root@master ~]# yum install libvirt-daemon-kvm qemu-kvm virt-manager -y

3、qemu-kvm命令語法

qemu-kvm [options] [disk_image]

選項有很多類別:標準選項、塊設備相關選項、顯示選項、網絡選項、...

(1)標準選項:
  -machine [type=]name:-machine help來獲取列表,用於指定模擬的主機類型; 
  -cpu cpu:-cpu help來獲取列表;用於指定要模擬的CPU型號;
  -smp n[,maxcpus=cpus][,cores=cores][,threads=threads]多少線程[,sockets=sockets]多少核:指明虛擬機上vcpu的數量及拓撲;
  -boot [order=drives][,once=drives]只用一次(如按照系統時只用一次光盤引導)[,menu=on|off] [,splash=sp_name][,splash-time=sp_time][,reboot-timeout=rb_time][,strict=on|off]
  order:各設備的引導次序:c表示第一塊硬盤,d表示第一個光驅設備;-boot order=dc,once=d
  -m megs:虛擬機的內存大小;
  -name NAME:當前虛擬機的名稱,要惟一;

(2)塊設備相關的選項:
  -hda/-hdb file:指明IDE總線類型的磁盤映像文件路徑;第0和第1個;
  -hdc/-hdd file:第2和第3個;
  -cdrom file:指定要使用光盤映像文件; 
  -drive [file=file路徑][,if=type接口][,media=d接口對應的設備類型][,index=i] [,cache=writethrough|writeback|none|directsync|unsafe][,format=f]:
    ① file=/PATH/TO/SOME_IMAGE_FILE:映像文件路徑;
    ② if=TYPE:塊設備總線類型,ide, scsi, sd, floppy, virtio,...     ③ media=TYPE:介質類型,cdrom和disk;     ④ index=i:設定同一類型設備多個設備的編號;     ⑤ cache=writethrough|writeback|none|directsync|unsafe:緩存方式;     ⑥ format=f:磁盤映像文件的格式;   CentOS磁盤鏡像文件下載: https://cloud.centos.org/centos/7/images/ (3)顯示選項:   -display type:顯示的類型,sdl, curses, none和vnc;   -nographic:不使用圖形接口; 顯卡型號   -vga [std|cirrus|vmware|qxl|xenfb|none]:模擬出的顯卡的型號;   -vnc display[,option[,option[,...]]]]:啟動一個vnc server來顯示虛擬機接口; 讓qemu進程監聽一個vnc接口;     display:       ① HOST:N         在HOST主機的第N個桌面號輸出vnc;       ② unix:/PATH/TO/SOCK_FILE       ③ none     options:       password:連接此服務所需要的密碼;
  -monitor stdio:在標準輸出上顯示monitor界面;     Ctrl-a, c:在console和monitor之間切換;     Ctrl-a, h (4)網絡選項:   -net nic[,vlan=n][,macaddr=mac][,model=type][,name=str][,addr=str][,vectors=v]     為虛擬機創建一個網絡接口,並將其添加至指定的VLAN;     model=type:指明模擬出的網卡的型號,ne2k_pci,i82551,i82557b,i82559er,rtl8139,e1000,pcnet,virtio;       net nic,model=?     macaddr=mac:指明mac地址;52:54:00:   -net tap[,vlan=n][,name=str][,fd=h][,fds=x:y:...:z][,ifname=name][,script=file][,downscript=dfile]:     通過物理的TAP網絡接口連接至vlan;     script=file:啟動虛擬機時要執行的腳本,默認為/etc/qemu-ifup     downscript=dfile:關閉虛擬機時要執行的腳本,/etc/qemu-ifdown     ifname=NAME:自定義接口名稱; 其它選項:   -daemonize:以守護進程運行;

實戰一:圖形化工具virt-manager 創建虛擬機

1、創建物理橋橋接接口br0

[root@master ~]# systemctl start libvirtd.service

[root@master ~]# virsh iface-bridge eth0 br0

分析:把自己的物理網卡eth0 作為交換機,把br0 當網卡,提供IP

註意:命令可能會卡死或出錯,終端被強制退出;等一會,在登錄就OK 了

技術分享圖片

2、圖形化工具創建虛擬機

(1)打開窗口

[root@master ~]# virt-manager

註意:這個命令需在支持圖形化界面的機器才能執行, 用其他機器 ssh -X 連接,再執行

技術分享圖片

(2)創建虛擬機

① 創建新的虛擬機

技術分享圖片

② 選擇操作系統類型和版本

技術分享圖片

③ 選擇內存和CPU 設置

技術分享圖片

④ 虛擬硬盤有多大

技術分享圖片

⑤ 網絡選擇

技術分享圖片

⑥ 詳細配置,開始安裝

技術分享圖片

⑦ 進入虛擬化圖形管理窗口,選擇安裝系統版本

技術分享圖片

實戰二:命令行工具qemu-kvm創建使用虛擬機

1、準備橋

(1)命令管控虛擬網橋:brctl

[root@master ~]# yum -y install bridge-utils 下載brctl 命令的包

[root@master ~]# brctl addbr br-int0 添加網橋

[root@master ~]# brctl show 查詢所有網橋

[root@master ~]# ifconfig -a 每一個橋,在機器上都表現為一個網卡接口,只是沒有激活

技術分享圖片

[root@master ~]# ip link set br-int0 up 激活橋,會分配mac 地址

技術分享圖片

刪除網橋

[root@master ~]# ip link set br-int0 down 先down掉網橋

[root@master ~]# brctl delbr br-int0 再刪除

[root@master ~]# ifconfig -a 查詢不到這個網卡了

[root@master ~]# brctl show 查詢不到網橋

(2)手動創建物理網橋

① 創建網橋對應的配置文件

[root@master network-scripts]# pwd

/etc/sysconfig/network-scripts

[root@master network-scripts]# cp ifcfg-eth1 ifcfg-br0

[root@master network-scripts]# vim ifcfg-br0

DEVICE=br0
NAME=br0
TYPE=Bridge
ONBOOT=yes
IPADDR=172.16.1.7
NETMASK=255.255.0.0
GATEWAY=172.16.0.1
DNS1=172.16.0.1

註意:是要充當正常網卡使用的,所有IP、NETMASK、GATEWAY、DNS1 都要有

② 把主機的網卡連接到橋上

[root@master network-scripts]# vim ifcfg-eth1

DEVICE=eth1
ONBOOT=yes
BRIDGE=br0

註意:主機的網卡連接網橋後,是要充當交換機的,所以不需要IP、NETMASK、GATEWAY、DNS1

③ 重啟網絡服務

[root@master network-scripts]# systemctl restart network

[root@master ~]# ifconfig

技術分享圖片

[root@master ~]# brctl show 也能查到

技術分享圖片

2、創建虛擬機前準備

使用virt-manager管理KVM

(1)準備 qemu-kvm 命令

[root@master ~]# yum install qemu-kvm libvirt-daemon-kvm virt-manager 安裝qemu-kvm 命令行工具

[root@master ~]# modprobe kvm 加載模塊

[root@master ~]# lsmod |grep kvm

技術分享圖片

[root@master ~]# rpm -ql qemu-kvm 因為qemu-kvm 命令路徑不在PATH 路徑下

技術分享圖片

創建軟連接,或者寫入PATH 變量都行

[root@master ~]# ln -sv /usr/libexec/qemu-kvm /usr/bin/

[root@master ~]# qemu-kvm -h 查詢命令幫助

技術分享圖片

3、創建一個虛擬機

(1)創建一個虛擬機,用kubuntu 的鏡像文件(用windows、linux 什麽鏡像文件都行)

[root@master ~]# qemu-kvm -cpu host -smp 2,sockets=1,cores=2,threads=1 -m 512 -drive file=/data/imgs/test.img,if=virtio,media=disk,format=qcow2 -drive file=/root/kubuntu-17.10-desktop-amd64.iso,if=ide,media=cdrom -boot order=dc,once=d -vnc 172.16.1.7:0

分析:命令詳解見上邊

(2)vnc 登錄實驗虛擬機

[root@master ~]# vncviewer 172.16.1.7:0

技術分享圖片

實戰三:手動構建虛擬機間的虛擬通道、僅主機網橋和NAT 網橋

1、準備虛擬機鏡像文件

(1)下載cirros 鏡像文件

用cirros 來演示測試,因為它很小,不占資源

去網站下載cirros

CentOS磁盤鏡像文件下載: https://cloud.centos.org/centos/7/images/

[root@master ~]# qemu-img info cirros-no_cloud-i386.img

技術分享圖片

(2)準備2分創建虛擬機的鏡像文件

[root@master ~]# mkdir -pv /data/imgs/

[root@master ~]# cp cirros-no_cloud-i386.img /data/imgs/c1.img

[root@master ~]# cp cirros-no_cloud-i386.img /data/imgs/c2.img

2、創建虛擬的準備

(1)準備物理網橋

[root@master imgs]# brctl addbr br-c1-and-c2 創建網橋接口

[root@master imgs]# ifconfig br-c1-and-c2 up 激活網橋

[root@master imgs]# brctl show

技術分享圖片

(2)準備激活連接網橋腳本

① [root@master ~]# vim /etc/qemu-ifup-pn1

#!/bin/bash
#
bridge=br-c1-and-c2
if [ -n "$1" ];then
        ip link set $1 up
        sleep 1
        brctl addif $bridge $1
        [ $? -eq 0 ] && exit 0 || exit 1
else
        echo "Error: no interface specified."
        exit 2
fi

② 加執行權限

[root@master ~]# chmod +x /etc/qemu-ifup-pn1

3、創建、登錄兩個虛擬機

(1)創建並開啟虛擬機

[root@master ~]# qemu-kvm -name c1 -cpu host -smp 2 -m 64 -drive file=/data/imgs/c1.img,if=virtio,media=disk,format=qcow2 -vnc :0 -net nic,model=e1000,macaddr=52:54:00:00:01:01 -net tap,script=/etc/qemu-ifup-pn1 -daemonize

[root@master ~]# qemu-kvm -name c2 -cpu host -smp 2 -m 64 -drive file=/data/imgs/c2.img,if=virtio,media=disk,format=qcow2 -vnc :1 -net nic,model=e1000,macaddr=52:54:00:00:00:01 -net tap,script=/etc/qemu-ifup-pn1 -daemonize

註意:-vnc :0/1 是窗口號;MAC 地址52:54:00 不能改,後邊隨意

[root@master ~]# ss -nutl 開啟了5900 和5901 的端口

技術分享圖片

(2)登錄連接2個虛擬機

開2個終端,vnc 連接虛擬機

[root@master ~]# vncviewer 192.168.30.107:0

[root@master ~]# vncviewer 192.168.30.107:1

登錄用戶:cirros

登錄密碼:cubswin:)

$ sudo su - 切換到管理用戶

# poweroff 關機

技術分享圖片

4、建立虛擬機間的虛擬通道

① 給2個虛擬機加 IP ,在同一網段

# ifconfig eth0 10.1.0.1/16 up

# ifconfig eth0 10.1.0.2/16 up

分析:一旦添加了IP,就是僅主機模式了

② 測試虛擬通道是否連通

# ping 10.1.0.2

技術分享圖片

# ping 10.1.0.1

技術分享圖片

5、通過僅主機網橋連通宿主機

(1)在宿主機上的br-c1-and-c2 網橋,添加虛擬機網段的地址

① 每創建一個虛擬主機,都會有另一半在宿主機上

技術分享圖片

② [root@master ~]# ip addr add 10.1.0.10/16 dev br-c1-and-c2

[root@master ~]# ip a show br-c1-and-c2

技術分享圖片

(2)測試僅主機網橋

# ping 10.1.0.10 在虛擬機上ping

技術分享圖片

6、通過NAT 網橋實現NAT 模式

(1)在宿主機上開啟路由轉發功能

[root@master ~]# sysctl -w net.ipv4.ip_forward=1

技術分享圖片

(2)在2個虛擬機上添加路由

# route add default gw 10.1.0.10

# ping 172.16.1.7 發現ping 宿主機的另一塊網卡能ping 通了,因為內核機制

技術分享圖片

# ping 172.16.0.1 但是外網還是ping不同,原因:宿主機上只有出包,沒有進包

[root@master ~]# tcpdump -i eth1 -nn icmp 只有出包,沒有進包

技術分享圖片

(3)做SNAT 策略

[root@master ~]# iptables -t nat -A POSTROUTING -s 10.1.0.0/16 -j SNAT --to-source 172.16.1.7

[root@master ~]# iptables -vnL -t nat 查詢

技術分享圖片

(4)測試NAT 網橋

① 在宿主機上ping 外網

# ping 172.16.0.1

技術分享圖片

② 宿主機也有回包了

技術分享圖片

7、關閉虛擬機

① 在虛擬機上poweroff

# poweroff 關機

② 在宿主機上殺死進程

技術分享圖片

實戰四:命令行工具virt 創建虛擬機及命令管理虛擬機

1、創建前準備

(1)準備cirros 鏡像文件

[root@master imgs]# yum install libvirt-daemon-kvm virt-install -y

[root@master ~]# mkdir -pv /data/imgs/

[root@master ~]# cp cirros-no_cloud-i386.img /data/imgs/c1.img

(2)創建物理網橋br0

[root@master imgs]# brctl addbr br0 創建網橋接口

[root@master imgs]# ifconfig br0 up 激活網橋

[root@master imgs]# brctl show

(3)把br0 網橋連接到eth0 網卡上

[root@master ~]# systemctl start libvirtd.service

[root@master ~]# virsh iface-bridge eth0 br0

技術分享圖片

2、創建虛擬機

[root@master imgs]# virt-install -n c1 --vcpus 2 --memory 64 -w bridge=br0 --import --disk /data/imgs/c1.img --dry-run

[root@master imgs]# virt-install -n c1 --vcpus 2 --memory 64 -w bridge=br0 --import --disk /data/imgs/c1.img

分析:--dry-run 先幹跑,測試一下

技術分享圖片

3、virsh命令詳解,下有實例

(1)virsh命令:
虛擬機的生成需要依賴於預定義的xml格式的配置文件;其生成工具有兩個:virt-manager, virt-install; 
virsh [OPTION]... COMMAND [ARG]..
子命令的分類:
    Domain Management (help keyword ‘domain‘)   域管理(幫助關鍵字“域”)
    Domain Monitoring (help keyword ‘monitor‘)   域監視(幫助關鍵字“監視器”)
    Host and Hypervisor (help keyword ‘host‘)   主機和管理程序(幫助關鍵字“主機”)
    Interface (help keyword ‘interface‘)   接口(幫助關鍵字“接口”)
    Networking (help keyword ‘network‘)   網絡(幫助關鍵字“網絡”)
    Network Filter (help keyword ‘filter‘)   網絡過濾器(幫助關鍵字“過濾器”)
    Snapshot (help keyword ‘snapshot‘)   快照(幫助關鍵字“快照”)
    Storage Pool (help keyword ‘pool‘)   存儲池(help關鍵字“池”)
    Storage Volume (help keyword ‘volume‘)   存儲卷(幫助關鍵字“卷”)
                
(2)域管理 Domain Management (help keyword ‘domain‘)
創建虛擬機:
  create:從xml格式的配置文件創建並啟動虛擬機;
  define:從xml格式的配置文件創建虛擬機;
停止:
  destroy:強行關機、拔電源;
  shutdown:關機;
start:啟動
reboot:重啟;
undefine:刪除虛擬機;
suspend/resume:暫停於內存中,或繼續運行暫停狀態的虛擬機;真正實現的效果:pause/unpause
save/restore:掛起/繼續;保存虛擬機的當前狀態至文件中,或從指定文件恢復虛擬機;
console:連接至指定domain的控制臺;
                    
(3)域的設備資源管理:
① cpu
  cpu-stats     查看cpu 信息
  vcpuinfo      查看vcpu 信息
  vcpucount     看有幾個cpu
  setvcpus   可以調整cpu數(如果是調整的是動態的,在創建虛擬機時設置,靜態的不行)
  vcpupin    把vcpu 綁定到真正的cpu 上
② memcache                        
  setmaxmem   修改最大內存(創建虛擬機時設置的是否可以修改)
  setmem   修改內存大小(沒超過上限時)
③ 設備                       
  attach-disk/detach-disk:磁盤設備的熱插拔;
  domblklist:查詢虛擬機的磁盤設備
  attach-interface/detach-interface:網絡接口設備的熱插拔;
  domiflist:查詢虛擬機的網卡設備

4、virsh命令演示

(1)簡單查詢

[root@master imgs]# virsh list 列出所有正在開啟running 的虛擬機

[root@master imgs]# virsh list --all 列出所有的虛擬機,包括關機的、沒運行的

[root@master imgs]# virsh 交互式執行命令

[root@master imgs]# virsh nodeinfo 查詢信息

[root@master imgs]# virsh uri 查詢uri 路徑

技術分享圖片

(2)連接虛擬機

[root@master imgs]# virsh console c1 連接至c1 虛擬機的控制臺

# ping 172.16.0.1 因為物理橋已經連接到了網卡,所以有地址,且能ping 通外網

技術分享圖片

(3)刪除虛擬機

[root@master ~]# virsh destroy c1 先關掉虛擬機

[root@master ~]# virsh undefine c1 在刪除虛擬機

[root@master ~]# ls /etc/libvirt/qemu/ .xml 文件被刪除

[root@master ~]# virsh list --all 查詢不到c1 虛擬機,刪除成功

(4)暫停和掛起虛擬機

[root@master ~]# virsh suspend c1 暫停虛擬機

[root@master ~]# virsh resume c1 恢復暫停

[root@master ~]# virsh save /app/c1.bin 掛起虛擬機

[root@master ~]# virsh restore /app/c1.bin 恢復掛起

技術分享圖片

(5)域設備資源管理查詢

[root@master ~]# virsh cpu-stats c1 查看cpu 信息

[root@master ~]# virsh vcpuinfo c1 查看vcpu 信息

[root@master ~]# virsh vcpucount c1 看有幾個cpu

技術分享圖片

5、利用已有的虛擬機配置文件,創建一個新的虛擬機

原理:利用已下好的虛擬機,用命令把創建虛擬機的過程生成一個.xml的文件,利用這個文件創建新的虛擬機

(1)生成.xml的文件

[root@master ~]# virsh dumpxml c1 > /app/c2.xml

[root@master ~]# vim /app/c2.xml 需要修改的,都在下面列出了

<domain type=‘kvm‘ id=‘5‘>
  <name>c2</name>   #名字
  <uuid>7303d4d3-b8d2-4e22-aac8-feb881882a73</uuid>  #UUID隨便改,只要不相同
<source file=‘/data/imgs/c2.img‘/>   #鏡像文件
<mac address=‘52:54:00:52:10:34‘/>   #mac隨便改,只要不相同
      <source bridge=‘br0‘/>   #橋接的網橋
      <target dev=‘vnet1‘/>   #默認的後端設備

(2)創建新的虛擬機

[root@master ~]# virsh create /app/c2.xml --console

註:--console 直接連接虛擬機,或不加;再用下邊的命令連接虛擬機

[root@master ~]# virsh console c2

(3)檢查

[root@master ~]# virsh list 已有2個虛擬機了

技術分享圖片

(4)把.xml 文件放入/etc/libvirt/qemu

[root@master ~]# ls /etc/libvirt/qemu

[root@master ~]# cp /app/c2.xml /etc/libvirt/qemu/

用virsh 自動啟動等各種高級設置了

技術分享圖片

6、c1 虛擬機磁盤設備的熱插拔

(1)創建10G 大小稀疏格式的磁盤映像文件

[root@master ~]# qemu-img create -f qcow2 -o preallocation=metadata,size=10G /data/imgs/c1.2.img

[root@master ~]# qemu-img info /data/imgs/c1.2.img 查詢

技術分享圖片

(2)把磁盤設備加到c1 上

[root@master ~]# virsh domblklist c1 查看c1 已有的磁盤設備

[root@master ~]# virsh attach-disk c1 /data/imgs/c1.2.img vda

技術分享圖片

(3)連接至虛擬機,可以對這個磁盤做分區、文件系統格式化、掛載等操作

[root@master ~]# virsh console c1

# fdisk /dev/vda

# fdisk -l /dev/vda1

技術分享圖片

(3)把磁盤設備拔掉

技術分享圖片

7、網卡的熱插拔

(1)在宿主機上添加一個新的物理橋

[root@master ~]# brctl addbr br-int0

[root@master ~]# ifconfig br-int0 up

技術分享圖片

(2)激活網橋,給ip

[root@master ~]# ip addr add 10.1.0.254/16 dev br-int0

[root@master ~]# ifconfig br-int0

技術分享圖片

(3)給c1 虛擬機插上這個網卡設備 ---> "熱插"

[root@master ~]# virsh attach-interface c1 bridge br-int0

技術分享圖片

(4)連接至虛擬機,激活網卡

[root@master ~]# virsh console c1

# ifconfig eth1 10.1.0.1/16 up

# ping 10.1.0.254 ping宿主機,測試是否生效

技術分享圖片

[root@master ~]# virsh domiflist c1 查詢虛擬機的網卡設備

技術分享圖片

(5)拆除網卡 ---> "熱拔"

# ifconfig eth1 down

[root@master ~]# virsh detach-interface c1 bridge --mac 52:54:00:5b:d8:04

技術分享圖片

實戰五:推薦幾個圖形化管理虛擬機的工具

(1)圖形管理工具:

  kimchi:基於H5研發的web GUI;virt-king; 網上搜索kimchi kvm 有安裝使用教程

  OpenStack:IaaS 非常重量級,非常吃資源;至少10臺以上的虛擬機才用它

  oVirt:比kimchi 功能強大的多,比OpenStack輕量;但配置也較麻煩

  proxmox VE

(2)kvm 官方的管理工具棧:https://www.linux-kvm.org/page/Management_Tools

項目實戰13—企業級虛擬化Virtualization - KVM技術