亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Centos7 下實現 memcached + keepalived 高可用群集

發布時間:2020-07-13 02:59:48 來源:網絡 閱讀:631 作者:Cher1shDan 欄目:數據庫

memcached + keepalived 高可用群集

memcached介紹

Memcached是一套開源的高性能分布式內存對象緩存系統,它將所有的數據都存
儲在內存中,因為在內存中會統一維護一張巨大的Hash表,所以支持任意存儲類型的
數據。很多網站通過使用 Memcached提高網站的訪問速度,尤其是對于大型的需要頻
繁訪問數據的網站。
Memcached是典型的C/S架構,因此需要安裝 Memcached服務端與 Memcached
API客戶端。 Memcached服務端是用C語言編寫的,而 Memcached API客戶端可以用
任何語言來編寫,如PHP、 Python、Perl等,并通過 Memcached協議與 Memcached服
務端進行通信。

memcached主從復制+keepalived高可用框架介紹

Memcached服務器修改數據都會被同步到
另外一臺,但是 Memcached API客戶端是無法判斷連接到哪一臺 Memcached服務
器的,所以需要設置VP地址,提供給 Memcached Apl客戶端進行連接。可以使用
keepalived產生的VP地址連接主 Memcached服務器,并且提供高可用架構。

因為 Memcached主從復制這種架構,在程序連接主服務
器,在前端加VP地址,實現高可用架構。這里用 Keepalived實現,因而
Keepalived的作用是用來檢測 Memcached服務器的狀態是否正常。
Keepalived不斷檢測 Memcached主服務器的11211端口,如果檢測到 Memcached
服務發生宕機或者死機等情況,就會將VP從主服務器移至從服務器,從而實現
Memcached的高可用性。

實驗準備

一臺主服務器
需要安裝 magent memcached libevent keepalived
一臺從服務器
需要安裝 memcached libevent keepalived

實驗步驟

在主服務器和從服務器上安裝memcached 和 libevent

tar xzvf memcached-1.5.6.tar.gz
tar xzvf libevent-2.1.8-stable.tar.gz

cd libevent-2.1.8
./configure --prefix=/usr    ##指定安裝路徑

make && make install   

cd memcached-1.5.6
./configure --with-libevent=/usr

make && make install

ln -s /usr/lib/libevent-2.1.so.6 /usr/lib64/libevent-2.1.so.6    ##主服務器上magent服務需要這個模塊

在主服務器上安裝magent

mkdir /magent
tar xzvf magent-0.5.tar.gz

cd /magent
vim ketama.h
修改
#ifndef SSIZE_MAX
#define SSIZE_MAX 32767

vim Makefile
LIBS = -levent -lm

make

cp magent /usr/bin   ##方便系統識別命令

在主服務器上把magent 復制到從服務器上

yum install openssh-clients
scp magent root@192.168.x.x:/usr/bin

在主服務器上安裝keepalived

vim /etc/keepalived/keepalived.conf
router—_id MAGENT_HA
刪除
   vrrp_skip_check_adv_addr
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0

定義新函數
vrrp_script magent{
script"/opt/shell/magent.sh"
 interval 2       ##時間間隔
}

修改vrrp_instance下面
INTERFACE ens33
添加
track_script {
    magent
}        ## 使用新函數

定義一個虛擬IP
virtual_ipaddress {
    192.168.x.x
    }

下面多余的部分可以全部刪除

在從服務器上安裝keepalived

yum install keepalived 

從主服務器上把配置腳本復制到從服務器上
scp /etc/keepalived/keepalived.conf root@192.168.x.x.:/etc/keepalived/keepalived.conf

vim /etc/keepalived
router_id MAGENT_HB
state BACKUP     ##從服務器
virtual_router_id 52    ##ID不同
priortity 90     ##優先級

在主服務器上配置 magent腳本

mkdir /opt/shell
 vim /opt/shell/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.x.x -p 12000 -s 192.168.x.x:11211 -b 192.168.x.x:11211
else
pkill -9 magent
fi

-n 51200 //定義用戶最大連接數
-l 192.168.x.x //指定虛擬IP
-p 12000  //指定端口號
-s //指定主緩存服務器
-b //指定從緩存服務器

chmod +x magent.sh

在從服務器上配置 magent腳本

mkdir /opt/shell
 vim /opt/shell/magent.sh
 #!/bin/bash
 K=`ip addr | grep 192.168.x.x(虛擬IP) | grep -v grep | wc -l`
if [ $K -gt 0 ]; then
        magent -u root -n 51200 -l 192.168.x.x -p 12000 -s 192.168.x.x:11211 -b 192.168.x.x:11211
else
pkill -9 magent
fi  

chmod +x magent.sh

主從服務器開啟keepalived服務

systemctl start keepalived.service

netstat -ntap |grep 12000

如果有12000端口表示服務開啟成功

登錄memcached服務器

memcached -m 512k -u root -d -l 192.168.xx 主 -p  11211
memcached -m 512k -u root -d -l 192.168.x.x 從 -p  11211

netstat -ntap |grep 11211

有11211端口表示服務開啟成功

測試

在第三臺服務器上安裝 telnet
yum install telnet -y

telnet 192.168.x.x(虛擬IP) 12000
add username 0 0 7
1234567
Stored 
quit
## 通過虛擬IP登錄 并創建一個用戶

telnet 192.168.x.x(主/從服務器) 11211
get username
VALUE username 0 7
1234567
END
quit
##  在主從服務器上都能得到這個數據

在主服務器上關掉 memcached
pkill -9 memcached

192.168.x.x(虛擬IP) 12000
add username 0 0 7
1234567
Stored 
quit
## 通過虛擬IP 寫入數據

telnet 192.168.x.x(從服務器) 11211
get username
VALUE username 0 7
1234567
END
quit
## 從服務器依然能讀取到

至此 memcached+keepalived 高可用群集完成

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

项城市| 鄂托克前旗| 灵寿县| 博湖县| 赤水市| 丽江市| 清水河县| 大荔县| 柯坪县| 福州市| 班戈县| 新闻| 屯昌县| 古蔺县| 大关县| 化州市| 无为县| 剑河县| 桑植县| 阿鲁科尔沁旗| 京山县| 哈尔滨市| 牟定县| 台中市| 乌拉特前旗| 隆昌县| 和龙市| 喀喇| 金山区| 鹤峰县| 雅江县| 贵德县| 灵石县| 政和县| 泸定县| 普安县| 广安市| 和田县| 乐山市| 惠来县| 栾川县|