glusterfs读书笔记

网友投稿 580 2022-05-28

前言

本文参考了,如下文章,根据自己需要完善了一些细节步骤,实为一篇读书笔记:

https://www.cnblogs.com/jicki/p/5801712.html

https://jingyan.baidu.com/article/cbcede077f90bf02f40b4d94.html

规划集群

后续用集群节点,代表前三个节点

安装前在所有节点上修改HOSTS文件,添加如下几行

192.168.5.138 swarm-manager192.168.5.140 swarm-node-1192.168.5.141 swarm-node-2

安装集群

集群节点上安装glusterfs,设置开机启动,并关闭防火墙

# 安装软件yum install -y centos-release-gluster yum install -y glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma# 设置开机启动systemctl start glusterd.service systemctl enable glusterd.service# 关闭防火墙systemctl stop firewalld.service  systemctl disable firewalld.service

在 swarm-manager 节点上配置,将 节点 加入到 集群中。

[root@swarm-manager ~]# gluster peer probe swarm-managerpeer probe: success. Probe on localhost not needed [root@swarm-manager ~]# gluster peer probe swarm-node-1peer probe: success. [root@swarm-manager ~]# gluster peer probe swarm-node-2peer probe: success.

查看集群状态

[root@swarm-manager data]# gluster peer statusNumber of Peers: 2Hostname: swarm-node-1Uuid: 489859c1-60a7-4f9f-b950-f7d1be76b71eState: Peer in Cluster (Connected)Hostname: swarm-node-2Uuid: 9f203314-16ec-4b0e-919a-daf341df8458State: Peer in Cluster (Connected) [root@swarm-manager data]#

集群的三个节点,分别创建目录

[root@swarm-manager ~]# mkdir -p /opt/gluster/data[root@swarm-node-1 ~]# mkdir -p /opt/gluster/data[root@swarm-node-2 ~]# mkdir -p /opt/gluster/data

查看volume 状态:

[root@swarm-manager ~]#gluster volume infoNo volumes present

创建一个名为models 的GlusterFS磁盘:

[root@swarm-manager ~]# gluster volume create models replica 3 swarm-manager:/opt/gluster/data swarm-node-1:/opt/gluster/data swarm-node-2:/opt/gluster/data force volume create: models: success: please start the volume to access data

再查看 volume 状态:

[root@swarm-manager ~]# gluster volume infoVolume Name: modelsType: Replicate Volume ID: e539ff3b-2278-4f3f-a594-1f101eabbf1eStatus: Created Number of Bricks: 1 x 3 = 3Transport-type: tcpBricks:Brick1: swarm-manager:/opt/gluster/dataBrick2: swarm-node-1:/opt/gluster/dataBrick3: swarm-node-2:/opt/gluster/dataOptions Reconfigured:performance.readdir-ahead: on

启动 models

[root@swarm-manager ~]# gluster volume start modelsvolume start: models: success

gluster 性能调优:

# 开启 指定 volume 的配额: (models 为 volume 名称)gluster volume quota models enable# 限制 models 中 / (既总目录) 最大使用 80GB 空间gluster volume quota models limit-usage / 80GB#设置 cache 4GBgluster volume set models performance.cache-size 4GB#开启 异步 , 后台操作gluster volume set models performance.flush-behind on#设置 io 线程 32gluster volume set models performance.io-thread-count 32#设置 回写 (写数据时间,先写入缓存内,再写入硬盘)gluster volume set models performance.write-behind on

安装客户端

部署GlusterFS客户端并mount GlusterFS文件系统

[root@client ~]# yum install -y glusterfs glusterfs-fuse[root@client  ~]# mkdir -p /opt/gfsmnt[root@client ~]# mount -t glusterfs swarm-manager:models /opt/gfsmnt/[root@client ~]# df -h文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/vg001-root 98G 1.2G 97G 2% / devtmpfs 32G 0 32G 0% /dev tmpfs 32G 0 32G 0% /dev/shm tmpfs 32G 130M 32G 1% /run tmpfs 32G 0 32G 0% /sys/fs/cgroup /dev/mapper/vg001-opt 441G 71G 370G 17% /opt /dev/sda2 497M 153M 344M 31% /boot tmpfs 6.3G 0 6.3G 0% /run/user/0 swarm-manager:models 441G 18G 424G 4% /opt/gfsmnt

测试

可以client 上的/opt/gfsmnt 目录下,新建、修改、删除文件,查看集群节点上是否有对应操作;

常用命令

启动/关闭/查看glusterd服务

# /etc/init.d/glusterd start# /etc/init.d/glusterd stop# /etc/init.d/glusterd status

开机自动启动glusterd服务

# chkconfig glusterd on # Red Hat# update-rc.d glusterd defaults # Debian# echo "glusterd" >>/etc/rc.local # Others

查看配置信息

# cat /etc/rc.local

4.为存储池添加/移除服务器节点

在其中一个节点上操作即可:

# gluster peer probe# gluster peer detach

注意,移除节点时,需要提前将该节点上的Brick移除。

查看所有节点的基本状态(显示的时候不包括本节点):

# gluster peer status

挂载分区

# mount -t ext4 /dev/sdd1 /mnt/brick1

创建/启动/停止/删除卷

# gluster volume create [stripe | replica ] [transport [tcp | rdma | tcp,rdma]] ...# gluster volume start# gluster volume stop

gluster volume delete

注意,删除卷的前提是先停止卷。

客户端以glusterfs方式挂载

# mount -t glusterfs :/

对于OpenStack,计算和控制节点都要挂载/var/lib/nova/instances,控制节点还要挂载/var/lib/glance/images。

查看卷信息

列出集群中的所有卷:

# gluster volume list

查看集群中的卷信息:

# gluster volume info [all]

查看集群中的卷状态:

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

查看本节点的文件系统信息:

# df -h []

查看本节点的磁盘信息:

# fdisk -l

配置卷

# gluster volume set

扩展卷

# gluster volume add-brick

注意,如果是复制卷或者条带卷,则每次添加的Brick数必须是replica或者stripe的整数倍。

收缩卷

glusterfs读书笔记

先将数据迁移到其它可用的Brick,迁移结束后才将该Brick移除:

# gluster volume remove-brick start

在执行了start之后,可以使用status命令查看移除进度:

# gluster volume remove-brick status

不进行数据迁移,直接删除该Brick:

# gluster volume remove-brick commit

注意,如果是复制卷或者条带卷,则每次移除的Brick数必须是replica或者stripe的整数倍。

/var/lib/glusterd/peers/ 下文件决定了host name

数据迁移

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:HDOJ水题集合10:卡特兰数
下一篇:聚集索引与非聚集索引的总结
相关文章