美文网首页JCloud
GlusterFS日常运维小记

GlusterFS日常运维小记

作者: 魔哈Moha | 来源:发表于2017-02-15 20:03 被阅读277次

目前测试环境的OpenStack存储后端部分采用的GlusterFS,记下日常使用的一些命令方便其他同事查看。

运维命令####

创建卷

$ gluster volume create cinder-volumes replica 2 transport tcp host1:/brick/volume1 host2:/brick/volume1 host3:/brick/volume1 host4:/brick/volume1

卷设置

$ gluster volume cinder-volumes set nfs.disable on
$ gluster volume cinder-volumes set performance.readdir-ahead on
$ gluster volume cinder-volumes set transport.address-family inet 
$ gluster volume cinder-volumes set performance.read-ahead-page-count 8
$ gluster volume cinder-volumes set performance.io-thread-count 16
$ gluster volume cinder-volumes set network.ping-timeout 10
$ gluster volume cinder-volumes set performance.cache-size 8GB
$ gluster volume cinder-volumes set cluster.self-heal-daemon on
$ gluster volume cinder-volumes set cluster.heal-timeout 300
$ gluster volume cinder-volumes set performance.write-behind-window-size 256MB
$ gluster volume cinder-volumes set performance.io-cache off
$ gluster volume cinder-volumes set server.allow-insecure on

扩容卷

$ gluster volume add-brick cinder-volumes replica 2 host1:/brick/volume1 host2:/brick/volume1

#重建数据
$ gluster volume rebalance cinder-volumes start [force]

$ gluster volume rebalance cinder-volumes status

缩容卷

若是副本卷,则移除的Bricks数是replica的整数倍;stripe具有同样的要求.

$ gluster volume remove-brick cinder-volumes host1:/brick/volume1 host2:/brick/volume1

#执行start则开始迁移数据,系统会有负载
$ gluster volume remove-brick cinder-volumes start

$ gluster volume remove-brick cinder-volumes status

#不迁移数据,直接删除
$ gluster volume remove-brick cinder-volumes commit

替换卷

用host2的卷替换host1

$ gluster volume replace-brick cinder-volumes host1:/brick/volume1 host2:/brick/volume1 [force]

故障处理####

1.物理机数据盘硬盘故障

在正常的服务器上gluster的贡献盘文件系统属性,然后设置到新硬盘挂载贡献路径上;

#获取数据
$ getfattr -d -m '.*' /brick/volume1

getfattr: Removing leading '/' from absolute path names
# file: brick/volume1
trusted.gfid=0sAAAAAAAAAAAAAAAAAAAAAQ==
trusted.glusterfs.dht=0sAAAAAQAAAAA/////f////Q==
trusted.glusterfs.dht.commithash="3307144809"
trusted.glusterfs.volume-id=0sqcz7hnqRQ9asrnzx2DtUxQ==

#设置属性
$ setfattr -n trusted.gfid -v 0sAAAAAAAAAAAAAAAAAAAAAQ== /brick/volume2
$ setfattr -n trusted.glusterfs.dht -v 0sAAAAAQAAAAA/////f////Q== /brick/volume2
$ setfattr -n trusted.glusterfs.dht.commithash -v "3168624641" /brick/volume2
$ setfattr -n trusted.glusterfs.volume-id -v 0sqcz7hnqRQ9asrnzx2DtUxQ== /brick/volume2

重启glusterd服务,然后查看健康状态;

$ gluster volume heal cinder-volumes info

Brick host1:/brick/volume1
Status: Connected
Number of entries: 0

Brick host2:/brick/volume1
/data 
Status: Connected
Number of entries: 1        # 显示一个条目在修复,自动修复完成后会为 0

相关文章

  • GlusterFS日常运维小记

    目前测试环境的OpenStack存储后端部分采用的GlusterFS,记下日常使用的一些命令方便其他同事查看。 运...

  • Hadoop相关文章索引(2)——Hadoop运维主题

    hadoop运维笔记1 Hadoop集群日常运维 Hadoop运维经验杂谈 Hadoop运维笔记 之 调整hdfs...

  • 5.k8s 日常运维事项

    k8s 运维示例:和运维相关的日常运维事宜 扩建4个pod 动态修改资源内容kubectl edit:用于临时修改...

  • 运维内功——日常运维篇

    以下为日常运维时每一个运维人员的内心准则! 1.当发现故障的时候,应该先恢复再排查,实在无计可施可以试试重启; 2...

  • 运维自救攻略:如何避免“锅”从天而降?

    开始这个话题之前,我们先来看看运维充(苦)实(bi)的工作日常。 不被理解的工作日常 ——运维是做什么的? ——装...

  • 日常运维命令

    计算空间du -h --max-depth=1 /path 连接数netstat -n | awk '/^tcp/...

  • 运维日常命令

    1.修改系统时间date -s "2017-11-18 10:18:00"clock -w2.查看系统的内核una...

  • redis日常运维

    1.启动redis cd ~/redis/bin ./redis-server ../config/redis-2...

  • zk日常运维

    日常维护操作 启动ZK服务:bin/zkServer.sh start 查看ZK服务状态:bin/zkServer...

  • DBA日常运维

    表空间: 1、查询表属于哪个表空间: 2、给表空间添加数据文件: 3、增加表空间数据文件的大小(之前初始化大小2G...

网友评论

    本文标题:GlusterFS日常运维小记

    本文链接:https://www.haomeiwen.com/subject/zdzqwttx.html