zoukankan      html  css  js  c++  java
  • 四十五、MHA之VIP漂移

    MHA之VIP漂移介绍

    VIP: Virtual ip
    配置VIP,以便在MHA集群中master主机宕机后,让客户端无需修改数据库地址,通过VIP进行无缝切换。

    注意自带的VIP漂移脚本只能在同网段使用,跨网段不行
    使用keeplived可以跨网段

    配置

    1、在manager上编辑配置文件

    $ vim /etc/mha/app1.cnf
    [server default]
    master_ip_failover_script=/usr/local/bin/master_ip_failover
    ...
    
    $ unzip MHA-2019-6.28.zip
    $ cp master_ip_failover.txt /usr/local/bin/master_ip_failover
    

    指明使用虚拟IP漂移的脚本路径
    master_ip_failover脚本在MHA-2019-6.28.zip中,这里下载

    2、修改master_ip_failover脚本

    vim /usr/local/bin/master_ip_failover
    my $vip = '10.154.0.120/24'; 
    my $key = '1';
    my $ssh_start_vip = "/sbin/ifconfig ens34:$key $vip";
    my $ssh_stop_vip = "/sbin/ifconfig ens34:$key down";
    

    因为虚拟ip是绑定在网卡上的,需要ifconfig查看一下本机网卡名称
    这里要指定一个空闲IP即未使用的ip地址作为虚拟IP
    key为ens34:1中的1,挂在真实网卡下的虚拟网卡编号

    3、改变master_ip_failover编码格式

    $ yum install -y  dos2unix
    $ dos2unix /usr/local/bin/master_ip_failover
    dos2unix: converting file /usr/local/bin/master_ip_failover to Unix format ...
    
    $ chmod +x /usr/local/bin/master_ip_failover 
    

    为什么使用dos2unix转换?因为脚本是在windows下编辑的,换行符不符合unix编码规范,所以要转换为unix换行符编码规范。

    4、手工添加vip

    $ ifconfig ens34:1 10.154.0.120/24
    

    这时就会发现有一块虚拟网卡了


    5、重启MHA

    $ masterha_stop --conf=/etc/mha/app1.cnf
    
    $ nohup masterha_manager 
    --conf=/etc/mha/app1.cnf 
    --remove_dead_master_conf 
    --ignore_last_failover  < /dev/null> /var/log/mha/app1/manager.log 2>&1 &
    
    $ masterha_check_status --conf=/etc/mha/app1.cnf
    app1 (pid:14410) is running(0:PING_OK), master:10.154.0.111
    

    学习来自:B站课程:搭建MHA高可用 P146,《MySQL入门与提高实践》第18章,MySQL-MHA高可用方案

    今天的学习是为了以后的工作更加的轻松!
  • 相关阅读:
    Servlet编程实例1
    Servlet
    JDBC之代码优化
    JDBC数据库编程
    数据库常识
    数据库基本操作
    STM32CUBEMX入门学习笔记3:HAL库以及STM32CUBE相关资料
    QT入门学习笔记2:QT例程
    爬虫制作入门学习笔记2:[转]python爬虫实例项目大全
    中移物联网onenet入门学习笔记2:中移物联的通信格式
  • 原文地址:https://www.cnblogs.com/tz90/p/14671342.html
Copyright © 2011-2022 走看看