1、配置主机hosts
10.172.90.151 test1
10.172.90.152 test2
10.172.90.153 test3
192.168.90.151 test1priv
192.168.90.152 test2priv
192.168.90.153 test3priv
2、网卡配置文件模板
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
HWADDR=XX:XX:XX:XX:66:9F
IPADDR=192.168.90.151
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth1"
LAST_CONNECT=1583051777
3、配置主机内核参数
[root@test1 ~]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 320000 100 4096
net.core.rmem_default = 262144
net.core.rmem_max = 41944304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
vm.swappiness = 0
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5
net.ipv4.ip_local_port_range = 9000 65500
[root@test1 ~]#
4、配置yum源(详细略)
echo 'multilib_policy=all' >> /etc/yum.conf
5、安装rpm包
yum -y install gcc*
yum -y install gcc-c++
yum -y install kernel-devel
yum -y install gcc-c++
yum -y install gcc*
yum -y install pam*
yum -y install libstdc++.so.5
yum -y install compat-lib*
yum -y install pam.so
yum -y install pam.so*
yum -y install libpam.so*
yum -y install compat-libstdc++-33*
yum -y install rpm-build
yum -y install kernel-headers.x86_64
yum -y install kernel-devel*
yum -y install imake.x86_64
yum -y install gcc-c++.x86_64
yum -y install libstdc++
yum -y install redhat-lsb
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
yum -y install m4*
6、配置互信(略)
7、安装gpfs包
yum -y install gpfs.msg.en_US-4.1.1-0.noarch.rpm
yum -y install gpfs.docs-4.1.1-0.noarch.rpm
yum -y install gpfs.gskit-8.0.50-40.x86_64.rpm
yum -y install gpfs.base-4.1.1-0.x86_64.rpm
yum -y install gpfs.gpl-4.1.1-0.noarch.rpm
yum -y install gpfs.ext-4.1.1-0.x86_64.rpm
8、编译
cd /usr/lpp/mmfs/src
export SHARKCLONEROOT=/usr/lpp/mmfs/src
make Autoconfig
echo $?
make World
echo $?
make InstallImages
echo $?
echo $?
详细输出
[root@test1 ~]# ./server_t/db2/linuxamd64/gpfs/installGPFS -i
4.1.1.17
4.1.1.17
0
0
4.1.1.17
4.1.1.17
0
0
4.1.1.17
4.1.1.17
0
0
4.1.1.17
4.1.1.17
0
0
GPFS version 4.1.1.17.0 is currently installed on the system.
DBI1070I Program installGPFS completed successfully.
[root@test1 ~]# cd /usr/lpp/mmfs/src
[root@test1 src]# export SHARKCLONEROOT=/usr/lpp/mmfs/src
[root@test1 src]# make Autoconfig
cd /usr/lpp/mmfs/src/config; ./configure --genenvonly; if [ $? -eq 0 ]; then /usr/bin/cpp -P def.mk.proto > ./def.mk; exit $? || exit 1; else exit $?; fi
[root@test1 src]# echo $?
0
[root@test1 src]# make World
Verifying that tools to build the portability layer exist....
cpp present
gcc present
g++ present
ld present
cd /usr/lpp/mmfs/src/config; /usr/bin/cpp -P def.mk.proto > ./def.mk; exit $? || exit 1
rm -rf /usr/lpp/mmfs/src/include /usr/lpp/mmfs/src/bin /usr/lpp/mmfs/src/lib
mkdir /usr/lpp/mmfs/src/include /usr/lpp/mmfs/src/bin /usr/lpp/mmfs/src/lib
rm -f //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver
cleaning (/usr/lpp/mmfs/src/ibm-kxi)
make[1]: Entering directory `/usr/lpp/mmfs/src/ibm-kxi'
rm -f trcid.h ibm_kxi.trclst
rm -f install.he; \
for i in cxiTypes.h cxiSystem.h cxi2gpfs.h cxiVFSStats.h cxiCred.h cxiIOBuffer.h cxiSharedSeg.h cxiMode.h Trace.h cxiMmap.h cxiAtomic.h cxiTSFattr.h cxiAclUser.h
cxiLinkList.h cxiDmapi.h Dynassert.h LockNames.h lxtrace.h cxiGcryptoDefs.h DirIds.h; do \
(set -x; rm -f -r /usr/lpp/mmfs/src/include/cxi/$i) done
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiTypes.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiSystem.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxi2gpfs.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiVFSStats.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiCred.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiIOBuffer.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiSharedSeg.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiMode.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/Trace.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiMmap.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiAtomic.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiTSFattr.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiAclUser.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiLinkList.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiDmapi.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/Dynassert.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/LockNames.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/lxtrace.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/cxiGcryptoDefs.h
+ rm -f -r /usr/lpp/mmfs/src/include/cxi/DirIds.h
make[1]: Leaving directory `/usr/lpp/mmfs/src/ibm-kxi'
cleaning (/usr/lpp/mmfs/src/ibm-linux)
make[1]: Entering directory `/usr/lpp/mmfs/src/ibm-linux'
rm -f install.he; \
for i in cxiTypes-plat.h cxiSystem-plat.h cxiIOBuffer-plat.h cxiSharedSeg-plat.h cxiMode-plat.h Trace-plat.h cxiAtomic-plat.h cxiMmap-plat.h cxiVFSStats-plat.h
cxiCred-plat.h cxiDmapi-plat.h; do \
(set -x; rm -rf /usr/lpp/mmfs/src/include/cxi/$i) done
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiTypes-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiSystem-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiIOBuffer-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiSharedSeg-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiMode-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/Trace-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiAtomic-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiMmap-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiVFSStats-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiCred-plat.h
+ rm -rf /usr/lpp/mmfs/src/include/cxi/cxiDmapi-plat.h
make[1]: Leaving directory `/usr/lpp/mmfs/src/ibm-linux'
cleaning (/usr/lpp/mmfs/src/gpl-linux)
make[1]: Entering directory `/usr/lpp/mmfs/src/gpl-linux'
Pre-kbuild step 1...
/usr/bin/make -C /lib/modules/2.6.32-358.el6.x86_64/build M=/usr/lpp/mmfs/src/gpl-linux clean
make[2]: Entering directory `/usr/src/kernels/2.6.32-358.el6.x86_64'
make[2]: Leaving directory `/usr/src/kernels/2.6.32-358.el6.x86_64'
rm -f -f /lib/modules/`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`/extra/tracedev.ko
rm -f -f /lib/modules/`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`/extra/mmfslinux.ko
rm -f -f /lib/modules/`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`/extra/mmfs26.ko
rm -f -f /usr/lpp/mmfs/src/../bin/lxtrace-`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`
rm -f -f /usr/lpp/mmfs/src/../bin/kdump-`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`
rm -f -f *.o .depends .*.cmd *.ko *.a *.mod.c core *_shipped *map *mod.c.saved *.symvers *.ko.ver ./*.ver install.he
rm -f -rf .tmp_versions kdump-kern-dwarfs.c
rm -f -f gpl-linux.trclst kdump lxtrace
rm -f -rf usr
make[1]: Leaving directory `/usr/lpp/mmfs/src/gpl-linux'
for i in ibm-kxi ibm-linux gpl-linux ; do \
(cd $i; echo "installing header files" "(`pwd`)"; \
/usr/bin/make DESTDIR=/usr/lpp/mmfs/src Headers; \
exit $?) || exit 1; \
done
installing header files (/usr/lpp/mmfs/src/ibm-kxi)
make[1]: Entering directory `/usr/lpp/mmfs/src/ibm-kxi'
Making directory /usr/lpp/mmfs/src/include/cxi
+ /usr/bin/install cxiTypes.h /usr/lpp/mmfs/src/include/cxi/cxiTypes.h
+ /usr/bin/install cxiSystem.h /usr/lpp/mmfs/src/include/cxi/cxiSystem.h
+ /usr/bin/install cxi2gpfs.h /usr/lpp/mmfs/src/include/cxi/cxi2gpfs.h
+ /usr/bin/install cxiVFSStats.h /usr/lpp/mmfs/src/include/cxi/cxiVFSStats.h
+ /usr/bin/install cxiCred.h /usr/lpp/mmfs/src/include/cxi/cxiCred.h
+ /usr/bin/install cxiIOBuffer.h /usr/lpp/mmfs/src/include/cxi/cxiIOBuffer.h
+ /usr/bin/install cxiSharedSeg.h /usr/lpp/mmfs/src/include/cxi/cxiSharedSeg.h
+ /usr/bin/install cxiMode.h /usr/lpp/mmfs/src/include/cxi/cxiMode.h
+ /usr/bin/install Trace.h /usr/lpp/mmfs/src/include/cxi/Trace.h
+ /usr/bin/install cxiMmap.h /usr/lpp/mmfs/src/include/cxi/cxiMmap.h
+ /usr/bin/install cxiAtomic.h /usr/lpp/mmfs/src/include/cxi/cxiAtomic.h
+ /usr/bin/install cxiTSFattr.h /usr/lpp/mmfs/src/include/cxi/cxiTSFattr.h
+ /usr/bin/install cxiAclUser.h /usr/lpp/mmfs/src/include/cxi/cxiAclUser.h
+ /usr/bin/install cxiLinkList.h /usr/lpp/mmfs/src/include/cxi/cxiLinkList.h
+ /usr/bin/install cxiDmapi.h /usr/lpp/mmfs/src/include/cxi/cxiDmapi.h
+ /usr/bin/install Dynassert.h /usr/lpp/mmfs/src/include/cxi/Dynassert.h
+ /usr/bin/install LockNames.h /usr/lpp/mmfs/src/include/cxi/LockNames.h
+ /usr/bin/install lxtrace.h /usr/lpp/mmfs/src/include/cxi/lxtrace.h
+ /usr/bin/install cxiGcryptoDefs.h /usr/lpp/mmfs/src/include/cxi/cxiGcryptoDefs.h
+ /usr/bin/install DirIds.h /usr/lpp/mmfs/src/include/cxi/DirIds.h
touch install.he
make[1]: Leaving directory `/usr/lpp/mmfs/src/ibm-kxi'
installing header files (/usr/lpp/mmfs/src/ibm-linux)
make[1]: Entering directory `/usr/lpp/mmfs/src/ibm-linux'
+ /usr/bin/install cxiTypes-plat.h /usr/lpp/mmfs/src/include/cxi/cxiTypes-plat.h
+ /usr/bin/install cxiSystem-plat.h /usr/lpp/mmfs/src/include/cxi/cxiSystem-plat.h
+ /usr/bin/install cxiIOBuffer-plat.h /usr/lpp/mmfs/src/include/cxi/cxiIOBuffer-plat.h
+ /usr/bin/install cxiSharedSeg-plat.h /usr/lpp/mmfs/src/include/cxi/cxiSharedSeg-plat.h
+ /usr/bin/install cxiMode-plat.h /usr/lpp/mmfs/src/include/cxi/cxiMode-plat.h
+ /usr/bin/install Trace-plat.h /usr/lpp/mmfs/src/include/cxi/Trace-plat.h
+ /usr/bin/install cxiAtomic-plat.h /usr/lpp/mmfs/src/include/cxi/cxiAtomic-plat.h
+ /usr/bin/install cxiMmap-plat.h /usr/lpp/mmfs/src/include/cxi/cxiMmap-plat.h
+ /usr/bin/install cxiVFSStats-plat.h /usr/lpp/mmfs/src/include/cxi/cxiVFSStats-plat.h
+ /usr/bin/install cxiCred-plat.h /usr/lpp/mmfs/src/include/cxi/cxiCred-plat.h
+ /usr/bin/install cxiDmapi-plat.h /usr/lpp/mmfs/src/include/cxi/cxiDmapi-plat.h
touch install.he
make[1]: Leaving directory `/usr/lpp/mmfs/src/ibm-linux'
installing header files (/usr/lpp/mmfs/src/gpl-linux)
make[1]: Entering directory `/usr/lpp/mmfs/src/gpl-linux'
Making directory /usr/lpp/mmfs/src/include/gpl-linux
+ /usr/bin/install Shark-gpl.h /usr/lpp/mmfs/src/include/gpl-linux/Shark-gpl.h
+ /usr/bin/install prelinux.h /usr/lpp/mmfs/src/include/gpl-linux/prelinux.h
+ /usr/bin/install postlinux.h /usr/lpp/mmfs/src/include/gpl-linux/postlinux.h
+ /usr/bin/install linux2gpfs.h /usr/lpp/mmfs/src/include/gpl-linux/linux2gpfs.h
+ /usr/bin/install verdep.h /usr/lpp/mmfs/src/include/gpl-linux/verdep.h
+ /usr/bin/install Logger-gpl.h /usr/lpp/mmfs/src/include/gpl-linux/Logger-gpl.h
+ /usr/bin/install arch-gpl.h /usr/lpp/mmfs/src/include/gpl-linux/arch-gpl.h
+ /usr/bin/install oplock.h /usr/lpp/mmfs/src/include/gpl-linux/oplock.h
touch install.he
make[1]: Leaving directory `/usr/lpp/mmfs/src/gpl-linux'
make[1]: Entering directory `/usr/lpp/mmfs/src/gpl-linux'
Pre-kbuild step 1...
Pre-kbuild step 2...
touch install.he
Invoking Kbuild...
/usr/bin/make -C /lib/modules/2.6.32-358.el6.x86_64/build ARCH=x86_64 M=/usr/lpp/mmfs/src/gpl-linux CONFIGDIR=/usr/lpp/mmfs/src/config ; \
if [ $? -ne 0 ]; then \
exit 1;\
fi
make[2]: Entering directory `/usr/src/kernels/2.6.32-358.el6.x86_64'
LD /usr/lpp/mmfs/src/gpl-linux/built-in.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/kdump-stub.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/mmfsmod.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/cfiles_cust.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/ss_x86_64.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/tracelin.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/tracedev-ksyms.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/ktrccalls.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/relaytrc.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/tracedev.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/mmfs26.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/mmfslinux.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dummy.o
CC [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dwarfs.o
HOSTCC /usr/lpp/mmfs/src/gpl-linux/lxtrace.o
HOSTCC /usr/lpp/mmfs/src/gpl-linux/lxtrace_rl.o
HOSTCC /usr/lpp/mmfs/src/gpl-linux/overwrite.o
HOSTLD /usr/lpp/mmfs/src/gpl-linux/lxtrace
Building modules, stage 2.
MODPOST 5 modules
CC /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dummy.mod.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dummy.ko.unsigned
NO SIGN [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dummy.ko
CC /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dwarfs.mod.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dwarfs.ko.unsigned
NO SIGN [M] /usr/lpp/mmfs/src/gpl-linux/kdump-kern-dwarfs.ko
CC /usr/lpp/mmfs/src/gpl-linux/mmfs26.mod.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/mmfs26.ko.unsigned
NO SIGN [M] /usr/lpp/mmfs/src/gpl-linux/mmfs26.ko
CC /usr/lpp/mmfs/src/gpl-linux/mmfslinux.mod.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/mmfslinux.ko.unsigned
NO SIGN [M] /usr/lpp/mmfs/src/gpl-linux/mmfslinux.ko
CC /usr/lpp/mmfs/src/gpl-linux/tracedev.mod.o
LD [M] /usr/lpp/mmfs/src/gpl-linux/tracedev.ko.unsigned
NO SIGN [M] /usr/lpp/mmfs/src/gpl-linux/tracedev.ko
make[2]: Leaving directory `/usr/src/kernels/2.6.32-358.el6.x86_64'
cc -g0 -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-exceptions -fPIC -I. -I/usr/lpp/mmfs/src/../include -I/usr/lpp/mmfs/src/include -
I/usr/lpp/mmfs/src/include/cxi -I/usr/lpp/mmfs/src/include/gpl-linux -I/usr/include -DGPFS_ARCH_X86_64 -D__64BIT__ -DGPFS_LITTLE_ENDIAN -DAPI_32BIT -
DGPFS_IEEE754_FLOAT -D__USE_BSD -D_LARGEFILE64_SOURCE -DGPFS_LINUX -DYESSTR=__YESSTR -DNOSTR=__NOSTR -DSSEG_SWIZZLE_PTRS -DCTDB -DGANESHA -DP_NFS4 -DRDMA_SUPPORT -
DREDHAT_AS_LINUX -DGPL_KBUILD -DLARGE_MEM_POOL -DLINUX_KERNEL_VERSION=20632358 -DLIMIT_KSTACKS -DAIXPR -DDELSNAP_BLOCK_MOVE -DDESCQUORUM_OVERRIDE -DDISK_LEASE_DMS -
DDMAPI_MOVERS -DDMAPI_PREFETCH_DIRATTRS -DDMAPI_SYNC_DESTROY_EVENT -DEE_WATCHDOG_START -DEASY_CONFIG -DENABLE_IMMUTABLE_FILES -DENABLE_IMMUTABLE_FILES_externals -
DEXPORTER_EVENTS -DFASTEA -DFILESETMAPPING_API -DFSCK_INSTRUMENT -DGLOBAL_RESTORE_READY -DGPFS_CACHE -DPCACHE_ENABLED -DPCACHE_PARTIAL -DPCACHE_GW_QUEUE_TRANSFER -
DGPFS_CACHE_ASYNC -DSNAP_TYPE -DGPFS_SNC -DPOOL_PROPERTIES -DGPFS_SNC_LGTV -DLC_FENCING -DLINUXPR -DPR_4_IPV6 -DPERCPU_BUFFER_TRACE_ONAIX -DDIFF_METADATA_BLOCK_SIZE
-DMMPMON -DMMPMON_CUMULATIVE -DMMPMON_DAEMON_PORT -DMMPMON_HISTOGRAMS -DMMPMON_NAMED_SOCKET -DNFS4_ACL -DNFS4_ACL_AUDIT -DNFS4_VCM -DPDEFRAG -DPERF_STATS -
DPOLICY_RESTORE -DPOW2_COND_SHIFT -DPTH_DISABLE_CANCELLATION -DSANERGY -DSFS_PERF_USE_SMALL_BUFFER -DSHELL_CALLBACK -DSIDMAPPING -DSMB_LOCKS -DUIDREMAP -
DUSER_EXIT_ENTENSIONS -DNEW_PFSCK -DDISKEA -DDISKEA_OVERFLOW -DRESTORE_DMAPI -DCLONE_FILE -DPARALLEL_DIRCHECK -DPER_FILESET_QUOTA -DFILESET_CMD_PERM -DDISKEA_ISHARE -
DSTOP_QUOTAFILE_SNAPSHOT -DVDISK -DSTRIPED_LOGS -DBIG_LOGS -DDYNASSERTS -DDYNASSERTS_FULL -DTRIGGERS -DPFSCK_V2 -DFSCK_REPLICA_REPAIR -DFILEHEAT -DPIE -
DLIGHT_WEIGHT_EVENT -DCSTORE -DBUFMGR_SCATTER -DDATA_IN_INODE -DMULTI_ACTIVE_IALLOC_SEGMENTS -DPLACEMENT_SETXATTR -DQLEN_AWARE_SCHED -DGPFS_ENC -DENC_BUFPOOL -
DSQLITE_PRESENT -DGPFS_CRYPTO_KERNELPATH -DFAILURE_DOMAINS -DAUTHONLY_DYN_SWITCH -DRGCM_BACKPORT -DIEXPAND_V2 -DQOSIO -DMESSAGE_LOGGING -DCCR -DCCR_SEC -DCES -
DLOG_WRITE_DATA -DPREFETCH_FCNTL_TOKENS -DRAPID_REPAIR -DDIR_V2 -DEXTLUM -DTSCOMM_SECURITY_GSKIT -DTS_RPC_PERF -DGPT_NSD -DDISK_4K_SECTOR -DDISK_4K_NATIVE -
DQUOTA_ONLINE_MANAGEMENT_CHANGE -DCHANGE_LOG_SIZE -DPER_POOL_BLOCKMAP_TYPE_FIX -DQUOTA_ONLINE_PERFILESET_CHANGE -DFILESET_COMPLIANCE_PLUS_SEMANTICS -DTM_DYN_MALLOC -
DGEN_NODE_UID -DZIMON -DLROC -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR()" -I/usr/lpp/mmfs/src/gpl-linux -c kdump.c
cc kdump.o kdump-kern.o kdump-kern-dwarfs.o -o kdump -lpthread
make[1]: Leaving directory `/usr/lpp/mmfs/src/gpl-linux'
for i in ibm-kxi ibm-linux gpl-linux; do \
(cd $i; echo "installing" "(`pwd`)"; \
/usr/bin/make DESTDIR=/usr/lpp/mmfs/src install; \
exit $?) || exit 1; \
done
installing (/usr/lpp/mmfs/src/ibm-kxi)
make[1]: Entering directory `/usr/lpp/mmfs/src/ibm-kxi'
touch install.he
make[1]: Leaving directory `/usr/lpp/mmfs/src/ibm-kxi'
installing (/usr/lpp/mmfs/src/ibm-linux)
make[1]: Entering directory `/usr/lpp/mmfs/src/ibm-linux'
touch install.he
make[1]: Leaving directory `/usr/lpp/mmfs/src/ibm-linux'
installing (/usr/lpp/mmfs/src/gpl-linux)
make[1]: Entering directory `/usr/lpp/mmfs/src/gpl-linux'
/usr/bin/install -c -m 0500 lxtrace /usr/lpp/mmfs/src/bin/lxtrace-`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`
/usr/bin/install -c -m 0500 kdump /usr/lpp/mmfs/src/bin/kdump-`cat //usr/lpp/mmfs/src/gpl-linux/gpl_kernel.tmp.ver`
make[1]: Leaving directory `/usr/lpp/mmfs/src/gpl-linux'
[root@test1 src]# echo $?
0
[root@test1 src]# make InstallImages
(cd gpl-linux; /usr/bin/make InstallImages; \
exit $?) || exit 1
make[1]: Entering directory `/usr/lpp/mmfs/src/gpl-linux'
Pre-kbuild step 1...
make[1]: Leaving directory `/usr/lpp/mmfs/src/gpl-linux'
[root@test1 src]# echo $?
0
[root@test1 src]# echo $?
0
9、设置环境变量
cp /etc/profile /etc/profile.bak
echo "export PATH=\${PATH}:/usr/lpp/mmfs/bin" >> /etc/profile
source /etc/profile
10、配置ntp服务器10.172.90.200(详细略),在集群上安装ntp客户端
[root@test1 ~]# yum -y install ntp
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Package ntp-4.2.4p8-3.el6.x86_64 already installed and latest version
Nothing to do
[root@test1 ~]# ntpdate 10.172.90.200
1 Mar 17:09:50 ntpdate[3027]: step time server 10.172.90.200 offset 596.841178 sec
[root@test2 ~]# ntpdate 10.172.90.200
1 Mar 17:09:52 ntpdate[3030]: adjust time server 10.172.90.200 offset 0.000025 sec
[root@test3 ~]# ntpdate 10.172.90.200
1 Mar 17:09:54 ntpdate[3031]: adjust time server 10.172.90.200 offset -0.000023 sec
11、建集群
[root@test1 ~]# mmcrcluster -N test1priv:manager-quorum,test2priv:manager-quorum,test3priv:manager-quorum -p test1priv -s test2priv -r /usr/bin/ssh -R /usr/bin/scp
mmcrcluster: Performing preliminary node verification ...
mmcrcluster: Processing quorum and other critical nodes ...
mmcrcluster: Finalizing the cluster data structures ...
mmcrcluster: Command successfully completed
mmcrcluster: Warning: Not all nodes have proper GPFS license designations.
Use the mmchlicense command to designate licenses as needed.
mmcrcluster: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.
[root@test1 ~]#
12、接受license
[root@test1 ~]# mmchlicense server --accept -N test1priv,test2priv,test3priv
The following nodes will be designated as possessing server licenses:
test1priv
test2priv
test3priv
mmchlicense: Command successfully completed
mmchlicense: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.
[root@test1 ~]# mmlscluster
GPFS cluster information
========================
GPFS cluster name: test1priv
GPFS cluster id: 14491606737919639429
GPFS UID domain: test1priv
Remote shell command: /usr/bin/ssh
Remote file copy command: /usr/bin/scp
Repository type: CCR
Node Daemon node name IP address Admin node name Designation
----------------------------------------------------------------------
1 test1priv 192.168.90.151 test1priv quorum-manager
2 test2priv 192.168.90.152 test2priv quorum-manager
3 test3priv 192.168.90.153 test3priv quorum-manager
[root@test1 ~]# mmlslicense
Summary information
---------------------
Number of nodes defined in the cluster: 3
Number of nodes with server license designation: 3
Number of nodes with client license designation: 0
Number of nodes still requiring server license designation: 0
Number of nodes still requiring client license designation: 0
This node runs IBM Spectrum Scale Standard Edition
13、测试启动集群
mmstartup -a
[root@test1 ~]# mmstartup -a
Sun Mar 1 17:27:32 CST 2020: mmstartup: Starting GPFS ...
[root@test1 ~]# mmgetstate -a
Node number Node name GPFS state
------------------------------------------
1 test1priv arbitrating
2 test2priv arbitrating
3 test3priv arbitrating
14、测试关闭集群
[root@test1 ~]# mmshutdown -a
Sun Mar 1 17:28:35 CST 2020: mmshutdown: Starting force unmount of GPFS file systems
Sun Mar 1 17:28:40 CST 2020: mmshutdown: Shutting down GPFS daemons
test1priv: Shutting down!
test3priv: Shutting down!
test2priv: Shutting down!
test1priv: 'shutdown' command about to kill process 4913
test1priv: Unloading modules from /lib/modules/2.6.32-358.el6.x86_64/extra
test2priv: 'shutdown' command about to kill process 5239
test2priv: Unloading modules from /lib/modules/2.6.32-358.el6.x86_64/extra
test3priv: 'shutdown' command about to kill process 4706
test3priv: Unloading modules from /lib/modules/2.6.32-358.el6.x86_64/extra
test1priv: Unloading module mmfs26
test2priv: Unloading module mmfs26
test3priv: Unloading module mmfs26
test2priv: Unloading module mmfslinux
test1priv: Unloading module mmfslinux
test3priv: Unloading module mmfslinux
Sun Mar 1 17:28:48 CST 2020: mmshutdown: Finished
[root@test1 ~]#
15、启动集群
[root@test1 ~]# mmstartup -a
Sun Mar 1 17:28:52 CST 2020: mmstartup: Starting GPFS ...
[root@test1 ~]# mmlscluster
GPFS cluster information
========================
GPFS cluster name: test1priv
GPFS cluster id: 14491606737919639429
GPFS UID domain: test1priv
Remote shell command: /usr/bin/ssh
Remote file copy command: /usr/bin/scp
Repository type: CCR
Node Daemon node name IP address Admin node name Designation
----------------------------------------------------------------------
1 test1priv 192.168.90.151 test1priv quorum-manager
2 test2priv 192.168.90.152 test2priv quorum-manager
3 test3priv 192.168.90.153 test3priv quorum-manager
16、查询状态
[root@test1 ~]# mmgetstate -a
Node number Node name GPFS state
------------------------------------------
1 test1priv arbitrating
2 test2priv arbitrating
3 test3priv arbitrating
[root@test1 ~]# mmgetstate -aLv
Node number Node name Quorum Nodes up Total nodes GPFS state Remarks
------------------------------------------------------------------------------------
1 test1priv 2 0 3 arbitrating quorum node
2 test2priv 2 0 3 arbitrating quorum node
3 test3priv 2 0 3 arbitrating quorum node
[root@test1 ~]#