vSAN01:vSAN简介、安装、磁盘组、内部架构与调用关系

目录

    • 传统的共享存储
    • 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安装

  1. 配置VMKernel端口,启用vSAN服务
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

IP设置提前规划

在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 虚拟交换机与物理交换机同时配置巨帧

  1. 新建启用vSAN的集群
    在这里插入图片描述
    在这里插入图片描述

  2. 添加ESXi主机进入集群
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  3. 申明磁盘组(大小)
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  1. 配置完成,退出维护模式
    在这里插入图片描述

  2. 创建集群管理主机vCLS(大于3台ESXi会创建3个vCLS)
    在这里插入图片描述

vSAN集群的容量只会显示容量层而不会显示缓存层
在这里插入图片描述

vSAN集群

  • 可以支持3~64台主机,不需要每台主机都贡献磁盘
    • 现网一般最低都是4,保证可用

vSAN skyline health

  • 提供vSAN整体健康度检查,包括硬件和配置层面
  • 发生故障时,提供错误分析和解决建议。
    在这里插入图片描述

vSAN与HA

  • vSAN必须在启用HA之前配置。
    • 未启用vSAN的HA集群用管理网络传输心跳;
    • 启用vSAN的HA集群用vSAN网络传输心跳;
  • 先停止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,基于文件夹的存储,文件夹内有不同的文件
      -对象本身不存放数据,相当于指针,指向组件
对象描述
虚拟机Home Namespace虚拟机对象存放的根容器,例如VMDK、VMX等对象。
虚拟机交换对象虚拟机开机时被创建,其大小等于配置的内存减去预留。
虚拟机磁盘对象虚拟机的vmdk对象。
快照增量对象快照后的差异磁盘对象。
内存快照对象(.vmem)快照后对内存的状态保存对象。

在这里插入图片描述

vSAN内部架构

在这里插入图片描述

假如VM需要请求创建磁盘:

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/438845.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Windows】自定义显示器的分辨率

背景 由于本人更新驱动导致2个显示器里面,有一个显示器的分辨率只剩下2个可以调节 这样就导致2个显示器分辨率不同,更新了多次驱动都修复不了,所以想着看能不能自定义分辨率 工具下载 显示器自定义分辨率工具 或者百度搜索 Custom Resolu…

STM32GPIO输入和输出

目录 一、先看IO端口位的结构 1、I/O输入: 2、I/O输出: 二、GPIO模式 三、枚举类型 四、GPIO输出点亮LED 五、LED流水灯 六、让蜂鸣器响起来 七、光敏传感器控制蜂鸣器 一、先看IO端口位的结构 上面部分是输入,下面是输出。 1、I/O输…

JAVA基础语法 Day11

一、Set集合 Set特点:无序(添加数据的顺序和获取出的数据顺序不一致),不重复,无索引 public class demo1 {public static void main(String[] args) {//1.创建一个集合//HashSet特点:无序,不重…

【操作系统】体系结构

🌹😊🌹博客主页:【Hello_shuoCSDN博客】 ✨操作系统详见 【操作系统专项】 ✨C语言知识详见:【C语言专项】 目录 操作系统的内核 操作系统结构——分层结构 操作系统结构——模块化 操作系统结构——宏内核、微内核…

Unity各个操作功能+基本游戏物体创建与编辑+Unity场景概念及文件导入导出

各个操作功能 部分功能 几种操作游戏物体的方式: Center:有游戏物体父子关系的时候,中心点位置 Global/Local:世界坐标系方向/自身坐标系方向 :调试/暂停/下一帧 快捷键 1.Alt鼠标左键:可以实现巡游角度查看场景 2.鼠标滚轮…

Linux忘记root用户密码怎么重设密码

直接说步骤: 1.重启客户机 2.在选择内核页面快速按e键,进入编辑模式 进入后应该是这个样子 在这里只能按上下键切换行 找到Linux16这里 3.按右方向键切换到行尾,也就是UTF-8处,在后面添加一个空格,然后加上这段话 …

【回眸】Tessy 单元测试软件使用指南(四)常见报错及解决方案与批量初始化的经验

前言 分析时Tessy的报错 1.fatal error: Tricore/Compilers/Compilers.h: No such file or directory 2.error: #error "Compiler unsupported" 3.warning: invalid suffix on literal;C11 requires a space between literal and string macro 4.error: unknown…

C0004.Qt中QComboBox设置下拉列表样式后,下拉列表样式无效的解决办法

问题描述 我们平时在使用Qt Creator对控件QComboBox的样式进行设置后,在运行程序启动界面时,发现设置的样式无效,效果如下: /* 设置下拉菜单框的样式 */ QComboBox QAbstractItemView {border: 1px solid rgb(161,161,161); /* …

【D3.js in Action 3 精译_028】3.4 小节 DIY 实战:使用 Observable 在线绘制 D3 条形图

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一部分 D3.js 基础知识 第一章 D3.js 简介(已完结) 1.1 何为 D3.js?1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践(上)1.3 数据可…

leetcode135:分发糖果

步骤1:计算问题性质的定义 我们需要解决的题目是一个典型的贪心算法问题,要求分发糖果的数量,满足特定条件。以下是问题的详细定义: 输入: ratings:长度为 n 的数组,表示每个孩子的评分&#x…

【51单片机】点亮LED之经典流水灯

开发环境 开发板:普中51-单核-A2单片机:STC89C52RC(双列直插40引脚 DIP40)Keil uVision5 v9.61 最新版破解方法自行百度,相关文档和视频资料很多,我自己将这一操作记录下来当做博客发布,CSDN以…

Pikachu-Unsafe FileUpload-客户端check

上传图片,点击查看页面的源码, 可以看到页面的文件名校验是放在前端的;而且也没有发起网络请求; 所以,可以通过直接修改前端代码,删除 checkFileExt(this.value) 这部分; 又或者先把文件名改成…

职业技术学校开设无人机培训技术详解

职业技术学校开设无人机培训技术,是一个涉及多个方面的综合性教学过程。以下是对该培训技术的详细解析: 一、培训目标 无人机培训技术的目标在于培养学员掌握无人机的基本原理、组装调试、飞行操作、安全规范及维修保养等技能,使其成为具备…

【Android】中级控件

其他布局 相对布局RelativeLayout RelativeLayout下级视图的位置是相对位置,得有具体的参照物才能确定最终位置。如果不设定下级视图的参照物,那么下级视图默认显示在RelativeLayout内部的左上角。用于确定视图位置的参照物分两种,一种是与…

Linux环境基础开发工具使用(2)

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 Linux环境基础开发工具使用(2) 收录于专栏[Linux学习] 本专栏旨在分享学习Linux的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 1. Li…

Qt Quick 3D 入门:QML 3D场景详解

随着 Qt 6 的发布,QtQuick3D 模块带来了新的 3D 渲染和交互能力,使得在 Qt 中创建 3D 场景变得更加简单和直观。本文将带您从一个简单的 QML 3D 应用开始,详细讲解各个相关领域的概念、代码实现以及功能特点。 什么是 Qt Quick 3D&#xff1…

git维护【.gitignore文件】

在工程下添加 .gitignore 文件【git忽略文件】 *.class .idea *.iml *.jar /*/target/

订阅ROS2中相机的相关话题并保存RGB、深度和点云图

系统:Ubuntu22.04 ROS2版本:ROS2 humble 1.订阅ROS2中相机的相关话题并保存RGB图、深度图和点云图 ros2 topic list/stellar_1/rgb/image_raw /camera/depth/image_raw /stellar_1/points2CMakeLists.txt cmake_minimum_required(VERSION 3.15) projec…

Docker安装人大金仓(kingbase)关系型数据库教程

人大金仓数据库(KingbaseES)是由中国人民大学金仓公司研发的一款自主知识产权的关系型数据库管理系统。 官网地址:https://www.kingbase.com.cn/ 本章教程,主要介绍如何用Docker安装启动人大金仓(kingbase)关系型数据库。 一、下载镜像 下载地址:https://www.kingbase.c…

螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习04(环境准备)

4 创建docker容器 4.1创建网络 [rootlocalhost wutool]# docker network create -d macvlan --subnet192.168.137.0/24 --gateway192.168.137.2 --ip-range192.168.137.0/24 -o parentens33 nat 52af11381bfd655d175e4168265b2a507793e8fe48f119db846949ffd4dd27de [rootlocal…