DB2 pureScale 的基本信息
DB2 pureScale 是一種新的 DB2 可選特性,它允許您通過“雙機(active-active)”配置將數據庫擴展到一組服務器上,以便交付高水平的可用性和可伸縮性。在這種配置中,運行於各主機(或服務器)上的 DB2 副本可以同時讀取和寫入相同的數據。
數據共享組中的各成員可以通過一個非常有效的 InfiniBand? 網絡直接與 PowerHA pureScale 組件交互,如下圖所示。這意味著各成員與集中化的鎖和緩存設備之間建立了點到點(P2P)連接。
pureScale通過提供無限的容量、持續的可用性和應用程序程序透明性,DB2 pureScale 降低了業務增長的風險和成本。DB2 pureScale 在 UNIX 或 x86 系統上交付了無與倫比的數據庫可伸縮性和可用性水平。本文所有測試步驟均在CenOS7.0下經過驗證測試。
DB2 pureScale特點如下:
1)近乎無限的容量
您可以輕松添加機器到集群中,進而向外擴展您的系統。DB2 pureScale Feature 可擴展到包含 128 個成員,且具有一個集中管理工具,支持高效的向外擴展功能。它使用一種稱為 Remote Direct Memory Access (RDMA) 的技術,提供一種效率很高的節點間通信機制來輔助其擴展功能。
2) 應用程序透明性
您可以原封不動地使用現有應用程序。在一個 DB2 pureScale 環境中的運行的應用程序不需要了解集群中的不同成員,也不需要關注數據分區。DB2 pureScale Feature 會自動將應用程序路由到最合適的成員。
DB2 pureScale Feature 對其他數據庫供應商使用的大量語法提供本機支持,允許這些應用程序在變動最小或沒有變動的情況下在 DB2 pureScale 環境中運行。事實上,在很多情況下,無需修改您的應用程序就可實現 DB2 pureScale Feature 的好處。
3)持續可用性
DB2 pureScale Feature 提供一種具有內部冗余的主動-主動式架構。如果一個成員出現故障,可以繼續處理余下的主動成員。在故障期間,只有在發生故障的成員上修改的數據暫時不可用,直至為該組數據完成數據庫恢復。該方法與其他競爭性解決方案完全相反,後者在數據庫恢復期間整個系統可能會凍結。
4) 降低總擁有成本
DB2 pureScale Feature 降低 TCO,因為接口處理集成部件的部署和維護,這將減少與一些競爭性技術相關的陡峭的學習曲線。
一、部署需滿足的前提
每台物理機器都具有以下特點:
它存在於一個支持客戶端連接的公共網絡上。
它有一個 10 千兆以太網卡用於成員與 CF 之間的高速低延遲通信。10 千兆以太網還支持 RDMA over Ethernet。
它有一個到一套通用磁盤的共享連接。
二、 purescale安裝環境准備工作
1. 1. 確保在參與 DB2 pureScale 集群的所有物理機內在根級別設置了 SSH(無密碼)您可以通過在集群中的機器之間發出以下命令來驗證 SSH配置,確保它返回沒有任何提示的有效主機名:
# ssh <target machine> hostname
在實例設置期間安裝程序將設置實例級 SSH。
2.在每台機器的 /tmp 和 /var 文件系統中至少有 10 GB 的空閒空間;
3.確保將所有文件集作為 OS 安裝的一部分予以安裝cpp、gcc、gcc-c++、內核源、binutils、libstdc++ 32/64 位文件。
4.識別要供 DB2 pureScale Feature 使用的磁盤
5.模擬虛擬磁盤,搭建nfs服務器
#service iptables stop
#setenforce 0
#yum install nfs*
# yum install portmap rpcbind
#安裝nfs客戶端配置需要共享的資源#vi /etc/exports
/cbusdb *(rw,sync)
/cbusdblog *(rw,sync)
啟動nfs server
service rpcbind start
service nfs start
#導出資源
exportfs -rv
#顯示NFS Server上所有的共享卷
showmount -e
在客戶端掛載共享目錄
[root@cbusdb02 /]# mount 192.168.1.122:/cbusdb /cbusdb[root@cbusdb02 /]# mount 192.168.1.122:/cbusdblog /cbusdblog如果使用命令showmount -e 192.168.1.122顯示如下錯誤:
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)說明防火牆打開了,請close防火牆或者開啟相應端口
6.修改主機名#vi /etc/hosts
#vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=主機名
#hostname 主機名
7.設置ssh信任
ssh-keygen -t dsa
在.ssh目錄下把三台主機的id_dsa.pub文件的內容復制到authorized_keys文件中,把authorized_keys放於三台主機的.ssh目錄下8. 8.安裝db210.5#檢查防火牆是否開啟
#sestatus -v如果開啟請編輯如下文件
#vi /etc/selinux/config
#設置selinux=disabled
#安裝yum install compat-libstdc++
#開始安裝db2purescale
#./db2_install
#選擇 server版本並選擇帶有purescale特征
三、安裝完成後的設置
1.分別為數據和日志創建一個文件系統:
#<DB2 Install Path>/bin/db2cluster -cfs -create -filesytem data -disk /dev/sde
#<DB2 Install Path>/bin/db2cluster -cfs -create -filesytem log -disk /dev/sdf
在該部署中的 DB2 安裝路徑將是 /opt/ibm/db2/V9.8。默認情況下會在 /db2fs 下創建數據和日志文件系統,且可在 DB2 pureScale 實例中的所有主機上訪問該系統。
2.創建實例:
#/opt/ibm/db2/V10.1/instance/db2icrt -d -cf cbusdb21 -cfnet cbusdb21 -ib0 -m cbusdb22 -mnet cbusdb22 -ib0 -instance_shared_dev /dev/dm-3 -tbdev /dev/dm-4 -u db2sdfe1 db2sdin1
3.添加成員和CF:
#opt/ibm/db2/V10.5/instance/db2iupdt -d -add -cf cbusdb22 -cfnet cbusdb22-ib0 db2sdin1
#添加member
#/opt/ibm/db2/V10.5/instance/db2iupdt -d -add -m cbusdb22 -mnet cbusdb22-ib0 db2sdin1
#/opt/ibm/db2/V10.5/instance/db2iupdt -d -add -m cbusdb23 -mnet cbusdb23-ib0 db2sdin1
4.將文件系統所有者修改為 DB2 實例所有者,這樣它就有全權訪問該文件系統:
在本例中,db2sdin1 是實例所有者的名稱,且 db2iadm1 是實例所有者的組名。
#chown db2sdin1:db2iadm1 /db2fs/data
#chown db2sdin1:db2iadm1 /db2fs/log
5.通過發出 db2start 命令啟動 DB2 實例
您可以使用 db2instance 命令在任意點看到 DB2 pureScale 實例的狀態。
#db2start
10/03/2014 11:02:08 0 0 SQL1063N DB2STARTprocessing was successful.
10/03/2014 11:02:08 1 0 SQL1063N DB2STARTprocessing was successful.
SQL1063N DB2START processing was successful.
6.您可以使用 db2instance -list 命令查看 DB2 pureScale 集群的狀態
7.創建數據庫並將日志移動到日志文件系統必須從成員主機(而非 CF 主機)上運行以下命令:
#db2 create db testdb on /db2fs/data
以上就是在虛擬機Linux上部署DB2pureScale實踐過程,謝謝閱讀,希望能幫到大家,請繼續關注腳本之家,我們會努力分享更多優秀的文章。