在Linux虛擬機中如何部署DB2pureScale
在Linux虛擬機中如何部署DB2pureScale
在Linux操作系統(tǒng)中,可在虛擬機上搭建DB2 pureScale,那么搭建的步驟是怎么樣的呢?DB2 pureScale又有什么用呢?下面隨學(xué)習(xí)啦小編一起來了解下Linux系統(tǒng)如何在虛擬機上部署DB2 pureScale。
DB2 pureScale 的基本信息
DB2 pureScale 是一種新的 DB2 可選特性,它允許您通過“雙機(active-active)”配置將數(shù)據(jù)庫擴展到一組服務(wù)器上,以便交付高水平的可用性和可伸縮性。在這種配置中,運行于各主機(或服務(wù)器)上的 DB2 副本可以同時讀取和寫入相同的數(shù)據(jù)。
數(shù)據(jù)共享組中的各成員可以通過一個非常有效的 InfiniBand? 網(wǎng)絡(luò)直接與 PowerHA pureScale 組件交互,如下圖所示。這意味著各成員與集中化的鎖和緩存設(shè)備之間建立了點到點(P2P)連接。
pureScale通過提供無限的容量、持續(xù)的可用性和應(yīng)用程序程序透明性,DB2 pureScale 降低了業(yè)務(wù)增長的風(fēng)險和成本。DB2 pureScale 在 UNIX 或 x86 系統(tǒng)上交付了無與倫比的數(shù)據(jù)庫可伸縮性和可用性水平。本文所有測試步驟均在CenOS7.0下經(jīng)過驗證測試。
DB2 pureScale特點如下:
1)近乎無限的容量
您可以輕松添加機器到集群中,進而向外擴展您的系統(tǒng)。DB2 pureScale Feature 可擴展到包含 128 個成員,且具有一個集中管理工具,支持高效的向外擴展功能。它使用一種稱為 Remote Direct Memory Access (RDMA) 的技術(shù),提供一種效率很高的節(jié)點間通信機制來輔助其擴展功能。
2) 應(yīng)用程序透明性
您可以原封不動地使用現(xiàn)有應(yīng)用程序。在一個 DB2 pureScale 環(huán)境中的運行的應(yīng)用程序不需要了解集群中的不同成員,也不需要關(guān)注數(shù)據(jù)分區(qū)。DB2 pureScale Feature 會自動將應(yīng)用程序路由到最合適的成員。
DB2 pureScale Feature 對其他數(shù)據(jù)庫供應(yīng)商使用的大量語法提供本機支持,允許這些應(yīng)用程序在變動最小或沒有變動的情況下在 DB2 pureScale 環(huán)境中運行。事實上,在很多情況下,無需修改您的應(yīng)用程序就可實現(xiàn) DB2 pureScale Feature 的好處。
3)持續(xù)可用性
DB2 pureScale Feature 提供一種具有內(nèi)部冗余的主動-主動式架構(gòu)。如果一個成員出現(xiàn)故障,可以繼續(xù)處理余下的主動成員。在故障期間,只有在發(fā)生故障的成員上修改的數(shù)據(jù)暫時不可用,直至為該組數(shù)據(jù)完成數(shù)據(jù)庫恢復(fù)。該方法與其他競爭性解決方案完全相反,后者在數(shù)據(jù)庫恢復(fù)期間整個系統(tǒng)可能會凍結(jié)。
4) 降低總擁有成本
DB2 pureScale Feature 降低 TCO,因為接口處理集成部件的部署和維護,這將減少與一些競爭性技術(shù)相關(guān)的陡峭的學(xué)習(xí)曲線。
一、部署需滿足的前提
每臺物理機器都具有以下特點:
它存在于一個支持客戶端連接的公共網(wǎng)絡(luò)上。
它有一個 10 千兆以太網(wǎng)卡用于成員與 CF 之間的高速低延遲通信。10 千兆以太網(wǎng)還支持 RDMA over Ethernet。
它有一個到一套通用磁盤的共享連接。
二、 purescale安裝環(huán)境準(zhǔn)備工作
1. 1. 確保在參與 DB2 pureScale 集群的所有物理機內(nèi)在根級別設(shè)置了 SSH(無密碼)您可以通過在集群中的機器之間發(fā)出以下命令來驗證 SSH配置,確保它返回沒有任何提示的有效主機名:
# ssh 《target machine》 hostname
在實例設(shè)置期間安裝程序?qū)⒃O(shè)置實例級 SSH。
2.在每臺機器的 /tmp 和 /var 文件系統(tǒng)中至少有 10 GB 的空閑空間;
3.確保將所有文件集作為 OS 安裝的一部分予以安裝cpp、gcc、gcc-c++、內(nèi)核源、binutils、libstdc++ 32/64 位文件。
4.識別要供 DB2 pureScale Feature 使用的磁盤
5.模擬虛擬磁盤,搭建nfs服務(wù)器
#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
#導(dǎo)出資源
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防火墻或者開啟相應(yīng)端口
6.修改主機名#vi /etc/hosts
#vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=主機名
#hostname 主機名
7.設(shè)置ssh信任
ssh-keygen -t dsa
在.ssh目錄下把三臺主機的id_dsa.pub文件的內(nèi)容復(fù)制到authorized_keys文件中,把authorized_keys放于三臺主機的.ssh目錄下8. 8.安裝db210.5#檢查防火墻是否開啟
#sestatus -v如果開啟請編輯如下文件
#vi /etc/selinux/config
#設(shè)置selinux=disabled
#安裝yum install compat-libstdc++
#開始安裝db2purescale
#./db2_install
#選擇 server版本并選擇帶有purescale特征
三、安裝完成后的設(shè)置
1.分別為數(shù)據(jù)和日志創(chuàng)建一個文件系統(tǒng):
#《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。默認(rèn)情況下會在 /db2fs 下創(chuàng)建數(shù)據(jù)和日志文件系統(tǒng),且可在 DB2 pureScale 實例中的所有主機上訪問該系統(tǒng)。
2.創(chuàng)建實例:
#/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.將文件系統(tǒng)所有者修改為 DB2 實例所有者,這樣它就有全權(quán)訪問該文件系統(tǒng):
在本例中,db2sdin1 是實例所有者的名稱,且 db2iadm1 是實例所有者的組名。
#chown db2sdin1:db2iadm1 /db2fs/data
#chown db2sdin1:db2iadm1 /db2fs/log
5.通過發(fā)出 db2start 命令啟動 DB2 實例
您可以使用 db2instance 命令在任意點看到 DB2 pureScale 實例的狀態(tài)。
#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 集群的狀態(tài)
7.創(chuàng)建數(shù)據(jù)庫并將日志移動到日志文件系統(tǒng)必須從成員主機(而非 CF 主機)上運行以下命令:
#db2 create db testdb on /db2fs/data
上面就是Linux系統(tǒng)中在虛擬機上搭建DB2 pureScale的方法介紹了,在部署的時候要了解你的系統(tǒng)是否滿足部署前提,以防部署出錯。