zoukankan      html  css  js  c++  java
  • Gluster 常用命令

    Gluster 常用命令
    1 服务器节点
    # gluster peer status //查看所有节点信息,显示时不包括本节点

    # gluster peer probe NODE-NAME //添加节点

    # gluster peer detach NODE-NAME //移除节点,需要提前将该节点上的brick移除

    2 glusterd服务
    /etc/init.d/glusterd start //启动glusterd服务
    /etc/init.d/glusterd stop //关闭glusterd服务
    /etc/init.d/glusterd status //查看glusterd服务

    3 卷管理
    3.1 创建卷
    <1>复制卷

    语法: gluster volume create NEW-VOLNAME [replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK

    示例1:gluster volume create test-volume replica 2 transport tcp server1:/exp1/brick server2:/exp2/brick

    <2>条带卷

    语法:gluster volume create NEW-VOLNAME [stripe COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...

    示例:gluster volume create test-volume stripe 2 transport tcp server1:/exp1/brick server2:/exp2/brick

    <3>分布式卷

    语法: gluster volume create NEW-VOLNAME [transport tcp | rdma | tcp, rdma] NEW-BRICK

    示例1:gluster volume create test-volume server1:/exp1/brick server2:/exp2/brick
    示例2:gluster volume create test-volume transport rdma server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

    <4>分布式复制卷

    语法: gluster volume create NEW-VOLNAME [replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...
    示例: gluster volume create test-volume replica 2 transport tcp server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

    <5>分布式条带卷

    语法:gluster volume create NEW-VOLNAME [stripe COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...

    示例:gluster volume create test-volume stripe 2 transport tcp server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

    <6>条带复制卷

    语法:gluster volume create NEW-VOLNAME [stripe COUNT] [replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...

    示例:gluster volume create test-volume stripe 2 replica 2 transport tcp server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

    3.2 启动卷
    #gluster volume start test-volume

    3.3 停止卷
    #gluster volume stop test-volume

    3.4 删除卷
    #gluster volume delete test-volume //先停止卷后才能删除

    3.5 查看卷
    # gluster volume list /*列出集群中的所有卷*/
    # gluster volume info [all] /*查看集群中的卷信息*/
    # gluster volume status [all] /*查看集群中的卷状态*/

    # gluster volume status [detail| clients | mem | inode | fd]

    3.6 配置卷
    # gluster volume set <VOLNAME> <OPTION> <PARAMETER>

    3.7 扩展卷
    # gluster volume add-brick <VOLNAME> <NEW-BRICK>
    注意,如果是复制卷或者条带卷,则每次添加的Brick数必须是replica或者stripe的整数倍。

    3.8 收缩卷
    先将数据迁移到其它可用的Brick,迁移结束后才将该Brick移除:
    # gluster volume remove-brick start
    在执行了start之后,可以使用status命令查看移除进度:
    # gluster volume remove-brick status
    不进行数据迁移,直接删除该Brick:
    # gluster volume remove-brick commit
    注意,如果是复制卷或者条带卷,则每次移除的Brick数必须是replica或者stripe的整数倍。

    3.9 迁移卷
    使用start命令开始进行迁移:
    # gluster volume replace-brick start
    在数据迁移过程中,可以使用pause命令暂停迁移:
    # gluster volume replace-brick pause
    在数据迁移过程中,可以使用abort命令终止迁移:
    # gluster volume replace-brick abort
    在数据迁移过程中,可以使用status命令查看迁移进度:
    # gluster volume replace-brick status
    在数据迁移结束后,执行commit命令来进行Brick替换:
    # gluster volume replace-brick commit

    3.10 重新均衡卷
    不迁移数据:
    # gluster volume rebalance lay-outstart
    # gluster volume rebalance start
    # gluster volume rebalance startforce
    # gluster volume rebalance status
    # gluster volume rebalance stop

    4 Brick管理
    4.1 添加Brick
    # gluster volume add-brick test-volume 192.168.1.{151,152}:/mnt/brick2

    4.2 删除Brick
    若是副本卷,则移除的Bricks数是replica的整数倍
    #gluster volume remove-brick test-volume 192.168.1.{151,152}:/mnt/brick2 start
    在执行开始移除之后,可以使用status命令进行移除状态查看。
    #gluster volume remove-brick test-volume 192.168.1.{151,152}:/mnt/brick2 status

    使用commit命令执行Brick移除,则不会进行数据迁移而直接删除Brick,符合不需要数据迁移的用户需求。
    #gluster volume remove-brick test-volume 192.168.1.{151,152}:/mnt/brick2 commit

    4.3 替换Brick
    任务:把192.168.1.151:/mnt/brick0 替换为192.168.1.151:/mnt/brick2
    <1>开始替换
    #gluster volume replace-brick test-volume 192.168.1.:/mnt/brick0 ..152:/mnt/brick2 start
    异常信息:volume replace-brick: failed: /data/share2 or a prefix of it is already part of a volume

    说明 /mnt/brick2 曾经是一个Brick。具体解决方法
    # rm -rf /mnt/brick2/.glusterfs

    # setfattr -x trusted.glusterfs.volume-id /mnt/brick2
    # setfattr -x trusted.gfid /mnt/brick2

    //如上,执行replcace-brick卷替换启动命令,使用start启动命令后,开始将原始Brick的数据迁移到即将需要替换的Brick上。

    <2>查看是否替换完

    #gluster volume replace-brick test-volume 192.168.1.151:/mnt/brick0 ..152:/mnt/brick2 status
    <3>在数据迁移的过程中,可以执行abort命令终止Brick替换。
    #gluster volume replace-brick test-volume 192.168.1.151:/mnt/brick0 ..152:/mnt/brick2 abort

    <4>在数据迁移结束之后,执行commit命令结束任务,则进行Brick替换。使用volume info命令可以查看到Brick已经被替换。

    #gluster volume replace-brick test-volume 192.168.1.151:/mnt/brick0 .152:/mnt/brick2 commit
    # 此时我们再往 /sf/data/vs/gfs/rep2上添加数据的话,数据会同步到 192.168.1.152:/mnt/brick0和192.168.1.152:/mnt/brick2上。而不会同步到
    192.168.1.151:/mnt/brick0 上。

    5 文件系统扩展属性
    获取文件扩展属性

    getfattr -d -m . -e hex filename

    getfattr -d -m "trusted.afr.*" -e hex filename

  • 相关阅读:
    关于数论的一些总结
    gym101431B
    4.29训练题解
    hdu4347
    5.13训练的一些题解
    5.20训练的一些题解
    hdu4796
    hdu5984
    bzoj1941 hdu5992
    hdu4307
  • 原文地址:https://www.cnblogs.com/zhangeamon/p/8872165.html
Copyright © 2011-2022 走看看