GlusterFS volume快照总结

一、概述

GlusterFS 3.6版本发布了基于卷的快照功能,该功能是基于thinly provisionedLVM snapshot,所以必须满足以下条件,才能保证卷快照功能的正常使用。

条件1,每个Brick必须是独立的thinlyprovisioned LVM;

条件2,BrickLVM不能存储除了Brick以外的数据。

二、主要特性

1、Crash Consistency(碰撞一致性检测)

当快照正在建立时,碰撞检测会保证快照的一致性。当快照被恢复时,会保证数据恢复到快照建立时的状态。

2、Online Snapshot(在线快照)

在建立快照的过程中,其关联数据仍旧可用。

3、Quorum Based(仲裁机制)

仲裁机制用于维护Bricks出现down时volume的可用性。

仲裁机制在以下几种场景会生效

(1)n个Brick(n为奇数),若m(m>= (n/2 + 1))个Brick是UP状态,仲裁机制生效;

(2)n个Brick(n为偶数),若firstbrick和m(m>= n/2 )个Brick是UP状态,仲裁机制生效。

而在以下几种场景不会生效

(1)replica2集群下,若有任一个Brick处于down状态,仲裁机制将不会生效;

(2)快照创造失败的场景。

4、Barrier

Barrier这个特性主要用来确保快照的一致性。

在快照创建过程中,会触发某些FOPS的锁机制,用来保证Crash Consistency。这个过程默认为2分钟,如果在这个默认时间快照不能成功创建,那么这些FOPS将处于unbarrier状态。在创建快照的过程中,一旦出现unbarrier,那么快照创建就失败。

三、应用

1、创建快照

命令:gluster snapshotcreate [no-timestamp] [description] [force]

快照创造时,默认会在用户给定的名称后加上时间戳,可以通过设置[no-timestamp]这个选项不添加以后缀时间戳的命名方式。

注意,在创建快照时,快照描述不能超出1024个字符。

2、克隆快照

命令:gluster snapshot clone

克隆快照时,被克隆的快照要处于激活状态。克隆成功的复本和快照共享后端的存储空间,不会额外占用磁盘空间。

3、恢复快照

命令:gluster snapshot restore

在volume离线时,快照才能被恢复。一旦快照被成功恢复后,会被该快照从快照列表中删除。

4、删除快照

命令:gluster snapshot delete(all||volume )

(1)all参数,GlusterFS系统中所有的快照将被删除;

(2)snapname参数,删除对应name的快照;

(3)volname参数,删除该volume所有的快照。

5、列出所有的可用快照

命令:gluster snapshot list [volname]

volname参数,将列出对应的快照;无该参数将列出所有的快照。

6、查询快照信息

命令:gluster snapshot info [(snapname | volume)]

(1)使用snapname参数,会查询对应快照的名称、UUID以及创建时间等信息;

(2)使用volume参数将查询出该volume的所有快照的信息。

7、查询快照状态

命令:gluster snapshot status [(snapname | volume)]

(1)使用snapname参数,会查询对应快照的snapshotbrick path、volume group(LVMdetails)、snapshot bricks状态、bricks的PID、使用空间等信息;

(2)使用volume参数,将查询出该volume的所有快照的状态信息。

8、配置快照

命令:snapshot config [volname]([snap-max-hard-limit \] \[snap-max-soft-limit ]) | ([auto-delete]) | ([activate-on-create ])

该命令用来显示或设置快照的配置项。

(1)不带参数时,将显示所有卷的快照配置;

(2)volname参数,显示该卷对应的快照配置;

(3)参数为具体配置项时,会对快照这项配置进行覆盖式赋值;

(4)snap-max-soft-limit参数,全局配置,设置卷对应最大快照的个数;

(5)auto-delete参数,全局配置,该项被设置为enable时,当创建新快照,将会删除时间最久远的旧快照。

该项被设置为disabled时,若卷的快照个数已经达到soft-limit上限时,再成功创建新快照,会提示用户;若卷的快照个数达到hard-limit时,将无法创建新快照。

(6)activate-on-create参数,默认值为disabled。若设置为enable,创建快照后就激活该快照。

9、激活快照

命令:gluster snapshot activate

默认情况下,在创建就会激活快照。

10、去激活快照

命令:gluster snapshot deactivate   

11、访问快照

(1)Mount方式

这种方式只能通过FUSE mount访问快照,使用mount-t glusterfs :/snaps//命令。

示例,访问主机名host1卷名为vol快照名为my-snap:mount -t glusterfs host1:/snaps/my-snap/vol/mnt/snapshot

(2)Userserviceability

四、个人总结

3.6版本推出的卷快照特性,从数据冗余的功能上看,与复制卷的功能有一些类似。

目前,我们应用较多的是分布复制集群,在特殊的情况,可以使用卷快照备份数据,一般情况不建议使用。

若集群没有采用复制卷做数据冗余,可以使用卷快照来备份数据,创建快照的时间根据用户的需求,通过开发脚本工具实现快照的自动化创建。

你可能感兴趣的:(GlusterFs)