因爲生產環境的服務器並不會安裝桌面環境,簡單操做的圖形化安裝也不適合批量部署安裝。所以,我仍是更傾向於在命令下安裝配置KVM虛擬機。結合了一些資料和我的使用的情況,我大體列出了一些基本和經常使用的使用方法。python
操做系統:centos6.6 vim
內核版本:2.6windows
IP地址:172.16.57.24centos
和 Xen 不一樣,KVM 須要有 CPU 的支持(Intel VT 或 AMD SVM),在安裝 KVM 以前檢查一下 CPU 是否提供了虛擬技術的支持:tomcat
egrep 'vmx|svm' /proc/cpuinfo
一、這裏安裝一些虛擬化的組件bash
yum -y install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools-c
二、對kvm進行以下以下配置:服務器
vim /etc/libvirt/libvirtd.conf 這裏主要是tcp鏈接的設置 末尾添加以下:
listen_tls = 0 listen_tcp = 1 tcp_port = "16509" listen_addr = "172.16.57.24" unix_sock_ro_perms = "0777" unix_sock_rw_perms = "0770" auth_tcp = "none" max_clients = 1024 min_workers = 100 max_workers = 200 max_requests = 20 max_client_requests = 50
vim qemu.conf 這裏主要是對vnc的設置,一下子經過vnc-viewer鏈接來進行安裝 末尾添加
vnc_listen = "0.0.0.0" vnc_password = "bigdata" #vnc鏈接密碼 remote_display_port_min = 5900 #vnc最小端口 remote_display_port_max = 65535 #vnc最大端口
三、確認一下是否 kvm 安裝成功:網絡
/etc/init.d/libvirtd restart
四、查看是否啓動:tcp
ps -ef | grep libvirtd
五、查看kvm模塊是否正常加載:性能
lsmod |grep kvm
一、配置網橋br0
vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0 TYPE=Bridge ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=172.16.57.24 NETMASK=255.255.255.0 GATEWAY=172.16.57.1 DNS1=202.96.209.133
vim /etc/sysconfig/network-scripts/ifcfg-em1
DEVICE=em1 TYPE=Ethernet ONBOOT=yes BRIDGE=br0 NM_CONTROLLED=yes
二、重啓網絡
/etc/init.d/network restart
三、查看網絡鏈接
brctl show 若是配置成功,會有如下輸出: bridge name bridge id STP enabled interfaces br0 8000.14187745822e no em1 vnet0 vnet1 vnet2 vnet3 vnet4 vnet5 vnet6 virbr0 8000.5254005fcc0b yes virbr0-nic
四、檢查ip轉發是否開啓
cat /etc/sysctl.conf |grep ip_forward net.ipv4.ip_forward = 1 若是沒有開啓: vim /etc/sysctl.conf 修改net.ipv4.ip_forward = 1 /sbin/sysctl -p
virt-install --name=tomcat_01 --ram 8192 --vcpus=2 \ --disk path=/var/lib/libvirt/images/tomcat_01.img,size=20,format=raw,bus=virtio \ --cdrom /var/iso/CentOS-6.7-x86_64-minimal.iso --network bridge=br0,model=virtio \ --vnc --accelerate --force --autostart
這裏解釋一下主要的幾個參數含義:
--name 給虛擬機起個名字 --ram 分配給虛擬機的內存,單位MB --vcpus 分配給虛擬機的cpu個數 --cdrom 指定安裝文件的全路徑 --disk 指定虛擬機img文件路徑,若是虛擬機使用lvm分區,這裏就指向到lvm的分區就行 size 虛擬機文件大小,單位GB bus 虛擬機磁盤使用的總線類型,爲了使虛擬機達到好的性能,這裏使用virtio cache 虛擬機磁盤的cache類型 --network bridge 指定橋接網卡 model 網卡模式,這裏也是使用性能更好的virtio --graphics圖形參數
這裏我安裝的虛擬機名字爲tomcat_01,接下來查看其vnc端口:
ps aux | grep qemu | grep tomcat_01
當時咱們設置vnc端口最小爲5900,那麼這裏指的就是5902這個端口。
接下來經過在windows下使用vnc-viewer來鏈接172.16.57.24:5902,並輸入設置的密碼,便可進行安裝。
一、宿主機管理虛擬機
對虛擬機進行開關等管理,須要在虛擬機上安裝acpid的服務,並啓動它。
二、克隆虛擬機
通常製做一個經常使用的虛擬機模板,下次安裝能夠直接來克隆這個模板。
virt-clone --connect qemu:///system --original=tomcat_01 --name=tomcat_02 --file=//var/lib/libvirt/images/tomcat_02.img --original克隆的虛擬機對象 --name 克隆的新虛擬機名稱
三、添加磁盤
通常虛擬機的磁盤結構爲系統盤加數據盤,當系統發生故障時,能夠從新建一個系統盤,而數據盤不會丟失。
添加磁盤操做:
cd /var/lib/libvirt/images/ 進入磁盤存放目錄 qemu-img create -f raw test_add.img 100G 建立一塊100G的磁盤 virsh attach-disk tomcat_01 /var/lib/libvirt/images/test_add.img vdb --cache none 動態添加磁盤
這種方法是動態添加磁盤,而xml配置文件並無發生變化,爲了防止下次啓動添加的磁盤失效,進行以下操做:
virsh dumpxml tomcat_01 > tomcat_01.xml 將最新的虛擬機配置重定向到其配置文件中 virsh define tomcat_01.xml
這樣,新增的磁盤就不會丟了。
四、virsh命令的一些操做
Autostart 自動開始一個域 Create 從一個 XML 文件建立一個域 Define 從一個 XML 文件定義(但不開始)一個域 edit 編輯某個域的 XML 配置 shutdown 關閉一個域 start 開始一個(之前定義的)非活躍的域 reboot 從新啓動一個域 suspend 掛起一個域 resume 從新恢復一個域 vncdisplay vnc 顯示
這裏只是講解了一些基本的安裝和使用,關於KVM的一些深度理解和優化,還有待研究一下。
好了,先到這吧~