首页 > 其他分享 >Lustre架构介绍的阅读笔记-基础知识

Lustre架构介绍的阅读笔记-基础知识

时间:2024-04-06 19:57:16浏览次数:23  
标签:文件 存储 架构 Lustre 基础知识 集群 数据 客户端

本文是在阅读Introduction to Lustre* Architecture的如下章节时的笔记。

  • Lustre – Fast, Scalable Storage for HPC
  • Lustre Scalable Storage
  • Lustre Building Blocks
  • Lustre Storage Scalability

Lustre software services are implemented entirely within the Linux kernel, as loadable modules.

Lustre作为Linux内核的模块,工作在内核态。
相对于其它存储软件,开发、调试、定位问题时,困难程度会大一些,对参与相关的业务的开发人员、运维人员的技能和经验有一定的要求。

A file in Lustre is comprised of a metadata inode object and one or more data objects.

在Lustre集群中,一个文件由一个元数据对象和多个数据对象组成。

Lustre is a client-server, parallel, distributed, network file system.

关键信息,如下:
CS模式,即客户端、服务端模式,由多个客户端和多个服务端组成。上层应用访问存储提供的服务时,需要集成客户端,通过客户端来访问存储服务器的实例。
并行,即多个应用、多个客户端可以和并行和存储服务器的实例通信,各个业务操作之间没有顺序的依赖。多个文件的访问操作、单个文件的不同部分的访问操作,均可以同时执行。
分布式系统,客户和存储服务器集群均可以水平扩容,具备分布式系统的优点和约束。
NFS,即网络文件系统,兼容POSIX规范。

Lustre separates metadata (inode) storage from block data storage (file content).

存储系统有三类职能:

  • 管理职能,管理集群的元数据和配置参数。
    • 集群的元数据,比如集群中各节点,服务端节点、客户端节点,存储节点的容量等。
    • 配置参数,比如命名空间、容量等。
  • 元数据服务,管理目录、文件的元数据。元比如:
    • 名称
    • 权限,比如uid/gid、UGO、ACL等
    • 属性,比如时间类的属性
      • crtime即文件的创建时间
      • ctime即文件的元数据的变更时间
      • mtime即文件的数据的变更时间
      • atime即文件的最近访问时间
    • 扩展属性
    • 数据的分布
  • 数据存储服务,管理文件的数据,文件被切割为对象,分布在集群中的多个存储服务节点上。

由上述分工可知,对于目录、文件的元数据的操作,均可由元数据服务实施,无需管理职能数据存储服务参与。

This is the key concept of Lustre’s
design – separate small, random, IOPS-intensive metadata traffic from the large, throughputintensive, streaming block IO.

Lustre的设计思路,将文件数据和文件元数据的访问操作隔离,由不同的组件处理。这两类数据有不同的访问特征。

  • 文件元数据的访问,随机、量小、时延敏感、IOPS要求高。
  • 文件数据的访问,流式、吞吐量敏感。

元数据服务和数据存储服务可以独立扩容,依据不同的业务场景配置不同的数量比例。

承担管理职能的服务,由MGS、MGT组成,MGS提供服务,MGT负责存储数据。
承担元数据服务的服务,由MDS、MDT组成,MDS提供服务,MDT负责存储数据。
承担数据存储服务的服务,由OSS、OST组成,OSS提供服务,OST负责存储数据。

Lustre的客户端,对客户应用提供兼容POSIX规范的API接口,因此客户应用无需改造即可访问存储在Lustre集群上的目录、文件。
Lustre的客户端,与存储服务端之间通信时

  • 使用私有协议 LNetLustre Network protocol
  • 支持网络技术包括OPA/IB/Ethernet

In order to ensure that failover is handled seamlessly, data modifications in Lustre are
asynchronous and transactional. The client software maintains a transaction log.

原文中的客户端,指的是部署在客户应用节点上的Lustre户端吗?

All Lustre server types (MGS, MDS and OSS) support failover.

Lustre集群中不存在单点故障,关键进程均有备份,遇到进程故障等现象时,均由后备接替服务,故障恢复时,实现客户应用无感知的效果。

MGT、MDT支持使用LDISKFS或者ZFS作为后端存储系统。
Lustre存储集群的技术规格项,如下:

  • 条带的数量
  • 条带的大小,包括最大值、最小值
  • 对象大小,最大值
  • 文件大小,最大值
  • 文件系统的容量,最大值
  • 单个目录支持的文件数量或者目录数量,最大值
  • 文件系统内支持的文件数量,最大值
  • 文件名的长度,最大长度
  • 文件的全路径的长度,最大长度

上述技术规格项的具体取值和后端存储的类型有关系。

标签:文件,存储,架构,Lustre,基础知识,集群,数据,客户端
From: https://www.cnblogs.com/jackieathome/p/18117822

相关文章

  • 软件系统质量属性_2.面向架构评估的质量属性
        为了评价一个软件系统,特别是软件系统的架构,需要进行架构评估。在架构评估过程中,评估人员所关注的是系统的质量属性。评估方法所普遍关注的质量属性有:性能、可靠性、可用性、安全性、可修改性、功能性、可变性、互操作性。1.性能     性能(Performance)是......
  • Java基础知识总结(第九篇):泛型和JUnit5
    声明:        1.本文根据韩顺平老师教学视频自行整理,以便记忆       2.若有错误不当之处,请指出系列文章目录Java基础知识总结(第一篇):基础语法Java基础知识总结(第二篇):流程控制语句(分支控制和循环控制)Java基础知识总结(第三篇):数组、排......
  • Java基础知识总结(第八篇):集合:Collection(List、Set)、Map、Collections 工具类
    声明:        1.本文根据韩顺平老师教学视频自行整理,以便记忆       2.若有错误不当之处,请指出系列文章目录Java基础知识总结(第一篇):基础语法Java基础知识总结(第二篇):流程控制语句(分支控制和循环控制)Java基础知识总结(第三篇):数组、排......
  • 散列基础知识
    一)散列的基本概念散列方法的主要思想是根据结点的关键码值来确定其存储地址:以关键码值K为自变量,通过一定的函数关系h(K)(称为散列函数),计算出对应的函数值来,把这个值解释为结点的存储地址,将结点存入到此存储单元中。检索时,用同样的方法计算地址,然后到相应的单元里去取要找的结点......
  • 硬件基础知识
    CPU制作cpu组成原理CPU(CentralProcessingUnit-中央处理单元):CPU是计算机的核心,负责解释和执行程序指令以及处理数据。它由几个关键部分组成,如算术逻辑单元(ALU)、寄存器、和控制单元(CU),这些都是执行计算和处理指令所必需的。ALU(ArithmeticLogicUnit-算术逻辑单......
  • Arm架构下麒麟操作系统安装配置Mariadb数据库
    1、安装配置JDK(1)检查机器是否已安装JDK执行java-version命令查看机器是否安装JDK,一般麒麟操作系统默认安装openjdk1.8。  (2)安装指定版本JDK如果麒麟操作系统默认安装的openjdk1.8不符合需求的话,可以卸载机器安装的openjdk1.8并按需安装所需的openjdk版本,此步骤本文不......
  • sqlmap基础知识(三)
    一、sqlmap的基本使用指定检测级别sqlmap使用的payloads直接从文本文件xml/payloads.xml中载入根据该文件顶部的相关指导说明进行设置,如果sqlmap漏过了特定的注入,你可以选择自己修改指定的payload用于检测level有5级,级别越高检测越全,默认为1-level1默认等级,执行基本......
  • 常用软件架构模式优缺点及应用场景
     1、分层架构模式最常见的架构模式就是分层架构或者称为n层架构。大部分软件架构师、设计师和开发者都对这个架构模式非常熟悉。尽管对于层的数量和类型没有具体限制,但大部分分层架构主要由四层组成:展现层、业务层、持久层和数据库层,如下图所示。一个很流行的n层架构示......
  • 【软考---系统架构设计师】软件工程
    目录一、软件开发模型(1)瀑布模型(2)原型模型(3)螺旋模型(4)V模型(5)构件组装模型(6)迭代模型(7)增量模型(8)快速应用开发模型(RAD)(9)统一过程(UP/RUP)(10)敏捷方法二、软件开发方法三、需求工程(1)需求获取(2)需求分析(3)需求定义四、软件系统建模(1)人机界面设计 (2)结构化设计   ......
  • UML 架构图入门介绍 starUML
    拓展阅读常见免费开源绘图工具OmniGraffle创建精确、美观图形的工具UML-架构图入门介绍starUMLUML绘制工具starUML入门介绍PlantUML是绘制uml的一个开源项目UML等常见图绘制工具绘图工具draw.io/diagrams.net免费在线图表编辑器绘图工具excalidraw介绍绘......