1. 什么是虚拟化
虚拟化,通过模拟计算机的硬件,来实现同一台计算机上运行多个不同的操作系统的既技术
2. 为什么要使用虚拟化
为了充分利于资源,软件运行环境的隔离,只要有虚拟化才能实现。
虚拟化提高了资源的利用率,服务的安全性隔离,解决了系统和硬件之间的依赖。
3. kvm虚拟化软件的安装
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum -y install libvirt virt-install qemu-kvm virt-manager
virt-install 命令行安装工具
virt-manager 图形界面安装工具
qemu-kvm 磁盘管理
systemctl start libvirtd
systemctl enable libvirtd
相关工具
-
VNC:远程的桌面管理工具
-
libvirt 作用:虚拟机管理软件
-
libvirt:kvm,xen,qemu,lxc…
-
virt virt-install virt-clon 作用:虚拟机的安装工具和克隆工具
-
qemu-kvm qemu-img 作用:管理虚拟机的虚拟磁盘
虚拟机软件
-
qemu 软件纯模拟全虚拟机软件,特别慢!AIX,兼容性好
-
xen(半)性能特别好,需要使用专门修改后的内核,兼容性差!
-
KVM(linux)全虚拟机,他有硬件支持CPU、基于内核,而且不需要使用专门的内核,性能较好、兼容性好。
4.安装一台kvm虚拟机
下载软件TghVNC或者VNC viewer 4.exe 用于远程连接虚拟机
#创建虚拟机磁盘镜像格式
[root@localhost opt]# qemu-img create -f raw /opt/CentOS-7.4-x86_64.img 10G
#创建虚拟机磁盘镜像 qcow2 格式
[root@localhost opt]# qemu-img reate -f qcow2 /opt/test01.qcow2 10G
[root@localhost opt]# virt-install --os-type=linux --os-variant rhel7 --name test01 --memory 512,maxmemory=1024 --vcpus 1,maxvcpus=10 --cdrom=/kvm/disk/CentOS-7-x86_64-DVD-1810.iso --disk path=/kvm/disk/test.qcow2 --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
开始安装......
域安装仍在进行。您可以重新连接
到控制台以便完成安装进程。
virt-instal #命令安装工具
--virt-type kvm #指定创建类型
--os-type=linux #操作系统类型
--os-variant rhel7 #操作系统具体类型
--name test01 #虚拟机名称
--memory 512,maxmemory=1024 #内存大小
--vcpus 1,maxvcpus=10 #cpu内核数量
--cdrom=/kvm/disk/CentOS-7-x86_64-DVD-1810.iso #指定镜像源
--disk path=/kvm/disk/test.qcow2 #磁盘路径
--network bridge=br0 --network network=default #指定网卡类型 桥接模式 默认网卡类型
--graphics vnc,listen=0.0.0.0 #启用图像化加载,vnc监听地址。 默认端口号5900 会一次累加
--noautocnsole #支持console连接
- –virt-type kvm 虚拟化的类型(qemu)
- –so-type=linux 系统类型
- –os-variat rhel7 系统版本
- –name centos 虚拟机的名字
- –memory 1024 虚拟机的内存
- –vcpu 1 虚拟机的核数
- –disk /opt/centos2.raw,format=raw,size=10
- –cdrom
磁盘类型
raw: 10G 不支持做快照,性能好
qcow2:支持快照
5. kvm虚拟机的virsh日常管理和配置
说明 | 命令 |
---|---|
查看当前运行的虚拟机 | virsh list (-all 查看所有主机) |
开机 | virsh start 【虚拟机名称】 |
关机 | virsh shutdown 【虚拟机名称】 |
重启虚拟机 | virsh reboot 【虚拟机名】 |
强制关机 | virsh destroy 【虚拟机名称】 |
挂起虚拟机 | virsh suspend 【虚拟机名称】 |
恢复挂起的虚拟机 | virsh resume 【虚拟机名称】 |
虚拟机重名命 | virsh domrename 【old虚拟机名称】【new虚拟机名称】 |
导出虚拟机xml文件 | virsh dumpxml 【虚拟机名】> 【xml文件名】 |
删除虚拟机 | virsh undefine 【虚拟机名】 |
导入虚拟机 | virsh define 【xml文件名】 |
修复虚拟配置xml | virsh edi 【虚拟机名】 |
创建快照 | virsh snapshot-create 【虚拟机名称】 |
创建快照并命名 | virh snapshot-create-as 【虚拟机名称】 【快照名称】 |
查看快照 | virsh snapshot-list 【快照名称】 |
还原快照 | virsh snapshot-revert 【虚拟机名称】 【快照名称】 |
删除快照 | virsh snapshot-delete 【虚拟机名称】【快照名称】 |
虚拟机克隆 | virt-clone --auto-clone -o 【虚拟机名】】 -n 【新虚拟机名】 |
自动加载虚拟机 | virsh autostart【虚拟机名称】 |
查询虚拟机vnc端口号 | virsh vncdisplay 【虚拟机名】 |
使用console方式连接 | virsh console 【虚拟机名】 |
qemu-img命令
说明 | 命令 |
---|---|
创建虚拟机磁盘文件 | qemu-img create 【磁盘名】 |
调整虚拟机磁盘容量大小 | qemu-img -d 【磁盘名】+5G 或者修改为指定大小 10G |
查看磁盘信息 | qemu-img info 【磁盘名】 |