在虚拟机Linux上部署DB2pureScale实践过程




在虚拟机Linux上部署DB2pureScale实践过程

2022-07-20 20:29:30 网络知识 官方管理员

  DB2pureScale的基本信息

  DB2pureScale是一种新的DB2可选特性,它允许您通过双机(active-active)配置将数据库扩展到一组服务器上,以便交付高水平的可用性和可伸缩性。在这种配置中,运行于各主机(或服务器)上的DB2副本可以同时读取和写入相同的数据。

  数据共享组中的各成员可以通过一个非常有效的InfiniBand?网络直接与PowerHApureScale组件交互,如下图所示。这意味着各成员与集中化的锁和缓存设备之间建立了点到点(P2P)连接。

  pureScale通过提供无限的容量、持续的可用性和应用程序程序透明性,DB2pureScale降低了业务增长的风险和成本。DB2pureScale在UNIX或x86系统上交付了无与伦比的数据库可伸缩性和可用性水平。本文所有测试步骤均在CenOS7.0下经过验证测试。

  DB2pureScale特点如下:

  1)近乎无限的容量

  您可以轻松添加机器到集群中,进而向外扩展您的系统。DB2pureScaleFeature可扩展到包含128个成员,且具有一个集中管理工具,支持高效的向外扩展功能。它使用一种称为RemoteDirectMemoryAccess(RDMA)的技术,提供一种效率很高的节点间通信机制来辅助其扩展功能。

  2)应用程序透明性

  您可以原封不动地使用现有应用程序。在一个DB2pureScale环境中的运行的应用程序不需要了解集群中的不同成员,也不需要关注数据分区。DB2pureScaleFeature会自动将应用程序路由到最合适的成员。

  DB2pureScaleFeature对其他数据库供应商使用的大量语法提供本机支持,允许这些应用程序在变动最小或没有变动的情况下在DB2pureScale环境中运行。事实上,在很多情况下,无需修改您的应用程序就可实现DB2pureScaleFeature的好处。

  3)持续可用性

  DB2pureScaleFeature提供一种具有内部冗余的主动-主动式架构。如果一个成员出现故障,可以继续处理余下的主动成员。在故障期间,只有在发生故障的成员上修改的数据暂时不可用,直至为该组数据完成数据库恢复。该方法与其他竞争性解决方案完全相反,后者在数据库恢复期间整个系统可能会冻结。

  4)降低总拥有成本

  DB2pureScaleFeature降低TCO,因为接口处理集成部件的部署和维护,这将减少与一些竞争性技术相关的陡峭的学习曲线。

  一、部署需满足的前提

  每台物理机器都具有以下特点:

  它存在于一个支持客户端连接的公共网络上。

  它有一个10千兆以太网卡用于成员与CF之间的高速低延迟通信。10千兆以太网还支持RDMAoverEthernet。

  它有一个到一套通用磁盘的共享连接。

  二、purescale安装环境准备工作

  1.1.确保在参与DB2pureScale集群的所有物理机内在根级别设置了SSH(无密码)您可以通过在集群中的机器之间发出以下命令来验证SSH配置,确保它返回没有任何提示的有效主机名:

  #ssh<targetmachine>hostname

  在实例设置期间安装程序将设置实例级SSH。

  2.在每台机器的/tmp和/var文件系统中至少有10GB的空闲空间;

  3.确保将所有文件集作为OS安装的一部分予以安装cpp、gcc、gcc-c++、内核源、binutils、libstdc++32/64位文件。

  4.识别要供DB2pureScaleFeature使用的磁盘

  5.模拟虚拟磁盘,搭建nfs服务器

  #serviceiptablesstop

  #setenforce0

  #yuminstallnfs*

  #yuminstallportmaprpcbind

 #安装nfs客户端配置需要共享的资源#vi/etc/exports

  /cbusdb*(rw,sync)

  /cbusdblog*(rw,sync)

  启动nfsserver

  servicerpcbindstart

  servicenfsstart

  #导出资源

  exportfs-rv

  #显示NFSServer上所有的共享卷

  showmount-e

  在客户端挂载共享目录

  [root@cbusdb02/]#mount192.168.1.122:/cbusdb/cbusdb[root@cbusdb02/]#mount192.168.1.122:/cbusdblog/cbusdblog如果使用命令showmount-e192.168.1.122显示如下错误:

  clnt_create:RPC:Portmapperfailure-Unabletoreceive:errno113(Noroutetohost)说明防火墙打开了,请close防火墙或者开启相应端口

  6.修改主机名#vi/etc/hosts

  #vi/etc/sysconfig/network

  NETWORKING=yes

  HOSTNAME=主机名

  #hostname主机名

  7.设置ssh信任

  ssh-keygen-tdsa

  在.ssh目录下把三台主机的id_dsa.pub文件的内容复制到authorized_keys文件中,把authorized_keys放于三台主机的.ssh目录下8.8.安装db210.5#检查防火墙是否开启

  #sestatus-v如果开启请编辑如下文件

  #vi/etc/selinux/config

  #设置selinux=disabled

  #安装yuminstallcompat-libstdc++

  #开始安装db2purescale

  #./db2_install

  #选择server版本并选择带有purescale特征

  三、安装完成后的设置

  1.分别为数据和日志创建一个文件系统:

  #<DB2InstallPath>/bin/db2cluster-cfs-create-filesytemdata-disk/dev/sde

  #<DB2InstallPath>/bin/db2cluster-cfs-create-filesytemlog-disk/dev/sdf

  在该部署中的DB2安装路径将是/opt/ibm/db2/V9.8。默认情况下会在/db2fs下创建数据和日志文件系统,且可在DB2pureScale实例中的所有主机上访问该系统。

  2.创建实例:

  #/opt/ibm/db2/V10.1/instance/db2icrt-d-cfcbusdb21-cfnetcbusdb21-ib0-mcbusdb22-mnetcbusdb22-ib0-instance_shared_dev/dev/dm-3-tbdev/dev/dm-4-udb2sdfe1db2sdin1

  3.添加成员和CF:

  #opt/ibm/db2/V10.5/instance/db2iupdt-d-add-cfcbusdb22-cfnetcbusdb22-ib0db2sdin1

  #添加member

  #/opt/ibm/db2/V10.5/instance/db2iupdt-d-add-mcbusdb22-mnetcbusdb22-ib0db2sdin1

  #/opt/ibm/db2/V10.5/instance/db2iupdt-d-add-mcbusdb23-mnetcbusdb23-ib0db2sdin1

  4.将文件系统所有者修改为DB2实例所有者,这样它就有全权访问该文件系统:

  在本例中,db2sdin1是实例所有者的名称,且db2iadm1是实例所有者的组名。

  #chowndb2sdin1:db2iadm1/db2fs/data

  #chowndb2sdin1:db2iadm1/db2fs/log

  5.通过发出db2start命令启动DB2实例

  您可以使用db2instance命令在任意点看到DB2pureScale实例的状态。

  #db2start

  10/03/201411:02:0800SQL1063NDB2STARTprocessingwassuccessful.

  10/03/201411:02:0810SQL1063NDB2STARTprocessingwassuccessful.

  SQL1063NDB2STARTprocessingwassuccessful.

  6.您可以使用db2instance-list命令查看DB2pureScale集群的状态

  7.创建数据库并将日志移动到日志文件系统必须从成员主机(而非CF主机)上运行以下命令:

  #db2createdbtestdbon/db2fs/data

  以上就是在虚拟机Linux上部署DB2pureScale实践过程,谢谢阅读,希望能帮到大家,请继续关注,我们会努力分享更多优秀的文章。


发表评论:

最近发表
网站分类
标签列表