CentOS6.5系统中部署GPFS集群

以下步骤需要多台机器一起执行

1:环境准备:重启机器

# yum install -y compat-libstdc++-33 rpm-build kernel-headers kernel-devel imake gcc-c++  libstdc++ RedHat-lsb
# yum install ksh
# yum update

GPFS下载:https://download.csdn.net/download/feng820724/10324801

2:GPFS安装

# rpm -ivh *.rpm

3:GPFS升级

# rpm -Uvh *.rpm

4:编译GPFS源码

# cd /usr/lpp/mmfs/src/
# make LINUX_DISTRIBUTION=REDHAT_AS_LINUX Autoconfig
# make World
# make InstallImages
# make rpm
生成rpm包,生成路径会有提示
Wrote: /root/rpmbuild/RPMS/x86_64/gpfs.gplbin-2.6.32-696.23.1.el6.x86_64-4.1.1-11.2.x86_64.rpm
# rpm -ivh /root/rpmbuild/RPMS/x86_64/gpfs.gplbin-2.6.32-696.23.1.el6.x86_64-4.1.1-11.2.x86_64.rpm

5:查看GPFS安装情况

# rpm -qa|grep gpfs
gpfs.gpl-3.4.0-21
gpfs.msg.en_US-3.4.0-21
gpfs.gplbin-2.6.18-308.el5-3.4.0-21
gpfs.base-3.4.0-21
gpfs.docs-3.4.0-21

6:配置ssh免**登陆

https://blog.csdn.net/feng820724/article/details/79788583

以下步骤,主机执行
7:配置GPFS环境变量
# echo 'export PATH=$PATH:/usr/lpp/mmfs/bin' >> /etc/profile
# source /etc/profile
查看是否有mmfs系列命令
CentOS6.5系统中部署GPFS集群CentOS6.5系统中部署GPFS集群CentOS6.5系统中部署GPFS集群CentOS6.5系统中部署GPFS集群CentOS6.5系统中部署GPFS集群CentOS6.5系统中部署GPFS集群
8:创建集群
(1):配置GPFS Cluster节点
# vi /tmp/gpfs.node
Demo:quorum-manager
SinoDB:quorum-manager
gpfs.node文件中有两行内容,每行内容的第一项为所使用机器的主机名,第二项为配置项,包括quorum节点的指定和manager节点的指定
(2):创建GPFS 集群
# mmcrcluster -n /tmp/gpfs.node -p SinoDB -s Demo -r /usr/bin/ssh -R /usr/bin/scpCentOS6.5系统中部署GPFS集群
如果创建失败,可以在目标机(SinoDB)上,执行以下命令:
# mmdelnode -f
(3):查看GPFS集群
# mmlscluster
CentOS6.5系统中部署GPFS集群
(4):许可配置
# mmchlicense server --accept -N Demo,SinoDB

CentOS6.5系统中部署GPFS集群

服务节点或quorum节点用server,其它节点用client,client节点只有挂载文件系统的权限,不能更改配置。命令如:
# mmchlicense client --accept -N host_a,host_b
9:启动GPFS 集群
(1):启动GPFS 集群
# mmstartup -a
(2):查看GPFS集群情况
# mmgetstate -Lsa
CentOS6.5系统中部署GPFS集群
(3):查看日志信息
# cat /var/adm/ras/mmfs.log.latest
10:创建nsd盘
(1):我们现在使用的是VM,每台机器上都已经安装了GPFS软件,但由于两台机器都只有系统盘,而GPFS需要独立分区来支持文件系统,所以我们接下来要在这两台机器上使用dd命令来建立虚拟的磁盘(用文件模拟磁盘):
# cd
# mkdir data
# cd data
# touch disk1
在SinoDB机器上创建disk1
    # dd if=/dev/zero of=disk1 bs=1M count=1000
在Demo机器上创建/data/disk2
    # dd if=/dev/zero of=disk2 bs=1M count=1000
如果使用真实机器,可以使用以下命令查看独立分区情况
https://blog.csdn.net/feng820724/article/details/79803690
    # fdisk -l /dev/sdb
CentOS6.5系统中部署GPFS集群
(2):编辑nsd配置
# vi /tmp/nsd.node
模拟磁盘:
        /root/data/disk1:SinoDB::dataAndMetadata:1:nsd1:
        /root/data/disk2:Demo::dataAndMetadata:1:nsd2:
独立分区
/dev/sdb1:Demo::dataAndMetadata:1:nsd1:
/dev/sdb2:Demo::dataAndMetadata:1:nsd2:
/dev/sdb1:SinoDB::dataAndMetadata:1:nsd3:
/dev/sdb2:SinoDB::dataAndMetadata:1:nsd4:
(3):创建nsd
# mmcrnsd -F /tmp/nsd.node -v no
(4):查看nsd信息
# mmlsnsd -m
CentOS6.5系统中部署GPFS集群
(5):查看配置文件
# cat /tmp/nsd.node
CentOS6.5系统中部署GPFS集群
11:配置仲裁盘:仲裁盘作用,当定义的仲裁盘有一半的磁盘不可用时,该集群不可用。有效磁盘数小于等于整个磁盘数一半时,整个文件系统不可用
# mmchconfig tiebreakerDisks="nsd1;nsd2;nsd3"
12:创建GPFS文件系统
# mmcrfs /gpfs1 /dev/gpfs1 -F /tmp/nsdfile -A yes -B 512k -m 1 -M 2 -r 1 -R 2
CentOS6.5系统中部署GPFS集群
  1. mmcrfs 命令的参数含义如下:
    1. /gpfs1:文件系统 mount 点名称
    2. /dev/gpfs1:指定文件系统 lv 名称
    3. -F:指定 NSD 的文件名
    4. -A:自动 mount 选项为 yes
    5. -B:块大小为512K
  2. 可以在多台机器上使用以下命令查看当前操作系统内的文件设备
# cat /etc/fstab
CentOS6.5系统中部署GPFS集群
13:挂载文件系统
  1. 通过如下命令挂载gpfs1文件系统
# mount /gpfs1
  1. 查看GPFS集群的状态信息
# mmlsconfig
CentOS6.5系统中部署GPFS集群
14:开机自启动

# mmchconfig autoload=yes