GlusterFS是一个网络文件系统,能够处理数PB的数据和数千个用户。 对于数据中心Linux服务器,GlusterFS可能是本地存储所需的文件系统。
我将向您展示如何使用GlusterFS设置三个代表单个命名空间的Ubuntu服务器。 我将在Ubuntu 18.04上进行演示,并假设您已经准备好了三个Ubuntu服务器。
然后说,让我们开始运行GlusterFS。
布局
我在以下地址有三台Ubuntu 18.04服务器:
- 192.168.1.206
- 192.168.1.207
- 192.168.1.208
映射地址
使用命令sudo nano/etc/hosts在每台服务器上打开hosts文件,然后添加以下内容(修改以适合您的IP地址方案):
192.168.1.206 gfs01 192.168.1.207 gfs02 192.168.1.208 gfs03
保存并关闭这些文件。
为了使事情更清楚,请更改每个服务器的主机名以表示在hosts文件中映射的主机名。
添加必要的存储库
在每台服务器上,发出以下命令以添加必要的依赖项,存储库和密钥:
sudo apt install software-properties-common -y wget -O- https://download.gluster.org/pub/gluster/glusterfs/3.12/rsa.pub | apt-key add - sudo add-apt-repository ppa:gluster/glusterfs-3.12
安装,启动和启用GlusterFS
从gfs01和gfs02上的终端发出以下命令以安装GlusterFS:
sudo apt install glusterfs-server -y
现在我们可以使用以下命令启动和启用GlusterFS:
sudo systemctl start glusterd sudo systemctl enable glusterd
配置GlusterFS
首先要做的是创建一个可信任的池。 这是在gfs01上使用以下命令完成的:
sudo gluster peer probe gfs02
你应该立即看到peer probe:success。
您可以使用以下命令检查对等体的状态:
sudo gluster peer status
您应该看到已添加1个对等体(图A)。
图A.
我们的对等已添加到可信池中。
创建分布式GlusterFS卷
创建池后,我们必须创建分布式GlusterFS卷。 我建议在不在系统目录中的分区上创建此卷,否则可能会发生同步错误。 使用以下命令在gfs01和gfs02上创建新目录:
sudo mkdir -p /glusterfs/distributed
接下来我们可以创建卷。 我们将使用命令(在gfs01上发布)创建一个名为v01的卷,其中包含副本gfs01和gfs02:
sudo gluster volume create v01 replica 2 transport tcp gfs01:/glusterfs/distributed gfs02:/glusterfs/distributed
您可以使用以下命令检查卷的状态:
sudo gluster volume info v01
您应该看到卷volume已经开始(图B)。
图B.
我们的新卷正在发挥作用。
GlusterFS客户端
我们将使用gfs03作为我们的客户端。 要安装必要的软件包,请发出以下命令:
sudo apt install glusterfs-client -y
安装完成后,使用以下命令创建安装点:
sudo mkdir -p /mnt/glusterfs
使用以下命令安装分布式glusterfs卷:
sudo mount -t glusterfs gfs01:/v01 /mnt/glusterfs/
使用以下命令检查卷:
df -h /mnt/glusterfs
您应该看到卷已成功安装(图C)。
图C.
我们的卷已经安装。
要在重新引导时进行此挂载,请将以下行添加到gfs03/etc/fstab文件中:
gfs01:/v01 /mnt/glusterfs glusterfs defaults,_netdev 0 0
现在,如果必须重新启动服务器,GlusterFS卷将自动挂载。
测试
在gsf01上,发出命令:
sudo mount -t glusterfs gfs01:/v01 /mnt
在gsf02上,发出命令:
sudo mount -t glusterfs gfs02:/v01 /mnt
现在返回gfs03并使用以下命令创建测试文件:
sudo touch /mnt/glusterfs/testing
返回gfs01和gfs02并发出命令:
ls /mnt
您应该看到在gfs03上创建的空测试文件。
此时,在已安装卷中创建的任何文件都将自动分发到节点。 您可以在/mnt上的gfs01或gfs02或/mnt/glusterfs的gfs03上创建文件,它们将自动同步。
这是一个GlusterFS分布式文件系统,可提供显着的扩展和可靠性。