天天看點

NewstartHA 配置技巧

目前大多數企業對業務的運作要求越來越高,高可用産品應運而生, Newstart HA做為一款優秀的ha解決方案,應用越來越廣泛。

Newstart HA提供指令行工具(cli)及web工具配置方式,下面就兩種配置方式分别講述。為保證配置順利進行,以下準備工作要提前做好:

1.已安裝主流linux作業系統(如suse 9/10/11,rehat5/6,cgslv3/v4等);

2.兩個節點的主機名不能相同;

3.兩個節點的心跳鍊路和工作鍊路的網卡名都要求相同(如nodeA工作鍊路網卡名為eth0,則nodeB工作鍊路網卡名必須為eth0),心跳鍊路建議配2條或以上,工作鍊路建議做bonding,然後配置好各個網卡的實體IP;

4.序列槽,HA提供序列槽線組建序列槽心跳鍊路,如機子不具備序列槽裝置,可不配,但要保證總的心跳鍊路數量在兩條或以上;

5.确定業務的浮動IP位址值;

6.共享存儲,如使用該類裝置,請分别建立好兩個節點上的挂載目錄;

7.兩節點已分别安裝好業務應用;

8.HA安裝程式放置伺服器上,如果是iso檔案,使用二進制方式上傳,如果是CD光牒,把安裝CD光牒放到伺服器CDROM中。

HA程式安裝:

以上準備工作完成後,就可以進行HA的安裝,以iso安裝檔案為例,挂載安裝程式到mnt目錄,然後進行安裝,如:

#mount -o loop nsha-3.0.1.07.iso /mnt

#/mnt/install

安裝過程很簡單,需注意3個地方已使用粗體标出,粗斜體表示注解。

NewStart HA Installation Program

                Version: 3.0.1.07

                Support email:   [email protected]

        1)NewStart HA Server Program and CLI Administrative Tool1

        2)Web-based Administrative Tool (options)(version: 20121101) 2

       3)All  components3

       4)Cancel

說明:1為主程式和cli管理工具,2為web管理工具,3為以上全部元件

select the components to be installed [1-4]?3  

…(過程省略)

please  enter the SN: 00TB24-FC0TCF-629A1H-B00D46  //試用SN号

…(過程省略)

Do  you want to start web-based administrative tool automatically as a system  service? y(es) or n(o)? y //系統啟動時是否自動啟動Web管理工具

…(過程省略)

The  component(s) is installed completely.

主程式及其元件已安裝完成,接下來是license的申請,做完這一步HA的安裝才算真正完成,操作如下:

1、把兩台機子上的/etc/ha.d/lic/newstartha.key檔案打包(名字區分好,如newstartha.key_node1/2,二進制(bin)方式下載下傳),然後發送到郵箱:[email protected]進行license檔案的申請。

2、收到的license檔案後改名為newstartha.lic,用二進制(bin)方式上傳到伺服器,放到/etc/ha.d/lic/目錄,因為每個節點newstartha.lic内容不同,key檔案與license檔案一一對應,是以不要搞混,否則HA無法啟動。

至此,HA安裝完成,接下來講述叢集配置方式。

一、指令行工具(cli)配置方式

叢集的配置主要分兩塊,分别是叢集初始化和服務初始化,必須按以上順序進行初始化;在開始之前,有幾個概念先了解一下:

1、仲裁盤:資料安全保障機制,需要在共享磁盤上劃分一塊小空間, 30M左右,不需格式化,作用是防止服務雙挂。(可選,但推薦配置)

2、第三方IP清單:與工作鍊路位于同一網段的3~5個已存在IP,作用是檢測節點自身網絡是否正常。(建議配置)

3、HA腳本:類似于/etc/init.d/目錄下的腳本,主要是規定如何啟動、停止和檢測業務程式,HA配置之前要準備好,HA軟體也提供了主流應用的相關腳本模版供參考,位于/etc/ha.d/resource.d目錄下,包括:apache、tomcat、oracle和sybase等。

配置過程:

1、叢集初始化:cluster-init

進入cli,運作cluster-init,然後按向導操作,如:

cli:~>cluster-init

…(此處列印省略)

Please input cluster name:oracle_cluster     //自定義叢集名稱

Input the first   node name and IP:suse11-sp1-1  192.168.1.192

Input the second node name and IP:suse11-sp1-2  192.168.1.193

How long between heartbeats(in seconds)[1]:直接回車都是推薦配置,下同

How long to declare heartbeat has broken(in  seconds)[60]:直接回車

Do you want to enable watchdog device ? (yes/no)[no]:直接回車

Please choose multicast heartbeat channel:

       0) eth2

       1) bond0

Select a multicast heartbeat channel [0, 1]:0     //選取網口心跳鍊路

Another multicast heartbeat channel? (yes/no)[yes]:no   //是否再增加一條網口心跳,因下面會配序列槽心跳,總數已達兩條,這裡不添加

Do you want to add a serial heartbeat channel?  (yes/no)[yes]:直接回車

Input serial heartbeat channel[/dev/ttyS0]:直接回車

Another serial heartbeat channel? (yes/no)[yes]:no   //是否再增加一條序列槽心跳

Do you want to enable worklink_hb ? (yes/no)[yes]:直接回車

Do you want to add third-party ip list ? [recommended  3-5 ip]  (yes/no)[yes]:直接回車  //是否配置第三方IP清單

Please input a third-party ip address:192.168.1.190

Another thirdpart ip address? (yes/no)[yes]:直接回車

Please input a third-party ip address:192.168.1.200

Another thirdpart ip address? (yes/no)[yes]:直接回車

Please input a third-party ip address:192.168.1.201

Another thirdpart ip address? (yes/no)[yes]:no

Do you want to add a lock disk(recommend) ?  (yes/no)[yes]:直接回車

//是否配置仲裁機制,推薦,

Please input the partition name (/dev/sdb):/dev/sdb1 //選取仲裁分區

Warning:All data in /dev/sdb1 will be destroyed, sure  to format it? (yes/no)[no]:yes

Do you want to enable kernel panic ? (yes/no)[no]:直接回車

Please run service-init to initialize you services.

叢集初始化完成,接下來進行服務初始化。

2、服務初始化:service-init

cli中運作service-init,按向導操作,如:

cli:~>service-init

…(此處列印省略)

Input service name:oracle   //輸入服務名

Is it enabled?(yes/no)[yes]:直接回車

Do you want to configure preferred node ?  (yes/no)[no]:yes  //是否選取服務優先運作節點

Please choose preferred node:

       0)  suse11-sp1-1

       1)  suse11-sp1-2

Select a node: [0, 1]:0

Input start time out[60]:直接回車

Input stop time out[120]:直接回車

Input check interval[30]:直接回車

Input check time out[60]:直接回車

Input max error count[1]:直接回車

Restart after check result is failed?(yes/no)[no]:直接回車

Start service anyway when float IP exist?(yes/no)[no]:直接回車

Do you want to add a application? (yes/no)[yes]:直接回車

====== Application ======

Input name of application[oracle_app_0]:直接回車

Input script of application

[/etc/ha.d/resource.d/oracle]:/home/script/oracle.ps//HA腳本位置

Is resource critical?[yes]:直接回車

Is resource enable?[yes]:直接回車

Add another application? (yes/no)[no]:直接回車

Do you want to add a pubnic? (yes/no)[yes]:直接回車

====== PubNIC ======

Input PubNIC name[oracle_net_card_0]:直接回車

Is resource critical?[yes]:直接回車

Please choose network device:

       0) eth2

       1) bond0

Select a network device [0, 1]:1   //選取工作鍊路

Add another pubnic? (yes/no)[no]:直接回車

====== IP ======

Input IP name[oracle_ip_0]:直接回車

Input IP address:192.168.1.196    //浮點/業務IP

Input netmask[255.255.255.0]:

PubNIC of service:

    0)  oracle_net_card_0     suse11-sp1-1:bond0     suse11-sp1-2:bond0

Select a PubNIC: [0, 0]:0

Is resource critical?[yes]:直接回車

Add another IP? (yes/no)[no]:直接回車

Do you want to add a raw disk? (yes/no)[no]:   //是否增加裸裝置

Do you want to add a diskmount? (yes/no)[no]:yes    //是否增加磁陣裝置

====== diskmount ======

Input diskmount name[oracle_diskmount_1]:直接回車

Is resource critical?[yes]:直接回車

Is resource enable?[yes]:直接回車

       0) disk   //支援普通的塊裝置,如/dev/sdb2

       1)  nfs   //支援nfs裝置

       2)  lvm   //支援邏輯卷裝置,如/dev/vg01/lv01

       3)  cancel

please choose a disk type? [0, 3]:0

Input block disk device[/dev/hda1]:/dev/sdb2

Input mountpoint:/home/db   //磁陣挂載目錄

Input type of file system[ext3]:直接回車

Input user[root]:oracle  //挂載目錄的操作使用者

Input group[root]:oinstall  //操作使用者的群組

Input mode[755]:直接回車

Input options[rw]:直接回車

Input the quota of the device[90]:直接回車

do you want to stop service when the disk is  readonly?[yes]:直接回車

Add another diskmount? (yes/no)[no]:直接回車

Add another service? (yes/no)[no]:直接回車

Please run cluster-start to start the HA system,

or run cluster-restart to restart the HA system.

到這裡,服務初始化完成,也意味着整個叢集初始化完成。接着來看看叢集啟動及業務倒換。

3、叢集啟動、狀态檢測及服務倒換

配置完成後,先啟動叢集,然後檢視運作狀态,最後就進行業務倒換測試。

3.1   叢集啟動及狀态檢測。

進入cli,運作指令cluster-start(啟動叢集),然後運作cluster-stat(檢視叢集狀态),稍等一會即可看到以下的類似列印:

cli:~>cluster-stat

       Press Ctrl-C or 'Q' to exit

               Date: Mon Apr 15 11:51:11  2013

Member                  status

suse11-sp1-1            UP

suse11-sp1-2            UP

WorkLink                suse11-sp1-1            suse11-sp1-2            

bond0                   ONLINE                  ONLINE  

HeartbeatLink         suse11-sp1-1        suse11-sp1-2       status  

network                eth2                eth2              ONLINE

serial                 /dev/ttyS0         /dev/ttyS0         ONLINE

LockDisk               /dev/sdb1          /dev/sdb1          ONLINE  

ServiceName           suse11-sp1-1       suse11-sp1-2        Enable  

*oracle                running            stopped             YES

該叢集狀态反映叢集運作正常,工作鍊路及心跳鍊路都是online,服務running于節點suse11-sp1-1.

3.2   業務倒換:

Cli下運作指令service-migrate,按向導操作,最後運作指令cluster-stat檢視業務倒換情況,如:

cli:~>cluster-stat

               Press Ctrl-C or 'Q' to exit

               Date: Mon Apr 15 13:55:23  2013

Member                  status

suse11-sp1-1            UP

suse11-sp1-2            UP

WorkLink                suse11-sp1-1            suse11-sp1-2            

bond0                   ONLINE                  ONLINE  

HeartbeatLink        suse11-sp1-1        s use11-sp1-2       status  

network                eth2                eth2              ONLINE

serial                 /dev/ttyS0         /dev/ttyS0         ONLINE

LockDisk               /dev/sdb1          /dev/sdb1          ONLINE  

ServiceName          suse11-sp1-1       suse11-sp1-2         Enable  

*oracle               stopped              running           YES

該叢集狀态表示服務倒換成功,現服務running于節點suse11-sp1-2;在現網調試時,服務在兩節點上至少要各倒換一次。

至此,指令行(cli)下配置叢集完成。

二、WEB工具配置方式

web方式進行叢集配置,同樣分兩塊,為叢集基本配置(相當于叢集初始化)和叢集服務配置(相當于服務初始化),在此之前,有些知識點同樣需了解:

1、web工具背景服務已啟動,webadminserverstatus 檢視;

2、web通路方式,http://雙機任一節點實體ip:10001,預設帳戶/密碼:SuperAdmin/123456;

3、web工具支援中,英文界面。

配置過程:

1、叢集初始化

打開浏覽器,輸入位址:http://實體IP:10001,連接配接成功後輸入使用者名及密碼準備登陸,如下圖1:

NewstartHA 配置技巧

圖1

進入web工具後,建議按下面圖2辨別順序進行叢集初始化:填寫叢集參數配置(完成後儲存)à增加序列槽心跳(完成後儲存)à增加網口心跳(完成後儲存)。

NewstartHA 配置技巧

圖2

填寫完圖2相關參數後,叢集初始化完成,如下面圖3所示:

NewstartHA 配置技巧

圖3

2、服務初始化

叢集初始化完成後,點選右列的叢集服務配置圖示,進行服務初始化,推薦配置順序已标注(見下圖4),即:填寫服務資訊à增加工作鍊路(PubNic)à增加浮動/業務IP(IP)à增加磁陣及挂載點(DiskMount)à增加應用腳本(App)à儲存配置。

NewstartHA 配置技巧

圖4

說明:HA的一個服務中允許存在多個同類資源存在,如多個網卡、浮動/業務IP、磁陣及應用。

下面是圖4中步驟2配置工作鍊路(PubNic)的的範例,其它資源配置類似,如:

NewstartHA 配置技巧

工作鍊路資源(允許多條工作鍊路)添加完成,如下:

NewstartHA 配置技巧

當把服務所有相關資源添加完成後,點選左下角的儲存配置選項,此時在Sservice Tree會生成服務資源樹,如:

NewstartHA 配置技巧

服務初始化完成,整個叢集配置完成,接下來看看web下的叢集啟動及業務倒換操作。

3、叢集啟動、狀态檢測及服務倒換

Web下的叢集管控比較簡單,直覺。

3.1   啟動叢集及檢視狀态

先點選叢集狀态監控圖示,然後右鍵節點圖示,啟動HA和服務,對象是所有節點,見下圖:

NewstartHA 配置技巧

叢集啟動後,頁面會周期性自動重新整理,顯示叢集實時運作狀态,如:

NewstartHA 配置技巧

叢集狀态圖

說明:上圖紅色的是序列槽心跳線,表示該鍊路通信有問題,需檢查,其它鍊路通信正常;此時服務oracle運作于節點suse11-sp1-2上。

3.2   服務倒換

服務倒換很簡單,以上面的叢集狀态圖為例,服務運作于節點suse11-sp2-2,右鍵服務名oracle,然後選取遷移服務至節點suse11-sp1-1:

NewstartHA 配置技巧

前面說過,頁面會自動周期性重新整理,是以執行上述操作後等待遷移結果:

NewstartHA 配置技巧

服務oracle成功遷移到節點suse11-sp1-1。 如現網調試,服務在兩節點上至少要各倒換一次。

至此,web方式配置叢集完成。

轉載于:https://blog.51cto.com/gdlinux/1217256