GlusterFS功能简介

1、基本管理功能

GlusterFS服务管理:启动、停止、重启服务;

TrustedStorage Pools管理:增加或删除peer;

Volume管理:增加卷、启动卷、停止卷;

上述这些基本的管理功能不再做介绍。

2、TuningVolume Options(调整卷配置)

GlustreFS提供了45项配置用来调整Volume属性,包括端口、cache、安全、存储空间、自愈、日志、扩展性、通讯协议、性能等配置项。

用户可以通过gluster volume info命令来查看自定义配置项。

3、ConfiguringTransport Types for Volume(配置传输类型)

创建卷的时候,可以选择client与brick的通讯协议。

也可以通过gluster volume set volnameconfig.transport tcp,rdma OR tcp OR rdma命令更改通讯协议,需要注意的在更改通讯协议前,必须先停止volume。

默认情况是TCP,根据部署场景可选择RDMA或RDMA+TCP组合,而选择RDMA协议需要相应硬件的支持。

4、ExpandingVolumes(扩容)

GlusterFS集群的扩容就是通过增加volume来实现,通过glustervolume add-brick命令增加卷。

注意,扩容复制卷的时候,必须同时增加卷的数量是replica的倍数。例如replica 2的集群扩容,需要同时增加2个volume;replica3的集群扩容,需要同时增加3个volume。

5、ShrinkingVolumes(缩容)

集群缩减存储空间通过删除卷的glustervolume remove-brick命令实现,删除卷的命令执行后,GlustreFS会启动数据迁移,若迁移的数据较大,迁移过程将耗时较长,可能通过命令观察迁移状态。

6、Replacefaulty brick(更换坏块)

用好的brick替换故障的brick。

使用方法如下:glustervolume replace-brick test-volume server3:/exp3 server5:/exp5 commit force,将test-volume卷中的server3:/exp3故障brick替换掉。

7、RebalancingVolumes(负载调整)

扩容或缩容卷,集群中可能会出现不同卷的存储利用率较大的不均衡的现象。通过Rebalancing机制,在后台以人工方式来执行负载平滑,将进行文件移动和重新分布,此后所有存储服务器都会均会被调度。

为了便于控制管理,rebalance操作分为两个阶段进行实际执行,即FixLayout和MigrateData。

(1)FixLayout:修复layout以使得新旧目录下新建文件可以在新增节点上分布上。

(2)MigrateData:新增或缩减节点后,在卷下所有节点上进行容量负载平滑。为了提高rebalance效率,通常在执行此操作前先执行FixLayout。

8、TriggeringSelf-Heal on Replicate(文件自愈)

在复制卷中,若出现复本间文件不同步的情况,系统每十分钟会自动启动Self-Heal。

也可以主动执行glustervolume heal命令触发Self-Heal,通过gluster volume heal info可以查看需要heal的文件列表。

在healing过程中,可以通过gluster volume heal info healed查看已修复文件的列表;通过gluster volume heal info failed查看修复失败的文件列表。

9、Geo-replication(异地备份)

异地备份可以提供数据的灾难恢复。以本地集群作为主存储,异地存储为备份,通过局域网或互联网持续、增量、异步备份数据。使用gluster volume geo-replication相关的命令实现异地备份创建管理。

10、Quota(限额管理)

GlusterFS提供目录或卷的存储使用空间的限制设置功能。

通过目录限额可以实现对用户按存储容量计费的功能。

使用方法为:gluster volume quota

11、VolumeSnapshots(卷快照)

卷快照功能用于卷的备份和恢复,在非复制卷的应用场景,通过卷快照实现数据冗余备份。

12、MonitoringWorkload(性能监控)

监控每一个brick文件操作的IO性能,主要监控打开fd的数量和最大fd数量、最大读文件调用数、最大写文件调用数、最大打开目录调用数、brick读性能、brcik写性能等。

使用方法:gluster volume profile

你可能感兴趣的:(GlusterFs)