天天看點

heartbeat v2版CRM的高可用web叢集的實作

叢集架構圖 :

                                    主節點(172.16.31.10)

用戶端(172.16.31.12) Vitual IP(172.16.31.166)                            NFS IP(172.16.31.12)

                                    從節點(172.16.31.11)

注:心跳資訊傳遞借助eth0網卡實作

網絡以及IP位址規劃如下所示:

節點類型     IP位址規劃          主機名      類型

主用節點     eth0:172.16.31.10     node1       Public IP

          eth0:0 :172.16.31.180  Virtual IP

備用節點     eth0:172.16.31.11     node2       Public IP

存儲節點     eth0:172.16.31.12     nfs

一.關閉heartbeat服務

node1和node2都需要關閉:

# service heartbeat stop

Stopping High-Availability services:

Done.

二.正式開始配置heartbeat v2 版本的CRM

開啟heartbeat v2版本的CRM,隻需要在ha.cf主配置檔案末尾加入“crm  on”即可,而且haresources檔案設定的資源就會失效。

[root@node1 ~]# cat /etc/ha.d/ha.cf |grep-v ^#

logfacility     local0

mcast eth0  225.131.31.23 694 1 0

auto_failback on

node   node1.stu31.com

node   node2.stu31.com

ping  172.16.0.1

crm on

三.叢集配置

1.由于我們需要使用圖形化界面配置heartbeatv2叢集,而安裝heartbeat後會生成一個hacluster使用者,我們需要設定密碼,可以讓我們來通路圖形化界面:

node1和node2主機都要配置:

# echo oracle |passwd --stdin hacluster

2.使用Linux的GNONE桌面進入heartbeatv2 版本的圖形化CRM配置:

首先開啟heartbeat服務:

[root@node1 ~]# /etc/init.d/heartbeat  start ; ssh node2 'service heartbeat start'

logd is already running

Starting High-Availability services:

由于無資源配置檔案,啟動非常快速。

檢視監聽端口:

[root@node1 ~]# ss -tunl |grep 5560

tcp   LISTEN     0      10                     *:5560                  *:*

3.圖形化配置

登入GUI界面

<a href="http://s3.51cto.com/wyfs02/M01/58/04/wKiom1SnrwmT6jn-AACMIuAJanM601.jpg" target="_blank"></a>

輸入使用者名密碼登入:

<a href="http://s3.51cto.com/wyfs02/M02/58/02/wKioL1Snr-CiK_-iAAEGsXYueDU052.jpg" target="_blank"></a>

4.建立資源類型webip:定義VIP

<a href="http://s3.51cto.com/wyfs02/M00/58/02/wKioL1SnsBTT5J33AAGuavXTP0o894.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/58/04/wKiom1Snr0PjphoQAAK0S6Wh4ow659.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M00/58/04/wKiom1Snr26DCuEPAALC4x4Id5o058.jpg" target="_blank"></a>

添加完成後就點選Add即可:

5.建立資源類型webserver,定義httpd服務

<a href="http://s3.51cto.com/wyfs02/M01/58/04/wKiom1Snr5Sw8blIAAJaZDEs-88387.jpg" target="_blank"></a>

完成後啟動資源測試:啟動webip和webserver即可

<a href="http://s3.51cto.com/wyfs02/M00/58/04/wKiom1Snr-ayjFVTAAJs51UTcEk768.jpg" target="_blank"></a>

啟動完成,但是資源未一起在同一節點啟動,符合公平配置設定原則,我們需要使用排列限制,分組,順序限制實作資源的啟動節點。

6.協同限制配置

<a href="http://s3.51cto.com/wyfs02/M01/58/04/wKiom1SnsErCpgZdAAGukN7u4Ic579.jpg" target="_blank"></a>

設定成webip所在節點,webserver也會在那個節點啟動:

<a href="http://s3.51cto.com/wyfs02/M02/58/02/wKioL1SnsSCgJu2EAAHDeanCzZ8262.jpg" target="_blank"></a>

效果出現,因為開始webip在node2節點啟動,是以配置協同限制後,webserver自動就切換到node2啟動:

<a href="http://s3.51cto.com/wyfs02/M02/58/04/wKiom1SnsIHCXPtDAALQ_-93EDY433.jpg" target="_blank"></a>

7.順序限制配置:

<a href="http://s3.51cto.com/wyfs02/M00/58/02/wKioL1SnsWGhzmxSAAG357nt45Q774.jpg" target="_blank"></a>

設定先啟動webip資源,然後再啟動webserver資源:

<a href="http://s3.51cto.com/wyfs02/M00/58/04/wKiom1SnsL6CJ6DiAALmOs9ouR0686.jpg" target="_blank"></a>

8.位置限制:讓資源偏向運作于某個節點

<a href="http://s3.51cto.com/wyfs02/M01/58/02/wKioL1SnsY6yO8lMAAHJ8hY7LAI282.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M01/58/04/wKiom1SnsOSAJof4AAHjB_XHQ4g311.jpg" target="_blank"></a>

表達式判斷:uname  eq  node1.stu31.com ,偏向于node1節點:

<a href="http://s3.51cto.com/wyfs02/M02/58/02/wKioL1Snsa7zEJ5eAAMcjN6h9gI335.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/58/05/wKiom1SnsQuzztHIAALq9iKij7s747.jpg" target="_blank"></a>

9.配置NFS伺服器

配置nfs伺服器

[root@nfs ~]# mkdir /www/htdocs -pv

[root@nfs ~]# vim /etc/exports

www/htdocs  172.16.31.0/16(rw,no_root_squash)

[root@nfs ~]# service nfs start

[root@nfs ~]# showmount -e172.16.31.12                              

Export list for 172.16.31.12:

/www/htdocs 172.16.31.0/16

建立一個測試網頁:

[root@nfs ~]# echo "page from nfsfilesystem" &gt; /www/htdocs/index.html

用戶端node1挂載nfs檔案系統:

[root@node1 ~]# mount -t nfs 172.16.31.12:/www/htdocs/var/www/html/

[root@node1 ~]# ls /var/www/html/

index.html

通路測試:

[root@nfs ~]# curl http://172.16.31.166

page from nfs filesystem

解除安裝nfs:

[root@node1 ~]# umount /var/www/html/

10.使用叢集圖形化用戶端配置添加存儲資源

添加存儲:

<a href="http://s3.51cto.com/wyfs02/M01/58/05/wKiom1SnsWSAFodqAAILkKc37VE566.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M01/58/02/wKioL1Snsg-RyypXAAKol5Ps5s8759.jpg" target="_blank"></a>

啟動存儲

11.協同限制配置

<a href="http://s3.51cto.com/wyfs02/M01/58/02/wKioL1SnsqaQuRdSAAOMxbch058881.jpg" target="_blank"></a>

順序限制配置:

先啟動webip,然後啟動webstore,最後啟動webserver

<a href="http://s3.51cto.com/wyfs02/M01/58/05/wKiom1SnskSTFfcxAANVM6PerXk239.jpg" target="_blank"></a>

檢視節點IP位址:主節點在node1上

[root@node1 ~]# ip addr show

1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu65536 qdisc noqueue state UNKNOWN

   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

   inet 127.0.0.1/8 scope host lo

   inet6 ::1/128 scope host

      valid_lft forever preferred_lft forever

2: eth0:&lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc pfifo_fast state UP qlen1000

   link/ether 08:00:27:db:35:e6 brd ff:ff:ff:ff:ff:ff

   inet 172.16.31.10/16 brd 172.16.255.255 scope global eth0

   inet 172.16.31.166/16 brd 172.16.31.255 scope global secondary eth0:0

   inet6 fe80::a00:27ff:fedb:35e6/64 scope link

網頁通路:

由于使用的是共享檔案系統,是以通路的網頁是檔案系統中的資源!

本文轉自 dengaosky 51CTO部落格,原文連結:http://blog.51cto.com/dengaosky/1964581,如需轉載請自行聯系原作者