Linux——GlusterFS分布式文件系统群集

2024-03-15 19:36

本文主要是介绍Linux——GlusterFS分布式文件系统群集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 一、GlusterFS简介

        GlusterFS是一个开源的分布式文件系统,同时也是Scale-Out存储解决方案Gluster的核心,在存储数据方面具有强大的横向扩展能力,通过开展不同的节点可以支持数PB级别的存储容量。 

GlusterFS的特点
        扩展性和高性能、高可用性、全局统一命名空间、弹性卷管理、基于标准协议。

GlusterFS术语
        Brick(存储块):指可信主机池中由主机提供的用于物理存储的专用分区,是GlusterFS中的基本存储单元,同时也是可信存储池中服务器上对外提供的存储目录。

        Volume(逻辑卷):一个逻辑卷是一组Brick的集合。

        FUSE:是一个内核模块,允许用户创建自己的文件系统,无须修改内核代码。

        VFS:内核空间对用户空间提供的访问磁盘的接口。

        Glusterd(后台管理进程):在存储群集中的每个节点上都要运行。

GlusterFS的卷类型
        分布式卷、条带卷、复制卷、分布式条带卷、分布式复制卷、分布式条带复制卷

二、GlusterFS部署 

组件包:Glusterfs、Glusterfs-server、Glusterfs-fuse、Glusterfs-rdma

设备

IP

备注

Centos01

192.168.223.123

Node1

Centos02

192.168.223.126

Node2

Centos03

192.168.223.124

Node3

Centos04

192.168.223.125

Node4

1、初始化操作

        开启4台虚拟机,添加磁盘,通过fdisk分区,mkfs格式化,创建相应的挂载目录,并将格式化的磁盘挂载到相应的目录中.最后修改/etc/fsteb配置文件,使其永久生效。 Node2和Node3步骤相似,此步省略。

Node1和Node2同时操作

[root@node1 ~]# fdisk -l
磁盘 /dev/sdd:5368 MB, 5368709120 字节,10485760 个扇区设备 Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048    10485759     5241856   83  Linux磁盘 /dev/sdc:4294 MB, 4294967296 字节,8388608 个扇区设备 Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048     8388607     4193280   83  Linux磁盘 /dev/sdb:3221 MB, 3221225472 字节,6291456 个扇区设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6291455     3144704   83  Linux磁盘 /dev/sde:6442 MB, 6442450944 字节,12582912 个扇区设备 Boot      Start         End      Blocks   Id  System
/dev/sde1            2048    12582911     6290432   83  Linux
####格式化文件系统
[root@node1 ~]# mkfs.xfs /dev/sdb1 
[root@node1 ~]# mkfs.xfs /dev/sdc1 
[root@node1 ~]# mkfs.xfs /dev/sdd1 
[root@node1 ~]# mkfs.xfs /dev/sde1 
#####创建挂载文件
[root@node1 ~]# mkdir /b3 /c4 /d5 /e6
#####分别挂载到对应目录
[root@node1 ~]# mount /dev/sdb1 /b3
[root@node1 ~]# mount /dev/sdc1 /c4
[root@node1 ~]# mount /dev/sdd1 /d5
[root@node1 ~]# mount /dev/sde1 /e6
#####修改配置文件设置自动挂载
[root@node1 ~]# vim /etc/fstab 
/dev/sdb1       /b3     xfs     defaults        0 0
/dev/sdc1       /c4     xfs     defaults        0 0
/dev/sdd1       /d5     xfs     defaults        0 0
/dev/sde1       /e6     xfs     defaults        0 0

在Node1上搭建本地yum源,安装httpd服务,设置开机自启,将yum仓库移动到/var/www/html/目录下,并建立索引

[root@node1 ~]# yum -y install httpd createrepo
[root@node1 ~]# systemctl enable httpd.service --now
[root@node1 html]# ls
gfs-9
[root@node1 html]# createrepo gfs-9/
[root@node1 ~]# vim /etc/yum.repos.d/chicken.repo 
[DVD]
name=DVD
baseurl=file:///mnt
enanled=1
gpgcheck=0[gfs]
name=gfs
baseurl=http://192.168.223.123/gfs-9
enabled=1
gpgcheck=0

将本地yum配置文件复制到其他三台设备
[root@node1 ~]# scp /etc/yum.repos.d/chicken.repo root@192.168.223.124:/etc/yum.repos.d/chicken.repo  

[root@node1 ~]# scp /etc/yum.repos.d/chicken.repo root@192.168.223.125:/etc/yum.repos.d/chicken.repo  

[root@node1 ~]# scp /etc/yum.repos.d/chicken.repo root@192.168.223.126:/etc/yum.repos.d/chicken.repo  

2、安装GlusterFS 

所有机器同步操作,修改/etc/hosts文件,配置本地主机解析,并安装软件

[root@node1 ~]# cat << EOF >> /etc/hosts
192.168.223.123 node1
192.168.223.126 node2
192.168.223.124 node3
192.168.223.125 node4
EOF
[root@node1 ~]# yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
[root@node1 ~]# systemctl start glusterd
####添加节点
[root@node1 ~]# gluster peer probe node1
[root@node1 ~]# gluster peer probe node2
[root@node1 ~]# gluster peer probe node3
[root@node1 ~]# gluster peer probe node4

查看群集状态,通过以下命令在每个节点上查看群集状态,正常情况下.每个节点的输出结果为,State,Peer inCluster (Connected)。如果显示 Disconnected,请检查hosts文件配置。

[root@node1 ~]# gluster peer status 
Number of Peers: 3Hostname: node2
Uuid: 7d927573-0d64-4877-9967-078012e805df
State: Peer in Cluster (Connected)Hostname: node3
Uuid: e57f1e7c-1c95-417b-bd6f-f02b4f7d244d
State: Peer in Cluster (Connected)Hostname: node4
Uuid: 50237de6-f189-4245-80b4-0e32469227a7
State: Peer in Cluster (Connected)

创建卷分布式卷

[root@node1 ~]# gluster volume create dis-volume node1:/e6 node2:/e6 force
[root@node1 ~]# gluster volume start dis-volume

 创建条带卷

[root@node1 ~]# gluster volume create stripe-volume node1:/d5 node2:/d5 force
[root@node1 ~]# gluster volume start dis-volume

创建复制卷

[root@node1 ~]# gluster volume create rep-volume replica 2 node3:/d5 node4:/d5 force
[root@node1 ~]# gluster volume start rep-volume

分布式条带卷

[root@node1 ~]# gluster volume create dis-stripe stripe 2 节点:/目录 节点:/目录 节点:/目录 节点:/目录
[root@node1 ~]# gluster volume start dis-stripe

分布式复制卷

[root@node1 ~]# gluster volume create dis-rep replica 2 节点:/目录 节点:/目录 节点:/目录 节点:/目录
[root@node1 ~]# gluster volume start dis-rep

查看卷列表

[root@node1 ~]# gluster volume list

查看卷信息

[root@node1 ~]# gluster volume info dis-volume		查看分布式卷
[root@node1 ~]# gluster volume info stripe-volume	查看条带卷
[root@node1 ~]# gluster volume info rep-volume		查看复制卷
[root@node1 ~]# gluster volume info dis-stripe		查看分布式条带卷
[root@node1 ~]# gluster volume info dis-rep			查看分布式复制卷

客户端挂载GFS磁盘需提前创建挂载目录

[root@node1 ~]# mount -t glustersf node1:/dis-volume /test/dis_volume		挂载分布式卷 
[root@node1 ~]# mount -t glustersf node1:/stripe-volume /test/stripe_volume	挂载条带卷
[root@node1 ~]# mount -t glustersf node1:/rep-volume /test/rep_volume		挂载复制卷
[root@node1 ~]# mount -t glustersf node1:/dis-stripe /test/dis_stripe		挂载分布式条带卷
[root@node1 ~]# mount -t glustersf node1:/dis-rep /test/dis_rep			挂载分布式复制卷

这篇关于Linux——GlusterFS分布式文件系统群集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/813045

相关文章

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

linux hostname设置全过程

《linuxhostname设置全过程》:本文主要介绍linuxhostname设置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录查询hostname设置步骤其它相关点hostid/etc/hostsEDChina编程A工具license破解注意事项总结以RHE

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.