歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 基於Linux命令行KVM虛擬機的安裝配置與基本使用

基於Linux命令行KVM虛擬機的安裝配置與基本使用

日期:2017/2/27 15:43:14   编辑:Linux教程

背景

由於生產環境的服務器並不會安裝桌面環境,簡單操作的圖形化安裝也不適合批量部署安裝。因此,我還是更傾向於在命令下安裝配置KVM虛擬機。結合了一些資料和個人使用的狀況,我大致列出了一些基本和常用的使用方法。

安裝配置

一、環境介紹

操作系統:centos6.6

內核版本:2.6

IP地址:172.16.57.24

二、檢查CPU

和 Xen 不同,KVM 需要有 CPU 的支持(Intel VT 或 AMD SVM),在安裝 KVM 之前檢查一下 CPU 是否提供了虛擬技術的支持:

egrep 'vmx|svm' /proc/cpuinfo

三、安裝KVM

1、這裡安裝一些虛擬化的組件

yum -y install kvm python-virtinst libvirt  bridge-utils virt-manager qemu-kvm-tools  virt-viewer  virt-v2v libguestfs-tools-c

2、對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最大端口

3、確認一下是否 kvm 安裝成功:

/etc/init.d/libvirtd restart

4、查看是否啟動:

ps -ef | grep libvirtd

5、查看kvm模塊是否正常加載:

lsmod |grep kvm 

四、配置網橋連接

1、配置網橋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

2、重啟網絡

/etc/init.d/network restart

3、查看網絡連接

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

4、檢查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,並輸入設置的密碼,即可進行安裝。

常用操作

1、宿主機管理虛擬機

對虛擬機進行開關等管理,需要在虛擬機上安裝acpid的服務,並啟動它。

2、克隆虛擬機

一般制作一個常用的虛擬機模板,下次安裝可以直接來克隆這個模板。

virt-clone --connect qemu:///system --original=tomcat_01 --name=tomcat_02 --file=//var/lib/libvirt/images/tomcat_02.img
--original克隆的虛擬機對象
--name    克隆的新虛擬機名稱

3、添加磁盤

一般虛擬機的磁盤結構為系統盤加數據盤,當系統發生故障時,可以重新建一個系統盤,而數據盤不會丟失。

添加磁盤操作:

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 

這樣,新增的磁盤就不會丟了。

4、virsh命令的一些操作

Autostart 自動開始一個域 
Create 從一個 XML 文件創建一個域 
Define 從一個 XML 文件定義(但不開始)一個域 
edit 編輯某個域的 XML 配置 
shutdown 關閉一個域 
start 開始一個(以前定義的)非活躍的域 
reboot 重新啟動一個域 
suspend 掛起一個域 
resume 重新恢復一個域 
vncdisplay vnc 顯示
Copyright © Linux教程網 All Rights Reserved