前言
1、KVM虛擬機磁盤鏡像
KVM虛擬機安裝需要選擇磁盤鏡像的格式,通常的選擇有兩種:
raw
:raw格式是原始鏡像,會直接當做一個塊設備給虛擬機來使用,I/O性能比qcow2高,但不支持快照;qcow2
:支持鏡像快照,zlib磁盤壓縮,AES加密等;
無論哪種格式,磁盤的利用率來說,都是一樣的,因爲實際佔用的塊數量都一樣。但是raw的虛擬機會比qcow2的虛擬機IO效率高一些,所以根據實際的應用環境來選擇磁盤鏡像的格式。
2、KVM網卡配置
KVM虛擬機網絡配置的兩種方式:
NAT模式
:讓人虛擬機訪問主機、互聯網或者本地網絡上的資源的簡單方法,但是不能從網絡或其他的客戶棄訪問客戶機。Bridge模式
:主機與主機之間,客戶機與主機之間的 通信都很容易,使虛擬機成爲網絡中具有獨立的IP的主機。
一、配置網卡信息(Bridge模式)
1、虛擬主機配置橋接模式靜態IP,並開啓共享模式
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
NAME="ens33"
UUID="0c1dba98-b71c-4c07-8544-43f7ae256b78"
DEVICE="ens33"
ONBOOT="yes"
BRIDGE="br0" ///添加br0
IPADDR=192.168.182.100
GATEWAY=192.168.182.182.1
NETMASK=255.255.255.0
DNS1=8.8.8.8
DNS2=114.114.114.114
2、創建 ifcfg-br0 橋接網卡
[root@localhost ~]# cd /etc/sysconfig/network-scripts/ ///進入到network目錄
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-br0 ///複製ens33的網卡信息
TYPE="Bridge" ///類型改爲橋接
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
NAME="br0"
ONBOOT="yes"
IPADDR=192.168.182.100 ///不改
GATEWAY=192.168.182.182.1
NETMASK=255.255.255.0
DNS1=8.8.8.8
DNS2=114.114.114.114
[root@localhost network-scripts]# systemctl restart network
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 00:0c:29:9b:36:9e brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global noprefixroute br0
valid_lft forever preferred_lft forever
PS:如何安裝失敗,查看/var/log/messge日誌,是否沒有安裝 brctl 工具
PS:配置成功後,ens33的IP會滑到br0上,ens33看不到IP地址
二、虛擬機CPU開啓虛擬化
1.查看系統版本
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
2. 查看CPU是否支持虛擬化,輸入有vmx或svm就支持,支持虛擬化則就支持KVM
[root@localhost ~]# cat /proc/cpuinfo | egrep 'vmx|svm'
3. 查看是否加載KVM
[root@localhost ~]# lsmod | grep kvm
kvm_intel 183621 0
kvm 586948 1 kvm_intel
irqbypass 13503 1 kvm
PS:這表明已經加載,如果沒有加載則執行以下命令加載KVM
[root@localhost ~]# modprobe kvm
4. 關閉防火牆和selinux
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
三、KVM 安裝
1、安裝kvm管理工具
[root@localhost ~]# yum install kvm libvirt python-virtinst qemu-kvm virt-viewer tunctl bridge-utils avahi dmidecode qemu-kvm-tools virt-manager qemu-img virt-install net-tools libguestfs-tools -y
2、啓動kvm工具,並設置爲開機自啓
[root@localhost ~]# systemctl start libvirtd && systemctl enable libvirtd
四、kvm部署環境準備
1、創建鏡像存放目錄
[root@localhost ~]# mkdir -p /data/kvm/iso
2、製作鏡像文件
[root@localhost ~]# cd /data/iso
[root@localhost iso]# cp /dev/cdrom centos76.iso ///先把iso鏡像開啓
[root@localhost iso]# ls
centos76.iso
3、安裝kvm虛擬機
[root@localhost ~]# virt-install --name=kvm1 --ram=52428 --vcpus=1 --disk path=/data/kvm/centos01.img,size=4,bus=virtio --accelerate --cdrom /data/iso/centos76.iso --vnc --vncport=5910 --vnclisten=0.0.0.0 --network bridge=br0,model=virtio --noautoconsole
開始安裝......
正在分配 'centos01.img' | 4.0 GB 00:00
域安裝仍在進行。您可以重新連接
到控制檯以便完成安裝進程。
--name
:指定虛擬機名稱--ram
:分配內存大小--vcpus
:分配CPU核心數,最大與實體機CPU核心數相同--disk
:指定虛擬機鏡像,size指定分配大小單位爲G--network
:網絡類型,此處用的是默認,一般用的是bridge橋接--accelerate
:加速--cdrom
:指定安裝鏡像iso--vnc
:啓用VNC遠程管理,一般安裝系統都要啓用--vncport
:指定VNC監控端口,默認端口號是5900,端口不能重複用--vnclisten
:指定VNC綁定IP,設置爲0.0.0.0--no-acpi
:官方推薦使用
4、使用VNC遠程管理服務機連接
- 連接主機
- 正在安裝