h3c onestor存储产品技术

Post on 08-Apr-2022

13 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

杭州华三通信技术有限公司 版权所有,未经授权不得使用与传播

H3C ONEStor存储产品技术

掌握ONEStor产品的技术原理

掌握ONEStor产品的部署和基本配置

学习完本课程,您应该能够:

2

1.ONEStor产品技术原理

2. ONEStor产品基本组网、规划及配置

目录

3

云计算、虚拟化带来的变化

4

计算虚拟化平台

VM VM VM VM VM

计算虚拟化需要共

享存储池,业务增

长以及虚拟机的增

加要求存储资源可

平滑线性扩展

虚拟化环境要求存储易

使用、管理简单并可快

速部署

要面向虚拟机提供的

存储服务,并实现类

似虚拟机的迁移性和

灵活性

大型云计算中心带来

更高性能以及更大容

量的需求,需要保障

存储最佳的性价比

存储系统的演进

5

Titl

e

Titl

e

Titl

e

Titl

e

Server

SAN

SSD 超融合架构

SDS

Server SAN需求总结

6

通用的商业硬件(CPU/HDD/SSD)

软件定义存储

具备线性扩展能力

易于和计算虚拟化的结合

和云的结合

支持多种存储需求(块、文件、对

象)

易运维管理

?ONEStor

ONEStor的技术特点

7

线性扩展能力(Scale-out)

– 所有部件都可以线性扩展

– 横向扩展数量无理论限制

可靠性

– 任何节点、部件的失效是常态

– 组件无单点故障

性能

– 性能随节点线性增长

智能

– 数据的自动均衡能力

– 数据的自我修复能力

统一存储业务

– 统一支持块、对象、文件

易用性

– 运维部署

– 场景化配置

ONEStor系统对外提供统一的存储服务

8

底层存储服务集群由分布式、可智能负载分担、自适应节点组成,提供系统级别的高可靠、高性能、高可用性

库函数接口应用可通过 C, C++, Java, Python, Ruby, PHP等接口访问底层存储集群

对象服务通过S3/Swift接口为用户提供对象存储服务

块设备服务以内核模式或QEMU模式为物理机或虚拟机提供分布式块设备服务

文件服务为客户提供兼容POXIS语义的分布式文件系统服务

应用 应用 主机/虚拟机 客户端ONEStor系统的软件逻辑分层:

底层存储服务集群,这一层是一个对象存储系

统,RADOS采用C++开发。

库函数接口 :这一层的功能是对底层存储服务

进行抽象和封装,并向上层提供API(包括C和C++、

Java、Python、Ruby和PHP的支持。

高层应用接口 : 这一层包括了三个部分:对象

服务、块设备服务、文件服务等三部分

应用层 :这一层就是不同场景下对于ONEStor各

个应用接口的各种应用方式。

ONEStor领先的分布式架构

9

Failure reporting, map distribution

Object I/O

OSDs

Clients

Monitors高扩展性:--支持容量的动态扩展,PB级,

EB级

高可靠性:--没有单点故障,多数据副本,

自动管理,自动修复

高性能:--数据分布均衡,并行化,对

于对象存储和块存储,不需要元

数据服务器

ONEStor实现高可靠性基本方法

10

多副本技术

假定某个副本在一段时间内的有效率是P,则N的副本在这段时间内同时失效的概率是(1-P)N,从而副本的可靠性就是:1- (1-P)N

举例:P=0.9 N=3, 计算得整体可靠性为:0.999

ONEStor高扩展性的基础

11

基于算法的数据放置策略 1. 将文件分割成若干对象

单元。

2. 将每个对象单元映射到

一个确定的PG(放置组)。

3. 利用CRUSH算法,将每

个PG映射到一组OSD集

合。

ONEStor分布式算法的基本流程

12

ONEStor中在对象和设备之间有两个概念: Pool和PG (Placement

Group),每个对象要先计算对应的Pool,然后计算对应的PG,通过

PG可得到该对象对应的多个副本的位置,这些副本中第一个是

Primary,其余被称为replica。假设一个对象foo,其所在的pool是

bar,计算device的方式如下:

1. 计算foo (object)的hash值得到0x3F4AE323

2. 计算bar (pool)的pool id得到3

3. pool bar中的PG数量为256,0x3F4AE323 mod 256 = 23,

所以PG的id为3.23 (PG的数量需要达到满足在PG中均衡的目的)

4. 通过PG的映射表计算(CRUSH)该PG对应的OSD为[24, 3, 12],

其中24为primary,3,12为replica

其中第四步是CRUSH算法的核心,CRUSH 算法通过每个设备的权重来计算数据对象的分布。对象分布是由cluster map和data distribution policy决定的。cluster map描述了可用存储资源和层级结构(比如有多少个机架,每个机架上有多少个服务器,每个服务器上有多少个磁盘)。data distribution policy由placement rules组成。rule决定了每个数据对象有多少个副本,这些副本存储的限制条件(比如3个副本放在不同的机架中)。CRUSH根据cluster, rule和pgid算出x到一组OSD集合(OSD是对象存储设备):(osd0, osd1, osd2 … osdn) = CRUSH(cluster map, rule, pgid)

带来的好处:任何组件都可以独立计算出每个object所在的

位置(去中心化)。

只需要很少的元数据(cluster map),只要当删

除添加设备时,这些元数据才需要改变。

ONEStor系统的智能集群维护方法

13

Failure detection

•如果一个OSD发现和自己共同承载一个PG的另一个OSD无

法联通,则会将这一情况上报monitor。

•如果一个OSD demon发现自身工作状态异常,也将把异常

情况主动上报给monitor。

•Monitor 通过 Heartbeat 来得知 OSD 下线。

Failure recovery

•一个新的OSD上线后,计算出自己所承载的PG,以及和自

己承载同一个PG的其他OSD。

•新OSD将与这些OSD取得联系。如果这个PG目前处于降级

状态(即承载该PG的OSD个数少于正常值),则其他OSD

将把这个PG内的所有对象和元数据复制给新OSD。

•如果没有新的OSD加入,降级的PG也将计算出其他OSD,

完成数据复制。

•如果是已有故障OSD恢复,会从维护的相同PG的OSD完成

数据复制。

Re-balancing

•如果该PG目前一切正常,新增加OSD将替换掉现有OSD中

的一个(PG内将重新选出Primary OSD),并承担其数据。

•在数据复制完成后,被替换的OSD将退出该PG

集群维护-信息扩散何时认为信息改变:若干个monitor共同负责整个ONEStor集群中所有OSD状态的发现与记录,然后扩散至全体OSD以及Client。常见的上报有两种情况:•一是新的OSD被加入集群•二是某个OSD发现自身或者其他OSD发生异常。

如何扩散:•首先,cluster map信息是以增量形式扩散的。•其次,cluster map信息是以异步且lazy的形式扩散的。

1. ONEStor产品技术原理

2. ONEStor基本组网、规划及配置

目录

14

ONEStor软件结构

15

Handy 存储系统的管理组件。提供管理、运维整个存储系统的Web用户界面。部署有Handy组件的主机是存储系统的“管理节点”

MON 存储系统的监控组件。维护整个存储系统的全局状态,持有整个存储系统的元数据信息。部署有MON组件的主机是存储系统的“监控节点”

OSD 存储系统的存储组件。提供具体的数据存储服务。部署有OSD组件的主机是存储系统的“存储节点 ”。默认情况下,一块硬盘对应一个OSD。

IPSAN组网

16

要求:1、集群至少三个节点2、至少两副本,建议三副本3、“三网”分离管理网络、存储业务网络、存储集群后端网络建议分离。

操作系统要求:CAS系统或者ubuntu14.04.3

块存储挂载方式:iscsi通过集群业务网挂载

CAS融合组网

17

要求:1、集群至少三个节点2、至少两副本,建议三副本3、“三网”分离管理网络、存储业务网络、存储集群后端网络建议分离。

操作系统要求:CAS系统

块存储挂载方式:CVK节点通过127.0.0.1挂载

VDI组网

18

要求:1、集群至少三个节点2、至少两副本,建议三副本3、“三网”分离管理网络、存储业务网络、存储集群后端网络建议分离。4、每个ONEStor节点配备SSD,且SSD与HDD的比例为1:3或1:4

操作系统要求:CAS系统或者ubuntu14.04.3

块存储挂载方式:iscsi通过集群业务网挂载

VDI组网

19

要求:1、集群至少三个节点2、至少两副本,建议三副本3、“三网”分离管理网络、存储业务网络、存储集群后端网络建议分离。4、每个ONEStor节点配备SSD,且SSD与HDD的比例为1:3或1:4

操作系统要求:CAS系统或者ubuntu14.04.3

块存储挂载方式:iscsi通过集群业务网挂载

服务器兼容性

20

仅支持以下型号服务器作为节点物理服务器:

H3C UIS R190 G2服务器

H3C UIS R390 G1服务器

H3C UIS R390 G2服务器

H3C UIS B390服务器

Dell PowerEdge R720服务器

对于未在兼容性列表中的服务器,需要先进行安装测试

监控/存储节点配置要求

21

硬件类型 硬件规格

CPUCPU主频*CPU个数*每个CPU核数≥(数据盘个数*1 GHz)

内存 1G内存/TB数据盘容量

硬盘系统盘 建议2块硬盘

数据盘 ≥1块硬盘

RAID卡必配。RAID卡Cache推荐配置不小于2 G

网卡 ≥3个网口

硬件配置要求

管理节点配置要求

22

硬件类型 硬件规格CPU 最低配置2 GHz,推荐配置4 GHz

内存 最低配置8 GB,推荐配置16 GB

硬盘 最低配置50 GB,推荐配置100 GB

硬件配置要求

节点 操作系统配置需求 备注

管理节点

Ubuntu 14.04

H3C CAS-E0218

H3C CAS-E0222 Ubuntu系统需要安装OpenSSH server、DNS server和Samba file server应用

监控/存储节点

Ubuntu 14.04

H3C CAS-E0218

H3C CAS-E0222

操作系统要求

客户端要求

23

Google Chrome(推荐) 28.0及以上

Mozilla Firefox 36.0及以上

Opera 30.0及以上

Internet Explorer 不支持

用户不需要安装客户端软件,使用浏览器即可访问ONEStor

集群逻辑角色规划

24

物理主机n物理主机5物理主机4物理主机3物理主机2物理主机1

存储节点

......

监控节点

存储节点

监控节点 监控节点

存储节点 存储节点

管理节点

存储节点 存储节点

ONEStor存储集群

角色 描述

管理节点 节点上安装了管理组件Handy,为存储集群提供管理服务

监控节点 节点上安装有MON组件,维护存储的全局信息

存储节点 节点上安装有OSD组件,提供存储服务

• 要求至少部署3个监控节点,为奇数。

• 监控节点和存储节点可以部署在同一个节点上。

• 当存储集群中的节点数等于3时,受物

理服务器的限制。管理节点、监控节点、存储节点可以合一部署。

• 当存储集群中的节点数大于3时,管理

节点、监控节点、存储节点三者不建议部署在同一节点上。

• 当存储集群中的节点数大于3时,单台服务部署同时部署3个角色,该物理服

务器故障会同时引起该节点上的监控节点、管理节点、存储节点同时故障。站在风险分担的角度,当物理服务器有富余时,可以将存储节点、管理节点、监控节点分离在不同的物理服务器上。

• 管理节点(handy)可以单独部署在一台物理服务器上。

存储规划

25

系统盘:

至少两块做raid1,若物理服务器上部署为管理节点(Handy),至少100GB的容量空间。

数据盘:

每节点至少1块,建议转速在10K以上,单块盘做raid0,建议在集群内的使用相同类型的硬盘。

建议使用相同接口类型(SAS/SATA)、相同转速、相同容量的硬盘。

SSD加速盘:

可选,配置为Raid 0,建议每台服务器的SSD硬盘个数:HDD个数为1:3或1:4。每块数据盘对应会一个读/写缓存分区。

配置读、写缓存加速时,请注意:

读缓存分区大小*存储节点上数据盘的个数<分配给读缓存空间的SSD加速盘容量

写缓存分区大小*存储节点上数据盘的个数<分配给写缓存空间的SSD加速盘容量

对于系统盘和数据盘:

若对应Raid卡支持断电保护功能且运行正常,则建议开启Raid卡缓存。

若对应Raid卡不支持断电保护功能或断电保护模块运行不正常,则必须关闭Raid卡缓存。

ONEStor副本机制(2~N副本)来保障数据的可靠性。如果使用N副本,则可用容量是裸容量的N分之1 。

网络规划

26

逻辑网络平面 描述

管理网络 用户可以通过管理网络访问ONEStor集群,对存储进行管理和维护。

存储业务网络 上层客户端的IO业务通过存储业务网络与ONEStor集群进行通信。

存储集群后端网络 ONEStor集群内部的节点通过存储集群后端网络相互通信。并不对外提供服务。

集群中的每个物理节点至少配置三个网口,分别对应管理网络、存储业务网络、存储集群后端网络。

存储集群后端网络之间使用万兆网络进行通信。

管理网络、存储业务网络根据具体需求选择千兆或者万兆网络进行通信。

建议网口采用端口绑定配置。

管理网络 存储业务网络 存储集群后端网络

172.16.36.0/24 172.16.136.0/24 192.168.36.0/24

CPU规划

27

至少为管理节点(Handy)分配4GHz的CPU资源。

建议ONEStor集群内部各节点的CPU型号保持一致。

OSD组件为CPU敏感型组件, 至少要为一个OSD进程分配1GHz的CPU计算能力。

若物理服务器上部署了ONEStor集群中的逻辑角色-“存储节点”,则需要考虑OSD进程对CPU资源的消耗。一块硬盘对应一个OSD进程。

建议为一个MON进程分配2GHz的CPU资源。

若物理服务器上部署了ONEStor集群中的逻辑角色-“监控节点”,则需要考虑MON进程对CPU资源的消耗。

规划时,需要考虑其他非存储服务对CPU资源的消耗。

内存规划

28

至少为管理节点(Handy)分配16 GB内存。

至少为1个MON进程分配1 GB内存。

若物理服务器上部署了ONEStor集群中的逻辑角色-“监控节点”,则需要考虑MON进程对内存资源的消耗。

部署有“存储节点”的物理服务器,要为每TB的硬盘容量分配1GB内存。

例子:假设物理服务器上有200TB的容量用于存储服务,则需要给“存储节点”分配200*1GB的内存。

规划时,需要考虑其他非存储服务对内存资源的消耗。

ONEStor部署流程

29

开始

部署基础操作系统

安装Handy

部署系统软件

在客户端上挂载存储

结束

部署基础操作系统

30

CAS系统对与使用CAS系统的组网,请按照CAS开局指导进行各节点的部署(CAS安装包含在CAS集成部署服务中)。操作系统安装完毕后,根据组网需求配置好网络。

Ubuntu系统对于使用Ubuntu14.04.3操作系统的组网,具体部署步骤请参考ONEStor开局指导书附录。操作系统开启root用户登录权限、ssh功能,根据组网需求配置网络。

管理软件Handy安装

31

root@ubuntu:~/ONEStor# tar -zxvf ONEStor-1.00.10.tar.gz

root@ubuntu:~/ONEStor# chmod 777 install.sh

root@ubuntu:~/ONEStor# ./install.shPlease run 'sudo calamari-ctl initialize' to complete the installation.[INFO] Loading configuration..[INFO] Starting/enabling salt...[INFO] Starting/enabling postgres...[INFO] Initializing database...[INFO] Initializing web interface...[INFO] Create superuser for Handy web UI.Username (leave blank to use 'root'): root //配置超级用户名Email address: //配置Email地址Password: //配置密码Password (again): //重新输入密码

说明:a、当CVM(Cloud Virtualization Manager)和CVK(Cloud Virtualization Kernel)装在一起且集群中只有一个CVM起作用。管理节点(Handy)建议安装在非CVM节点b、一个CVM节点独立部署,不和CVK装在一起。管理节点(Handy)建议安装在CVM节点c、CVM双机热备情况下,管理节点(Handy)装在备用CVM节点。

系统软件部署

32

打开浏览器输入handy的管理IP地址,输入安装时设置的用户密码,登陆handy管理页面

License管理

• 试用license30天、50TB

• 临时license可登陆LMP平台申请

• 正式license目前为CTO模式,软件部署完成后在官网进行注册

33

http://www.h3c.com.cn/Service/Authorize_License/Achieve_License/

系统软件部署

34

ONEStor存储集群对时钟的一致性要求很高,“时钟同步”策略推荐“开启”。ONEStor存储集群的时钟同步策略通过NTP实现,但要避免ONEStor存储集群中的NTP时钟同步策略与其他服务的NTP时钟同步策略出现冲突。

若需要开启“写缓存”加速,则勾选“开启”;若不需要开启“写缓存”加速,则勾选“关闭”。

若需要开启“读缓存”加速,则勾选“开启”;若不需要开启“读缓存”加速,则勾选“关闭”。

系统软件部署

35

系统软件部署

36

系统软件部署

37

TGT高可用(可选)

38

存储池管理

39

存储块管理

40

对象管理

41

客户端对接

42

客户端为CAS1、融合组网时,CAS挂载127.0.0.12、独立组网时,CAS挂载TGT高可用的IP地址

客户端为Linux挂载TGT高可用的IP地址iscsiadm -m discovery -t sendtargets –p IP iscsiadm -m node --targetname target -p IP –l

客户端为Windows使用Microsoft iSCSI Initiator挂载存储的TGT 虚拟IP

客户端为VmwareVmware vspare vclient上挂载存储的TGT虚拟IP

若涉及Vmware与ONEStor存储的对接,则要求关闭Vmware 的VAAI特性。关闭Vmware的VAAI参数对Vmware ESXi主机的全局均有影响,请仔细评估现场的Vmware能否关闭VAAI特性

客户端对接ONEStor存储时,同一个TGT应尽量避免被客户端连接多次。如果存在相关业务需求,请评估客户端侧是否有保证数据一致性的机制

运维监控

43

日志管理

44

操作日志记录用户对ONEStor系统所做的操作

系统日志记录ONEStor系统生成的日志,可下载整个平台的日志。

资料归档

45

H3C ONEStor存储技术白皮书

H3C ONEStor存储安装指导

H3C 2014 ONEStor 产品开局指导书

H3C 2014 ONEStor 维护指南……

课程总结

46

通过本课程,我们学习了:

ONEStor存储的技术原理

ONEStor存储软件的基本结构和部署

ONEStor存储的基本功能配置

对本课程做评价

请您扫描二维码

对本课程做评价

请您扫描二维码

top related