■ 河北 王春海
編者按:高可用群集HA(High Available)是保證業(yè)務(wù)系統(tǒng)連續(xù)性的有效解決方案。關(guān)于Windows操作系統(tǒng)配置高可用群集的資料較多,SUSE Linux配置群集的資料較小。本文通過(guò)一個(gè)具體的案例,比較詳細(xì)的介紹了基于SUSE Linux配置高可用群集的方法和步驟。
要配置高可用群集,一般配置2臺(tái)物理主機(jī)加1臺(tái)共享存儲(chǔ),系統(tǒng)運(yùn)行在物理主機(jī)上,數(shù)據(jù)保存在共享存儲(chǔ)上。在主機(jī)上運(yùn)行相同的操作系統(tǒng)及應(yīng)用程序,其中有1臺(tái)主機(jī)的應(yīng)用程序是活動(dòng)節(jié)點(diǎn)?;顒?dòng)節(jié)點(diǎn)連接管理共享存儲(chǔ),另1臺(tái)主機(jī)的應(yīng)用程序是備用節(jié)點(diǎn)(備用節(jié)點(diǎn)暫時(shí)不管理共享存儲(chǔ))。如果活動(dòng)節(jié)點(diǎn)的主機(jī)出現(xiàn)問(wèn)題,備用節(jié)點(diǎn)的應(yīng)用程序會(huì)接管共享存儲(chǔ)并接管應(yīng)用。這種情況要求實(shí)現(xiàn)了業(yè)務(wù)的連續(xù)性,在群集節(jié)點(diǎn)切換期間,業(yè)務(wù)不中斷或短暫中斷。
最近在一個(gè)項(xiàng)目中,客戶(hù)需要使用SUSE Linux For SAP 11 SP4版本的操作系統(tǒng)配置HA的環(huán)境。
用于HA的主機(jī)配置了2臺(tái)高配置的DELL R740XA的服務(wù)器、1臺(tái)華為OceanStor 5310F V5的全閃存存儲(chǔ)。每臺(tái)主機(jī)配置了1.5 TB內(nèi)存、2個(gè)Intel Gold 6230的CPU、1塊DELL BOSS卡(配置了2塊240 GB的M.2 SSD做RAID-1并安裝SUSE Linux For SAP 11 SP4操作系統(tǒng))。2臺(tái)主機(jī)分別使用2端口16 GB FC HBA卡連接到光纖存儲(chǔ)交換機(jī),再連接到華為5310F存儲(chǔ)。
HA的項(xiàng)目要求2個(gè)資源包(sypascs、sypdb),需要兩個(gè)浮動(dòng)IP和虛擬主機(jī)名(eccci、eccdb)。具體如下:
1.卷組1:ascsvg,劃分文件系統(tǒng)/usr/sap/SYP/ASCS 00,用于部署SAP ASCS服務(wù),大小5 TB。
2.卷組2:db vg,用于存放Db2數(shù)據(jù)庫(kù)相關(guān)數(shù)據(jù)文件及其運(yùn)行日志,主要包含/db 2/SYP/下的相關(guān)目錄和文件系統(tǒng),大小10 GB。
3.NFS共享文件系統(tǒng):采用NAS文件系統(tǒng),大小60 GB。
卷組1、卷組2需要2個(gè)LUN,在本次項(xiàng)目中,配置一個(gè)100 MB大小的共享磁盤(pán)用于HA。一共3個(gè)LUN。在華為OceanStor 5310F V5劃分了3個(gè)LUN分配給這2臺(tái)服務(wù)器。這3個(gè)LUN大小分別為100 MB、5 TB、10 GB。
其中LUN01(100 MB)用于仲裁或見(jiàn)證,LUN02(5 TB)與LUN04(10 GB)用于共享數(shù)據(jù)磁盤(pán)。
在華為OceanStor 5310F V5劃分了2個(gè)文件系統(tǒng),大小分別為10 GB、50 GB,用于NAS文件系統(tǒng),采用NFS共享文件。
在本項(xiàng)目中,2臺(tái)主機(jī)的IP地址分別是172.16.68.221與172.16.68.222。配置的2個(gè)Virtual IP分別為172.16.68.168與172.16.68.170。共享文件系統(tǒng)指定給這4個(gè)IP地址使用。其他IP地址無(wú)法訪問(wèn)。
要求2臺(tái)主機(jī)使用SUSE HA進(jìn)行配置。創(chuàng)建2個(gè)資源組,其中第1個(gè)資源組分配1個(gè)Virtual IP(本示例為172.16.68.168),同時(shí)加載10 GB的LUN04,這個(gè)資源組默認(rèn)在節(jié)點(diǎn)1加載;第2個(gè)資源組分別1個(gè)Virtual IP(本示例中為172.16.68.170)并加載5 TB的LUN02,這個(gè)資源組默認(rèn)在節(jié)點(diǎn)2加載。同一時(shí)間只能有1臺(tái)主機(jī)掛載共享盤(pán),如果其中1臺(tái)主機(jī)故障,另1臺(tái)主機(jī)馬上接管并掛載共享磁盤(pán)。項(xiàng)目最終配置完成后,執(zhí)行“crm status”命令,如圖1所示。
說(shuō)明:對(duì)于大多數(shù)只熟悉Windows操作系統(tǒng)和Windows群集的系統(tǒng)管理員來(lái)說(shuō),只要你了解Linux、掌握一些Linux的基本命令,就能參考本文完成配置。
圖1 查看資源狀態(tài)
下面介紹配置的主要流程、步驟,安裝配置中出現(xiàn)的問(wèn)題及解決方法進(jìn)行整理,希望對(duì)有同樣需求的朋友有所幫助。
本次項(xiàng)目中用到的SUSE Linux For SPA 11 SP4的安裝鏡像,可以登錄其官網(wǎng)下載,鏈接地址為:https://www.suse.com/zh-cn/download-linux。
實(shí)際使用中只需要下載SLE-11-SP4-SAP-DVD-x86_64-GM-DVD1.iso、SLE-HA-11-SP4-x86_64-GM-CD1.iso這兩個(gè)文件即可。關(guān)于SUSE Linux 11的安裝本文不做過(guò)多介紹。
在服務(wù)器上安裝SUSE Linux 11 SP4操作系統(tǒng)之后,需要安裝FC HBA卡驅(qū)動(dòng)及多路徑軟件。可以使用SUSE Linux操作系統(tǒng)自帶的多路徑軟件,也可以使用廠商提供的多路徑軟件。
本示例中安裝華為提供的多路徑軟件。當(dāng)前2臺(tái)DELL R740XD配置的FC HBA卡是Emulex LPE 31002雙端口16 Gb光纖通道 HBA。在SUSE 11中不包含該HBA卡的驅(qū)動(dòng),需要單獨(dú)下載安裝。DELL提供的驅(qū)動(dòng)程序下載地址為:
https://docs.broadcom.com/docs-and-downloads/oem/support/elx/rt11.4.1/11.4.142.23/elx-lpfc-ddsles11sp-11.4.142.21-1.tar.gz
下載驅(qū)動(dòng)程序之后,解壓縮展開(kāi),然后使用SFTP上傳到Linux主機(jī)的/tmp文件夾進(jìn)行安裝。主要步驟如下(如圖2所示)。
chmod +x elx_lpfc_install.sh
./elx_lpfc_install.sh
安裝FC HBA卡驅(qū)動(dòng)之后,可以執(zhí)行“fidsk -l”就可以顯示出存儲(chǔ)分配給當(dāng)前主機(jī)的LUN。但對(duì)于同一個(gè)LUN會(huì)顯示為多個(gè)相同的磁盤(pán),這需要啟用多路徑。因?yàn)楫?dāng)前使用的是華為存儲(chǔ),華為提供了多路徑軟件。
(1)拷貝華為多路徑軟件到SUSE Linux的/tmp文件夾??梢允褂肧FTP軟件將多路徑軟件上傳到Linux主機(jī)的/tmp文件夾。
(2)進(jìn)入驅(qū)動(dòng)程序文件夾,使用chmod命令為安裝程序添加運(yùn)行權(quán)限。
chmod +x install.sh
(3)執(zhí)行安裝
eccprd2:/tmp/SLES #./install.sh
(4)選擇從本地引導(dǎo)。在出現(xiàn)以下提示是輸入1并按回車(chē)鍵。
圖2 安裝FC HBA卡驅(qū)動(dòng)
If the operating sys tem is installed on a lo cal drive of the server,you are advised
to choose boot from local;if the operating system is installed on a SAN storage
system,you must choo se boot from san.Please choose the boot type of your system:
<1>--boot-from-Local
<2>--boot-from-SAN
please input your select:1
(5)安裝完成后重新引導(dǎo)系統(tǒng)
The install ation is com plete.Whether to restart the system now?
用于HA的2臺(tái)主機(jī),每臺(tái)主機(jī)配置了1塊4端口10 Gbit/s網(wǎng)卡,集成4端口1 Gbit/s網(wǎng)卡。本項(xiàng)目中使用配置10 Gbit/s網(wǎng)卡用于業(yè)務(wù)通訊(配置172.16.68.0網(wǎng)段),1 Gbit/s網(wǎng)卡用于群集心跳(規(guī)劃使用192.168.68.0網(wǎng)段)。本項(xiàng)目中主機(jī)名、IP地址規(guī)劃如表1所列。
下面以第1臺(tái)主機(jī)的設(shè)置為例。另一臺(tái)主機(jī)設(shè)置與此類(lèi)似。在本項(xiàng)目中,172.16.68.0網(wǎng)段的網(wǎng)關(guān)地址為172.16.68.8,DNS為172.16.5.11。
表1 主機(jī)表與IP地址規(guī)劃表
1.在“Yast”中單擊“Network Sett ings”,在網(wǎng)絡(luò)設(shè)置的“Routing”選項(xiàng)中添加網(wǎng)關(guān)地址,本示例中172.16.68.0/24的網(wǎng)關(guān)地址為172.16.68.8。
2.在“Hostname/DNS”選項(xiàng)卡中,設(shè)置主機(jī)名稱(chēng)為eccprd1,在Name Ser ver中設(shè)置DNS服務(wù)器的IP地址,本示例中DNS服務(wù)器的IP地址為172.16.5.11。
3.選中第一塊網(wǎng)卡(用于對(duì)外提供服務(wù)的網(wǎng)卡),單擊“Edit”按鈕,設(shè)置IP地址為172.16.68.221,設(shè)置Hostname為eccprd1。
4.選中用于群集心跳的網(wǎng)卡,單擊“Edit”按鈕,設(shè)置IP地址為192.168.68.221,設(shè)置Hostname為eccprd1-lan。
5.在當(dāng)前實(shí)驗(yàn)環(huán)境中,第三塊網(wǎng)卡用于連接iSCSI共享存儲(chǔ),設(shè)置這塊網(wǎng)卡的IP地址為192.168.0.221。在實(shí)際的生產(chǎn)環(huán)境中,服務(wù)器通過(guò)16G FC HBA卡連接到存儲(chǔ)。
圖3 編輯主機(jī)hostname文件
對(duì)于群集中另一臺(tái)主機(jī)與此設(shè)置相類(lèi)似,只是服務(wù)器的IP地址設(shè)置為172.16.68.222,群集心跳網(wǎng)絡(luò)地址設(shè)置為192.168.68.222,對(duì)應(yīng)的名稱(chēng)分別是eccprd2、eccprd2-lan。
設(shè)置連接iSCSI存儲(chǔ)的網(wǎng)卡的IP地址為192.168.0.222。在群集中每臺(tái)主機(jī)編輯hostname文件,添加主機(jī)名對(duì)IP地址的解析。
在Yast中單擊hostname,將2臺(tái)群集主機(jī)hostname添加到另一臺(tái)主機(jī)名稱(chēng)的解析,編輯之后如圖3所示。
172.16.68.221 eccprd1 eccprd1
172.16.68.222 eccprd2 eccprd2
192.168.68.221 eccprd1-lan eccprd1-lan
192.168.68.222 eccprd2-lan eccprd2-lan
HA集群的兩臺(tái)HANA服務(wù)器的需要配置SSH免密碼互聯(lián)服務(wù),執(zhí)行過(guò)程如下。
生成認(rèn)證公鑰:
登錄主節(jié)點(diǎn)分別執(zhí)行命令“ssh-key gen -t rsa”“sshkeygen -t dsa”生成公鑰。
在主節(jié)點(diǎn)依次執(zhí)行下面命令復(fù)制公鑰到對(duì)方節(jié)點(diǎn)。提示輸入節(jié)點(diǎn)密碼時(shí)輸入root用戶(hù)密碼。其他直接按回車(chē)鍵。
ssh-keygen -t rsa
ssh-keygen -t dsa
ssh eccprd1 "echo $(cat/root/.ssh/id_dsa.pub) >>/root/.ssh/authorized_keys"
ssh eccprd2 "echo $(cat/root/.ssh/id_dsa.pub) >>/root/.ssh/authorized_keys"
ssh eccprd1 "echo $(cat/root/.ssh/id_rsa.pub) >>/root/.ssh/authorized_keys"
ssh eccprd2 "echo $(cat/root/.ssh/id_rsa.pub) >>/root/.ssh/authorized_keys"
登錄服務(wù)器節(jié)點(diǎn)2,參考服務(wù)器節(jié)點(diǎn)1的方法,依次執(zhí)行下面命令復(fù)制公鑰到對(duì)方節(jié)點(diǎn):
ssh eccprd1 "echo $(cat/root/.ssh/id_dsa.pub) >>/root/.ssh/authorized_keys"
ssh eccprd2 "echo $(cat/root/.ssh/id_dsa.pub) >>/root/.ssh/authorized_keys"
ssh eccprd1 "echo $(cat/root/.ssh/id_rsa.pub) >>/root/.ssh/authorized_keys"
ssh eccprd2 "echo $(cat/root/.ssh/id_rsa.pub) >>/root/.ssh/authorized_keys"
在配置完成后,登錄服務(wù)器節(jié)點(diǎn)1,運(yùn)行ssh eccprd2,可以直接登錄到節(jié)點(diǎn)2,不需要輸入密碼。在另一臺(tái)計(jì)算機(jī)上運(yùn)行ssh eccprd1可以直接登錄到節(jié)點(diǎn)1,表示配置正確。
加載或拷貝SLE-HA-11-SP4-x86_64-GM-CD1.iso安裝鏡像,安裝SUSE HA軟件。主要步驟和過(guò)程如下。
1.在Yast中單擊“Addon Products”,在“Installed Add-on Products”,單擊“Add”按鈕。
2.在 “Media Type”按鈕中單擊選擇加載安裝包的方式,可以指定URL、FTP、HTTP、SMB、NFS路徑,也可以加載SLE-HA-11-SP4-x86_64-GM-CD1.iso安裝。
3.在“License Agreeme nt”中單擊“Yes,I Agree to the License Agreement”,接受許可協(xié)議。
4.在“Software Selectio n and System Tasks”中確認(rèn)“High Availability”已經(jīng)選中。然后單擊“OK”按鈕開(kāi)始安裝。
5.安裝完成之后,重新啟動(dòng)啟動(dòng)計(jì)算機(jī)。群集中的每一臺(tái)計(jì)算機(jī)都要安裝HA組件,安裝完成之后重新啟動(dòng)計(jì)算機(jī)。再次進(jìn)入系統(tǒng)之后,在Yast中可以看到“Cluster”和“Pacemaker GUI”程序組件。
在安裝HA之后,修改hac luster用戶(hù)密碼。打開(kāi)終端界面,執(zhí)行:
passwd hacluster
然后為群集帳戶(hù)haclu ster設(shè)置密碼。一般直接設(shè)置與root用戶(hù)的密碼一樣。
在配置與使用SUSE 11的時(shí)候,為了簡(jiǎn)化配置,一般建議關(guān)閉關(guān)閉系統(tǒng)默認(rèn)的防火墻,并且讓系統(tǒng)重新啟動(dòng)后不加載防火墻。主要步驟和過(guò)程如下。
(1)在Yast中單擊Fire wall,在“Firewall Confi guration:Start-UP”對(duì)話(huà)框中選擇“Disable Firewall Automatic Starting”,并單擊“Stop Firewall Now”按鈕以停止防火墻服務(wù),然后單擊“Next”按鈕并完成設(shè)置。
(2)在“Firewall star ting”對(duì)話(huà)框中單擊“Fini sh”按鈕,完成配置。
在生產(chǎn)環(huán)境中采用的是FC連接的共享存儲(chǔ)。這一步實(shí)驗(yàn)抓圖采用的是iSCSI共享存儲(chǔ)。在本示例中,使用iSCSI服務(wù)器為群集中的2個(gè)節(jié)點(diǎn)提供共享磁盤(pán)服務(wù)。首先為主節(jié)點(diǎn)添加iSCSI服務(wù)器分配的LUN磁盤(pán)。
1.在節(jié)點(diǎn)1的服務(wù)器上的“Yast”中單擊“iSCSI Initiator”,在“iSCSI Init iator Overview”對(duì)話(huà)框中的“Service”選項(xiàng)卡中,單擊選中“When Booting”讓iSCSI客戶(hù)端在系統(tǒng)啟動(dòng)時(shí)開(kāi)始服務(wù)。
2.在“Connected Targets”選項(xiàng)卡中單擊“Add”按鈕,添加iSCSI服務(wù)器的地址,本示例為192.168.0.110,添加之后設(shè)置系統(tǒng)啟動(dòng)時(shí)自動(dòng)連接。
在配置群集完成之前,建議只有一臺(tái)主機(jī)連接到共享存儲(chǔ)。如果要在節(jié)點(diǎn)1主機(jī)上進(jìn)行配置,可以暫時(shí)把節(jié)點(diǎn)2主機(jī)連接到存儲(chǔ)的光纖拔下。等群集配置完成之后再插上光纖并連接存儲(chǔ)。在當(dāng)前項(xiàng)目中,主機(jī)連接到存儲(chǔ)的3個(gè)LUN,其中100 MB的LUN不需要配置,5 TB與10 GB的LUN根據(jù)項(xiàng)目要求創(chuàng)建卷組并創(chuàng)建邏輯卷。創(chuàng)建完成后的如圖4所示。
在準(zhǔn)備用做主節(jié)點(diǎn)的服務(wù)器中,執(zhí)行“sleha-init”命令初始化主節(jié)點(diǎn),主要步驟如下。
在本示例中,設(shè)置IP地址為172.16.68.221、主機(jī)名稱(chēng)為eccprd1為節(jié)點(diǎn)1,IP地址為172.16.68.222、主機(jī)名稱(chēng)為eccprd2的為節(jié)點(diǎn)2。
在節(jié)點(diǎn)1主機(jī)上運(yùn)行Suse 11 Cluster命令進(jìn)行集群的初始化。
圖4 5TB共享磁盤(pán)劃分情況
1.以root用戶(hù)登錄服務(wù)器節(jié)點(diǎn)1(配置為主節(jié)點(diǎn)),執(zhí)行命令“sleha-init”,進(jìn)行初始化。執(zhí)行過(guò)程中根據(jù)提示選擇。
2.出現(xiàn)提示“/root/.ssh/id_rsa already exists-overwrite? [y/N]”時(shí),選擇輸入“N”,不覆蓋id_rsa。
3.如果該服務(wù)器之前做過(guò)配置,當(dāng)出現(xiàn)提示“csync2 is already configured -overwrite? [y/N]”時(shí),選擇輸入“Y”,覆蓋原有配置。
4.Configure Corosync。當(dāng)提示“Network address to bind to(e.g.:192.168.1.0)”時(shí),請(qǐng)輸入集群的通信網(wǎng)絡(luò),即選擇服務(wù)器操作系統(tǒng)的維護(hù)網(wǎng)段,當(dāng)前示例為192.168.68.0(不需要輸入具體的IP地址,只需要輸入子網(wǎng)地址)。
5.Multicast address(e.g.:239.x.x.x)默認(rèn)不變,按Enter。
6.當(dāng)提示:Mult icast port [5405]默認(rèn)不變,按Enter。
7.Configure SBD:使用SBD模式,輸入Y。然后配置SBD。
在生產(chǎn)環(huán)境中,使用LUN 01的100 MB共享磁盤(pán)用做SBD。在當(dāng)前環(huán)境的2臺(tái)群集主機(jī)中,主機(jī)本地硬盤(pán)為sda,LUN01、LUN02、LUN03、LUN04加載的共享磁盤(pán)依次為sdb、sdc、sde。
說(shuō)明:在配置存儲(chǔ)的時(shí)候多劃了一個(gè)LUN03,在后期從主機(jī)映射中移除了LUN03這個(gè)共享磁盤(pán)。
再次打開(kāi)一個(gè)終端窗口,執(zhí)行“l(fā)s -l/dev/disk/byid/”命令,搜索查看sdb設(shè)備名稱(chēng),該設(shè)備名稱(chēng)以scsi -3開(kāi)頭。本示例中該名稱(chēng)為scsi-36446747100ee045300 0957e400000000。復(fù)制該設(shè)備名稱(chēng),切換到sleha-init窗口,在Path to storage device(e.g./dev/disk/byid/...) []后面輸入:
/dev/disk/by-id/scsi-36446747100ee045300095 7e400000000
之后按Enter,在Are you sure you wish to use this device [y/N]后面輸入y,然后按Enter完成初始化。
配置完成后,登錄https://172.16.68.221,可以看到STONITH已啟用。也可以執(zhí)行“crm_mon”,可以看到名為stonith-sbd的資源已經(jīng)啟動(dòng)。
在集群服務(wù)器備節(jié)點(diǎn)上,運(yùn)行sleha-join命令將其他節(jié)點(diǎn)加入現(xiàn)有的集群中。
(1)以root用戶(hù)登錄集群主節(jié)點(diǎn),將主節(jié)點(diǎn)配置文件復(fù)制到備節(jié)點(diǎn)。命令如下。在本示例中,eccprd1為主節(jié)點(diǎn),eccprd2為備節(jié)點(diǎn)。
scp/etc/csync2/csync2.cfg root@eccprd2:/etc/csync2
scp/etc/csync2/key_hagroup root@eccprd2:/etc/csync2
scp/etc/corosync/authkey root@eccprd2:/etc/corosync/
scp/etc/corosync/coros ync.conf root@eccprd2:/etc/corosync/
(2)以root用戶(hù)登錄集群備節(jié)點(diǎn),運(yùn)行命令“slehajoin”。
(3)當(dāng)出現(xiàn)提示“IP add ress or hostname of exist ing node”時(shí),輸入主節(jié)點(diǎn)的OS管理的IP地址。本示例中為172.16.68.221。
(4)Enable sshd servi ce:當(dāng)出現(xiàn)提示“/root/.ssh/id_rsa already exists -overwrite? [y/N]”時(shí),輸入“N”,然后“Enter”,選擇不覆蓋;等待加入完成。
加入群集之后,執(zhí)行crm_mon,會(huì)顯示當(dāng)前有2個(gè)節(jié)點(diǎn)在線(xiàn),一個(gè)stonith資源已經(jīng)啟動(dòng)。
如果提示安裝失敗:“WARNING:csync2 of/etc/csync2/csync2.cfg failed WARNING:csync2 of/etc/csync2/csync2.cfg failed--file may not be in sync file may not be in sync on all nodeson all nodes;”,則需要在主節(jié)點(diǎn)運(yùn)行命令將主節(jié)點(diǎn)的配置文件復(fù)制到備節(jié)點(diǎn)。
這包括csync2.cfg等文件,然后重新執(zhí)行命令行命令slehasleha—join join加入現(xiàn)有群集。在執(zhí)行命令前停止備節(jié)點(diǎn)的群集服務(wù)。
在群集中任意一個(gè)節(jié)點(diǎn)中運(yùn)行Pacemaker GUI配置資源。在配置的時(shí)候,建議將另一個(gè)節(jié)點(diǎn)主機(jī)關(guān)機(jī),等群集資源配置完成后再打開(kāi)另一個(gè)節(jié)點(diǎn)并讓節(jié)點(diǎn)聯(lián)機(jī)。
1.在“YaST Control Center”單擊Pacemaker GUI,在Pacemaker GUI中單擊Co nnection,在彈出的Login對(duì)話(huà)框中,輸入用戶(hù)名hac luster及密碼,單擊“OK”按鈕登錄。
2.在CRM Config中,在“No Quorum Policy”下拉列表中選擇ignore。然后單擊“Apply”按鈕。
3.在“Resources”中當(dāng)前只有“stonith-sbd”的一個(gè)資源。下面添加一個(gè)資源組,在該資源組中添加一個(gè)Virtual IP,同時(shí)加載一個(gè)邏輯卷及加載一個(gè)文件系統(tǒng)。
(1)左側(cè)單擊Resources,在右側(cè)單擊“Add”按鈕,在彈出的對(duì)話(huà)框中選擇Group,然后單擊“OK”按鈕。
(2)在“Add Group”對(duì)話(huà)框中“ID”文本框中輸入新添加的資源組的名稱(chēng),本示例中為g_SAP,然后單擊“Forward”按鈕。
(3)在“Add Group -Add Sub-resource For ‘g_SAP’”中默認(rèn)為Primitive,單擊“OK”按鈕。
(4)在“Add Primitive -Basic Settings”中,在 “ID”文本框中輸入子資源名稱(chēng),本示例中為r_sappap_vip,在“Class”下拉列表中選擇ocf,在“Provider”下拉列表中選擇heartbeat,在“Type”下拉列表中選擇IPaddr2,然后單擊“Forward”按鈕。
(5)在“instance Attribut es”選項(xiàng)卡中選中IP,然后單擊“Edit”按鈕,在“Value”中輸入Virtual IP地址,本示例中為172.16.68.168,然后單擊“OK”按鈕。
注意,新添加的虛擬IP地址應(yīng)該是當(dāng)前網(wǎng)段中未分配未使用的。
(6)返回到“Add Primiti ve -Summary of ‘r_sapap_vip’”對(duì)話(huà)框,單擊“Apply”按鈕。
(7)返回“Add Group -Add Sub-resource For ‘g_SAP’”對(duì)話(huà)框,如果要繼續(xù)添加資源,應(yīng)單擊“OK”按鈕。如果添加資源完成,單擊“Cancel”按鈕。本示例中繼續(xù)添加子資源。
(8)在“Add Primitive”對(duì)話(huà)框中的“ID”文本框中輸入新添加的子資源名稱(chēng),本示例為r_ascsvg,在“Class”下拉列表中選擇ocf,然后在“Provider”下拉列表中選擇heartbeat,在“Type”下拉列表中選擇LVM。
(9)在“instance Attri butes”選項(xiàng)卡中選中volgrp name,然后單擊“Edit”按鈕,在“Edit Nvpair”的Value中輸入要加載的卷組的名稱(chēng),本示例為ascsvg,單擊“OK”按鈕。
(10)返回到“Add Primi tive”對(duì)話(huà)框,單擊“Apply”按鈕,返回“Add Group -Add Sub-resource For ‘g_SAP’”對(duì)話(huà)框,如果要繼續(xù)添加資源,應(yīng)單擊“OK”按鈕。如果添加資源完成,單擊“Cancel”按鈕。本示例中繼續(xù)添加子資源。
(11)在“Add Primitive”對(duì)話(huà)框中的“ID”文本框中輸入新添加的子資源名稱(chēng),本示例為r_sap_ascs00,在“Class”下拉列表中選擇ocf,在“Provider”下拉列表中選擇heartbeat,在“Type”下拉列表中選擇Filesystem。然后單擊“Forward”按鈕。
(12)在“Add Primitive-Summary Of ‘r_sap_asc s00’”對(duì)話(huà)框中,在添加文件系統(tǒng)時(shí),需要添加設(shè)備名稱(chēng)、要加載到的目錄、加載的文件屬性。
在YaST2中執(zhí)行Partit ioner程序,查看創(chuàng)建的名為ascsvg卷組屬性,本示例中卷組名稱(chēng)為ascsvg,要加載的邏輯卷的名稱(chēng)為ascs00,其Device(設(shè)備名稱(chēng))為/dev/ascsvg/ascs00。
選擇Device,然后單擊“Edit”按鈕,在彈出的“Edit Nvpair”對(duì)話(huà)框的“Value”中輸入要加載的文件系統(tǒng)的設(shè)備,名稱(chēng)為/dev/ascsvg/ascs00,然后單擊“OK”按鈕。
這個(gè)設(shè)備要加載到本地的一個(gè)目錄中,本示例中將其加載到/usr/sap/SYP/ascs00目錄中。在此需要?jiǎng)?chuàng)建/usr/sap/SYP目錄。選中directory,然后單擊“Edit”按鈕,在彈出的“Edit Nvpair”對(duì)話(huà)框的Value中輸入要加載的位置,本示例中為/usr/sap/SYP/ascs00。然后單擊“OK”按鈕。
選中fstype然后單擊Edit按鈕,在彈出的“Edit Nvpair”對(duì)話(huà)框的Value中輸入文件系統(tǒng)屬性,本示例為ext3。添加的文件系統(tǒng)資源完成后,單擊“Apply”按鈕。
(13)返回“Add Group-Add Sub-resource For‘g_SAP’”對(duì)話(huà)框,如果要繼續(xù)添加資源,應(yīng)單擊“OK”按鈕。如果添加資源完成,單擊“Cancel”按鈕。本示例已經(jīng)添加完所需資源,單擊“Cancel”按鈕。
(14)返回“Add Group”對(duì)話(huà)框,本示例中添加一個(gè)Virtual IP地址,加載一個(gè)LVM,加載一個(gè)文件系統(tǒng)。單擊“Apply”按鈕,添加資源組完成。
(15)返回Pacemaker GUI對(duì)話(huà)框,在“Resources→Group”中可以看到創(chuàng)建的資源組。
當(dāng)前的資源組還沒(méi)有運(yùn)行。在“Management”中用鼠標(biāo)右鍵單擊資源組的名稱(chēng)g_SAP,在彈出的快捷菜單中選擇Start啟動(dòng)資源組,如果配置正確,資源組啟動(dòng)成功。此時(shí)資源組在節(jié)點(diǎn)1上加載。
如果群集中2個(gè)節(jié)點(diǎn)全部啟動(dòng),有可能在啟動(dòng)帶有文件系統(tǒng)的資源組時(shí),2臺(tái)服務(wù)器會(huì)立刻重啟。筆者分析,可能是這2個(gè)節(jié)點(diǎn)全部加載了同一個(gè)邏輯卷造成系統(tǒng)沖突引起的。如果出現(xiàn)這一情況,應(yīng)暫時(shí)關(guān)閉一臺(tái)節(jié)點(diǎn)主機(jī),只讓1個(gè)節(jié)點(diǎn)加載文件系統(tǒng),等加載成功之后再啟動(dòng)另一個(gè)節(jié)點(diǎn)即可。
(16)參照上面的示例,添加第2個(gè)資源組。資源組的名稱(chēng)為g_sypdb,Virtual IP地址為172.16.68.170,加載的卷組為dbvg,加載的邏輯卷分別為SYP、log_dir、sapdata1、sapdata2、sapdata3、sapdata4等邏輯卷。
(17)配置好第2個(gè)資源組。
用戶(hù)要求當(dāng)群集中主機(jī)開(kāi)機(jī)后,默認(rèn)的資源組g_SAP在節(jié)點(diǎn)1主機(jī)上加載,g_sypdb在節(jié)點(diǎn)2主機(jī)上加載。如果其中的一個(gè)節(jié)點(diǎn)主機(jī)故障,則資源組會(huì)自動(dòng)在存活主機(jī)自動(dòng)加載。為資源指定群集節(jié)點(diǎn)的操作步驟如下。
①資源組g_sypdb在節(jié)點(diǎn)1上加載,用鼠標(biāo)右鍵單擊資源組名稱(chēng)g_sypdb,在彈出的快捷菜單中選擇“Mi grate Resource”。
②在“Migrate Resource”對(duì)話(huà)框中,在“To Node”下拉列表中選擇另一個(gè)節(jié)點(diǎn)名稱(chēng)eccprd2,單擊“OK”按鈕。
③在資源組切換過(guò)程中,Cluster會(huì)暫時(shí)先停止資源組中的資源,然后再在指定的節(jié)點(diǎn)啟動(dòng)。等資源切換完成后,指定的資源組(默認(rèn))在節(jié)點(diǎn)2運(yùn)行。
④參考前面步驟,將g_sypascs資源組(實(shí)驗(yàn)環(huán)境中對(duì)應(yīng)的資源組名稱(chēng)為g_SAP,生產(chǎn)環(huán)境中對(duì)應(yīng)的資源組名稱(chēng)為g_sypascs)遷移到節(jié)點(diǎn)1。
⑤在“Constraints(約束條件)”中可以看到,在默認(rèn)情況下,g_sypascs資源組在節(jié)點(diǎn)1(主機(jī)名稱(chēng)為eccprd1),g_sypdb資源組在節(jié)點(diǎn)2(主機(jī)名稱(chēng)為eccprd2)。
⑥打開(kāi)終端桌面,執(zhí)行crm status查看Cluster狀態(tài)。
1.如果配置資源的過(guò)程中,服務(wù)器突然退出圖形界面,返回到到命令行界面并報(bào)如下錯(cuò)誤:
Failed to connect to socket/var/run/dbus/syste m_bus_socket:No such file or directory
按ALT F1或F2,切換到另一個(gè)窗口,使用root帳戶(hù)登錄,執(zhí)行/etc/init.d/dbus start啟動(dòng)服務(wù)后,服務(wù)器會(huì)再次進(jìn)入圖形界面。
2.兩臺(tái)服務(wù)器交替重新啟動(dòng)。
當(dāng)兩臺(tái)群集的心跳線(xiàn)斷開(kāi)后就會(huì)出現(xiàn)這種情況,應(yīng)檢查2臺(tái)服務(wù)器用于心跳的網(wǎng)線(xiàn)。