magent是一款開源的代理服務(wù)軟件,我們可以通過它來實現(xiàn)緩存數(shù)據(jù)的同步,當(dāng)然這里說的同步不是說memcached之間就能互相通訊了, 而magent可以同時連接多個memcached節(jié)點, 通過magent綁定的VIP從客戶端登錄memcached寫入數(shù)據(jù),其他節(jié)點的memcached數(shù)據(jù)也會同步。
企業(yè)建站必須是能夠以充分展現(xiàn)企業(yè)形象為主要目的,是企業(yè)文化與產(chǎn)品對外擴展宣傳的重要窗口,一個合格的網(wǎng)站不僅僅能為公司帶來巨大的互聯(lián)網(wǎng)上的收集和信息發(fā)布平臺,成都創(chuàng)新互聯(lián)公司面向各種領(lǐng)域:報廢汽車回收等成都網(wǎng)站設(shè)計、營銷型網(wǎng)站解決方案、網(wǎng)站設(shè)計等建站排名服務(wù)。
環(huán)境說明:
1、配置 memcache 主緩存節(jié)點和從緩存節(jié)點(兩臺服務(wù)器配置相同)
yum install gcc gcc-c++ make -y
1、tar zxvf memcached-1.5.6.tar.gz -C /opt/
2、tar zxvf libevent-2.1.8-stable.tar.gz -C /opt/
3、mkdir /opt/magent
tar zxvf magent-0.5.tar.gz -C /opt/magent/
2、編譯安裝
cd /opt/libevent-2.1.8-stable
./configure --prefix=/usr/
make && make install
cd /opt/memcached-1.5.6
./configure \
--with-libevent=/usr
make && make install
3、創(chuàng)建軟連接
ln -s /usr/lib/libevent-2.1.so.6 /usr/lib64/libevent-2.1.so.64、部署主服務(wù)器 ----- 安裝 magent代理,從服務(wù)器不需要
cd /opt/magent
vim ketama.h
在開頭處增減以下代碼:
#ifndef SSIZE_MAX
#define SSIZE_MAX 32767
#endif
vim Makefile
LIBS = -levent -lm //加上 -lm
5、修改完成后 make 編譯
6、此時,make完成后,就會產(chǎn)生 magent可執(zhí)行程序
7、將這個 magent 程序復(fù)制到path環(huán)境變量中
cp magent /usr/bin/8、可以將安裝好的 magent 復(fù)制到從服務(wù)器,這樣從服務(wù)器就不需要再配置了
yum install openssh-clients -y //安裝工具包
scp magent root@192.168.220.135:/usr/bin/9、在主從服務(wù)器上都安裝 keepalived,并部署
(1)主服務(wù)器
yum install keepalived -y //安裝keepalived修改配置文件:
vim /etc/keepalived/keepalived.conf
//定義一個函數(shù),建議寫在最前面
vrrp_script magent {
script "/opt/shell/magent.sh"
interval 2
}
做如下修改:
router_id MAGENT_HA //修改id名
interface ens33 //修改網(wǎng)卡信息
virtual_ipaddress {
192.168.220.100 //定義好虛擬ip地址
}
vrrp_instance VI_1 {
.....
//調(diào)用函數(shù).以下三行代碼寫在vrrp模塊內(nèi)
track_script {
magent
}
.....
}
(2)從服務(wù)器
vim /etc/keepalived/keepalived.conf
做如下修改:
router_id MAGENT_HB //id名和第一臺要不一樣
state BACKUP //從服務(wù)器
virtual_router_id 52 //id號和第一臺不一樣
priority 90 //優(yōu)先級低與主服務(wù)器
10、配置主、從服務(wù)器腳本
(1)創(chuàng)建一個腳本
mkdir /opt/shell(2)編寫
vim magent.sh
#!/bin/bash
K=`ps -ef | grep keepalived | grep -v grep | wc -l`
if [ $K -gt 0 ]; then
magent -u root -n 51200 -l 192.168.220.100 -p 12000 -s 192.168.220.137:11211 -b 192.168.220.135:11211
else
pkill -9 magent
fi
//
-n 51200 //定義用戶最大連接數(shù)
-l 192.168.220.100 //指定虛擬IP
-p 12000 //指定端口號
-s //指定主緩存服務(wù)器
-b //指定從緩存服務(wù)器(3)給腳本添加一個執(zhí)行權(quán)限
chmod +x magent.sh
systemctl stop firewalld.service //必須關(guān)閉否則magent不啟動
setenforce 0(4)開啟 keepalived 服務(wù)
systemctl start keepalived.service
netstat -anpt | grep 12000 //確認(rèn)magent運行,端口正常運行
(5)驗證主從 :
1、主服務(wù)器 ----- 查看 /var/log/messages 文件,找到關(guān)鍵詞:Transition to MASTER STATE
2、從服務(wù)器 ----- 找到關(guān)鍵詞:Entering BACKUP STATE
(6) ip addr 命令 ----- 確定漂移地址生效
第五步:啟動主 、從服務(wù)器
(1)啟動主服務(wù)器:
memcached -m 512k -u root -d -l 192.168.220.137 -p 11211(2)啟動從服務(wù)器:
memcached -m 512k -u root -d -l 192.168.220.135 -p 11211
netstat -anptu | grep 11211
第六步:客戶機測試
先安裝 Telnet 工具:
yum install telnet -y測試:
1、使用漂移地址登錄連接:
2、我們在客戶機上操作,寫入一個數(shù)據(jù),同時觀察主、從服務(wù)器上是否會同步生成:
(1)主服務(wù)器:
(2)從服務(wù)器:
3、雙機熱備:
(1)停掉主服務(wù)器:
systemctl stop keepalived.service(2)客戶機依舊可以連接:
網(wǎng)站標(biāo)題:Memcached+Magent+keepalived高可用集群
網(wǎng)址分享:http://www.chinadenli.net/article10/gshjgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、云服務(wù)器、軟件開發(fā)、品牌網(wǎng)站建設(shè)、面包屑導(dǎo)航、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)