如何搭建集群文件系统

集群管理软件并非腾讯云产品,需客户自行搭建和维护,腾讯云不承诺为客户提供集群管理软件及其维护。

本文以红帽集群套件(RedHat Cluter Suite, RHCS)的搭建配置过程为例,供您参考。

RHCS是一套综合的软件组件,可以通过在部署时采用不同的配置,以满足您对高可用性,负载均衡,可扩展性,文件共享和节约成本的需要。

部署主要分为3步:

1)存储集群节点上安装ricci

2)管理节点上安装luci

3)配置集群参数

本文以 “CentOS 6.5 64bit ”操作系统为例,不同云服务器的操作系统的配置可能不同,具体操作步骤和差异请自行查找对应操作系统命令。
部署ricci

本操作以配置share001为例,节点1和节点2的配置相同。

1. 使用root用户登录云服务器。

2. 执行以下命令,下载并安装ricci软件包。

yum install ricci openais cman rgmanager lvm2-cluster gfs2-utils

显示类似如下信息:

......

Dependency Updated:

cyrus-sasl.x86_64 0:2.1.23-15.el6_6.2

cyrus-sasl-lib.x86_64 0:2.1.23-15.el6_6.2

dbus-libs.x86_64 1:1.2.24-9.el6

device-mapper.x86_64 0:1.02.117-12.el6_9.1

device-mapper-event.x86_64 0:1.02.117-12.el6_9.1

device-mapper-event-libs.x86_64 0:1.02.117-12.el6_9.1

device-mapper-libs.x86_64 0:1.02.117-12.el6_9.1

device-mapper-persistent-data.x86_64 0:0.6.2-0.2.rc7.el6

keyutils-libs.x86_64 0:1.4-5.el6

lvm2.x86_64 0:2.02.143-12.el6_9.1

lvm2-libs.x86_64 0:2.02.143-12.el6_9.1

nspr.x86_64 0:4.19.0-1.el6

nss.x86_64 0:3.36.0-9.el6_10

nss-softokn.x86_64 0:3.14.3-23.3.el6_8

nss-softokn-freebl.x86_64 0:3.14.3-23.3.el6_8

nss-sysinit.x86_64 0:3.36.0-9.el6_10

nss-tools.x86_64 0:3.36.0-9.el6_10

nss-util.x86_64 0:3.36.0-1.el6

pciutils-libs.x86_64 0:3.1.10-4.el6

tcp_wrappers-libs.x86_64 0:7.6-58.el6

Complete!

3. 执行以下命令,关闭防火墙。

/etc/init.d/iptables stop

chkconfig iptables off

4. 执行以下命令,暂停并关闭ACPI服务。

/etc/init.d/acpid stop

chkconfig acpid off

5. 执行以下命令,设置ricci密码。

passwd ricci

显示类似如下信息:

[root@ share001 ~]# passwd ricci

Changing password for user ricci.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

根据显示提示设置ricci密码。

6. 执行以下命令,启动ricci。

/etc/init.d/ricci start

chkconfig ricci on

显示类似如下信息:

7. 执行以下命令,查看云服务器挂载的磁盘。

fdisk -l

chkconfig acpid off

显示类似如下信息:

8. 执行以下命令,新建磁盘挂载目录。

mkdir挂载目录

命令示例:

mkdir /mnt/test

 

9. 执行以下命令,为磁盘创建GFS2分布式文件系统。

mkfs.gfs2 -p lock_dlm -t diskCluster:test -j 4 /dev/sdb

注意:test目录与/dev/sdb为示例,请根据您的配置参数进行设置。

参考1~9,配置另一台云服务器share002
部署luci

1. 使用root用户登录云服务器。

2. 执行以下命令,下载并安装luci集群软件包。

yum install luci

显示类似如下信息:

......

python-webflash.noarch 0:0.1-0.2.a9.el6

python-webhelpers.noarch 0:0.6.4-4.el6

python-webob.noarch 0:0.9.6.1-3.el6

python-webtest.noarch 0:1.2-2.el6

python-zope-filesystem.x86_64 0:1-5.el6

python-zope-interface.x86_64 0:3.5.2-2.1.el6

python-zope-sqlalchemy.noarch 0:0.4-3.el6

Complete!

3. 执行以下命令,关闭防火墙。

/etc/init.d/iptables stop

chkconfig iptables off

4. 执行以下命令,启动luci。

/etc/init.d/luci start

chkconfig luci on

显示类似如下信息:

[root@ share003 ~]# /etc/init.d/luci start

Adding following auto-detected host IDs (IP addresses/domain names), corresponding to ` share003' address, to the configuration of self-managed certificate `/var/lib/luci/etc/cacert.config' (you can change them by editing `/var/lib/luci/etc/cacert.config', removing the generated certificate `/var/lib/luci/certs/host.pem' and restarting luci):

(none suitable found, you can still do it manually as mentioned above)

Generating a 2048 bit RSA private key

writing new private key to '/var/lib/luci/certs/host.pem'

Starting saslauthd: [ OK ]

Start luci... [ OK ]

Point your web browser to https:// share003:8084 (or equivalent) to access luci

[root@ share003 ~]# chkconfig luci on

luci启动成功后,即可以通过管理RHCS集群的web页面来进行集群的相关配置。
集群配置

打开并登录High Availability Management页面。

地址为:https:// share003的公网地址:8084

帐号及密码为创建share003时设置的root帐号及密码

1. 选择“Manage Cluster”,单击【create】创建集群。

2. 在“Create New Cluser”页面,根据页面提示设置以下参数:

o Cluser Name:自定义集群名称,例如,diskCluster。

o Node Name:分别设置计算节点的名称, share001。

o Paasword:安装ricci中设置的ricci密码。

添加完第一个节点的信息后,单击“Add Another Node”添加第二个节点。

3. 本示例在集群中添加了两个节点,具体参数所示。

注意:操作前请确保节点之间已经完成互信配置,并正确配置了hosts。

4. 参数设置完成后,单击“Create Cluster”,开始创建集群。

创建成功后,,两台云服务器均已添加至diskCluster集群中。

5. 选择“Resources”,单击【Add】为集群新建磁盘资源。

6. 在“Add Resource to Cluster”页面,先选择GFS2的资源类型,然后根据页面提示设置以下参数:

o Name:自定义磁盘资源名称,例如,GFS_share。

o Mount Point:安装ricci中设置的磁盘挂载目录,例如,/mnt/test。

o Device,FS Label,or UUID:此处以填写安装ricci中磁盘设备名称为例,例如,/dev/sdb。

o Filesystem Type:此处选择安装ricci中设置的分布式文件系统,例如,GFS2。

本示例添加了名称为GFS_share的磁盘资源,具体参数所示。

7. 参数设置完成后,单击“Submit”,开始创建磁盘资源。

8. 选择“Failover Domains”,单击【Add】为集群服务新建故障切换域。

9. 在“Add Failover Domain to Cluster”页面,根据页面提示设置以下参数:

Name:自定义故障切换域的名称,例如,gfs_failover。

将节点1和节点2添加至故障切换域。

本示例添加了名称为gfs_failover的故障切换域,具体参数所示。

10. 参数设置完成后,单击【Create】,开始创建故障切换域。

11. 选择“Service Groups”,单击【Add】为集群中的节点创建服务组。

在“Add Service Group to Cluster”页面,根据页面提示设置以下参数:

o Service Name:自定义服务组的名称,例如,GFS_SG_VBD_1。

o Failover Domain:选择8中创建的故障切换域,例如,gfs_failover。

o Add Resource:选择5中创建的资源,例如,GFS_share。

本示例添加了名称为GFS_SG_VBD_1的服务组,并添加了GFS_share磁盘资源

创建服务组:

添加GFS_share磁盘资源:

12. 参数设置完成后,单击“Submit”,并选择Start on share001节点,开始为share001创建服务组。

13. 参考11~13,为另一个节点share002创建服务组。

两个服务组都创建成功后,

14. 服务组创建完成后,执行以下步骤,分别查看云服务器share001和share002的集群状况。

以share001为例。

a. 使用root用户登录计算节点。

b. 执行以下命令,查看服务组。

clustat

GFS_SG_VBD_1和GFS_SG_VBD_2即为14中创建的两个服务组。

c. 执行以下命令,查看磁盘分区及挂载信息。

df -h

其中“/dev/sdb”即为共享盘设备名,分区成功并已挂载至“/mnt/test目录下。若分区表里没有设置挂载的共享盘,请执行“mount磁盘设备名称 挂载目录” 命令重新挂载磁盘
验证磁盘共享功能

步骤1

使用root用户登录云服务器share001。

步骤2

在云服务器share001的磁盘挂载目录“/mnt/test”上新建文件,并写入数据

步骤3

使用root用户登录云服务器share002,验证在云服务器share002的磁盘挂载目录“/mnt/test”中是否可以查看到步骤2中创建的文件,

通过云服务器share001添加的文件内容,在云服务器share002中可以看到,内容同步成功。

步骤4

在云服务器share002的磁盘挂载目录“/mnt/test”中写入文件,结果3所示,并验证云服务器share001的磁盘挂载目录“/mnt/test”中是否可以查看到本步骤中创建的文件

图3表明,通过云服务器share002添加文件内容成功;

图4表明,在云服务器share001中可以看到云服务器share002添加的文件内容,内容同步成功。

步骤5

验证在云服务器share001上是否可以修改云服务器share002创建的文件内容,结果5所示。

图5

图5表明,云服务器share001上可以修改云服务器share002创建的文件,修改成功。

步骤6

验证在云服务器share002中是否可以读取步骤5中修改的文件内容

云服务器share002中可以读取到步骤5中修改的文件内容,数据同步、共享成功。

标签