暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

fusionstorage OBS 8.0存储设计实施文档

分布式存储技术 2020-02-29
1272

fusionstorage OBS 8.0存储设计实施文档





修订历史

日期

版本

修订人

修订说明

审核人

2020/02/28

1.0

张君威

创建文档

















 

 




一. 产品描述

 

1. 产品定位

  FusionStorage提供分布式对象和大数据存储服务,具有大容量、弹性可扩展、高可靠、架构解耦等优势,可广泛应用于金融、数据中心、运营商等各行业领域。

在主流的块存储和文件存储类型之外,对象存储设备和服务正成为研究和推广的热门。作为一种新兴的存储类型和业务形态,对象存储兼具块存储高速直接访问磁盘的特点及文件存储的分布式共享特点,是一种可存储文档、图片、影音视频等非结构化数据的云存储服务,提供海量、安全、高可靠、低成本的数据存储能力。除对象存储外,同时也支持大数据存储

 

2. 产品架构

2.1软件架构

 

 

软件模块说明:

 

 

Service Layer

 

DNS(Domain Name System)

 

与外部DNS服务器对接,提供域名解析服务。

 

LS(Location Service)

 

提供桶位置服务功能,完成桶全局唯一性维护、桶位置分配和桶信息维护。

 

OSC(Object Service Control)

 

负责处理Amazon S3协议消息,处理对象存储服务业务逻辑,处理跨Region复制流程,管理话单等。

 

POE(Provisioning Orchestration Engine

对外提供业务发放接口,实现用户管理功能,包括开户、停机、复机、销户、设置权限等。

 

Index Layer

 

IndexManager

 

管理IndexServer,包括IndexServer的视图信息、元数据和IndexServer的分布信息、故障的恢复处理以及扩容、升级相关的调度工作

IndexServer

 

负责具体的元数据管理,响应元数据处理请求。

 

Persistence Layer

 

PlogClient

 

接收Index Layer和Service Layer提供的数据,并进行Erasure Coding计算,将产生的数据分发到对应的PlogServer中。

 

PlogManager

 

负责数据放置的管理,包括:数据视图管理,故障的恢复处理以及扩容、升级相关的调度工作。

 

PlogServer

 

负责将数据写入磁盘,并管理数据存储介质

OAM(Operation,Administration,and Maintenance)

 

负责系统的操作、管理和维护,提供系统安装、部署、监控、告警、升级、扩容、补丁、巡检、信息收集等功能。

 

 

 

 

2.2 典型组网

整体网络包括以下五个平面:

业务平面:用于FusionStorage对象和大数据存储与用户业务网络间的数据通信,对外提供S3接口。

存储平面:用于FusionStorage对象和大数据存储内部所有存储节点间的数据通信。

管理平面:用于FusionStorage对象和大数据存储与用户管理网络间的数据通信,进行FusionStorage对象和大数据存储管理和维护。

BMC平面:用于接入存储节点Mgmt接口,提供远程硬件设备管理功能。

控制平面:用于维护FusionStorage对象和大数据存储集群内部信息

 

经典组网一:前后端独立交换机组网

 

 


 

 

经典组网二:前后端共用交换机组网

 

 


 

3. 对象存储特性

3.1数据的可靠性


FusionStorage对象和大数据存储提供Erasure Code功能,确保数据可靠性。

FusionStorage对象和大数据存储可保证当部分物理设备出现故障时,数据仍可被正常访问,并自动恢复故障设备上的数据。

传统的硬盘级RAID模式将数据存放于单节点内的不同硬盘,当整节点发生故障时,无法有效恢复数据。FusionStorage对象和大数据存储通过Erasure Code功能将数据在节点间进行冗余保护,有效避免数据丢失。

FusionStorage对象和大数据存储对数据的保护采用N+M模式。N为数据分片份数,M为校验分片份数。N+M模式下,单个存储池内最多可允许M块硬盘或M个节点故障,数据仍可被正常访问,并自动恢复。

 

3.2 区域(Region

 

区域(Region):一般由地理位置划分,每个区域一般由多个可用区组成。

默认区域(Default Region):存储系统中仅允许存在一个默认区域,并且可在默认区域中为存储系统增加其他区域。

非默认区域(Non-default region):默认区域以外的其他区域均为非默认区域。

可用区(Availability Zone):后文简称为AZ。AZ位于区域内,是物理隔离的资源区域,具有物理上的故障隔离能力

 

 

--FusionStorage的对象存储服务支持多个区域,每个区域中支持单个AZ或3个AZ

 


 

 

3.3 全局命名空间

--通过全局统一的命名空间,实现对不同地域的资源做域名解析、位置服务和负载均衡功能,使客户端通过域名方式访问对象存储空间和资源。

 

 

--帐户在客户端使用对象存储服务时需要创建桶(Bucket),并在桶中创建和管理对象(Object)。帐户在创建桶时通过指定桶所属的区域(Region),与指定Region下的集群建立关联。对象属于桶,桶属于区域,桶名必须全局唯一。帐户访问桶及桶中的对象时,通过域名解析、桶位置查询和负载均衡处理后,与实际提供服务的集群建立连接,完成业务操作。

 

对象存储服务域名解析流程:

 


 

 

3.4 Region复制

Region复制功能通过将当前桶中的对象自动地、异步地复制到不同区域的桶中,保证远程数据同步并作为灾难数据恢复的基础,从而实现系统的容灾备份。

Region复制实现方式:

 


 

 

用户在客户端创建桶时,通过对Region1内的Bucket1配置Replication实现桶的跨Region复制功能。通过跨Region复制功能,Region1内的Bucket1(源存储桶)中的对象能够自动地、异步复制到Region2内的Bucket2(目标存储桶)。

通过跨Region复制可将源存储桶内创建的新对象(Object-A)、更新的对象(Object-B更新至Object-B1)、删除的对象(Object-C)复制至目标存储桶内。

 

 

 

3.5 重复数据删除

重复数据删除(下文简称为重删)是一种数据缩减技术。系统自动搜索重复数据后,修改重复数据的映射关系并删除重复数据,确保相同数据只保留一份,从而消除冗余数据、节约存储系统容量。

重复数据删除特性针对帐户级别设置,支持同一个帐户名下的桶内重删及跨桶重删。

系统只对开启重删功能后写入的重复对象做删除操作;开启重删功能前写入的重复对象不做处理。

 

 

 重删原理:

 


 

帐户分别向Bucket1和Bucket2中写入对象,其中Object-A、Object-D内容重复;Object-C、Object-E、Object-F内容重复。

系统周期性扫描桶内对象,修改重复对象的元数据映射关系。

Object-A、Object-D内容重复:将Object-D的元数据映射到Object-A。

Object-C、Object-E、Object-F内容重复:将Object-E、Object-F的元数据映射到Object-C。

删除重复数据。

Object-A、Object-D内容重复:删除Object-D数据。当客户端读取Object-D时,根据元数据D的映射关系,返回Object-A的数据。

Object-C、Object-E、Object-F内容重复:删除Object-E、Object-F数据。当客户端读取Object-E或Object-F时,根据元数据E或元数据F的映射关系,返回Object-C的数据。

当帐户需要删除对象时分为以下两种情况:

元数据A和元数据D共同映射到Object-A时:帐户要求删除Object-D,则删除元数据D及元数据D与Object-A的映射关系。

删除Object-D后,帐户要求删除Object-A:同时删除Object-A的元数据和数据内容。

 

 

3.6 配额

 

FusionStorage的对象存储支持对帐户和桶两个维度配置配额。

帐户配额:FusionStorage对象存储的管理员可以为帐户设置容量配额,限制帐户使用的最大存储空间。

桶配额:可以为桶设置容量配额,限制桶使用的最大存储空间

 

 

 

规划与设计

1.AZ组网

1.1 存储节点组网接口

 


平面:

 


 

1.2 组网方式

 


 

 

1.3 IP规划&组网实例

建议通过LLDesiger来设计或者通过参考产品文档:

下面以LLDesiger来设计网络配置文件:

 

 

 


 

 

分布式存储OBS安装

 

1.现网阐述

现网环境是4台RH2288H V5服务器,2台万兆交换机。规划单台服务器的2个万兆同时走存储平面和控制平面,2个千兆口走业务平面,一个千兆管理,一个BMC口。

 

2.安装准备

2.1 软件包

 


 

 

 

3 安装过程

3.1 安装存储节点系统

安装欧拉系统,安装完后暂时不需要做其他操作,步骤这里就不截图了。

 

3.2 配置存储节点网络

1.解压“FusionStorage_OBS_version_Preinstall.tar.gz”软件包

 


 

 

 

2.存储节点的网络配置是通过脚本preinstall.ini 来实现的。可以自己编写这个配置文件,也可以通过华为官网来设计这个配置文件,但官网配置出来的配置文件可能会和现网不符合,除非你的服务器严格按照产品文档,我的实验环境非标,所以要非常熟悉preinstall.ini才能才能部署成功。下一个章节详解preinstall.ini。

 

 

3.把你设计好的preinstall.ini替换默认的preinstall.ini文件,然后用free ISO creator 把整个

 FusionStorage_OBS_8.0.1.1_Preinstall 打包成镜像,镜像名为preinstall.iso

 


 

 

4.通过BMC挂载“preinstall.iso”

 


 

 

3.1 preinstall.ini 初始化网络配置详解

Preinstall.ini类似脚本,但是华为官网的配置文档没有对它特别的说明,以至于在交付的时候,一但出现问题,很难知道原因。我在实施的时候,网络一直出现异常,这时候就需要在欧拉系统层面分析什么导致网络异常。如果你没看懂preinstall.ini,建议严格按照华为规定的服务器硬件设备,且网卡的位置也要符合要求,这样就不会影响实施。如果不懂linux基础,就不建议看此章节了。

 

下面陈述了,主机名字,服务器类型,bond绑定的网卡,bond模式等。

preinstall.ini要结合现网去修改。下图为其中一个node的信息。

 

 

 

 

3.4安装DeployManager

1.上传软件包

 


 

 

 

2.安装DeployManager软件包

 


 

 

 

3.5 安装基础组件和微服务

 

 


 

2.上传Host_File.xlsx,添加主机

 

 

2.上传FusionStorage_OBS_x86_64_version.tar.gz安装微服务

 



3.上传Deploy_File.xlsx配置文件

 

 


4.选择主机

 

 

 

5.安装

 


6.这里安装失败,重新安装即可,可能是页面刷新导致的。

 


7.安装成功

 


 

 

8.登录在浏览器的地址栏中输入“https://DeviceManager浮动IPv4地址:8088”

“用户名”中输入admin,在“密码”中输入默认密码Admin@storage

 


 

四.业务配置(未更新完整)

1.初始化配置

 

 


 


 


2. 业务测试

因缺少license,后面再更新此章节

 

3. 对象存储的相关概念理解

3.1 存储池

存储池的理解与块存储的理解是一样的,表示逻辑上一堆存储空间。使用的存储保护机制是EC技术,目前8.0版本的块存储也支持EC技术,而6.X版本只支持多副本技术。

 


 

 

3.2 区域

因缺少license,后面再更新此章节

 

3.3 

 


3.4账号资源


文章转载自分布式存储技术,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论