KVM的管理有如下幾種方式:node
本篇博客主要是從圖形界面和命令行,兩種KVM虛擬機管理方式,來配置虛擬機,並安裝操做系統。linux
交互式安裝,是區別自動化安裝的安裝方式。交互式安裝可以給用戶一個很大的自定義空間,固然採用ks.cfg文件的自動化部署也有很大的空間。
交互式安裝,不管是從本地加載系統鏡像,仍是從遠程(HTTP/FTP/NFS)下載鏡像,均是同一個安裝界面。不一樣的是從哪一個URL下載而已。shell
圖形化的本地安裝時,virt-mangeer是相似於VMware workstation同樣的軟件管理工具。可以實現虛擬設備的分配和配置。
這裏以建立一個KVM虛擬機,安裝CentOS6.5操做系統爲例。windows
圖形化本地CDROM的安裝,與VMware workstation經過CDROM載入系統鏡像同樣。這裏須要console事前已經經過loop形式,裝載了CentOS6.5的系統鏡像。
這種安裝方式比較適合本地沒有系統鏡像,可是卻載入了系統鏡像的有物理光驅等使用場景。[至關於使用物理光驅]
具體過程,參見博客《》centos
圖形化本地鏡像安裝,是在圖形界面啓動以後,選擇文件系統上的系統鏡像。
這種安裝方式比較適合本地沒有CDROM,可是有系統鏡像文件的使用場景,系統鏡像也能夠經過其餘協議上傳。[至關於創建虛擬光驅]
具體過程,參見博客《virt-manager圖形化配置虛擬機並安裝操做系統.md》bash
命令行管理工具爲:virt-install和virsh,前者是安裝工具,後者是shell管理工具。服務器
注:virt-install和virsh的help文檔,參見《virt-install.help.md》和《virsh.help.md》網絡
具體操做,參見博客《virt-install命令行配置虛擬機並安裝操做系統.md》
採用這種方式,有兩種狀況:socket
採用graphisc vnc方式時,和virt-manger無異,均會啓動圖形界面來安裝操做系統。
採用graphisc none方式時,會以文本的形式安裝,文本輸出到當前終端界面。
採用此種方式配置虛擬機並安裝操做系統時,不適合批量部署,由於未提供自動化配置文件。
可是卻十分符合自定義標準,或者安裝windows操做系統工具
圖形化網絡安裝時,須要提早配置好支持HTTP/FTP/NFS協議的系統鏡像站點。支持三大協議的系統鏡像站點配置,參見博客《虛擬機console基礎環境配置——系統鏡像站點配置.md》
在部署好系統鏡像站點以後,三大協議的系統鏡像站點分別爲:
只須要在圖形化配置過程當中,將對應的URL修改成上述內容便可。這樣的安裝方式,只不過是從遠程下載系統鏡像。
與此對應,本系列博文將自動化配置文件ks.cfg
圖像化HTTP鏡像站點,須要作出的選擇部分,以下圖:
圖形化NFS鏡像站點,配置部分以下圖:
根據上面的工做,命令行在配置了graphics vnc的狀況下,一樣會打開圖像界面來交互式安裝。命令行與圖形化安裝的最大區別在於,是否配置graphics vnc模式
若是採用nographics,而且配置了ks.cfg文件以後,即可非交互後臺靜默安裝
下面的shell內容,是博主寫在腳本里的內容,後跟虛擬機的number,即可建立node${number}
安裝腳本,remote_http.sh,使用方式如,bash remote_http.sh 11
#!/bin/bash virt-install \ --connect qemu:///system \ --name node$1 \ --vcpus sockets=2,cores=2,threads=1 \ --ram 512 \ --disk path=/mnt/data/vhost/node$1.img,size=8 \ --network bridge=br0,mac=00:00:00:80:00:$1,model=virtio \ --network bridge=br0,mac=00:00:00:10:00:$1,model=virtio \ --location=http://192.168.80.8/osimage/centos6.5/ \ --graphics vnc,port=59$1,keymap=us \
安裝腳本,remote_ftp.sh,使用方式如,bash remote_ftp.sh 11
#!/bin/bash virt-install \ --connect qemu:///system \ --name node$1 \ --vcpus sockets=2,cores=2,threads=1 \ --ram 512 \ --disk path=/mnt/data/vhost/node$1.img,size=8 \ --network bridge=br0,mac=00:00:00:80:00:$1,model=virtio \ --network bridge=br0,mac=00:00:00:10:00:$1,model=virtio \ --location=ftp://192.168.80.8/pub/osimage/centos6.5/ \ --graphics vnc,port=59$1,keymap=us \
安裝腳本,remote_http.sh,使用方式如,bash remote_nfs.sh 11
#!/bin/bash virt-install \ --connect qemu:///system \ --name node$1 \ --vcpus sockets=2,cores=2,threads=1 \ --ram 512 \ --disk path=/mnt/data/vhost/node$1.img,size=8 \ --network bridge=br0,mac=00:00:00:80:00:$1,model=virtio \ --network bridge=br0,mac=00:00:00:10:00:$1,model=virtio \ --location=nfs:192.168.80.8:/mnt/cdrom \ --graphics vnc,port=59$1,keymap=us \
自動化安裝,不只對一個機器實現秒交互安裝,也可以實現批量安裝。前提是配置了PXE無人值守環境。這個環境主要包括四部分:
用於給客戶機分配IP
用於客戶機下載引導程序
用於客戶機下載完整鏡像
用於自動配置安裝過程
和VMware workstation同樣,能夠經過CDROM設備,進行操做系統的安裝,前提是有系統鏡像。對於KVM而言,既可使用圖像化安裝方式,也可使用命令行安裝方式。
圖像化安裝方式,比較適合交互式的自定義安裝;而命令行模式的,比較適合批量自動化安裝(有自動化配置文件ks.cfg)。
本地圖像化安裝須要啓動圖形化。啓動圖像化以後,安裝過程參見博客《virt-manager圖像化安裝操做系統.md》
本篇博客啓動圖形化過程當中報錯,具體解決方式參見博客《Error【0004】:virt-manager打開報錯.md》
location安裝方式,即從遠程HTTP/FTP/NFS服務器上獲取系統鏡像。自動化配置文件ks.cfg能夠經過指定內核參數,從遠程HTTP/FTP/NFS上獲取。
location安裝方式能夠從內核指定參數,配置安裝的虛擬機可以從控制檯直接登錄,即virsh console xxxx方式登錄。
#!/bin/bash NODE=$1 if [ "$#" -ne "1" ];then echo "指定虛擬機num." && echo 0; fi virt-install \ --name node$NODE \ --vcpus sockets=2,cores=2,threads=1 \ --ram 512 \ --location="" \ --extra-args="" \ --os-type linux \ --virt-type kvm \ --disk path=/mnt/data/vhost/node$NODE.img,size=10 \ --network bridge=br0,model=virtio,mac=00:00:00:80:00:$NODE \ --network bridge=br1,model=virtio,mac=00:00:00:10:00:$NODE \ --graphics vnc,listen=0.0.0.0,port=59$NODE,keymap=us \