安裝如下軟件。
yum -y install qemu-kvm python-virtinst libvirt libvirt-python virt-manager libguestfs-tools bridge-utils virt-install vnc -y
啓動kvm服務。
service libvirtd start
cd /etc/sysconfig/network-scripts/
此處假設宿主機網卡名稱爲ifcfg-enp1s0。複製建立br0配置文件。 cp ifcfg-enp1s0 ifcfg-br0
配置內容以下:python
四、建立虛擬機。mysql
qemu-img create -f qcow2 /data/vitual-img/kvm-mysql-18.18.100.4-data.img 500G 解析: create -f qcow2:建立磁盤並指定硬盤文件系統格式 /data/vitual-img/kvm-mysql-18.18.100.4-data.img:指定硬盤文件存儲目錄 500G:指定硬盤大小
virt-install --name kvm-liushaoqiang-192.168.40.91 --ram 32768 --vcpus=4 --cdrom /data/iso/CentOS-7-x86_64-Minimal-1804.iso --disk path=/data/vitual-img/kvm-liushaoqiang-192.168.40.91-system.img,format=qcow2,bus=virtio --bridge=br0 --vnc --vncport=5992 --vnclisten=0.0.0.0 解析: --name kvm-liushaoqiang-192.168.40.91:指定建立虛擬機的名稱 --ram 32768:指定虛擬機內存,默認按MB計算 --vcpus=4:指定虛擬機cpu核心數量 --cdrom /data/iso/CentOS-7-x86_64-Minimal-1804.iso:指定啓動文件,以cdrom iso鏡像啓動 --disk path=/data/vitual-img/kvm-liushaoqiang-192.168.40.91-system.img,size=40,format=qcow2,bus=virtio:指定磁盤位置,格式爲qcow2,虛擬化方式爲virtio(半虛擬化方式) --bridge=br0:指定網絡模式爲橋接,橋接網卡爲br0 --vnc --vncport=5992 --vnclisten=0.0.0.0:指定虛擬機遠程vnc地址以及端口
如下命令均在虛擬機的宿主機上執行。sql
5.一、強制關閉虛擬機vim
virsh destroy kvm-mysql-18.18.100.4 解析: kvm-mysql-18.18.100.4:虛擬機名稱,不是虛擬機的hostname。
5.二、完全刪除虛擬機緩存
virsh undefine kvm-mysql-18.18.100.4
5.三、關閉虛擬機網絡
virsh shutdown kvm-mysql-18.18.100.4 備註:須要在虛擬機上安裝acpid,同時啓動該服務。不然沒法使用virsh shutdown遠程關閉虛擬機。
5.四、啓動虛擬機dom
virsh start kvm-mysql-18.18.100.4
5.五、查看虛擬機列表spa
virsh list --all 解析: list:不加--all沒法查看該宿主機上全部虛擬機,只能列出當前處於運行狀態的虛擬機
--all:列出該宿主機上全部虛擬機
5.六、虛擬機新增磁盤操作系統
virsh attach-disk --domain kvm-mysql-18.18.100.4 --source /data/vitual-img/kvm-mysql-18.18.100.4-data.img --target sda --cache none 解析: --domain kvm-mysql-18.18.100.4:指定虛擬機名稱 --source /data/vitual-img/kvm-mysql-18.18.100.4-data.img:指定要掛載的磁盤目錄以及所在位置 --target sda:指明該磁盤掛載的虛擬機以後,在虛擬機上的磁盤位置 --cache none:無緩存 備註: 1、只有raw模式的磁盤纔可直接掛載,qcow2格式的磁盤須要遠程映射纔可掛載。 2、系統重啓,使用該命令掛載磁盤會丟失。
5.七、虛擬機卸載磁盤rest
virsh detach-disk kvm-mysql-18.18.100.4 --target sda 解析: kvm-mysql-18.18.100.4:指定虛擬機名稱 --target sda:指明虛擬機上磁盤掛載點
5.八、查看img磁盤信息
qemu-img info kvm-mysql-18.18.100.4-data.img
5.九、在虛擬機關閉狀態下,將文件複製到虛擬機內部
virt-copy-in -d kvm-mysql-18.18.100.4 change_ip.sh /etc/rc.d 解析: -d kvm-mysql-18.18.100.4:指定虛擬機名稱 change_ip.sh:在宿主機上的文件名稱,建議使用絕對地址 /etc/rc.d:虛擬機內部目錄