特点:
GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统
GlusterFS支持运行在任何标准IP网络上标准应用程序的标准客户端,如图2所示,用户可以在全局统一的命名空间中使用NFS/CIFS等标准协议来访问应用数据
高可用性
弹性哈希算法,无中心服务器
现有程序不需要做任何修改
无元数据服务,根据算法来寻找文件位置
客户端上运行Glusterfs进程,它实际是Glusterfsd的符号链接,利用FUSE(File system in User Space)模块将GlusterFS挂载到本地文件系统之上,实现POSIX兼容的方式来访问系统数据。
GlusterFS存储网关提供弹性卷管理和NFS/CIFS访问代理功能,其上运行Glusterd和Glusterfs进程,两者都是Glusterfsd符号链接。卷管理器负责逻辑卷的创建、删除、容量扩展与缩减、容量平滑等功能,并负责向客户端提供逻辑卷信息及主动更新通知功能等。
GlusterFS 3.1.X实现了逻辑卷的弹性和自动化管理,不需要中断数据服务或上层应用业务。
如果没有GlusterFS客户端,也可以将网关配置成NFS或samba服务器以访问。
GlusterFS优缺点:
* 对客户端透明度高。
* 无中心服务器/元数据服务器,没有单点故障。
* 按照文件名定位快,但是搜索/列出慢。递归删除慢。
* 大文件效率高,小文件由于没有对IO进行优化,没有特别的优势。
* 有文档反应说写入时的性能要降低副本数的倍数。
* 有文档反应说bug多。
gluster控制台手册简单翻译:
volume info [all|<VOLNAME>] - 列出所有的卷信息
volume create <NEW-VOLNAME> [stripe <COUNT>] [replica <COUNT>] [transport <tcp|rdma|tcp,rdma>] <NEW-BRICK>... [force] - 使用指定的brick创建一个给定类型的新卷
volume delete <VOLNAME> - 删除volname参数指定的卷
volume start <VOLNAME> [force] -启用volume参数指定的卷
volume stop <VOLNAME> [force] - 停止volume参数启动的卷
volume add-brick <VOLNAME> [<stripe|replica> <COUNT>] <NEW-BRICK> ... [force] - 向<volumename>添加指定的brick
volume remove-brick <VOLNAME> [replica <COUNT>] <BRICK> ... [start|stop|status|commit|force] - 从指定的volname中删除brick
volume rebalance <VOLNAME> [fix-layout] {start|stop|status} [force] - rebalance 操作
volume replace-brick <VOLNAME> <BRICK> <NEW-BRICK> {start [force]|pause|abort|status|commit [force]} - replace-brick 操作
volume set <VOLNAME> <KEY> <VALUE> -设定给定卷的选项
volume help - 显示volume命令的帮助
volume log rotate <VOLNAME> [BRICK] - 启用对volume/brick的log rotate
volume sync <HOSTNAME> [all|<VOLNAME>] - 从某个节点同步卷信息
volume reset <VOLNAME> [option] [force] - 重置所有被重复设定过的选项
volume geo-replication [<VOLNAME>] [<SLAVE-URL>] {create [push-pem] [force]|start [force]|stop [force]|config|status [detail]|delete} [options...] - Geo-sync 操作
volume profile <VOLNAME> {start|stop|info [nfs]} - volume profile 操作
volume quota <VOLNAME> {enable|disable|list [<path> ...]|remove <path>| default-soft-limit <percent>} |
volume quota <VOLNAME> {limit-usage <path> <size> [<percent>]} |
volume quota <VOLNAME> {alert-time|soft-timeout|hard-timeout} {<time>} - quota translator specific 操作
volume top <VOLNAME> {open|read|write|opendir|readdir|clear} [nfs|brick <brick>] [list-cnt <value>] |
volume top <VOLNAME> {read-perf|write-perf} [bs <size> count <count>] [brick <brick>] [list-cnt <value>] - volume top 操作
volume status [all | <VOLNAME> [nfs|shd|<BRICK>|quotad]] [detail|clients|mem|inode|fd|callpool|tasks] - 显示所有指定卷/brick的信息
volume heal <VOLNAME> [{full | statistics {heal-count {replica <hostname:brickname>}} |info {healed | heal-failed | split-brain}}] - 指定卷的健康自检操作 (self-heal commands on volume specified by <VOLNAME>)
volume statedump <VOLNAME> [nfs|quotad] [all|mem|iobuf|callpool|priv|fd|inode|history]... - perform statedump on bricks
volume list - 列出集群里的所有卷
volume clear-locks <VOLNAME> <path> kind {blocked|granted|all}{inode [range]|entry [basename]|posix [range]} - Clear locks held on path
peer probe <HOSTNAME> - probe peer specified by <HOSTNAME>
peer detach <HOSTNAME> [force] - detach peer specified by <HOSTNAME>
peer status - 列出peers的状态
peer help - peer 命令的帮助
pool list - 列出池中的所有节点,包括localhost
官网手册:http://www.gluster.org/community/documentation/index.php/QuickStart
http://www.unixbar.net/linux/debian/1363.html
http://blog.csdn.net/liuaigui/article/details/6284551