Heartbeat3x應(yīng)用全攻略之:安裝、配置、維護(hù)_第1頁
Heartbeat3x應(yīng)用全攻略之:安裝、配置、維護(hù)_第2頁
Heartbeat3x應(yīng)用全攻略之:安裝、配置、維護(hù)_第3頁
Heartbeat3x應(yīng)用全攻略之:安裝、配置、維護(hù)_第4頁
Heartbeat3x應(yīng)用全攻略之:安裝、配置、維護(hù)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、一、安裝heartbeat前的準(zhǔn)備1、Heartbeat集群必須的硬件 構(gòu)建一個Heartbeat集群系統(tǒng)必須的硬件設(shè)備有:節(jié)點(diǎn)服務(wù)器、網(wǎng)絡(luò)和網(wǎng)卡、共享磁盤2、操作系統(tǒng)規(guī)劃 這里統(tǒng)一采用Centos5.3操作系統(tǒng),每個節(jié)點(diǎn)服務(wù)器都有兩塊網(wǎng)卡,一塊用作連接公用網(wǎng)絡(luò),另一塊通過以太網(wǎng)交叉線連接兩個節(jié)點(diǎn),作為心跳監(jiān)控。共享磁盤由一個磁盤陣列設(shè)備提供,兩個節(jié)點(diǎn)共享一個磁盤分區(qū)。磁盤分區(qū)對應(yīng)的硬件標(biāo)識為/dev/sdf1,掛載點(diǎn)為/data1,文件系統(tǒng)類型為ext3。如圖1所示:網(wǎng)絡(luò)拓?fù)淙鐖D2所示:配置每個節(jié)點(diǎn)的/etc/hosts文件,保證兩個節(jié)點(diǎn)內(nèi)容一致,/etc/hosts文件內(nèi)容如下:rootn

2、ode1 #more /etc/hosts46 node137 node priv priv1一切準(zhǔn)備就緒,接下來開始安裝heartbeat。三、安裝heartbeat 這里的安裝以heartbeat3.x為講解對象,以下操作需要在兩個節(jié)點(diǎn)都進(jìn)行安裝,基本安裝過程為:首先建立相關(guān)用戶hacluster和組haclient,然后設(shè)定環(huán)境變量,最后就是安裝heartbeat,過程如下:1、添加用戶和組groupadd haclientuseradd -g haclient hacluster2、設(shè)置環(huán)境變量vi /

3、root/.bash_profile,添加如下內(nèi)容:export PREFIX=/usr/local/ha export LCRSODIR=$PREFIX/libexec/lcrso export CLUSTER_USER=haclusterexport CLUSTER_GROUP=haclientexport CFLAGS="$CFLAGS -I$PREFIX/include -L$PREFIX/lib"getent group $CLUSTER_GROUP >/dev/null | groupadd -r $CLUSTER_GROUPgetent passwd $

4、CLUSTER_USER >/dev/null | useradd -r -g $CLUSTER_GROUP -d /var/lib/heartbeat/cores/hacluster -s /sbin/nologin -c "cluster user" $CLUSTER_USERheartbeat3.x版本把安裝包分成了4個部分,分別是:Cluster Glue、Resource Agents、heartbeat和pacemaker,所以要分別安裝,可以從、下載對應(yīng)的軟件包,這

5、里使用的軟件版本分別為:glue-1.0.7、agents-1.0.3、heartbeat-STABLE-3.0.4、Pacemaker-1.0.103、安裝各個模塊軟件包(1)安裝Cluster Gluetar xjvf Reusable-Cluster-Components-glue-5e06b2ddd24b.tar.bz2cd Reusable-Cluster-Components-glue-5e06b2ddd24b./autogen.sh./configure -prefix=$PREFIX -with-daemon-user=$CLUSTER_USER -with-daemon-gr

6、oup=$CLUSTER_GROUP -enable-fatal-warnings=nomakemake install(2)安裝Resource Agentstar jxvf Cluster-Resource-Agents-5ae70412eec8.tar.bz2cd Cluster-Resource-Agents-5ae70412eec8./autogen.sh./configure -prefix=$PREFIX -enable-fatal-warnings=nomakemake install(3)安裝heartbeattar jxvf Heartbeat-3-0-fcd56a9dd1

7、8c.tar.bz2cd Heartbeat-3-0-fcd56a9dd18c./bootstrap./configure -prefix=$PREFIX -enable-fatal-warnings=nomakemake install(4)安裝pacemakertar jxvf Pacemaker-1-0-c3869c00c759.tar.bz2cd Pacemaker-1-0-c3869c00c759./autogen.sh./configure -prefix=$PREFIX -with-lcrso-dir=$LCRSODIR -enable-fatal-warnings=nomake

8、make install 4、安裝圖像管理工具Pacemaker-Python-GUIrootdrbd1 Pacemaker-Python-GUI-18332eae086e# tar jxvf Pacemaker-Python-GUI-18332eae086e.tar.bz2rootdrbd1 Pacemaker-Python-GUI-18332eae086e#cd Pacemaker-Python-GUI-18332eae086erootdrbd1 Pacemaker-Python-GUI-18332eae086e#./bootstrap -prefix=$PREFIX CFLAGS=&qu

9、ot;$CFLAGS -I$PREFIX/include -L$PREFIX/lib"rootdrbd1 Pacemaker-Python-GUI-18332eae086e#makerootdrbd1 Pacemaker-Python-GUI-18332eae086e#make install可能出現(xiàn)如下報錯:aclocal:configure.in:57: warning: macro AM_PO_SUBDIRS' not found in library ./configure: line 2064: syntax error near unexpected token

10、0.35.2' ./configure: line 2064: AC_PROG_INTLTOOL(0.35.2)只需安裝gettext和intltool-0.35.0-2軟件包即可四、配置heartbeat 對HA的配置分為兩個部分,配置heartbeat和pacemaker,與heartbeat版本相對應(yīng),配置文件也有兩個版本,即為heartbeat1.x的1.x style版本和heartbeat2.1.x版本之后的2.1.x style版本,我們可以借助1.x style的集群資源配置文件轉(zhuǎn)換為2.x style的格式,同時,在heartbeat2.1.x版本之后使用CRM來管理

11、整個集群。集群開始時,通過在各節(jié)點(diǎn)間選舉產(chǎn)生一個節(jié)點(diǎn)成為DC(Designated Coordinator),所有配置操作都在該DC主機(jī)上進(jìn)行,并由其分發(fā)到集群下的各個節(jié)點(diǎn)上。下面依次講述。1、1.x和2.x配置文件對比 l /usr/local/ha/etc/ha.d/authkeys 該文件在兩個版本作用是完全相同的,都必須設(shè)置,并且保證每個節(jié)點(diǎn)(node)內(nèi)容一樣l /usr/local/ha/etc/ha.d/ha.cf 這個是主要配置文件,由其決定v1或v2 style格式l /usr/local/ha/etc/haresources 這是v1的資源配置文件l /usr/local/

12、ha/var/lib/heartbeat/crm/cib.xml 這是v2的資源配置文件,兩者根據(jù)ha.cf的設(shè)定只能選其一.v2版本使用CRM管理集群,而cib.xml文件有如下幾種方式來編寫:l 人工編寫XML文件;l 使用admintools工具,其已經(jīng)包含在heartbeat包中;l 使用GUI圖形工具配置,也包含在heartbeat-gui包里面,這個一會介紹;l 使用python腳本轉(zhuǎn)換1.x style的格式配置文件到2.x style格式。這四種方法實(shí)質(zhì)都是相同的,并且以python腳本轉(zhuǎn)換最為簡單容易。為此,可以先配置好1.x style的格式,然后通過python腳本進(jìn)行轉(zhuǎn)

13、換。2、配置heartbeat 1)首先拷貝模板配置文件cp /usr/local/ha/share/doc/authkeys /usr/local/ha/etc/ha.dcp /usr/local/ha/share/doc/ha.cf /usr/local/ha/etc/ha.dcp /usr/local/ha/share/doc/haresources /usr/local/ha/etc/ha.d3、主配置文件(/etc/ha.d/ha.cf) 下面對ha.cf文件的每個選項(xiàng)進(jìn)行詳細(xì)介紹,其中“#”號后面的內(nèi)容是對選項(xiàng)的注釋說明。#debugfile /var/log/ha-debuglo

14、gfile /var/log/ha-log #指名heartbeat的日志存放位置。#crm yes #是否開啟Cluster Resource Manager(集群資源管理)功能。bcast eth1#指明心跳使用以太網(wǎng)廣播方式,并且是在eth1接口上進(jìn)行廣播。keepalive 2#指定心跳間隔時間為2秒(即每兩秒鐘在eth1上發(fā)送一次廣播)。deadtime 30#指定備用節(jié)點(diǎn)在30秒內(nèi)沒有收到主節(jié)點(diǎn)的心跳信號后,則立即接管主節(jié)點(diǎn)的服務(wù)資源。warntime 10#指定心跳延遲的時間為十秒。當(dāng)10秒鐘內(nèi)備份節(jié)點(diǎn)不能接收到主節(jié)點(diǎn)的心跳信號時,就會往日志中寫入一個警告日志,但此時不會切換服務(wù)

15、。initdead 120#在某些系統(tǒng)上,系統(tǒng)啟動或重啟之后需要經(jīng)過一段時間網(wǎng)絡(luò)才能正常工作,該選項(xiàng)用于解決這種情況產(chǎn)生的時間間隔。取值至少為deadtime的兩倍。 udpport 694#設(shè)置廣播通信使用的端口,694為默認(rèn)使用的端口號。baud 19200#設(shè)置串行通信的波特率。#serial /dev/ttyS0 #選擇串行通信設(shè)備,用于雙機(jī)使用串口線連接的情況。如果雙機(jī)使用以太網(wǎng)。#ucast eth0 #采用網(wǎng)卡eth0的udp單播來組織心跳,后面跟的IP地址應(yīng)為雙機(jī)對方的IP地址。#mcast eth0 694 1 0#采用網(wǎng)卡eth0的

16、Udp多播來組織心跳,一般在備用節(jié)點(diǎn)不止一臺時使用。Bcast、ucast和mcast分別代表廣播、單播和多播,是組織心跳的三種方式,任選其一即可。auto_failback on#用來定義當(dāng)主節(jié)點(diǎn)恢復(fù)后,是否將服務(wù)自動切回,heartbeat的兩臺主機(jī)分別為主節(jié)點(diǎn)和備份節(jié)點(diǎn)。主節(jié)點(diǎn)在正常情況下占用資源并運(yùn)行所有的服務(wù),遇到故障時把資源交給備份節(jié)點(diǎn)并由備份節(jié)點(diǎn)運(yùn)行服務(wù)。在該選項(xiàng)設(shè)為on的情況下,一旦主節(jié)點(diǎn)恢復(fù)運(yùn)行,則自動獲取資源并取代備份節(jié)點(diǎn),如果該選項(xiàng)設(shè)置為off,那么當(dāng)主節(jié)點(diǎn)恢復(fù)后,將變?yōu)閭浞莨?jié)點(diǎn),而原來的備份節(jié)點(diǎn)成為主節(jié)點(diǎn)。#stonith baytech /etc/ha.d/conf/

17、stonith.baytech # stonith的主要作用是使出現(xiàn)問題的節(jié)點(diǎn)從集群環(huán)境中脫離,進(jìn)而釋放集群資源,避免兩個節(jié)點(diǎn)爭用一個資源的情形發(fā)生。保證共享數(shù)據(jù)的安全性和完整性。#watchdog /dev/watchdog#該選項(xiàng)是可選配置,是通過Heartbeat來監(jiān)控系統(tǒng)的運(yùn)行狀態(tài)。使用該特性,需要在內(nèi)核中載入"softdog"內(nèi)核模塊,用來生成實(shí)際的設(shè)備文件,如果系統(tǒng)中沒有這個內(nèi)核模塊,就需要指定此模塊,重新編譯內(nèi)核。編譯完成輸入"insmod softdog"加載該模塊。然后輸入"grep misc /proc/devices&qu

18、ot;(應(yīng)為10),輸入"cat /proc/misc |grep watchdog"(應(yīng)為130)。最后,生成設(shè)備文件:"mknod /dev/watchdog c 10 130" 。即可使用此功能。node node1#主節(jié)點(diǎn)主機(jī)名,可以通過命令“uanme n”查看。node node2#備用節(jié)點(diǎn)主機(jī)名。ping #選擇ping的節(jié)點(diǎn),ping 節(jié)點(diǎn)選擇的越好,HA集群就越強(qiáng)壯,可以選擇固定的路由器作為ping節(jié)點(diǎn),但是最好不要選擇集群中的成員作為ping節(jié)點(diǎn),ping節(jié)點(diǎn)僅僅用來測試網(wǎng)絡(luò)連接。ping_group grou

19、p1 51 39 #類似于ping。#respawn hacluster /usr/local/ha/lib/heartbeat/ipfailapiauth pingd gid=haclient uid=haclusterrespawn hacluster /usr/local/ha/lib/heartbeat/pingd -m 100 -d 5s#該選項(xiàng)是可選配置,列出與heartbeat一起啟動和關(guān)閉的進(jìn)程,該進(jìn)程一般是和heartbeat集成的插件,這些進(jìn)程遇到故障可以自動重新啟動。最常用的進(jìn)程是pingd,此進(jìn)程用于檢測和監(jiān)控網(wǎng)卡狀態(tài),需

20、要配合ping語句指定的ping node來檢測網(wǎng)絡(luò)的連通性。其中hacluster表示啟動pingd進(jìn)程的身份。#下面的配置是關(guān)鍵,也就是激活crm管理,開始使用v2 style格式crm respawn #注意,還可以使用crm yes的寫法,但這樣寫的話,如果后面的cib.xml配置有問題#會導(dǎo)致heartbeat直接重啟該服務(wù)器,所以,測試時建議使用respawn的寫法#下面是對傳輸?shù)臄?shù)據(jù)進(jìn)行壓縮,是可選項(xiàng)compression bz2compression_threshold 2注意,v2 style不支持ipfail功能,須使用pingd代替4、資源文件(/etc/ha.d/har

21、esources) Haresources文件用于指定雙機(jī)系統(tǒng)的主節(jié)點(diǎn)、集群IP、子網(wǎng)掩碼、廣播地址以及啟動的服務(wù)等集群資源,文件每一行可以包含一個或多個資源腳本名,資源之間使用空格隔開,參數(shù)之間使用兩個冒號隔開,在兩個HA節(jié)點(diǎn)上該文件必須完全一致,此文件的一般格式為:node-name network <resource-group>node-name表示主節(jié)點(diǎn)的主機(jī)名,必須和ha.cf文件中指定的節(jié)點(diǎn)名一致,network用于設(shè)定集群的IP地址、子網(wǎng)掩碼、網(wǎng)絡(luò)設(shè)備標(biāo)識等,需要注意的是,這里指定的IP地址就是集群對外服務(wù)的IP地址,resource-group用來指定需要hear

22、tbeat托管的服務(wù),也就是這些服務(wù)可以由heartbeat來啟動和關(guān)閉,如果要托管這些服務(wù),必須將服務(wù)寫成可以通過start/stop來啟動和關(guān)閉的腳步,然后放到/etc/init.d/或者/etc/ha.d/resource.d/目錄下,heartbeat會根據(jù)腳本的名稱自動去/etc/init.d或者/etc/ha.d/resource.d/目錄下找到相應(yīng)腳步進(jìn)行啟動或關(guān)閉操作。LSB: Linux標(biāo)準(zhǔn)腳本文件(init script),通常放在/etc/init.d/目錄下,heartbeat1.x版本之前的管理腳本一半放在/etc/ha.d/resource.d,在這里是/usr/l

23、ocal/ha/etc/ha.d/resource.d OCF:Open Cluster Framework,默認(rèn)放在/usr/lib/resource.d/heartbeat/目錄下;在這里是/usr/local/ha/etc/ha.d/resource.d下面介紹一下ocf和lsb格式的區(qū)別: LSB格式的腳本必須支持status功能,必須能接收start,stop,status,三個參數(shù);而如果是OCF格式,則必須支持start,stop,monitor三個參數(shù).其中status和monitor參數(shù)是用來監(jiān)控資源的,非常重要. 例如LSB風(fēng)格的腳本,運(yùn)行./Mysql status時候,

24、 返回值包含OK或則running則表示資源正常 返回值包含stopped或者No則表示資源不正常。 假如是OCF風(fēng)格的腳本,運(yùn)行./Mysql monitor時候, 返回0表示資源是正常的, 返回7表示資源出現(xiàn)問題. 下面對配置方法進(jìn)行具體說明:node1 IPaddr:00/24/eth0/ Filesystem:/dev/sdb5:/webdata:ext3 httpd tomcat其中,node1是HA集群的主節(jié)點(diǎn),IPaddr為heartbeat自帶的一個執(zhí)行腳步,heartbeat首先將執(zhí)行/etc/ha.d/resource.d/IPaddr 192.16

25、8.60.135/24 start的操作,也就是虛擬出一個子網(wǎng)掩碼為,IP為35的地址,此IP為heartbeat對外提供服務(wù)的網(wǎng)絡(luò)地址,同時指定此IP使用的網(wǎng)絡(luò)接口為eth0,接著,heartbeat將執(zhí)行共享磁盤分區(qū)的掛載操作,“Filesystem:/dev/sdf1:/data1:ext3”相當(dāng)于在命令行下執(zhí)行mount操作,即“mount t ext3 /dev/sdf1 /data1”,最后依次啟動httpd和tomcat服務(wù)。165、認(rèn)證文件(/etc/ha.d/authkeys) authkeys文件用于設(shè)定heartbeat的

26、認(rèn)證方式,共有三種可用的認(rèn)證方式:crc、md5和sha1,三種認(rèn)證方式的安全性依次提高,但是占用的系統(tǒng)資源也依次增加。如果heartbeat集群運(yùn)行在安全的網(wǎng)絡(luò)上,可以使用crc方式,如果HA每個節(jié)點(diǎn)的硬件配置很高,建議使用sha1,這種認(rèn)證方式安全級別最高,如果是處于網(wǎng)絡(luò)安全和系統(tǒng)資源之間,可以使用md5認(rèn)證方式。這里我們使用crc認(rèn)證方式,設(shè)置如下:auth 11 crc#2 sha1 sha1_any_password#3 md5 md5_any_password需要說明的一點(diǎn)是:無論auth后面指定的是什么數(shù)字,在下一行必須作為關(guān)鍵字再次出現(xiàn),例如指定了“auth 6”,下面一定要有一行“6 認(rèn)證類型”。最后確保這個文件的權(quán)限是600(即-rw-)。6、配置pacemaker 在使用CRM管理的時候,也就是heartbeat第二種配置格式,就需要配置pacemaker了。通過pacemaker可以對集群資源進(jìn)行監(jiān)控和配置。在HA環(huán)境中,所有資源的信息,和對其的配置都是以xml格式進(jìn)行存儲的,所以對其進(jìn)行管理監(jiān)控配置都是對xml文件進(jìn)行讀寫。所以對pacemaker進(jìn)行配置其實(shí)就是對cib.xml文件進(jìn)行讀寫,這個文件在不同環(huán)境中存在于不同位置,在我們的環(huán)境中存在于/usr/local

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論