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