• glusterfs分布式文件系统


    第一:安装依赖包:

    yum install libibverbs librdmacm xfsprogs nfs-utils rpcbind libaio liblvm2app  lvm2-devel  libevent-devel  nfs-utils-lib-devel tcl-devel libsysfs-devel  userspace-rcu  atop  iozone  fio iperf

    安装gluserfs server 和 client

    yum install glusterfs glusterfs-server  glusterfs-fuse

    # yum install glusterfs-3.7.9-12 glusterfs-server-3.7.8-1.el7.x86_64

    yum -y install glusterfs glusterfs-client

    8.组建集群

    /etc/init.d/glusterd start

    chkconfig glusterd on

    登陆服务器server1,执行命令

    [root@server1 yum.repos.d]# gluster peer probe server2

    [root@server1 yum.repos.d]# gluster peer probe server3

    使用 gluster peer status 查看状态

     

    9.创建卷

    1.确定创建卷的类型

    2.去创建卷的brick列表

    3.确定创建卷的网络类型(TCP/RDMA)

    4.gluster volume create 创建复制卷,至少2台主机

    卷里使用2台主机

    gluster volume create testvol replica 3  server1:/brick1/images  server2:/brick1/images 

    #分布式复制glusterfs卷,至少4台主机

    #gluster volume create fengvol replica 2 transport tcp  judge1:/data/feng judge2:/data/feng graph1:/data/feng graph2:/data/feng force

    查看volume 卷信息

     

    为硬盘访问设置权限:

    Gluster volume set  testVol  auth.allow  172.16.1.*

    启动创建的卷

    gluster  volume start   testVol

    查看卷的扩展属性

    getfattr -d -m . -e hex  /brick1/images

     

    客户端挂载

    mount  -t glusterfs  glusterfs1:/testvol    /data

    cat /etc/fstab

    glusterfs1:/testvol     /data       glusterfs   defaults  0   0

    # 设置 cache 大小, 默认32MB
    $ gluster volume set testvol performance.cache-size 4GB
    
    # 设置 io 线程, 太大会导致进程崩溃
    $ gluster volume set testvol performance.io-thread-count 16
    
    # 设置 网络检测时间, 默认42s
    $ gluster volume set testvol network.ping-timeout 10
    
    # 设置 写缓冲区的大小, 默认1M
    $ gluster volume set testvol performance.write-behind-window-size 1024MB

    查看卷

    Gluster volume info

    删除卷

    gluster volume stop testvol

    gluster volume delete testvol

    将机器移出集群

    gluster peer detach 172.28.26.102

    只允许172.28.0.0的网络访问glusterfs

    gluster volume set testvol auth.allow 172.28.26.*

    加入新的机器并添加到卷里(由于副本数设置为2,至少要添加2(4、6、8..)台机器)

    gluster peer probe 172.28.26.105

    gluster peer probe 172.28.26.106

    gluster volume add-brick testvol 172.28.26.105:/data/gluster 172.28.26.106:/data/gluster

    收缩卷

    # 收缩卷前gluster需要先移动数据到其他位置

    gluster volume remove-brick testvol 172.28.26.101:/data/gluster/testvol 172.28.26.102:/data/gluster/testvol start

    # 查看迁移状态

    gluster volume remove-brick testvol 172.28.26.101:/data/gluster/testvol 172.28.26.102:/data/gluster/testvol status

    # 迁移完成后提交

    gluster volume remove-brick testvol 172.28.26.101:/data/gluster/testvol 172.28.26.102:/data/gluster/testvol commit

    迁移卷

    # 将172.28.26.101的数据迁移到,先将172.28.26.107加入集群

    gluster peer probe 172.28.26.107

    gluster volume replace-brick testvol 172.28.26.101:/data/gluster/testvol 172.28.26.107:/data/gluster/testvol start

    # 查看迁移状态gluster volume replace-brick testvol 172.28.26.101:/data/gluster/testvol 172.28.26.107:/data/gluster/testvol status

    # 数据迁移完毕后提交gluster volume replace-brick testvol 172.28.26.101:/data/gluster/testvol   172.28.26.107:/data/gluster/testvol   commit

    # 如果机器172.28.26.101出现故障已经不能运行,执行强制提交然后要求gluster马上执行一次同步

    gluster volume replace-brick testvol   172.28.26.101:/data/gluster/testvol   172.28.26.102:/data/gluster/testvol   commit -force

    gluster volume heal testvol  s full

    移除集群 gluster peer detach server3

  • 相关阅读:
    MVC session过期如何处理跳转
    MVC+EF更新数据库
    python 判断 windows 隐藏文件/系统文件
    字符编码简介
    Essential C++ 学习笔记02--Array/Vector 与指针
    Essential C++ 学习笔记01--基本语法
    mongodb 入门笔记
    何谓可分页和非分页内存
    Git使用
    _stdcall 函数 debug/release汇编代码区别
  • 原文地址:https://www.cnblogs.com/fengjian2016/p/7155155.html
Copyright © 2020-2023  润新知