成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

使用keepalived全面實現(xiàn)高可用

BingqiChen / 2808人閱讀

為什么要用Keepalived來實現(xiàn)負(fù)載均衡器高可用,這里只拿HaProxy負(fù)載均衡器來進行說明:

對于所有懂運維的小伙伴來說,都應(yīng)該知道,無論后端的服務(wù)器都強大,這里的后端服務(wù)器說的是真正提供服務(wù)的主機,負(fù)載均衡器后面有緩存服務(wù)器,緩存服務(wù)器后面才是真正提供服務(wù)的服務(wù)器。而這個服務(wù)器小編稱它為"后端服務(wù)器",而在這后端服務(wù)器后面是我們的數(shù)據(jù)緩存服務(wù)器,之后是數(shù)據(jù)庫,也是整個企業(yè)的命脈。這整個架構(gòu)是非常龐大的,其中的每一個角色都很重要而且必不可少,所以,這里的每一個角色都不可能只是一臺服務(wù)器,它們會是多臺服務(wù)器組成的集群,通過集群技術(shù)可以在付出較低成本的情況下獲得在性能、可靠性、靈活性方面的相對較高的收益。

當(dāng)集群組成之后,它們不可能一臺一臺的開放給用戶,若真要這么做,那么每一臺后端服務(wù)器都要配一個公網(wǎng)地址,并且拿web網(wǎng)站來說,用戶訪問網(wǎng)站要么是輸入網(wǎng)站的域名跳轉(zhuǎn)進來,要么就是通過點擊其他頁面中的內(nèi)容跳轉(zhuǎn)進來,而為每一臺主機配置一個公網(wǎng)地址,要在DNS解析上把這些公網(wǎng)地址都配置成一個域名,這操作是非常非??膳碌?,公網(wǎng)地址是有限的并且是收費的;我們且不談DNS解析及公網(wǎng)地址費用,就拿某貓、某云來說,他們的后端服務(wù)器可不僅僅只有上萬臺,甚至多達千萬臺,這讓每臺提供服務(wù)的機器都有一個公網(wǎng)IP是不現(xiàn)實的。

因此,在這種情況下,我們可以想象,若是能有一臺服務(wù)器只負(fù)責(zé)轉(zhuǎn)發(fā)用戶的訪問請求,而轉(zhuǎn)發(fā)的時候通過一定的算法來判斷用哪個后端server來提供服務(wù),而后端的所有機器全部用私有IP,并且真正提供服務(wù)的后端機器只需要處理請求就可以,無需與用戶直接交互,也減少了服務(wù)器的壓力,一方面也能提升性能。那么這臺服務(wù)器就是

我們的負(fù)載均衡器

而這個負(fù)載均衡器只需要負(fù)責(zé)接收請求并轉(zhuǎn)發(fā)即可,所以,通常一個負(fù)載均衡器所能處理的并發(fā)請求已經(jīng)足以滿足絕大部分企業(yè)的要求。但是,若這個負(fù)載均衡器宕機了呢?即便負(fù)載均衡器后面的服務(wù)器再強大,緩存命中率再高,web服務(wù)器(就是小編說的后端服務(wù)器)處理能力再強、性能再好,數(shù)據(jù)緩存命中再高,數(shù)據(jù)庫的讀寫、并發(fā)等...哪怕后面的服務(wù)器能上天都將無法繼續(xù)提供服務(wù)。所以,基于這種問題,我們勢必要對負(fù)載均衡器來做高可用。

簡單來講,指由兩臺服務(wù)器運行某種同樣的應(yīng)用,為用戶提供服務(wù),當(dāng)某一臺出現(xiàn)問題時,用戶的請求將由另一臺服務(wù)器繼續(xù)提供,從而實現(xiàn)高可用性。

HA的三種工作方式

(1)主從模式(主機和備機)

(2)雙機雙工

(3)集群模式

keepalived

(1)keepalived 基于vrrp協(xié)議來實現(xiàn)HA 的。

vrrp 協(xié)議,可以實現(xiàn)服務(wù)的切換。

(2)keepalived 啟動后會有三個進程:

父進程: 內(nèi)存管理,子進程管理等等

子進程:VRRP 子進程

子進程:healthchecker 子進程

注:healthchecker 子進程負(fù)責(zé)檢查各主機間的主機狀態(tài),當(dāng)發(fā)現(xiàn)某臺主機上的

服務(wù)不可用時,將通知vrrp 子進程,由vrrp 子進程來完成服務(wù)的切換。

keepalived+lvs

網(wǎng)絡(luò)拓?fù)?/p>

五臺虛擬機在同一網(wǎng)絡(luò)段

安裝軟件

client:yum install elinks -y

lvs1 和lvs2:yum install keepalived ipvsadm -y

web1 和web2:yum install httpd -y

在lvs1 上編輯配置文件

(1)vim /etc/keepalived/keepalived.conf

global_defs {

notification_email { ? ? ? ? ? ? ? ?#發(fā)郵件給誰

eroot@localhost

notification_email_from root@localhost ? ? ? ?#誰發(fā)郵件

smtp_server 127.0.0.1 ? ? ? ? ? #簡單郵件傳輸協(xié)議服務(wù)器IP

smtp_connect_timeout 30

router_id node1 ? ? ? ? ? ? ? ? ? #服務(wù)器路由標(biāo)識

vrrp_instance VI_1 { ? ? ? ? ? #實例(instance)

state MASTER ? ? ? ? ? ? ? ? ? #狀態(tài):主機

interface eno33554976 ? ?#虛擬IP 使用的網(wǎng)卡

virtual_router_id 51 ? ? ? ? ? ?#虛擬路由ID 標(biāo)識

priority 100 ? ? ? ? ? ? ? ? ? ? ? ?#優(yōu)先級

advert_int 1 ? ? ? ? ? ? ? ? ? #組播信息發(fā)送間隔

authentication { ? ? ? ? ? ? ? ?#驗證信息

auth_type PASS

auth_pass 1111

virtual_ipaddress { ? ? ? ? ? ? ?#虛擬IP(VIP)

192.168.0.254

(1)vim dr.sh(LVS 采用DR 模式)

#?。痓in/bash

ipvsadm -C

ipvsadm -A -t 192.168.0.254:80 -s rr

ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.2:80 -g

ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.4:80 -g

在lvs2 上編輯配置文件

(1)vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

root@localhost

notification_email_from root@localhost

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id node2

vrrp_instance VI_1 {

state BACKUP

interface eno33554976

virtual_router_id 51

priority 90

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

virtual_ipaddress {

192.168.0.254

(2)vim dr.sh(LVS 采用DR 模式)

#?。痓in/bash

ipvsadm -C

ipvsadm -A -t 192.168.0.254:80 -s rr

ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.2:80 -g

ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.4:80 -g

在web1、web2 上

(1)配置httpd

(2)編輯web.sh 腳本:

vim web.sh

#!/bin/bash

ifconfig lo:0 192.168.0.254 netmask 255.255.255.255 up

route add -h(huán)ost 192.168.0.254 dev lo:0

echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

在lvs1 和lvs2 上運行:systemctl restart keepalived

bash dr.sh

在web1 和web2 上:systemctl restart httpd

bash web.sh

客戶端測試:elinks http://192.168.0.254

可以看到web1 和web2 上的網(wǎng)頁交替出現(xiàn)。

互動區(qū)

* 你對以上內(nèi)容有什么看法?你最關(guān)注云計算哪個趨勢?如果你還有想了解的技術(shù)話題,歡迎留言分享。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/5884.html

相關(guān)文章

  • Nginx+Keepalived實現(xiàn)站點可用

    摘要:在協(xié)議實現(xiàn)里,虛擬路由器使用作為虛擬地址,就是唯一的,這個地址同一時間只有一個物理路由器占用。在虛擬路由器里面的物理路由器組里面通過多播地址來定時發(fā)送通告消息。負(fù)責(zé)健康檢查,包括常見的各種檢查方式。 公司內(nèi)部 OA 系統(tǒng)要做線上高可用,避免單點故障,所以計劃使用2臺虛擬機通過 Keepalived 工具來實現(xiàn) nginx 的高可用(High Avaiability),達到一臺nginx...

    Songlcy 評論0 收藏0
  • MySQL集群搭建(6)-雙主+keepalived可用

    摘要:雙主是一個比較簡單的高可用架構(gòu),適用于中小集群,今天就說說怎么用做的高可用。缺點也比較明顯,就是增加從節(jié)點的情況下,從節(jié)點不會主動切換同步對象,而且腳本需要自己實現(xiàn),有一定風(fēng)險。 雙主 + keepalived 是一個比較簡單的 MySQL 高可用架構(gòu),適用于中小 MySQL 集群,今天就說說怎么用 keepalived 做 MySQL 的高可用。 1 概述 1.1 keepalive...

    CarlBenjamin 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<