作者:创业语录分享_689 | 来源:互联网 | 2023-08-15 13:07
一.什么是虚拟化1.硬件虚拟化-一台物理计算机虚拟出多台逻辑计算机-cpu,内存可分配给多个虚拟机2.软件虚拟化-一个LAMP平台支撑多个网站-桌面虚拟化3.通过软件平台模拟出的计算机
一.什么是虚拟化
1.硬件虚拟化
-一台物理计算机虚拟出多台逻辑计算机
-cpu,内存可分配给多个虚拟机
2.软件虚拟化
-一个LAMP平台支撑多个网站
-桌面虚拟化
3.通过软件平台模拟出的计算机
-对最终用户来说,感受不到与物理计算机的差异
-根据虚拟化程度不同,所需的修改也不同
4.虚拟化的实现程度
完全虚拟化,Full Virtualization
-由平台软件模拟实现
-客户机的操作系统代码几乎不做修改
半虚拟化,Para Virtualization
-平台软件只提供最核心的虚拟机功能
-需要修改客户机的系统内核,兼容性较差
硬件辅助虚拟化,Hardware-Assisted Virtualization
-将实现虚拟化技术的部分功能硬件化
-主要指Intel/AMD等CPU支持
5.常见的虚拟化软件
VMware VSphere平台,VMware Workstation
Microsoft VirtualPC,Hyper-V
RedHat KVM,RHEV平台
Citrix Xen
Oracle Oracle VM VirtualBox
二.KVM介绍
Kernel-based Virtualization Macheine
-基于内核的完全虚拟花解决方案
-Red Hat5.4版本开始推出,可替代早先的Xen产品
-需要Inter VT 或 AMD V 处理器技术支持
-支持Linux/Unix/Windows客户机
三.Host OS 与 Guest OS
1.Host OS --> 物理机/宿主机\
-运行KVM虚拟机平台的物理机的操作系统
-比如CentOS6.7 ,RHEL6.7
2.Guest OS --> 虚拟机/客户机
-虚拟机上运行的操作系统
-比如:RHEL6.7 windows7 ...
四.虚拟网络
1.桥接模式
-Guest 与 Host 连接到同一个交换机上
-通过桥接物理网卡,相当于自连到Host所在网络
2.隔离网络
-Guest 可访问同一虚拟交换机上的其他Guest
-但无法访问Host所在外部网络
五.网络访问类型
1.NAT模式(默认)
-Guest的网关指向Host的virbr0的IP address
-允许虚拟机共享宿主机的网络连接
2.路由模式
-由Host充当路由器,开启转发
-需要额外设置外网与Guest之间互访的路由
六.安装虚拟化相关包组
1.确保已安装的包组
-Virtualization,Virtualization clinet
-Virtualization Tools, Virtualization Platform
2.启动libvirtd服务,并设为开机自启动
[root@ping ~]# service libvirtd restart
[root@ping ~]# chkconfig libvirtd on
七.virsh命令工具介绍
1.提供管理各虚拟机的命令接口
-支持交互模式,查看/创建/停止/关闭...
-格式:virsh 控制指令 [虚拟机名称] [参数]
[root@ping ~]# virsh
2.查看KVM节点的信息
[root@ping ~]# virsh nodeinfo
3.列出所有的虚拟机
[root@ping ~]# virsh list --all
4.列出指定虚拟机信息
[root@ping ~]# virsh dominfo 虚拟机名称
5.运行|重启|关闭指定的虚拟机
[root@ping ~]# virth start|reboot|shutdown 虚拟机名称
6.强制关闭指定的虚拟机
[root@ping ~]# virsh destory 虚拟机名称
7.将指定的虚拟机设为开机自启动
[root@ping ~]# virsh autostart [--disable] 虚拟机名称
八.xml配置文件
-定义了一个虚拟机的名称,UUID,CPU,内存,虚拟磁盘,网卡等各种参数设置
-默认位于/etc/libvirt/qemu/虚拟机名.xml
九.导出xml配置文件
-查看:virsh dumpxml 虚拟机名
-备份:virsh dumpxml 虚拟机名 > 虚拟机名.xml
十.编辑虚拟机设置
-编辑:virsh edit 虚拟机名
-若修改name,uuid,disk,mac,可自动保存为新虚拟机配置
[root@ping ~]# virsh edit RHEL6
十一.导入虚拟机
-根据修改后的独立xml文件定义后新虚拟机 :virsh define XML描述文件
十二.删除虚拟机
-必要时可去除去多余的xml配置 -比如虚拟机改名的情况
-避免出现多个虚拟机的磁盘或MAC地址冲突
-virsh undefine 虚拟机名
十三.常用镜像类型
1.虚拟机的磁盘镜像文件格式
特点 RAW QCW2
kvm默认 否 是
I/O效率 大 小
占有空间 不支持 支持
后端盘复用 不支持 支持
快照 不支持 支持
十四.创建虚拟机磁盘镜像
1.创建新的镜像盘文件
-qemu-img create -f 格式 磁盘路径 大小
2.查询镜像文件的信息
-qemu-img info 磁盘路径
十五.创建/还原/删除快照 1.快照的作用
-在虚拟机磁盘镜像内记录不同时间点的状态数据备份
-必要时可将虚拟机恢复到指定的快照
2.基本用法
- qemu-img snapshot -c 快照名 qcow2磁盘
- qemu-img snapshot -l qcow2磁盘
- qemu-img snapshot -a 快照名 qcow2磁盘
- qemu-img snapshot -d 快照名 qcow2磁盘
十六.一台KVM虚拟机的组成
1.一台KVM虚拟机的组成
-xml配置文件:定义虚拟机的名称,UUID,CPU,内存,虚拟磁盘,网卡等各种参数设置
-磁盘镜像文件:保存虚拟机的操作系统及文档数据,镜像路径取决于xml配置文件中的定义
十七.COW技术原理
1.Copy On Write,写时复制
-直接映射原始盘的数据内容
-当原始盘的旧数据有修改时,在修改之前自动将旧数据存入前端盘
-对前端盘的修改不回写到原始盘
十八.快建新的虚拟机:
一.准备模版虚拟机
1.模版机的选择
-可以用现有的虚拟机,也可再安装一台新虚拟机
2.模版机的初始化
-预装软件/系统优化/关闭SELinux等
-生产环境可以标记/.unconfigured ,方便新虚拟机的配置(相当于出厂设置,提示用户初始化)
3.备份号模版磁盘,xml配置文件
4.删除模版机(undefine)
二.快速创建qcow前端盘
1.qemu-img 通过-b 选项复用指定后端盘
- qemu-img create -f qcow2 -b 后端盘 前端盘
- qemu-img create -f qcow2 -b RHEL6.qcow2 rhel6.qcow2
2.ls -lh | grep -i "rhel" 对比前端盘,后端盘大小
-rw-r--r--. 1 root root 193K 6月 26 18:48 rhel6.qcow2
-rw-r--r--. 1 qemu qemu 9.2G 6月 26 18:49 RHEL6.qcow2
三.配置新的虚拟机
1.拷贝模版机的xml配置
-按照需要修改,并据此定义新的虚拟机
cp /var/lib/libvirt/images/RHEL6.xml /root/
vim /root/RHEL6.xml
virsh define /root/RHEL6.xml