黄冈建设局网站首页天河区门户网站教育局
目录
- 传统的共享存储
 - vSAN存储
 - OSA的系统要求
 - vSAN安装
 - vSAN集群
 - vSAN skyline health
 - vSAN与HA
 - 磁盘组
 - 混合磁盘架构
 - 全闪磁盘架构
 
- vSAN对象
 - vSAN内部架构
 
传统的共享存储
- 通过
隔离的存储网络使得不同的ESXi主机访问独立的存储设备。 - 需要前期投入较高的资金单独采购存储、网络
 - 可以单独规划
巨帧,使得MTU变大,网络利用率变高 - 需要专门设置存储管理员(如果划分细致)
 
vSAN存储
- 利用
本机的空余磁盘,作成共享存储 - 5.5
必须一个SSD,其他没有要求;6.0开始可以支持全闪(同时支持高级功能如去重、压缩)- 8.0前叫做Original Storage Architecture OSA。
 - 8.0 叫做Express Storage Architecture ESA。
 
 - 每台机器可以最多包含5个磁盘组。每个磁盘组都得有一个SSD 
- 假如5个磁盘组,每个磁盘组最多7块硬盘可用,至少需要32G内存可用
 
 - 与vSphere集成,可以直接在vCenter上管理与使用
 - 必须是一整块的空闲磁盘,而不是部分空闲
 
OSA的系统要求
- vSAN集群的主机,硬件/磁盘配置/ESXi软件版本 需要一致。 
- VMWare HCL 硬件兼容性列表
 
 - 每个磁盘组必须一个SSD作为缓存,其余磁盘作为容量层。缓存不计入可用容量
 - 对于混合架构(SSD+HDD),至少1Gb网络;全闪架构,至少10Gb网络
 - 建议网络层面单独隔离,开启巨帧
 
vSAN安装
- 配置VMKernel端口,启用vSAN服务


 

 
IP设置提前规划

- vSAN流量配置上联链路冗余Bond
 

 
 
- 虚拟交换机与物理交换机同时配置巨帧
 
略
-  
新建启用vSAN的集群


 -  
添加ESXi主机进入集群



 -  
申明磁盘组(大小)

 



-  
配置完成,退出维护模式

 -  
创建集群管理主机vCLS(大于3台ESXi会创建3个vCLS)

 
vSAN集群的容量只会显示容量层而不会显示缓存层
vSAN集群
- 可以支持3~64台主机,不需要每台主机都贡献磁盘 
- 现网一般最低都是4,保证可用
 
 
vSAN skyline health
- 提供vSAN整体健康度检查,包括硬件和配置层面
 - 发生故障时,提供错误分析和解决建议。

 
vSAN与HA
- vSAN必须在启用HA之前配置。 
- 未启用vSAN的HA集群用
管理网络传输心跳; - 启用vSAN的HA集群用
vSAN网络传输心跳; 
 - 未启用vSAN的HA集群用
 - 先停止HA,配置好vSAN再启用HA
 
磁盘组
- OSA要求每个磁盘组至少一块SSD作为缓存层,至多7块SSD/HHD作为容量层;
 - 每个ESXi主机最多5个磁盘组;
 - 5个8盘磁盘组,内存最少32G;
 - 容量层全闪时,支持压缩、去重;
 
混合磁盘架构
- 缓存层中70%空间用于read,30%用于write;
 - write到达缓存层直接返回写确认;
 - 缓存层至少是容量层的10%,缓存层大小增加可以提高read命中率

 
write-through(透写): 所有的写操作直接写往主存,同时也写在缓存cache中,写主存成功后返回写成功。
write-back(回写): 写操作先缓存在cache中,直接返回写成功。稍后才会统一将缓存写到主存中去。
全闪磁盘架构
- 缓存层所有空间用于写缓存
 - 写缓存中的数据趋于稳定后,写入容量层。 
- 降低写放大(WA)
 - 提高磁盘寿命
 
 - 容量层选择容量大的SSD,缓存层选择寿命大的SSD

 
vSAN对象
- vSAN是一种逻辑的、基于对象的块存储架构 
- VMDK,基于文件夹的存储,文件夹内有不同的文件
-对象本身不存放数据,相当于指针,指向组件 
 - VMDK,基于文件夹的存储,文件夹内有不同的文件
 
| 对象 | 描述 | 
|---|---|
| 虚拟机Home Namespace | 虚拟机对象存放的根容器,例如VMDK、VMX等对象。 | 
| 虚拟机交换对象 | 虚拟机开机时被创建,其大小等于配置的内存减去预留。 | 
| 虚拟机磁盘对象 | 虚拟机的vmdk对象。 | 
| 快照增量对象 | 快照后的差异磁盘对象。 | 
| 内存快照对象(.vmem) | 快照后对内存的状态保存对象。 | 

vSAN内部架构

假如VM需要请求创建磁盘:
- 在vCenter上下发指令。通过
vpxd进行下发,- vpxd:vCenter的一个daemon
 
 vpxd将该指令下发到ESXi主机的vpxa进程- vpxa: 专门从vCenter获取指令的进程
 
vpxa将指令传输给hostd进程- hostd:ESXi的核心进程
 
hostd接收到创建磁盘的指令,会调用一些需要的进程如OSFSd/DISKLIB- OSFSd: Object Storage File System Daemon
 - DISKLIB: 访问磁盘需要的Library库
 
OSFSd/DISKLIB将指令传输到CLOM中- CLOM: Cluster Level Object Manager,根据策略来定义写的磁盘文件最终怎么存储
 
CLOM通过询问CMMDS进程 获取信息,判断对象组件写哪- CMMDS:Cluster Monitoring MemberShip and Directory Service,拥有集群中所有与vSAN相关信息的集合数据库,如对象存放、调用空间等。
 - 为了保证不同ESXi的CMMDS数据库内容一致,vSAN集群会选举出唯一的Master,其他则作为一台backup和多台Agent。只有Master可以读写,其他只能读;Backup作为Master Down后的接管角色
 
CMMDS的同步依赖于RDT- RDT: Reliable Datagram Transport
# ESXi CLI # 两条效果一样的 ~] esxicli vsan cluster list ~] esxicli vsan cluster get ... Local Node State: Agent/Master/Backup ... 
- RDT: Reliable Datagram Transport
 CLOM将具体操作的指令发送给DOM- DOM:分布式对象管理 
- DOM Client:接受CLOM发来的读写IO的要求,转发IO请求给Owner
 - DOM Owner:真实对对象拥有读写访问权写的角色。vSAN中创建每一个对象,都会选择一个DOM作为它的Owner。对对象的操作只能通过DOM Owner进行传递。 
- 如果对象就在本机,Owner会把这个IO读写请求转发给DOM Component Manager。
 - 如果DOM Owner和组件所在物理位置不一致,通过
RDT转发给对应的DOM Component Manager。 
 - DOM Component Manager:负责管理组件所在主机上的一个对象。组件物理存放在那个ESXi。
 
 
- DOM:分布式对象管理 
 DOM Component Manager会将指令传输给LSOM- LSOM: Log Structured Object Manager 负责日志对象分区的读写操作。负责最终的IO请求写入的一个角色,也负责读写的缓存管理。
 
LSOM调用PSA,将IO请求转换成磁盘能接受的指令- PSA: Pluggable Storage Architecture 可插拔存储架构。vSAN控制物理磁盘组最后的角色。PSA将IO落入磁盘上。
 

