如何在Ubuntu 18.04上使用GlusterFS设置高可用性存储
2018-08-26 00:00
1136 查看
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
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
sudo apt install glusterfs-server -y
现在我们可以使用以下命令启动和启用GlusterFS:
sudo systemctl start glusterd
sudo systemctl enable glusterd
sudo gluster peer probe gfs02
你应该立即看到peer probe:success。
您可以使用以下命令检查对等体的状态:
sudo gluster peer status
您应该看到已添加1个对等体(图A)。
图A.
我们的对等已添加到可信池中。
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.
我们的新卷正在发挥作用。
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卷将自动挂载。
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分布式文件系统,可提供显着的扩展和可靠性。
更多Ubuntu相关信息见Ubuntu 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=2
我将向您展示如何使用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分布式文件系统,可提供显着的扩展和可靠性。
更多Ubuntu相关信息见Ubuntu 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=2
相关文章推荐
- 【转】如何在Ubuntu 16.04上使用UFW设置防火墙
- 如何利用Heartbeat与Floating IP在Ubuntu 14.04上创建高可用性设置
- 如何使用HDFS高可用性设置Hadoop集群
- ubuntu下如何设置PageUp/PageDown键调出使用过的历史命令
- 如何使用Ubuntu手机平台中的照相机API来存储照片
- iOS开发的一些小技术:让UIImage有缩放功能、控制log的输出、xcode修改文件注释、随机数的使用、在UIImageView 中旋转图像、在Quartz中如何设置旋转点、创建.plist文件并存储
- Linux开发环境搭建与使用——ubuntu如何设置IP
- Ubuntu使用add-apt-repository增加源时如何设置代理服务器
- 如何在Ubuntu 14.04上利用Keepalived与Floating IP设置高可用性Web服务器
- 如何利用Heartbeat与Floating IP在Ubuntu 14.04上创建高可用性设置
- 如何使用圆体来美化,支持中文粗体和斜体(Ubuntu)? 使用xp带的字体来进行中文美化
- 如何使用 ADO.NET 和 Visual C# .NET 调用带参数的存储过程
- 如何设置NetBeans5.5使用的语言
- 如何设置Ubuntu做网关
- Spring MVC 中如何设置使用多视图解析器--JSP与FreeMarker合作工作
- 如何:使用调试器变量窗口,可以将调试器窗口中用于显示数值的格式设置为十进制或十六进制
- 存储过程中如何使用事务
- 如何在存储过程中使用like操作符
- 如何使用 Visual Studio .NET 工具创建数据库对象和 Transact-SQL 存储过程。