什么是虚拟化:
虚拟化是一种资源管理技术, 是将计算机的各种物理资源, 如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破物理设备结构间的不可切割的障碍,使用户可以比原本的架构更好的方式来应用这些资源。这些资源的虚拟部分是不受现有资源的架构方式、地域或物理设备所限制。
虚拟化创建了一层隔离层,把硬件和上层应用分离开来,允许在一个硬件资源上运行多个逻辑应用。
虚拟化有:服务器虚拟化、应用程序虚拟化、展现层虚拟化、桌面虚拟化。
常见的虚拟化:
内存虚拟化
磁盘虚拟化
网络虚拟化
VMware实现的是x86服务器的虚拟化,更确切地说,包含以下三个方面
计算能力:CPU/Memory的虚拟化
存储:VMFS文件系统
网络:虚拟交换机
服务器虚拟化的方式:
服务器虚拟化有两种常见的类型
1. 寄居架构(Hosted Architecture)
作为应用安装在OS之上
基于现有操作系统
兼容性好
性能较差
功能单一
2. 裸金属架构(Bare Metal Architecture)
直接安装在硬件之上,本身就是OS
基于裸机(Bare Metal)
硬件兼容性要求高
性能好
有许多功能。
为什么要使用虚拟机:
物理架构存在的问题:
难以复制和移动
受制于一定的硬件组件
生命周期短
物理服务器的资源利用率低
服务器虚拟化
将一台物理服务器虚拟成多台虚拟服务器。虚拟服务器由一系列的文件组成
虚拟机与物理机相比
更大化利用物理机的资源,节省能耗
更方便地获取计算资源
硬件无关。虚机都是文件,方便迁移、保护
生命周期更长,不会随着硬件变化而变化
根据需求的变化,非常容易更改资源的分配
更多功能
在线的数据、虚拟机迁移
高可用
自动资源调配
云计算
减少整体拥有成本,包括管理、维护等
vSphere基本架构:
图:vSphere 基本架构
虚拟化环境中的资源共享:
物理机的资源被多个虚拟机共享:CPU、内存、网络、存储等。
CPU虚拟化:
LCPU
逻辑运算单元
可供使用的物理资源
超线程对LCPU的影响
vCPU
虚拟化的CPU
vmkernel
负责CPU资源调度
分时
内存虚拟化:
图:内存虚拟化示意图
由vmkernel控制
vmkernel控制物理内存
每个虚拟机拥有独立的连续可寻址的虚拟内存空间
采用多种技术优化内存的使用
物理内存不足时可以使用磁盘存储作为交换空间
网络虚拟化:
图:网络虚拟化示意图
通过虚拟网络交换机实现
连接虚拟机、vmkernel与外部物理网络,工作在第二层
虚拟网卡
虚拟机中运行的网卡
虚拟机对外进行网络通讯
vmkernel口-vmkernel对外进行网络通讯
物理网卡-上连物理网络,工作在次
存储虚拟化:
图:存储虚拟化
通过虚拟磁盘vmdk文件的封装实现
多个ESXi主机访问共享存储
虚机的虚拟磁盘以vmdk文件格式存放在存储中
每个虚拟机由一组文件组成
每个虚拟机有各自的目录
虚拟机的文件系统对ESXi主机不可见
vSphere与云计算:
虚拟化是云计算的基础
虚拟机在虚拟基础架构上运行
动态的计算资源池作为云计算的基础
支持各种云计算平台
VMware vRealize
OpenStack
支持多种云环境
私有云
公有云
混合云
ESXi基本结构
ESXi介绍:
VMware ESXi是最核心的组件
VMware ESXi是我们常说的ESXi主机,虚拟化层
组件的作用:ESXi用于协调物理计算机的资源,同时通过ESXi管理其上的虚拟机,如部署、迁移等操作。同时还可以通过ESXi对物理计算机上的网络存储资源仅从管理,ESXi通过配置虚拟交换机上的vSwitch管理配置网络资源,通过VMfs和nfs管理虚拟存储资源。
核心Hypervisor - VMkernel
基于裸机的虚拟化
虚拟CPU/内存
VMFS存储支持
虚拟交换机支持
ESXi的安装方式
可以安装在本地硬盘,存储网络盘, USB/SD卡,或者内存中