Linux开源存储方案系统介绍

文章目录

  • 开源云计算数据存储平台
    • 怎么理解云计算
  • 存储管理和软件定义存储
    • 软件定义存储开源项目
      • OpenSDS
      • Libvirt Storage Management:
      • OHSM(Online Hierarchical Storage Manager)
  • 开源分布式存储
    • 什么是分布式存储
      • 元数据服务器
      • 数据服务器
      • 客户端
    • 常见的开源分布式存储软件
      • Hadoop
      • GlusterFS
      • ceph
      • Sheepdog


开源云计算数据存储平台

怎么理解云计算

云计算的目标就是为用户提供计算机基础设施服务。在云计算模式下,所有计算机资源都是由云计算厂商进行集中管理,用户只需要按需付费,即可获得所需要的服务。这使得用户(企业)不用关心底层的基础设施建设,可以略过一系列复杂的硬件部署、软件安装等步骤,直接使用云计算厂商提供的计算、存储和网络等资源即可。这对于用户来说,是将部署计算机资源从购买产品转换为购买服务

通俗的例子:比如常见的水电站。我们每天都要用到水和电,但是并不是每家每户每个企业都去建立自己的发电厂和水井等设施。我们只需要缴纳一定的费用就可以享受这样的服务。

云计算中的“云”可以简单理解为任何可以通过互联网访问的服务,那么根据其可以提供的服务类型,云计算有一下3种落地方式:

  • Iaas:基础设施即服务。通过互联网提供“基础的计算资源”,包括处理能力、存储空间、网络等,用户能从中申请到虚拟或者物理的硬件设备,包括裸机或者虚拟机,可在上面安装操作系统或其他应用程序。典型的代表为Amazon的AWS,阿里云的ECS。
  • Paas:平台即服务。将计算环境和开发环境等平台作为一种服务通过互联网提供给用户,用户能从中申请到一个安装了操作系统及各种所需运行库的物理机或者虚拟机,可在上面安装其他应用程序,但是不能修改已经装好的操作系统和运行环境。
  • Saas:软件即服务。通过互联网为用户提供软件的一种服务方式。应用软件安装在厂商或者服务供应商那里。用户可以通过网络以租赁而非购买的方式来使用这种软件。典型的应用有百度网盘、360云盘等。几乎所有的应用都是软件即服务。

存储管理和软件定义存储

软件定义存储的诞生背景:各种新型技术的不断进步以及互联网行业的快速发展带来了巨大的存储需求。随着存储系统的多样化,急需一种高效、统一的存储软件以管理不同的存储,并可以在不同的存储之间根据用户的需求进行相应的调度。

计算、存储和网络3个基础设施的发展推动了软件定义存储的发展。软件定义存储通常包括两个部分:控制平面和数据平面。

软件定义存储开源项目

OpenSDS

OpenSDS:最早由华为提出,旨在为存储业界提供标准化的软件定义存储控制平面,从而为用户解决存储过于复杂的问题。由于当前存储管理过于复杂,后端涉及各种各样的存储设备供应商,虚拟化技术等,部署和使用极不方便。OpenSDS开放了统一、标准化的软件定义存储控制器架构。最上层向用户提供统一的接口;中间层用来处理基本的调度和管理,最下层接入不同的存储后端支持。从而管理不同的存储后端,提供统一标准的结构,给用户提供一个更加整洁、灵活的使用方式。

Libvirt Storage Management:

Libvirt是由Redhat开发的一套开源软件工具。其在host端通过管理存储池和卷来为虚拟机提供存储资源。libvirt可以与多种虚拟机交互,包括 KVM/QEMU、Xen、LXC、Virtual Box、VMware ESX及Hyper-V等。另外,libvirt支持多种后端存储类型,如本地文件系统、网络文件系统、iSCSI、LVM等。

OHSM(Online Hierarchical Storage Manager)

OHSM是企业级开源数据存储管理器。它在高成本和低成本的存储介质之间自动移动数据。OHSM系统的存在是因为高速存储设备(如硬盘驱动器)比慢的设备(如光盘和磁带驱动器)更昂贵(每字节存储)。理想的情况是所有数据都可以在高速设备上使用,但这对于许多用户来说是非常昂贵的。相反,OHSM将企业的大部分数据存储在较慢设备上,然后在需要的时候将数据复制到更快的磁盘驱动器上,从而实现动态的数据管理。动态的数据管理能更灵活、充分地利用后端存储资源。

开源分布式存储

什么是分布式存储

分布式存储就是将多台独立的设备通过某种网络通信连接起来,组成一个大的集群,从而使集群中不同设备的硬盘驱动器、固态硬盘等介质组成一个大规模的存储资源池。分布式存储系统一般包含三大组件:元数据服务器(也称主控服务器)、客户端及数据服务器

元数据服务器

元数据服务器是分布式存储系统的核心,主要在系统中提供以下服务:

  • 命名空间管理:命名空间管理主要负责分布式存储系统中的元数据管理,比如对象或者文件块到数据服务器的索引、文件之间的关系等。因为在分布式存储系统中,会涉及大量的大型存储对象,它们一般会被分割成小的对象分配到不同的存储位置,因此命名空间的管理十分重要。这不仅涉及到系统中数据一致性的问题,也涉及访问文件的效率。不同的分布式存储系统采用不同的命名空间管理方法,有些分布式系统采用将元数据全部基于内存的存储方式,分布式存储系统采用特殊的文件系统或者数据库等方式来存储元数据。
  • 数据服务器管理:由于分布式存储系统是由多个设备组成的集群,各个数据服务器的运行情况显得极为重要。元数据服务器也兼任了数据服务器的管理工作,它需要掌握集群中各个系统的实时情况。如果发生某些节点故障,它需要及时恢复并启用备份节点。对于数据服务器的管理,不同的存储系统采用不同的策略。常见的方式是各个数据服务器节点不间断的向元数据服务器发送心跳感应来报告当前节点的运行状况。
  • 主备份容灾:为了提高数据的可靠性和安全性,分布式存储系统通常会进行多组备份。不仅数据需要备份,而且元数据也需要备份。另外在基于内存的元数据管理方式中,还需要开启日志系统来持久化数据。当单一节点出现问题,元数据服务器会根据当前的系统状态转移并启用备份节点。

数据服务器

  • 数据的本地存储:数据服务器会维护数据本地化的持久化存储。对于较小的文件,数据服务器通常会进行整合。例如,将多个文件存储在同一个块中,从而提高空间的利用率。对于较大的文件,数据服务器通常会将其分割成多个小的文件,从而利用分布式存储的特点,将其放置在不同的节点上。同时,所有文件数据块都将与元数据做文件索引,从而实现对文件数据的管理。
  • 状态维护:除了做数据存储,数据服务器还会进行状态维护。数据服务器将自己的状态信息报告给元数据服务器,通常这些信息包括当前的磁盘负载、io状态、CPU负载、网络情况等,从而方便元数据服务器进行任务调度和文件数据的划分,同时制定负载均衡策略
  • 副本管理:为了提高数据的可靠性和安全性,分布式存储系统通常会将文件数据做多个备份,根据不同的策略将其存放在不同的位置。当有其他节点出现故障或负载出现不均衡的时候,元数据服务器会根据情况复制或迁移副本,从而保证整个系统中数据的安全性和可用性。

客户端

客户端面向用户,最主要的任务是提供接口给用户,使用户能够访问数据资源。常见的方式是给用户提供可移植操作系统接口,以便能够虚拟文件系统对接;其次向用户提供基于用户态的用户访问接口。另外,其他的分布式系统向用户提供RESTful接口支持。从而使用户可以通过HTTP的方式访问文件资源。

常见的开源分布式存储软件

Hadoop

Hadoop是一个软件编程框架模型,利用计算机集群处理大规模的数据集进行分布式存储和分布式计算。Hadoop由4个模块组成,即Hadoop Common、HDFS(Hadoop Distributed File System)、Hadoop YARN及Hadoop MapReduce。其中,HDFS和Hadoop MapReduce是主要模块。HDFS是是一个分布式存储系统,为海量数据提供存储服务。而Hadoop MapReduce是一个分布式计算框架,用来为海量数据提供计算服务。

GlusterFS

GlusterFS是一个开源分布式存储系统,具有强大的横向扩展能力,能够灵活地结合物理、虚拟的云资源实现高可用的企业级性能存储。借助TCP/IP或infiniBand RDMA网络将物理分布的网络存储资源聚集在一起,并使用统一的全局命名空间来管理数据。同时,GlusterFS基于可堆砌的用户空间设计,可以为不同的数据负载提供优质的性能。相比于传统的SAN 和NAS,GlusterFS容量可以按照比例扩展;廉价且使用简单,可以完全建立在已有的文件系统上;扩展和容错能力比较合理且复杂度低;适应性强,部署方便,对环境依赖低。

ceph

ceph作为一种分布式存储系统,通过统一的平台提供对象存储、块存储和文件存储,具有强大的伸缩性,能够为用户提供PB或EB级的数据存储空间。ceph的优点在于,它充分利用了各个节点的存储能力和计算能力。在存储数据时通过哈希算法计算出数据的存储位置,实现了集群中的负载均衡;并采用crush、哈希环等方法,使它可以避免传统单点故障的问题,在大规模集群中仍然能保持稳态。目前,一些开源云计算项目都已经开始支持ceph。例如,在openstack中,ceph可以对接openstack的Cinder后端存储、Glance的镜像存储以及虚拟机的数据存储。

Sheepdog

Sheepdog作为一种分布式存储系统,主要用于为虚拟机提供块存储服务。sheepdog采用了完全对称的结构,没有元数据服务器的中心节点,没有单点故障、性能可以线性扩展。当集群中有新节点加入时,sheepdog能自动检测并将新节点加入到集群中,数据自动实现负载均衡。目前KVM/QEMU、Openstack、Libvirt等都很好的支持了Sheepdog。Sheepdog总体包括了集群管理和存储管理两大部分,运行后将启动两种类型的进程:sheep和dog。其中sheep进程作为守护进程兼备节点路由及对象存储功能;dog进程作为管理进程可管理整个集群。在sheepdog对象存储系统中,getway负责从QEMU的块设备驱动上接收io请求,并通过哈希算法计算出目标节点,将io转发到相应的节点上。

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

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

相关文章

“深入理解Nginx的负载均衡与动静分离“

目录 引言一、Nginx简介1. Nginx的基本概念2. Nginx的特点3. Nginx的安装配置 二、Nginx搭载负载均衡三、前端项目打包四、Nginx部署前后端分离项目,同时实现负载均衡和动静分离总结 引言 在现代互联网应用中,高性能和可扩展性是至关重要的。Nginx作为一…

django 下载与安装

#django安装 pip3 install django#创建工程 django-admin startproject 名称 如:django-admin startproject bookmanager#django启动 python manage.py runserver python manage.py runserver 127.0.0.1:8081#数据迁移 生成迁移文件:python manage.py ma…

吴恩达《机器学习》2-2->2-4:代价函数

一、代价函数的概念 代价函数是在监督学习中用于评估模型的性能和帮助选择最佳模型参数的重要工具。它表示了模型的预测输出与实际目标值之间的差距,即建模误差。代价函数的目标是找到使建模误差最小化的模型参数。 二、代价函数的理解 训练集数据:假设我…

操作系统 (1)

进程的概念 进程同步/进程互斥 进程互斥的软件实现 进程互斥的硬件实现 信号量机制 生产者消费者问题 以下wei8最终情况,不可调换位置,否则会发生死锁 预防死锁 避免死锁

警惕!当心AI诈骗!

本文参照材料有: 鄂尔多斯新闻公众号、澎湃新闻网、搜孤新闻、腾讯网等 AI换脸诈骗实例(就发生在近期) 事例一: 近期 “AI换脸”新型诈骗频发和你视频对话的可能不是本人! 近日,东胜市民李女士遭遇了冒充…

CentOS一键部署Docker

Docker官网:https://www.docker.com/ CentOS(7.6) Docker(18.06.1)一键安装脚本 #!/bin/bash echo "1、安装依赖..." yum -y install gcc yum -y install gcc-c##验证gcc版本 gcc -vecho "2、卸载老…

Linux shell编程学习笔记18:while循环语句

上回我们研究和探讨了Linux shell编程中for 循环语句,与在C/C中一样,for 循环语句Linux shell编程中有很多灵活的用法。今天我们来研究和探讨while循环语句。 一、数字条件循环 我们继续以for循环语句中的例子,计算 从1到10与2的乘积 并输出…

【论文阅读】Iterative Poisson Surface Reconstruction (iPSR) for Unoriented Points

文章目录 声明作者列表核心思想归纳算法流程机器翻译声明 本帖更新中如有问题,望批评指正!如果有人觉得帖子质量差,希望在评论中给出建议,谢谢!作者列表 FEI HOU(侯飞)、CHIYU WANG、WENCHENG WANG:中国科学院大学 HONG QIN CHEN QIAN、YING HE 核心思想归纳 当一条从…

浅述青犀AI算法人体攀爬行为检测的应用场景及解决方案

人体攀爬行为检测是指利用计算机视觉技术对人类攀爬物体的行为进行识别和分析。该技术主要依靠图像和视频数据进行分析,通过识别人类身体的各个部位,以及其在攀爬过程中的动作和姿态,实现对攀爬行为的检测和跟踪。该技术的场景应用比较广泛&a…

航空领袖《波音公司》被攻击勒索

全球航空航天业的领袖公司-波音竟然被黑客攻击勒索了?相比很多小伙伴对波音并不熟悉,波音公司是世界上最大的民用和军用飞机制造商之一。其客户分布在全球90多个国家,像国内很多民航都用的是波音。那就有小伙伴担心了那我做飞机不是就很危险了…

(2)STM32单片机上位机

使用VX小程序开发上位机, 样式如何创建? 在你所在页面 开辟空间 使用 view 在view 中 输入class 就是样式,在编辑样式的时候,如何寻找哪一块的样式 就是通过这个class寻找的 按钮使用switch

算法训练 第五周

一、多数元素 本题给了我们一个数组,要求我们找出这个数组中出现次数大于这个数组元素总量一半的那个元素,也可以理解为找出数组中出现次数最多的那个元素,本题的解决方法有很多,在此我们主要讨论三种解决思路。 1.Hash表 我们可…

opencv中绘制图像的函数

常用函数简介 OpenCV 中用于绘制不同图形的 C 函数的简要介绍: 绘制矩形框: cv::rectangle(image, cv::Point pt1, cv::Point pt2, cv::Scalar color, int thickness); image:目标图像pt1 和 pt2:矩形的对角线顶点坐标color&…

数组类型题目总结

跟着代码随想录的算法训练营进行训练 目前刷的数组 大部分都是需要遍历后 修改、移动、覆盖元素。 在不使用额外辅助空间的情况下: 在需要进行前后元素对比,使用双层for循环遍历的题目,有增删改查的操作时,就可以考虑使用双指针进…

Scala基本数据类型和运算符

1.数据类型 1.1 类型支持 Scala 拥有下表所示的数据类型,其中 Byte、Short、Int、Long 和 Char 类型统称为整数类型,整数类型加上 Float 和 Double 统称为数值类型。Scala 数值类型的取值范围和 Java 对应类型的取值范围相同。 数据类型 描述 Byte 8 …

百度竞价排名推广对比自然排名哪一个更具优势-华媒舍

在搜索引擎结论网页页面(SERP)中,我们经常会看到一些网站链接及其广告栏。这种连接一般分为两种类型:百度竞价推广排名推广与自然排名。究竟哪个更有优势?本文将对这几种排名形式进行科谱详细介绍。 什么叫百度竞价推广…

百度 | 文心一言也开始收费了

好久没用文心一言了 之前一直用ChatGPT的 今天打开文心一言一看,好家伙 出了文心大模型4.0,想体验一下来着 可惜是收费的 看下价格,没买 50块钱一个月,对比ChatGPT4来说,确实不算贵 毕竟gpt4一个月20美刀 ,…

LEEDCODE 709转换成小写字母

class Solution { public:string toLowerCase(string s) {int len s.length();string a "";for(int i 0; i < len; i){if(s[i] > 65 && s[i] < 90){a (s[i] 32);}elsea s[i];}// cout<<a<<endl;return a;} };

Docker Compose部署Spug:实现内网穿透

文章目录 前言1. Docker安装Spug2 . 本地访问测试3. Linux 安装cpolar4. 配置Spug公网访问地址5. 公网远程访问Spug管理界面6. 固定Spug公网地址 前言 Spug 面向中小型企业设计的轻量级无 Agent 的自动化运维平台&#xff0c;整合了主机管理、主机批量执行、主机在线终端、文件…

国内可用超丝滑ChatGPT4.0(附网址及微信入口)

镜像网站的设置可以带来以下优势&#xff1a; 1.提高访问速度&#xff1a;由于镜像网站部署在全球不同的服务器上&#xff0c;用户可以从最近的服务器访问网站&#xff0c;从而减少延迟和提高加载速度。 2.增加可用性&#xff1a;如果主网站遭遇故障或网络拥堵&#xff0c;用…