一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

memcached 雙機熱備

 文檔集成 2014-11-25

一、需求背景

發(fā)現(xiàn)公司好多項目都用到memched。并且都是單點,memched服務(wù)器 掛了就會影響業(yè)務(wù),于是百度之,發(fā)現(xiàn)memched不可以集群,也沒有看到有什么高可用方案,但是發(fā)現(xiàn)了repcached(memched主從復(fù)制),結(jié)合LVS的NAT模式不同端口轉(zhuǎn)發(fā)實現(xiàn)memched雙機HA,本文章記錄本人的部署過程,從屬實戰(zhàn),沒有文字性的說明,歡迎各位指點。

二、環(huán)境:

1、系統(tǒng)環(huán)境:

	
  1. CentOS release 6.4 (Final) 
2、網(wǎng)絡(luò)環(huán)境

	
  1. 調(diào)度機(master):  
  2. vip:172.28.26.100  
  3. vip1:172.28.16.100(lvs轉(zhuǎn)發(fā)網(wǎng)關(guān)   )  
  4. eth1:172.28.26.101 (內(nèi)網(wǎng))  
  5. eth2:172.28.16.101(lvs轉(zhuǎn)發(fā)網(wǎng)段)  
  6. 調(diào)度機(backup):  
  7. eth1:172.28.26.99 (內(nèi)網(wǎng))  
  8. eth2:172.28.16.99(lvs轉(zhuǎn)發(fā)網(wǎng)段)  
  9. memched備節(jié)點:  
  10. eth1:172.28.26.102 (內(nèi)網(wǎng))  
  11. eth2:172.28.16.102(lvs轉(zhuǎn)發(fā)網(wǎng)段)   
  12. memched主節(jié)點:  
  13. eth1:172.28.26.103 (內(nèi)網(wǎng))  
  14. eth2:172.28.16.103(lvs轉(zhuǎn)發(fā)網(wǎng)段) 
3、路由策略

	
  1. 調(diào)度機(master):  
  2. echo '201      eth1' >> /etc/iproute2/rt_tables  
  3. echo 'default table eth1 via 172.28.26.1 dev eth1' > /etc/sysconfig/network-scripts/route-eth1  
  4. echo 'from 172.28.26.101/255.255.255.255 table eth1' > /etc/sysconfig/network-scripts/rule-eth1  
  5. echo 'from 172.28.26.100/255.255.255.255 table eth1' >> /etc/sysconfig/network-scripts/rule-eth1  
  6. echo 'from 172.28.16.101/32 table ZW_LVS_LAN' > /etc/sysconfig/network-scripts/rule-eth2  
  7. memched節(jié)點1:  
  8. echo 'default table ZW_LVS_LAN via 172.28.16.100' > /etc/sysconfig/network-scripts/route-eth2  
  9. echo 'from 172.28.16.0/24 table ZW_LVS_LAN' > /etc/sysconfig/network-scripts/rule-eth2  
  10. echo '202       ZW_LVS_LAN' >> /etc/iproute2/rt_tables  
  11. memched節(jié)點2:  
  12. echo 'default table ZW_LVS_LAN via 172.28.16.100' > /etc/sysconfig/network-scripts/route-eth2  
  13. echo 'from 172.28.16.0/24 table ZW_LVS_LAN' > /etc/sysconfig/network-scripts/rule-eth2  
  14. echo '202       ZW_LVS_LAN' >> /etc/iproute2/rt_tables 
4、內(nèi)核參數(shù)

	
  1. fs.file-max = 1000000  
  2. kernel.core_uses_pid = 1  
  3. kernel.msgmax = 1048560  
  4. kernel.msgmnb = 1073741824  
  5. kernel.shmall = 4294967296  
  6. kernel.shmmax = 68719476736  
  7. kernel.sysrq = 0  
  8. net.core.netdev_max_backlog = 1048576  
  9. net.core.rmem_default = 2097152  
  10. net.core.rmem_max = 16777216  
  11. net.core.somaxconn = 1048576  
  12. net.core.wmem_default = 2097152  
  13. net.core.wmem_max = 16777216  
  14. net.ipv4.conf.default.accept_source_route = 0  
  15. net.ipv4.conf.default.rp_filter = 1  
  16. net.ipv4.ip_forward = 1  
  17. net.ipv4.ip_local_port_range = 1024    65000  
  18. net.ipv4.neigh.default.gc_thresh1 = 10240  
  19. net.ipv4.neigh.default.gc_thresh2 = 40960  
  20. net.ipv4.neigh.default.gc_thresh3 = 81920  
  21. net.ipv4.tcp_fin_timeout = 1  
  22. net.ipv4.tcp_keepalive_intvl = 15  
  23. net.ipv4.tcp_keepalive_probes = 5  
  24. net.ipv4.tcp_keepalive_time = 30  
  25. net.ipv4.tcp_max_orphans = 3276800  
  26. net.ipv4.tcp_max_syn_backlog = 1048576  
  27. net.ipv4.tcp_max_tw_buckets = 50000  
  28. net.ipv4.tcp_mem = 94500000 915000000 927000000  
  29. net.ipv4.tcp_orphan_retries = 3  
  30. net.ipv4.tcp_reordering = 5  
  31. net.ipv4.tcp_retrans_collapse = 0  
  32. net.ipv4.tcp_retries2 = 5  
  33. net.ipv4.tcp_rmem = 4096        87380   4194304  
  34. net.ipv4.tcp_sack = 1  
  35. net.ipv4.tcp_synack_retries = 1  
  36. net.ipv4.tcp_syncookies = 0  
  37. net.ipv4.tcp_syn_retries = 1  
  38. net.ipv4.tcp_timestamps = 1  
  39. net.ipv4.tcp_tw_recycle = 1  
  40. net.ipv4.tcp_tw_reuse = 1  
  41. net.ipv4.tcp_window_scaling = 1  
  42. net.ipv4.tcp_wmem = 4096        16384   4194304  
  43. net.ipv6.conf.all.disable_ipv6 = 1  
  44. net.ipv6.conf.default.disable_ipv6 = 1  
  45. net.ipv4.conf.eth0.rp_filter = 1 #memched節(jié)點不需要  
  46. net.ipv4.conf.eth1.rp_filter = 1 #memched節(jié)點不需要  
  47. net.ipv4.conf.eth2.rp_filter = 1 #memched節(jié)點不需要  
  48. net.ipv4.conf.all.rp_filter = 0    #memched節(jié)點不需要 
三、服務(wù)安裝
1、調(diào)度機(master、backup)

	
  1. yum -y install ipvsadm keepalived sendmail 
2、memched節(jié)點1、memched節(jié)點2

 


	
  1. wget http://memcached./files/memcached-1.4.15.tar.gz  
  2. wget http://www./~provos/libevent-1.4.13-stable.tar.gz  
  3. wget http://downloads./repcached/memcached-1.2.8-repcached-2.2.tar.gz  

 


  1. tar -zxvf libevent-1.4.13-stable.tar.gz  
  2. cd libevent-1.4.13-stable  
  3. ./configure --prefix=/usr/local  
  4. make  
  5. make install  
  6.  
  7. tar -zxvf memcached-1.4.15.tar.gz  
  8. cd memcached-1.4.15  
  9. ./configure --with-libevent=/usr/local  
  10. make  
  11. make install  
  12.  
  13. tar -zxvf memcached-1.2.8-repcached-2.2.tar.gz  
  14. cd memcached-1.2.8-repcached-2.2  
  15. ./configure  --enable-replication  
  16. make  
  17. make install  
四、keepalived配置(master、backup)
[root@LVS1 keepalived]# cat /etc/keepalived/gobal_module

  1. global configure file  
  2.  
  3. global_defs {   
  4.    notification_email {  
  5.      navyaijm@qq.com  
  6.    }  
  7.    notification_email_from navyaijm@qq.com  
  8.    smtp_server 127.0.0.1  
  9.    smtp_connect_timeout 30  
  10.    router_id ZH_DG_LVS1  
  11. }  
  12.  
  13. [root@LVS1 keepalived]# cat /etc/keepalived/keepalived.conf  
  14. ! Keepalived main configure file  
  15. include /etc/keepalived/gobal_module  
  16. include /etc/keepalived/vrrpd_module  
  17. include /etc/keepalived/lvs_module  
  18.  
[root@LVS1 keepalived]# cat /etc/keepalived/vrrpd_module

  1. vrrp_sync_group ZH_DG_Memcached1 {  
  2.     group {  
  3.         ZH_DG_WAN1  
  4.         ZH_DG_LAN1  
  5.     }  
  6.     smtp_alter  
  7. }  
  8.  
  9. vrrp_instance ZH_DG_WAN1 {   
  10.     state MASTER    (從上為:backup)         
  11.     interface eth1     
  12.     virtual_router_id 10  (從為:9)   
  13.     priority 100    
  14.     advert_int 1   
  15.     authentication {  
  16.         auth_type PASS   
  17.         auth_pass 08756CD0  
  18.     }  
  19.     virtual_ipaddress {  
  20.         172.28.26.100  # vip  
  21.     }  
  22. }  
  23.  
  24.  
  25. vrrp_instance ZH_DG_LAN2 {  
  26.     state MASTER (從上為:backup)  
  27.     interface eth2  
  28.     virtual_router_id 10 (從為:9)  
  29.     priority 100  
  30.     advert_int 1  
  31.     authentication {  
  32.         auth_type PASS  
  33.         auth_pass 6F8DBC2E  
  34.     }  
  35.     virtual_ipaddress {  
  36.         172.28.16.100 # Memcached 虛擬網(wǎng)關(guān)  
  37.     }  

[root@LVS1 keepalived]# cat /etc/keepalived/lvs_module


	
  1. virtual_server 172.28.26.100 11211 {  
  2.     delay_loop 6  
  3.     lb_algo wrr  
  4.     lb_kind NAT  
  5.     persistence_timeout 60  
  6.     protocol TCP  
  7.  
  8.     include /etc/keepalived/realserver/172.28.26.102_11234.conf  
  9.     include /etc/keepalived/realserver/172.28.26.103_11233.conf  
  10. }  
  11.  
  12.  
  13. [root@LVS1 keepalived]# cat /etc/keepalived/realserver/172.28.26.102_11234.conf   
  14. real_server 172.28.16.102 11234 {  
  15.         weight 1                        #權(quán)重  
  16.         inhibit_on_failure              #故障會修改權(quán)重為零  
  17.         TCP_CHECK {  
  18.                 connect_timeout 10      #10秒無響應(yīng)超時  
  19.                 nb_get_retry 3          #重連次數(shù)  
  20.                 delay_before_retry 3    #重連間隔,單位為秒  
  21.                 connect_port 11234         #檢測端口  
  22.         }  
  23. }  
  24.  
  25.  
  26. [root@LVS1 keepalived]# cat /etc/keepalived/realserver/172.28.26.103_11233.conf   
  27. real_server 172.28.16.103 11233 {  
  28.         weight 1                        #權(quán)重  
  29.         inhibit_on_failure              #故障會修改權(quán)重為零  
  30.         TCP_CHECK {  
  31.                 connect_timeout 10      #10秒無響應(yīng)超時  
  32.                 nb_get_retry 3          #重連次數(shù)  
  33.                 delay_before_retry 3    #重連間隔,單位為秒  
  34.                 connect_port 11233         #檢測端口  
  35.         }  

五、啟動服務(wù)

1、keepalived啟動(master和backup)

	
  1. /etc/init.d/keepalived start 
memcached的啟動
主節(jié)點:

	
  1. /usr/local/bin/memcached -d -v -l 0.0.0.0 -p 11233 -X 11244 -uroot (11244是數(shù)據(jù)同步端口) 
備節(jié)點:

	
  1. /usr/local/bin/memcached -d -v -l 0.0.0.0 -p 11234 -uroot -x 172.28.16.103 -X 11244(11234是服務(wù)監(jiān)聽端口,11244是監(jiān)聽數(shù)據(jù)同步端口;-x 指定masterIP,-X指定master數(shù)據(jù)同步監(jiān)聽端口) 

  1. PS:  
  2. 1、如果啟動的時候報錯如下:  
  3. [root@yw_memcached_slave ~]#/usr/local/bin/memcached -d -v -l 0.0.0.0 -p 11233 -X 11244 -uroot  
  4. /usr/local/bin/memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory  
  5. 請yum安裝libeven  
  6. [root@yw_memcached_slave ~]# yum -y install libeven  
  7. 2、repcached是日本人開發(fā)的實現(xiàn)memcached復(fù)制功能,它是一個單 master單 slave的方案,但它的 master/slave都是可讀寫的,而且可以相互同步,如果 master壞掉, slave偵測到連接斷了,它會自動 listen而成為 master;而如果 slave壞掉, master也會偵測到連接斷,它就會重新 listen等待新的 slave加入 ;master沒有搶占功能,如果master掛掉再起來只能是從了,并且永遠只能是從。  

六、測試

1、寫一個php測試文件

vi session.php

				
  1. <?php  
  2. ini_set('session.save_handler''memcached');  
  3. ini_set('session.save_path'"172.28.26.100:11211");  
  4. session_start();  
  5. $_SESSION['aa'] = "bb";  
  6.  
  7. echo session_id();  
  8. ?>  
2、用php執(zhí)行這個文件會得到一個字符串,telnet 172.28.26.100 11211 或者telnet 172.28.26.103 11233再或者telnet 172.28.26.103 11234,如果能得到值說明session已經(jīng)寫入memched,down到任何一臺memched數(shù)據(jù)不會丟。

本文出自 “為了夢想奮斗” 博客,轉(zhuǎn)載請與作者聯(lián)系!
原文地址:http://navyaijm.blog.51cto.com/4647068/1177508

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    九九九热视频免费观看| 在线免费视频你懂的观看| 91人妻丝袜一区二区三区| 欧美一区二区三区播放| 日韩精品免费一区二区三区| 成人精品国产亚洲av久久| 日韩一区二区三区免费av| 成年人免费看国产视频| 中文字幕中文字幕一区二区| 欧美成人免费夜夜黄啪啪| 成人国产激情福利久久| 日本理论片午夜在线观看| 日本一本不卡免费视频| 午夜福利在线观看免费| 国产在线视频好看不卡| 日本东京热加勒比一区二区| 中文字幕亚洲精品人妻| 亚洲高清中文字幕一区二区三区| 91精品蜜臀一区二区三区| 国产又粗又长又大高潮视频| 激情亚洲一区国产精品久久| 日本成人三级在线播放| 欧美日韩国产综合特黄| 极品少妇一区二区三区精品视频 | 亚洲国产黄色精品在线观看| 午夜午夜精品一区二区| 中文字幕精品一区二区三| 国产精品制服丝袜美腿丝袜| 日韩精品成区中文字幕| 深夜少妇一区二区三区| 国产精品亚洲欧美一区麻豆| 国产欧美一区二区三区精品视| 老富婆找帅哥按摩抠逼视频| 国产精品欧美激情在线观看| 中日韩美一级特黄大片| 日本高清二区视频久二区| 亚洲一区二区三区在线中文字幕| 国产精品久久男人的天堂| 国产小青蛙全集免费看| 国产乱人伦精品一区二区三区四区| 亚洲男人的天堂色偷偷|