这篇介绍GPFS概念、使用场景,以及用GPFS实现DB2高可用配置过程。
IBM Spectrum Scale(老名称GPFS:General Parallel File System) 是高性能的共享磁盘文件管理解决方案,能够以可靠的方式快速访问集群环境中多个节点上的数据。IBM GPFS以软件定义存储为主要目标,诸如云计算、大数据、云存储和对象存储。应用程序可以使用标准文件系统界面来轻松访问文件,并且可以从多个节点同时访问同一个文件。包括HPC(高性能计算)、文件共享、大数据分析等。
另一篇文章,介绍使用linux iscsi创建虚拟化SAN磁盘,没有多余磁盘或共享存储的环境中,用于配置验证过程中。
IBM Spectrum Scale 旨在通过高级集群技术、动态文件系统管理和数据复制来提供高可用性,该产品支持帮助客户减少存储成本,同时提高云、大数据和分析环境中的安全性和管理效率等。。即使在集群遇到存储器或节点故障时,IBM Spectrum Scale 也可继续提供数据访问。
IBM Spectrum Scale是美国IBM公司的一套基于IBM GPFS(专为PB级存储管理而优化的企业文件管理系统)的可扩展的数据及文件管理解决方案,行业领先的并行分布式通用并行集群文件系统,GPFS从1993开始研发,1995年投入商用(最早投入使用在多媒体处理行业,所以我们现在看到GPFS的很多目录和命令为什么都有MM[multimedia]两个字母,就是根据这个背景延续下来的)。从1998年开始首先应用于AIX集群,2001年后应用于Linux集群,2010年后支持windows集群,
2015年更名为IBM Spectrum Scale ,最新版本为Spectrum Scale5.1.x。
基本架构
对外访问支持POSIX、HDFS、NFS、SMB、Swift/S3,底层存储支持SSD、DISK、TAPE(LTFS)、Object
NSD Network shared disk
Failure Group
GPFS Replication over failure groups
File System Descriptor Quorum
可以参考比较熟知的NFS应用场景,但GPFS内部机制允许同时访问读写,参考Google CFS或者HDFS。
IBM ESS 是软件定义的存储,可以更轻松地为 AI 和大数据部署快速且高度可扩展的存储。 将 IBM Spectrum Scale 文件管理软件与 NVMe 闪存存储相结合,实现了极致的向外扩展性能和简便性。
2、文件系统双活
-可以应用到应用逻辑:
比如部署代码到公用目录,其他机器上应用都能同时访问并修改;比如采集图片、影像存在到统一位置,其他应用都能同时访问并修改
-或者DB高可用:
比如数据库需要切换到备机时,停止主机上服务后再备机上直接启动,而不需要切换共享存储。
比如下图中TSM(Spectrum Protect)包括TSM DB(DB2)以及其他数据,采用GPFS实现高可用。
3、数据中心文件系统双活
借助基于GPFS的Spectrum Scale实现了数据中心的“双活”系统建设,正常情况下,两地的业务系统分别访问本地文件数据,一旦任一应用或站点发生故障,将自动切换至另一副本,从而实现文件系统应用双活,且平均延迟仅在2毫秒左右,充分满足了银行业用户对于数据可靠性,一致性及低延迟的要求。
4、Hadoop and GPFS
5、Cloud 或者Container
如下Container Native Storage Access-Redhat openshift cluster
以下是关于分布式文件系统的近期发展史:
超融合技术发展大事件,超融合技术白皮书(IPFS原力区制图),2020-10-08
主要记录用GPFS实现DB2高可用配置过程。
此部分步骤来源与网络,暂没搭建新环境来测试验证。
1.机器之间时间必须同步,生产环境配置时钟同步服务;
2.操作系统版本、DB2数据库版本等必须保持一致,保证数据库启动正常;GPFS本身不要求操作系统版本一致,这里主要是保证数据库能正常切换。
3.文件系统、目录结构及权限保持一致;
4.db2数据库用户标识等必须保持一致,密码也一样;
5.最少三台机器。GPFS的仲裁机制与ZooKeeper的类似,当有一半以上的节点是quorum时,集群才可以启动,即:quorum >= 1+sizeof(all nodes)/2
6.机器之前配置ssh互信。
7.本地域名解析中包括所有机器/etc/hosts
基于GPFS 5.1 、DB2 11.1
NSD服务器 nsd1 192.168.0.21 gpfsnode1
NSD服务器 nsd2 192.168.0.22 gpfsnode2
NSD服务器 nsd3 192.168.0.23 gpfsnode3
源数据库 source 192.168.0.11 gpfsnode3
目标数据库 target 192.168.0.12 gpfsnode4
操作机 opr 192.168.1.22
执行命令,类似与以下
./Spectrum_Scale_XX-X.X.X.X-x86_64-Linux-install
安装目录/usr/lpp/mmfs
检查环境
/usr/lpp/mmfs/X.X.X.0/ansible-toolkit/spectrumscale node list
[ INFO ] List of nodes in current configuration:
[ INFO ] [Installer Node]
[ INFO ] None
[ INFO ]
[ INFO ] [Cluster Details]
[ INFO ] No cluster name configured
[ INFO ] Setup Type: Spectrum Scale
[ INFO ]
[ INFO ] [Extended Features]
[ INFO ] File Audit logging : Disabled
[ INFO ] Management GUI : Disabled
[ INFO ] Performance Monitoring : Disabled
[ INFO ] Callhome : Enabled
[ INFO ]
[ INFO ] No nodes configured. Use 'spectrumscale node add' to add nodes.
[ INFO ] If a cluster already exists use 'spectrumscale config populate -N node_in_cluster' to sync toolkit with existing cluster.
IBM GPFS cluster installation and configuration in IBM AIX
https://developer.ibm.com/articles/au-gpfs-cluster/
此步骤来源与网络案例
File Placement Optimizer (FPO) setup with Spectrum Scale 4.2
http://spectrumscale.blogspot.com/2016/03/fpo-setup-with-spectrum-scale-42.html
检查三台机器的文件系统
ls /dev/dm-2
ls /dev/dm-3
ls /dev/dm-4
创建NSD定义文件
vi gpfsfpo.txt
%pool:
pool=fast
layoutMap=cluster
blocksize=1024K
allowWriteAffinity=yes # this option enables FPO feature
writeAffinityDepth=1 # place 1st copy on disks local to the node writing data
blockGroupFactor=128 # Defines chunk size of 128MB
%pool:
pool=slow
layoutMap=cluster
blocksize=1024K
allowWriteAffinity=yes # this option enables FPO feature
writeAffinityDepth=1 # place 1st copy on disks local to the node writing data
blockGroupFactor=128 # Defines chunk size of 128MB
#Disks in system pool are defined for metadata
%nsd:
nsd=nsd1
device=/dev/dm-2
servers=gpfsnode1
usage=metadataOnly
failureGroup=101
pool=system
# Disks in fast pool
%nsd:
nsd=nsd2
device=/dev/dm-3
servers=gpfsnode2
usage=dataOnly
failureGroup=102
pool=fast
# Disk(s) in slow pool
%nsd:
nsd=nsd3
device=/dev/dm-4
servers=gpfsnode1
usage=dataOnly
failureGroup=103
pool=slow
执行命令创建
mmcrnsd -F tgpfsfpo.txt
检查nsd
mmlsnsd
File system Disk name NSD servers
---------------------------------------------------------------------------
(free disk) nsd1 gpfsnode1
(free disk) nsd2 gpfsnode2
(free disk) nsd3 gpfsnode3
指定集群名称及挂载点
mmcrfs gpfs_db2 -F tgpfsfpo.txt -T /data/db2inst1
可以使用mmlsfs查看挂载点
mmlsfs all
可以使用mmlspool命令查看存储池
mmlspool gpfs_db2 all -L
挂载文件系统
mmmount gpfs_db2 -a
查看挂载gpfs文件系统
mmlsmount gpfs_db2
KC IBM Spectrum Scale5.1.5
https://www.ibm.com/docs/zh/spectrum-scale/5.1.5
IBM GPFS cluster installation and configuration in IBM AIX
https://developer.ibm.com/articles/au-gpfs-cluster/
File Placement Optimizer (FPO) setup with Spectrum Scale 4.2
http://spectrumscale.blogspot.com/2016/03/fpo-setup-with-spectrum-scale-42.html