1、基于keepalived的redis系统master双机热备读数据负载均衡设置方案基于keepalived的redis系统master双机热备,读数据负载均衡设置方案=硬件:机器 ip 作用master 192.168.0.2 redis系统的master主机slave1 192.168.0.3 redis系统的slave机器,和master组成双机热备slave2 192.168.0.4 redis系统的slave机器,和slave1构成读数据的负载均衡系统软件:keepalived,下载地址:www.keepalived.orglvs,下载地址:http:/www.linuxvirtual
2、server.orgredis,下载地址:www.redis.iocentos 6.4版本安装:不采用编译安装的方式,使用yum安装1.安装kernel-devel:yum install kernel-devel.这是ipvsadm需要的2.安装lvs:yum install ipvsadm3.安装keepalived:yum install keepalived如果无法联网,请去这里考古寻找自己需要的rpm文件base:update:下面是需要的rpm文件列表截图kernel-devel需要的文件以及需要的证书lvs需要的文件keepalived需要的文件注意,三台机器都需要安装keepa
3、lived配置keepalived:1.centos必要配置:/etc/sysctl.conf文件net.ipv4.ip_forward=1#转发开启2.keepalived必要配置:master修改/etc/keepalived/keepalived.conf为如下plainview plaincopy1. ! Configuration File for keepalived2. 3. global_defs 4. notification_email 5. 邮箱6. 7. notification_email_from 邮箱8. smtp_server 邮箱服务器地址9. smtp_co
4、nnect_timeout 3010. router_id LVS_DEVEL11. 12. vrrp_instance VI_1 13. state MASTER14. interface eth0 #eth0是要绑定的网卡15. virtual_router_id 100 #同一个vrrp_instance中的值必须一样16. priority 160 #master的值要高于backup的17. advert_int 118. authentication 19. auth_type PASS20. auth_pass 111121. 22. virtual_ipaddress 23.
5、192.168.0.5 #用于双机热备的虚拟ip24. 25. 26. 27. virtual_server 192.168.0.5 6379 28. delay_loop 329. lb_algo wrr30. lb_kind DR31. persistence_timeout 3032. protocol TCP33. real_server 192.168.0.2 6379 34. weight 835. notify_down redis服务失败后要执行的脚本的路径/脚本名 #服务失败后要执行的脚本36. TCP_CHECK 37. connect_timeout 138. nb_ge
6、t_retry 339. delay_before_retry 340. connect_port 637941. 42. 43. slave1修改/etc/keepalived/keepalived.conf为如下plainview plaincopy1. ! Configuration File for keepalived2. 3. global_defs 4. notification_email 5. 邮箱6. 7. notification_email_from 邮箱8. smtp_server 邮箱服务器地址9. smtp_connect_timeout 3010. router
7、_id LVS_DEVEL11. 12. 13. vrrp_instance VI_1 14. state MASTER15. interface eth0 #eth0是要绑定的网卡16. virtual_router_id 100 #同一个vrrp_instance中的值必须一样17. priority 160 #master的值要高于backup的18. advert_int 119. authentication 20. auth_type PASS21. auth_pass 111122. 23. virtual_ipaddress 24. 192.168.0.5 #用于双机热备的虚拟
8、ip25. 26. notify_master 将slave重新转换为slave的脚本27. 28. vrrp_instance VI_2 29. state MASTER #将此slave作为读数据的master30. interface eth031. virtual_router_id 10132. priority 15133. advert_int 134. authentication 35. auth_type PASS36. auth_pass 111137. 38. virtual_ipaddress 39. 192.168.0.6 #用于读取数据的负载均衡的虚拟ip40.
9、41. 42. virtual_server 192.168.0.5 6379 43. delay_loop 344. lb_algo wrr45. lb_kind DR46. persistence_timeout 3047. protocol TCP48. real_server 192.168.0.2 6379 49. weight 150. notify_down redis服务失败后要执行的脚本的路径/脚本名 #服务失败后要执行的脚本51. TCP_CHECK 52. connect_timeout 153. nb_get_retry 254. delay_before_retry
10、155. connect_port 637956. 57. 58. real_server 192.168.0.3 6379 59. weight 860. TCP_CHECK 61. connect_timeout 1062. nb_get_retry 363. delay_before_retry 364. connect_port 637965. 66. 67. 68. virtual_server 192.168.0.6 6379 69. delay_loop 370. lb_algo wrr71. lb_kind DR72. persistence_timeout 3073. pro
11、tocol TCP74. real_server 192.168.0.2 6379 75. weight 876. TCP_CHECK 77. connect_timeout 1078. nb_get_retry 379. delay_before_retry 380. connect_port 637981. 82. 83. real_server 192.168.0.3 6379 84. weight 785. TCP_CHECK 86. connect_timeout 1087. nb_get_retry 388. delay_before_retry 389. connect_port
12、 637990. 91. 92. slave2修改/etc/keepalived/keepalived.conf为如下plainview plaincopy1. ! Configuration File for keepalived2. 3. global_defs 4. notification_email 5. 邮箱6. 7. notification_email_from 邮箱8. smtp_server 邮箱服务器地址9. smtp_connect_timeout 3010. router_id LVS_DEVEL11. 12. vrrp_instance VI_2 13. state
13、 BACKUP14. interface eth015. virtual_router_id 10116. priority 14917. advert_int 118. authentication 19. auth_type PASS20. auth_pass 111121. 22. virtual_ipaddress 23. 192.168.0.624. 25. 26. virtual_server 192.168.0.6 6379 27. delay_loop 328. lb_algo wrr29. lb_kind DR30. persistence_timeout 3031. pro
14、tocol TCP32. real_server 192.168.0.2 6379 33. weight 834. TCP_CHECK 35. connect_timeout 1036. nb_get_retry 337. delay_before_retry 338. connect_port 637939. 40. 41. real_server 192.168.0.3 6379 42. weight 743. TCP_CHECK 44. connect_timeout 1045. nb_get_retry 346. delay_before_retry 347. connect_port
15、 637948. 49. 50. 配置redis:master无需特殊配置 slave1则设置为master的从机slave2则需要设置为192.168.0.5的从机,否则在master失效后slave2会无法继续读取数据需要的脚本:在master执行的脚本:plainview plaincopy1. #!/usr/bin/env bash2. ervice keepalived stop #需要用户具有权限,不中断keepalived服务虚拟ip无法转移在slave1执行的脚本:plainview plaincopy1. #!/usr/bin/env bash2. 3. /usr/local
16、/bin/redis-cli -h 127.0.0.1 -p 6379 slaveof NO ONE #将slave1转换为redis的slave1第二个脚本,在master服务重启后将slave1重新转换为slave状态最终效果: 192.168.0.5 提供了redis的双机热备服务,192.168.0.6则提供了数据读取的负载均衡plainview plaincopy1. #!/usr/bin/env bash2. 3. /usr/local/bin/redis-cli slaveof 192.168.0.2 6379 #将slave1重新转换为redis的slave需要注意,maste
17、r每次需要先启动redis服务然后再启动keepalived=基于keepalived、redis sentinel的高可用redis集群【修改版】2013年12月12日 综合 共 5289字 字号小中大评论关闭原方案地址原方案硬件机器名IP作用master192.168.0.2redis的master服务器slave1192.168.0.3redis的slave服务器slave2192.168.0.4redis的slave服务器route1192.168.0.5【虚拟IP:192.168.0.7】keepalived和redis sentinel服务器,承载写redis的VIP【虚拟ip】,
18、做写的双机热备的主master指定route2192.168.0.6【虚拟IP:192.168.0.8】keepalived和redis sentinel服务器,承载读redis的VIP,做读的负载均衡和写的双机热备的master备份路由指定详细的keepalived配置,route1! Configuration File for keepalivedglobal_defs notification_email 邮箱 notification_email_from 邮箱 smtp_server 邮箱服务器地址 smtp_connect_timeout 30 router_id LVS_DEV
19、ELvrrp_instance VI_1 state MASTER interface eth1 virtual_router_id 100 priority 150 advert_int 1 authentication auth_type PASS auth_pass 1111 virtual_ipaddress 192.168.0.7 vrrp_instance VI_2 state BACKUP interface eth1 virtual_router_id 101 priority 101 advert_int 1 authentication auth_type PASS aut
20、h_pass 1111 virtual_ipaddress 192.168.0.8 virtual_server 192.168.0.7 6379 delay_loop 3 lb_algo rr lb_kind DR persistence_timeout 15 protocol TCP real_server 192.168.0.4 6379 weight 4 notify_up /home/wind/redis_up.sh MISC_CHECK misc_path /home/wind/redischeck.py 192.168.0.4 6379 misc_timeout 5 real_s
21、erver 192.168.0.2 6379 weight 3 notify_up /home/wind/redis_up.sh MISC_CHECK misc_path /home/wind/redischeck.py 192.168.0.2 6379 misc_timeout 5 real_server 192.168.0.3 6379 weight 3 notify_up /home/wind/redis_up.sh MISC_CHECK misc_path /home/wind/redischeck.py 192.168.0.2 6379 misc_timeout 5 virtual_
22、server 192.168.0.8 6379 delay_loop 3 lb_algo wrr lb_kind DR persistence_timeout 30 protocol TCP real_server 192.168.0.2 6379 weight 8 TCP_CHECK connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 6379 real_server 192.168.0.3 6379 weight 2 TCP_CHECK connect_timeout 10 nb_get_retry 3 d
23、elay_before_retry 3 connect_port 6379 real_server 192.168.0.4 6379 weight 2 TCP_CHECK connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 6379 route2的配置文件! Configuration File for keepalivedglobal_defs notification_email # xieqj #shanghq notification_email_from xieqj smtp_server smtp_connect_timeout 30 router_id LVS_DEVELvrrp_instance VI_1 state BACKUP interface eth1 virtual_router_id 100 priority 100
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1