日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

lvs和HA的高可用性

發布時間:2023/11/29 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 lvs和HA的高可用性 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Heartbeat實現Lvs高可用和HA高可用

效果圖如下

1heartbeat的介紹

Heartbeat?項目是?Linux-HA?工程的一個組成部分,它實現了一個高可用集群系統。心跳服務和集群通信是高可用集群的兩個關鍵組件,在?Heartbeat?項目里,由?heartbeat?模塊實現了這兩個功能。下面描述了?heartbeat?模塊的可靠消息通信機制,并對其實現原理做了一些介紹

heartbeat?Linux-HA)的工作原理:heartbeat最核心的包括兩個部分,心跳監測部分和資源接管部分,心跳監測可以通過網絡鏈路和串口進行,而且支持冗?余鏈路,它們之間相互發送報文來告訴對方自己當前的狀態,如果在指定的時間內未受到對方發送的報文,那么就認為對方失效,這時需啟動資源接管模塊來接管運?行在對方主機上的資源或者服務。[1]

高可用集群是指一組通過硬件和軟件連接起來的獨立計算機,它們在用戶面前表現為一個單一系統,在這樣的一組計算機系統內部的一個或者多個節點停止工作,服務會從故障節點切換到正常工作的節點上運行,不會引起服務中斷。從這個定義可以看出,集群必須檢測節點和服務何時失效,何時恢復為可用。這個任務通常由一組被稱為心跳的代碼完成。在Linux-HA里這個功能由一個叫做heartbeat的程序完成。

消息通信的模型

 Heartbeat包括以下幾個組件:?

heartbeat?–?節點間通信校驗模塊?  

CRM?-?集群資源管理模塊? 

CCM?-?維護集群成員的一致性? 

LRM?-?本地資源管理模塊? 

StonithDaemon?-?提供節點重啟服務? 

logd?-?非阻塞的日志記錄? 

apphbd?-?提供應用程序級的看門狗計時器?

  Recovery?Manager?-?應用故障恢復?

2、實現web服務器的高可用性

1)基本的網卡配置參數略

[root@hua1?~]#?vim?/etc/sysconfig/network?(改主機名)

[root@hua1?~]#?hostname?hua1.a.com?(使主機名立即生效)

[root@hua1?~]#?vim?/etc/hosts?(配置dns指向)

192.168.145.99??????hua1.a.com

192.168.145.100?????hua2.a.com

2)實現heartbeat高可用需要一些軟件實現,需要安裝上去

[root@hua2?~]#?mount?/dev/cdrom?/mnt/cdrom/

[root@hua1?~]#?yum?localinstall?heartbeat-2.1.4-9.el5.i386.rpm?heartbeat-pils-2.1.4-10.el5.i386.rpm?heartbeat-stonith-2.1.4-10.el5.i386.rpm?perl-MailTools-1.77-1.el5.noarch.rpm?libnet-1.1.4-3.el5.i386.rpm?--nogpgcheck?(localinstall本地安裝,--nogpgcheck,無簽名檢測)

[root@hua1?~]#?rpm?-pql?heartbeat-2.1.4-9.el5.i386.rpm?(查看解壓后的文件夾有那些。)

[root@hua1?~]#?cd?/etc/ha.d/?(這個目錄是heartbeat的主配置目錄)

[root@hua1?ha.d]#?cd?/usr/share/doc/heartbeat-2.1.4/?(安裝后的配置文件)

3[root@hua1?heartbeat-2.1.4]#?cp?ha.cf?authkeys?haresources??/etc/ha.d/?(把配置文件拷貝過來)

4[root@hua1?ha.d]#?vim?ha.cf??(編輯這個心跳文件參數,編輯如下)

95?bcast???eth1???(心跳線的網卡用廣播形式)

213?node????hua1.a.com??

214?node????hua2.a.com?(兩個節點的地址)

5[root@hua1?~]#?dd?if=/dev/random?bs=512?count=1?|openssl?md5?(隨機產生一個參數用md5加密)

0+1?records?in

0+1?records?out

128?bytes?(128?B)?copied,?0.000308478?seconds,?415?kB/s

9bf2f23aae3a63c16ea681295ffd7666

6[root@hua1?ha.d]#?vim?authkeys?(編輯認證文件)

auth?3

3?md5?9bf2f23aae3a63c16ea681295ffd7666

[root@hua1?ha.d]#?chmod?600?authkeys??(改變它的權限為600,不然重啟不成功)

7[root@hua1?ha.d]#?vim?haresources?(編輯資源文件)

45?hua1.a.com??192.168.145.101/24/eth0??httpd?

8[root@hua1?ha.d]#?cp?/etc/init.d/httpd?/etc/ha.d/resource.d/?(把httpd的服務器腳本拷貝過來,因為http已經不需要自己啟動了,它受heartbeat的控制)

[root@hua2?ha.d]#?service?httpd?status?(保證它是關閉的)

httpd?已停

9)編輯apache的網頁,兩臺都要編輯

[root@hua2?ha.d]#?cd?/var/www/html/

[root@hua2?html]#?ll

總計?4

-rw-r--r--?1?root?root?5?12-27?19:19?index.html

[root@hua2?html]#?more?index.html?

hua3

[root@hua1?~]#?cd?/var/www/html/

[root@hua1?html]#?ll

total?4

-rw-r--r--?1?root?root?4?Dec?27?20:01?index.html

[root@hua1?html]#?more?index.html?

123

[root@hua1?heartbeat]#?service?httpd?stop

[root@hua1?heartbeat]#?chkconfig?httpd?off

9)現在可以啟用heartbeat的服務,觀察日志

[root@hua1?~]#?tail?-f?/var/log/messages

[root@hua1?html]#?service?httpd?status?(這時http服務已經啟動了)

httpd?(pid??5021)?is?running...

[root@hua1?html]#?ifconfig?(這時查看端口發現已經把vip地址資源掙用過來了)

10)另一臺啟動失敗,主要原因是沒改權限

[root@hua2?html]#?chmod?600?/etc/ha.d/authkeys?

[root@hua2?html]#?service?heartbeat?start

logd?is?already?running

Starting?High-Availability?services:?

2012/12/29_02:19:34?INFO:??Resource?is?stopped

???????????????????????????????????????????????????????????[確定]

11)模式失效

[root@hua1?ha.d]#?cd?/usr/lib/heartbeat/?????(/usr/share/heartbeat

這兩個目錄都可以模擬

[root@hua1?heartbeat]#?./hb_standby?(模擬斷掉)

[root@hua2?html]#?watch?-n?1?"service?httpd?status"?(動態觀察http的狀態)

[root@hua2?html]#?ifconfig?(查看地址已經沒有了,跑到另一臺機器上去了)

[root@hua1?heartbeat]#?./hb_takeover??(模擬有好了,能把資源又征用過來了)

[root@hua1?heartbeat]#?pwd

/usr/lib/heartbeat

3、實現director的高可用性

1)配置基本的網卡,還有一個虛擬的vip網卡地址,掩碼是255.255.255.255(兩臺都一樣)

[root@mail?~]#?route?-n

2)root@mail?~]#?route?add?-host?192.168.145.101?dev?lo:0?(添加一條特殊路由,指向vip的地址)

3)原來做的基礎上把所做過的服務停掉

[root@hua1?~]#?service?heartbeat?stop

???????????????????????????????????????????????????????????[確定]

[root@mail?html]#?chkconfig?--list?httpd

httpd?????????? 0:關閉 1:關閉 2:關閉 3:關閉 4:關閉 5:關閉 6:關閉

[root@mail?html]#?service?httpd?stop

停止?httpd:???????????????????????????????????????????????[確定]

4)現在是控制ipvsadm的服務了

[root@hua2?~]#?vim?/etc/yum.repos.d/rhel-debuginfo.repo?

[root@hua2?~]#?cd?/mnt/cdrom/Cluster

[root@hua2?Cluster]#?yum?install?ipvsadm-1.24-10.i386.rpm?

[root@hua1?~]#?cp?/etc/init.d/ipvsadm?/etc/ha.d/resource.d/

[root@hua1?~]#?ipvsadm?-C

[root@hua1?~]#?ipvsadm?-A?-t?192.168.145.101?-s?rr

Zero?port?specified?for?non-persistent?service

[root@hua1?~]#?ipvsadm?-A?-t?192.168.145.101:80?-s?rr

[root@hua1?~]#?ipvsadm?-a?-t?192.168.145.101:80?-r?192.168.145.200?-g

[root@hua1?~]#?ipvsadm?-a?-t?192.168.145.101:80?-r?192.168.145.201?-g

[root@hua1?~]#?ipvsadm?-ln

[root@hua1?~]#?service?ipvsadm?save

scp?hua1.a.com:/etc/sysconfig/ipvsadm?/etc/sysconfig/ipvsadm?(把一臺的配置拷貝到另一個服務器上了)

4、實現動態的轉發規則表

意義:就是當后方的所管理的服務器有異常時,就能被前方的管理集群所察覺到,并作出相應的改變。

1)需要一個軟件包,安裝上去。

[root@hua1?~]#?yum?localinstall?heartbeat-ldirectord-2.1.4-9.el5.i386.rpm?--nogpgcheck

[root@hua1?~]#?rpm?-pql?heartbeat-ldirectord-2.1.4-9.el5.i386.rpm?

2[root@hua1?~]#?cp?/etc/init.d/ldirectord?/etc/ha.d/resource.d/?(把要管理的服務器腳本拷貝過去)

3[root@hua1?~]#?cp?/usr/share/doc/heartbeat-ldirectord-2.1.4/ldirectord.cf?/etc/ha.d/

4[root@hua1?~]#?vim?/etc/ha.d/ldirectord.cf??

5[root@hua1?~]#?vim?/etc/ha.d/haresources

hua1.a.com?192.168.145.101/24/eth0?ldirectord::ldirectord.cf

6)兩臺的web服務器要根據ldirector上的東西編寫測試頁面。

[root@hua1?~]#?cd?/var/www/html/

[root@hua1?html]#?echo?"yes"?>.hua.htm

7)做完后不用重啟,能夠自動加載,這時查看規則已經能查看到了,因為這時檢測不到后方的web工作

8)然后開啟一個web的服務就能發現權值變成了1.

[root@mail?html]#?service?httpd?start

9)如何在編輯/etc/ha.d/ldirectord.cf???這個文件時,把quiescent?(靜默模式)改為了no,如何發現后方的檢測頁面不能檢測到則會把規則直接刪掉

[root@mail?html]#?service?httpd?stop?(把一臺的服務停掉,然后就發現,規則沒有了)

轉載于:https://blog.51cto.com/yudonghua/1104026

總結

以上是生活随笔為你收集整理的lvs和HA的高可用性的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。