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

相关文章

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

Linux安装MySQL的教程

《Linux安装MySQL的教程》:本文主要介绍Linux安装MySQL的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux安装mysql1.Mysql官网2.我的存放路径3.解压mysql文件到当前目录4.重命名一下5.创建mysql用户组和用户并修

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

Linux系统之dns域名解析全过程

《Linux系统之dns域名解析全过程》:本文主要介绍Linux系统之dns域名解析全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、dns域名解析介绍1、DNS核心概念1.1 区域 zone1.2 记录 record二、DNS服务的配置1、正向解析的配置

Linux修改pip和conda缓存路径的几种方法

《Linux修改pip和conda缓存路径的几种方法》在Python生态中,pip和conda是两种常见的软件包管理工具,它们在安装、更新和卸载软件包时都会使用缓存来提高效率,适当地修改它们的缓存路径... 目录一、pip 和 conda 的缓存机制1. pip 的缓存机制默认缓存路径2. conda 的缓

Linux修改pip临时目录方法的详解

《Linux修改pip临时目录方法的详解》在Linux系统中,pip在安装Python包时会使用临时目录(TMPDIR),但默认的临时目录可能会受到存储空间不足或权限问题的影响,所以本文将详细介绍如何... 目录引言一、为什么要修改 pip 的临时目录?1. 解决存储空间不足的问题2. 解决权限问题3. 提

Linux中的进程间通信之匿名管道解读

《Linux中的进程间通信之匿名管道解读》:本文主要介绍Linux中的进程间通信之匿名管道解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基本概念二、管道1、温故知新2、实现方式3、匿名管道(一)管道中的四种情况(二)管道的特性总结一、基本概念我们知道多

Linux中的缓冲区和文件系统详解

《Linux中的缓冲区和文件系统详解》:本文主要介绍Linux中的缓冲区和文件系统方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、FILE结构1、fd2、缓冲区二、文件系统1、固态硬盘2、逻辑地址LBA(一)数据块 Data blocks(二)inode表

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重