zoukankan      html  css  js  c++  java
  • GlusterFS分布式文件系统的使用

    glusterfs是一款开源的分布式文件系统。

    它具备高扩展、高可用及高性能等特性,由于其无元数据服务器的设计,使其真正实现了线性的扩展能力,使存储总容量可轻松达到PB级别,支持数千客户端并发访问。

    主要应用在跨集群系统中,具有很好的可扩展性。

    glusterfs常用的命令

    安装

    # yum install centos-release-gluster -y

    服务器端:

    # yum install glusterfs-server -y
    客户端:
    # yum install glusterfs-client -y

    # yum install glusterfs-fuse -y

    1 服务器节点
    # gluster peer status                          //查看所有节点信息,显示时不包括本节点
    # gluster peer  probe   NODE-NAME   //添加节点
    # gluster peer  detach  NODE-NAME   //移除节点
     
    2 glusterd服务
    /etc/init.d/glusterd start |stop |status   
     
    3.卷管理
     
    创建卷(在任一节点执行)
      卷有6种类型:
    <1>复制卷
     gluster volume create VOLNAME [replica COUNT] [transport tcp | rdma | tcp, rdma] BRICK...
    示例1:gluster volume create testvol replica 2 server1:/exp1/brick server2:/exp2/brick
    <2>条带卷
    gluster volume create VOLNAME [stripe COUNT] [transport tcp | rdma | tcp, rdma] BRICK...
    示例:gluster volume create testvol stripe 2 server1:/exp1/brick server2:/exp2/brick
    <3>分布式卷
     gluster volume create VOLNAME [transport tcp | rdma | tcp, rdma] BRICK
    示例:gluster volume create testvol server1:/exp1/brick server2:/exp2/brick
    <4>分布式复制卷
     gluster volume create VOLNAME [replica COUNT] [transport tcp | rdma | tcp, rdma] BRICK...
    示例: gluster volume create testvol replica 2 server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick
    <5>分布式条带卷
    gluster volume create VOLNAME [stripe COUNT] [transport tcp | rdma | tcp, rdma] BRICK...
    示例:gluster volume create testvol stripe 2 server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick
    <6>条带复制卷
    gluster volume create VOLNAME [stripe COUNT] [replica COUNT] [transport tcp | rdma | tcp, rdma] BRICK...
    示例:gluster volume create testvol stripe 2 replica 2 transport tcp server1:/exp1/brick server2:/exp2/brickserver3:/exp3/brick server4:/exp4/brick
     
    启动|停止卷
    #gluster volume start|stop test-volume
    删除卷
    #gluster volume delete test-volume  //先停止卷后才能删除
    查看卷
    # gluster volume list              /*列出集群中的所有卷*/
    # gluster volume info [all]      /*查看集群中的卷信息*/
    # gluster volume status [all]   /*查看集群中的卷状态*/
    # gluster volume status  [detail| clients | mem | inode | fd] 
    配置卷
    # gluster volume set <VOLNAME> <OPTION> <PARAMETER>
     
    扩展卷
    # gluster volume add-brick <VOLNAME> <NEW-BRICK>
    注意,如果是复制卷或者条带卷,则每次添加的Brick数必须是replica或者stripe的整数倍。
     
    收缩卷
    格式:volume remove-brick <VOLNAME> [replica <COUNT>] <BRICK> ... <start|stop|status|commit|force>
    示例:# gluster volume remove-brick testvol server1:/data/brick/brick01 start
    使用start是先将数据迁移到其它可用的Brick,迁移结束后才将该Brick移除
    使用commit命令执行Brick移除,则不会进行数据迁移而直接删除Brick
     
    迁移卷 (主要完成数据在卷之间的在线迁移)
    volume replace-brick <VOLNAME> <SOURCE-BRICK> <NEW-BRICK> {commit force}
    实例:gluster volume replace-brick testvol server2:/data/brick/brick02 server2:/data/brick/brick01 commit force
     
    重新均衡卷
    不迁移数据: 
    # gluster volume rebalance  lay-outstart 
    # gluster volume rebalance  start|stop|status
    # gluster volume rebalance  startforce 
     
     
    客户端挂载卷
    mount -t glusterfs 192.168.1.28:/testvol /mnt/
    mount -t glusterfs  res03,res04,res05,res06:/backup   /ubox/backup
     
    异常信息:volume add-brick: failed: /data/brick/brick01 is already part of a volume
    说明/data/brick/brick01 曾经是一个Brick。解决方法:
    # rm -rf /data/brick/brick01.glusterfs
    # setfattr -x trusted.glusterfs.volume-id /data/brick/brick01
    # setfattr -x trusted.gfid  /data/brick/brick01
     
     
    遇到一台机器报错:

    E [MSGID: 101066] [graph.c:327:glusterfs_graph_init] 0-data-quick-read: initializing translator failed
    E [MSGID: 101176] [graph.c:698:glusterfs_graph_activate] 0-graph: init failed
    W [MSGID: 101002] [options.c:995:xl_opt_validate] 0-glusterfs: option 'address-family' is deprecated, preferred is 'transport.address-family', continuing with correction
    E [MSGID: 127002] [quick-read.c:838:check_cache_size_ok] 0-mysql-backup-quick-read: Cache size 4294967296 is greater than the max size of 4142899200

    排查发现,机器的内存小于glusterfs的performance.cache-size,导致挂载失败,调整cache-size之后解决。

     
  • 相关阅读:
    NOIP 2017逛公园(记忆化搜索)
    NOIP 2012疫情控制 (二分+倍增+贪心)
    NOIP 2005过河(DP+路径压缩)
    P1198 [JSOI2008]最大数
    [Noip2016]蚯蚓
    [六省联考2017]期末考试
    六省联考:组合数问题
    蒜头君的兔子
    bzoj1015 [JSOI2008]星球大战starwar
    luogu P3370 【模板】字符串哈希
  • 原文地址:https://www.cnblogs.com/xiaobaozi-95/p/10430952.html
Copyright © 2011-2022 走看看