CentOS7安装GPFS4.2详细教程及遇到的问题解决

GPFS(General Parallel File System ,GPFS) 是 IBM 公司第一个共享文件系统,起源于 IBM SP 系统上使用的虚拟共享磁盘技术( VSD )。作为这项技术的核心, GPFS 是一个并行的磁盘文件系统,它保证在资源组内的 所有节点可以并行访问整个文件系统;而且针对此文件系统的服务操作,可以同时安全地在 使用此文件系统的多个节点上实现。 GPFS 允许客户共享文件,而这些文件可能分布在不同节点的不同硬盘上;它提供了许多标准的 UNIX 文件系统接口,允许应用不需修改或者重新编辑就可以在其上运行。——引自百度词条
需要安装GPFS文件系统的对其好处应该已经了解很多了,在这里就不再赘述。下面开始我们的安装过程

1 安装环境需求

安装GPFS文件系统需要很多安装包。笔者的环境的CentOS7,内核版本为3.10.0-693.el7.x86_64。
yum -y install make perl rsh ld-linux.so libm.so.6 libc.so.6 ksh libstdc++.so.5 rsh-server rpcbind xinetd libaio cpp gcc-c++ gcc nfs-utils kernel-headers kernel-devel compat-libstdc++ glibc-devel libXp.so.6 imake rpm-build rpm-build redhat-lsb


2 GPFS安装

2.1 准备GPFS安装包

linux版的GPFS软件可以到这个地方下载https://download.csdn.net/download/lovesteed/10325141
这个软件包里包含了GPFS软件的所有所需要的包,而且集成了linux内核版本为3.10.0-693.21.1.el7.x86_64的编译过的安装包,如果大家的内核与其相同的话就可以跳过蛋疼的编译环节。安装完base包后,直接安装内核包就行了。当然,如果不是的话,那就和笔者一起来学习如何安装配置吧。

2.2 GPFS基础包安装

这个比较简单但是所有的服务器都要安装。所以,先把软件包上传到各个服务器吧。
我们来看一下软件包及结构


首先打开base文件夹,敲入命令 rpm -ivh gpfs.*.rpm
rpm -ivh gpfs.*.rpm

这个命令有可能会出错。如果出错了,那就先用命令rpm -qa|grep gpfs查看安装了那些包了,然后使用命令rpm -e --nodeps 软件名删除所有包。重新,老老实实的一个一个按顺序安装。

rpm -ivh gpfs.base-4.1.1-0.x86_64.rpm  (必要)
rpm -ivh gpfs.docs-4.1.1-0.noarch.rpm   (必要)
rpm -ivh gpfs.gpl-4.1.1-0.noarch.rpm   (必要)
rpm -ivh gpfs.msg.en_US-4.1.1-0.noarch.rpm  (必要)
rpm -ivh gpfs.gskit-8.0.50-40.x86_64.rpm  (非必要)
rpm -ivh gpfs.ext-4.1.1-0.x86_64.rpm  (非必要)

使用命令rpm -qa|grep gpfs查看是否安装完成。

2.3 GPFS升级包安装

同样所有的服务器都要安装
如果你的linux内核版本是3.10.0-693.21.1.el7.x86_64那么恭喜你,你就可以跳过这一步骤,直接用前面提到的软件包里的已经编译好的rpm包。
安装命令rpm -Uvh gpfs.*.rpm

rpm -Uvh gpfs.*.rpm

你也可以一个一个的安装。

rpm -Uvh gpfs.base-4.1.1-11.2.x86_64.update.rpm  (必要)
rpm -Uvh gpfs.docs-4.1.1-11.2.noarch.rpm   (必要)     
rpm -Uvh gpfs.gpl-4.1.1-11.2.noarch.rpm (必要)
rpm -Uvh gpfs.msg.en_US-4.1.1-11.2.noarch.rpm (必要)
rpm -Uvh gpfs.gskit-8.0.50-47.x86_64.rpm  (非必要)
rpm -Uvh gpfs.ext-4.1.1-11.2.x86_64.update.rpm  (非必要)  

使用命令rpm -qa|grep gpfs查看是否安装完成。

2.4 编译GPFS源码

这一步是笔者的噩梦,遇到了N多的问题,希望读者不会像我这么苦逼。
首先,打开GPFS的目录
cd /usr/lpp/mmfs/src/
执行命令 make LINUX_DISTRIBUTION=REDHAT_AS_LINUX Autoconfig


如果你的输出和笔者一样,不要惊慌,这不一定是问题。如果你的输出比笔者多。那么就要看看后面输出的是什么错误了。
接着执行命令make World

执行出错

这里就出错了,这种错误一般是因为内核问题。我们进入出错提示目录cd /usr/src/kernels/ 发现其有两个内核


其中3.10.0-693.el7.x86_64为我安装系统时的内核,3.10.0-693.21.1.el7.x86_64为我刚开始时执行yum -y install kernel-devel命令时安装的内核,我们只需把老的内核删除掉,把新的内核重命名为老内核的名字就行。

rm -rf 3.10.0-693.el7.x86_64      #删除老内核
mv -f 3.10.0-693.21.1.el7.x86_64 3.10.0-693.el7.x86_64  重命名新内核

更换内核文件

我们去/usr/lpp/mmfs/src/config/目录下的编辑env.mcr文件 vim env.mcr,将末尾的/build去掉
修改前的env.mcr

修改后的env.mcr

重新执行make LINUX_DISTRIBUTION=REDHAT_AS_LINUX Autoconfig
接着执行 make World

唉!又出错了!!!
解决方案
根据错误提示,编辑文件 vim /usr/lpp/mmfs/src/gpl-linux/kdump.c
添加语句:unsigned long page_offset_base;


重新执行 make World, 结果完美!

继续执行命令 :make InstallImagesmake rpm
image.png

完美生成安装包,我们进入如图所示的目录,安装该rpm包.把该安装包发给其他服务器并安装。
rpm -ivh gpfs.gplbin-3.10.0-693.21.1.el7.x86_64-4.1.1-11.2.x86_64.rpm
最后不要忘了添加PATH路径
vim /etc/profile
在结尾添加一句export PATH=$PATH:/usr/lpp/mmfs/bin
执行 source /etc/profile

3 配置ssh免秘钥访问集群

这一节,不是重点,简单说一下命令。也可以配置rsh免密钥,且gpfs默认是使用rsh密钥登陆远端主机
首先修改hosts文件,把你的节点名和IP对应起来
vi /etc/hosts


配置免秘钥

cd /root/.ssh/
ssh-keygen -t rsa     #在主服务器创建秘钥
cp id_rsa.pub authorized_keys 
scp -r /root/.ssh root@你的节点名或者IP地址:/root  #超拷贝到其他所有服务器上

4 配置GPFS文件系统

此处建议先配置两台服务器,这样即使出错,也只用回复两台服务器就可以。其他服务器是可以后续添加进来了。笔者这里先配置两台服务器。

4.1 创建集群

/tmp下创建集群配置文件gpfsfile
vim /tmp/gpfsfile

node57:quorum-manager 
node56:quorum-manager

创建集群
mmcrcluster -N /tmp/gpfsfile -p node57 -s node56 -C gpfs -r /usr/bin/ssh -R /usr/bin/scp
mmcrcluster 命令其中参数含义

-C bgbcrun 设定集群名称
-U bgbc 定义域名
-N /tmp/gpfs/nodefile 指定节点文件名
-p 指定主NSD服务器
-s 指定备NSD服务器
-r和-R都是通信协议

4.2 授权

mmchlicense server --accept -N node57,node56

4.3 配置NSD盘

查看当前服务器分区fdisk -l /dev/sda

分区图

笔者各个节点都是一样的分区,只看一个就行,如果有不同的,就要挨个查看,以确定挂载点。
编辑NSD配置
/tmp下创建集群配置文件nsdfile
vim /tmp/nsdfile

/dev/sda2:node57::dataAndMetadata:01:
/dev/sda2:node56::dataAndMetadata:02:

生成NSD文件
执行命令mmcrnsd -F /tmp/nsdfile -v no
查看生成文件cat /tmp/nsdfile

# /dev/sda1:node57::dataAndMetadata:01:
gpfs1nsd:::dataAndMetadata:01::system 
# /dev/sdb2:node56::dataAndMetadata:02: 
gpfs2nsd:::dataAndMetadata:02::system

4.4 配置仲裁判

执行命令mmchconfig tiebreakerDisks="gpfs1nsd;gpfs2nsd"

Verifying GPFS is stopped on all nodes ...  
mmchconfig: Command successfully completed  
mmchconfig: Propagating the clusterconfiguration data to all affected nodes.  
This is anasynchronous process. 

4.5 启动集群

执行命令mmstartup -a
查看集群状态mmgetstate -a

4.5 创建GPFS文件系统

执行命令mmcrfs gpfs -F /tmp/nsdfile -B 256K -A yes -m 2 -r 2 -j gpfs -T /gpfs -v no

参数含义如下:

gpfs 文件系统 mount 点名
-F 指定 NSD 的文件名
-A 自动 mount 选项为 yes
-m 最大元数据副本
-r 默认的数据副本
-B 块大小为256K
-j 集群名
-T 挂载点
-v 校验建立磁盘是否已有文件系统 为否

4.5 挂载文件

执行mmmount /gpfs -a
安装配置完成~~!

5 尾声

可以设置开机自启动 mmchconfig autoload=yes
或者在/etc/rc.local 中添加:/usr/lpp/mmfs/bin/mmstartup -a
至于添加其他节点及节点上的磁盘的方法,笔者后期会补上。不过这个很简单,网上教程很多。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,590评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,808评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,151评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,779评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,773评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,656评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,022评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,678评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,038评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,756评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,411评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,005评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,973评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,053评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,495评论 2 343

推荐阅读更多精彩内容