KeepAlive + VIP 配置高可用Presto-master主备集群(双活)
思韵闪耀
2020-11-10
0

一、 背景

        本文主要介绍使用 keepalive 实现 presto 的主备高可用

        实验环境:CentOS 6 64 位

 

二、 实验步骤

1. 软件安装

安装keepalive软件包

sudo yum install -y keepalived

presto部署和配置省略,假设进程已经启动,端口监听在8083。

2. 编写presto-master服务存活检测脚本(两台机器都需要)
 

$sudo vim /usr/bin/check_presto_alive.sh

 
  1. #!/bin/sh

  2.  
  3. PATH=/bin:/sbin:/usr/bin:/usr/sbin

  4.  
  5. port_test=`nc -z -v localhost 8083|grep succeeded -c`;

  6.  
  7. if [ $port_test -eq 0 ]

  8. then

  9. echo 'presto server is died'

  10. killall keepalived

  11. fi

$sudo chmod +x /usr/bin/check_presto_alive.sh

2.机器Presto-master1的配置

$sudo vim /etc/keepalived/keepalived.conf

 
  1. ! Configuration File for keepalived

  2.  
  3. vrrp_script check_presto_alive {

  4. script "/usr/bin/check_presto_alive.sh"

  5. interval 3

  6. weight -10

  7. }

  8.  
  9.  
  10. global_defs {

  11. router_id LVS_PRESTO #运行keepalived机器的一个标识

  12. }

  13.  
  14. vrrp_instance VI_1 {

  15. interface eth0 #设置实例绑定的网卡

  16. state MASTER #指定哪个为master,哪个为backup

  17. virtual_router_id 92 #VPID标记,主备必须一样

  18. priority 180 #优先级,高优先级竞选为master

  19. vrrp_unicast_bind 192.168.0.1

  20. vrrp_unicast_peer 192.168.0.2

  21. authentication {

  22. auth_type PASS #认证方式

  23. auth_pass nenad #认证密码

  24. }

  25. virtual_ipaddress {

  26. ## 设置VIP,必须是同一网段虚拟IP

  27. 192.168.0.251

  28. }

  29. track_script {

  30. check_presto_alive #presto存活检查

  31. }

  32.  
  33. }

3.机器Presto-master2的配置

$sudo vim /etc/keepalived/keepalived.conf

 
  1. ! Configuration File for keepalived

  2.  
  3. vrrp_script check_presto_alive {

  4. script "/usr/bin/check_presto_alive.sh"

  5. interval 3

  6. weight -10

  7. }

  8.  
  9.  
  10. global_defs {

  11. router_id LVS_PRESTO #运行keepalived机器的一个标识

  12. }

  13.  
  14. vrrp_instance VI_1 {

  15. interface eth0 #设置实例绑定的网卡

  16. state BACKUP #指定哪个为master,哪个为backup

  17. virtual_router_id 92 #VPID标记,主备必须一样

  18. priority 170 #优先级,高优先级竞选为master

  19. vrrp_unicast_bind 192.168.0.2

  20. vrrp_unicast_peer 192.168.0.1

  21. authentication {

  22. auth_type PASS #认证方式

  23. auth_pass nenad #认证密码

  24. }

  25. virtual_ipaddress {

  26. ## 设置VIP,必须是同一网段虚拟IP

  27. 192.168.0.251

  28. }

  29. track_script {

  30. check_presto_alive #presto存活检查

  31. }

  32.  
  33. }

4.重启 keepalive 生效(两台机器都执行)

$sudo /etc/init.d/keepalived restart

5.验证

用以下命令可以查看VIP已经绑定到特定的网卡上。

$ ip a

本实验验证了 VIP 的自动漂移,实现了presto-master的主备自动切换

注意:修复失败的服务后,必须重启所在机器的keepalive服务,否则keepalive是无法感知到服务恢复!


【版权声明】
本站部分内容来源于互联网,本站不拥有所有权,不承担相关法律责任。如果发现本站有侵权的内容,欢迎发送邮件至masing@13sy.com 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

相关内容

网页保护、网页图片保护
1、禁止另存网页,把如下代码加入到网页body/body中 程序代...
2025-05-30
docker-compos...
1.Compose介绍 DockerCompose是一个用来定义和...
2024-04-26
centos stream...
1、更新系统软件包确保系统已经更新到最新版本,打开终端,执行以下命...
2024-03-30
firewall-cmd ...
firewalld的简要说明:firewalld 、firewal...
2024-03-15
linux(centos7...
linux(centos7)firewalld-cmd查看防火墙状...
2024-03-15
centos7 firew...
1. firewalld1.1 firewalld守护进程fire...
2024-03-15

热门资讯

KeepAlive + VIP... 一、 背景 本文主要介绍使用 keepalive 实现 presto的主备高可用 实验环境:Cent...
容灾中的热备、冷备、双活、两地... 1. 热备:只有主数据中心承担业务,备份数据中心对主数据中心进行实时同步,当主数据中心挂掉,可以自动...
keepalived实现主备服... keepalived是一个类似于layer3, 4 5交换机制的软件,也就是我们平时说的第3层、第4...
两地三中心”和“双活”简介--... 当前市场上常见的容灾模式可分为同城容灾、异地容灾、双活数据中心、两地三中心几种。 1、 同城 容灾 ...
keepalived应用,ke... keepalived高可用 1. keepalived简介 1.1 keepalived是什么? 1...
MySQL 高可用之 keep... 环境描述: [root@MySQL-M ~]# cat /etc/redhat-release Ce...
keepalived原理及配置... keepalived原理及配置介绍 什么是Keepalived呢,keepalived观其名可知,保...
双活数据中心架构分析及优缺点 什么是双活数据中心 ? 首先我们要知道双活就是Active-Active,故名思义就是两边都是活动在...