MHA故障切换脚本master_ip_failover结合VIP
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,MHA故障切换脚本master_ip_failover结合VIP:#!/usr/bin/env perluse strict;use warnings FATAL => 'all';use Getop
千家信息网最后更新 2026年10月31日MHA故障切换脚本master_ip_failover结合VIP
MHA故障切换脚本master_ip_failover结合VIP:
#!/usr/bin/env perluse strict;use warnings FATAL => 'all';use Getopt::Long;my ( $command, $ssh_user, $orig_master_host, $orig_master_ip, $orig_master_port, $new_master_host, $new_master_ip, $new_master_port, $new_master_user, $new_master_password, $app_vip, $netmask, $interface, );GetOptions( 'command=s' => \$command, 'ssh_user=s' => \$ssh_user, 'orig_master_host=s' => \$orig_master_host, 'orig_master_ip=s' => \$orig_master_ip, 'orig_master_port=i' => \$orig_master_port, 'new_master_host=s' => \$new_master_host, 'new_master_ip=s' => \$new_master_ip, 'new_master_port=i' => \$new_master_port, 'new_master_user=s' => \$new_master_user, 'new_master_password=s' => \$new_master_password, 'app_vip=s' => \$app_vip, 'netmask=i' => \$netmask, 'interface=s' => \$interface,);my $ssh_start_vip = "sudo ip addr add $app_vip dev $interface";my $ssh_stop_vip = "sudo ip addr delete $app_vip dev $interface";my $ssh_flush_arp = "sudo arping -c 4 -A -I $interface $app_vip";exit &main();sub main { print "\n\nIN SCRIPT TEST====$ssh_stop_vip==$ssh_start_vip===\n\n"; if ( $command eq "stop" || $command eq "stopssh" ) { my $exit_code = 1; eval { print "Disabling the app_vip on old master: $orig_master_host \n"; &stop_vip(); $exit_code = 0; }; if ($@) { warn "Got Error: $@\n"; exit $exit_code; } exit $exit_code; } elsif ( $command eq "start" ) { my $exit_code = 10; eval { print "Enabling the app_vip on the new master - $new_master_host \n"; &start_vip(); $exit_code = 0; }; if ($@) { warn $@; exit $exit_code; } exit $exit_code; } elsif ( $command eq "status" ) { print "Checking the Status of the script.. OK \n"; #`ssh $ssh_user\@cluster1 \" $ssh_start_vip \"`; exit 0; } else { &usage(); exit 1; }}# A simple system call that enable the app_vip on the new mastersub start_vip() { `ssh $ssh_user\@$new_master_host \" $ssh_start_vip \"`; `ssh $ssh_user\@$new_master_host \" $ssh_flush_arp \"`;}# A simple system call that disable the app_vip on the old_mastersub stop_vip() { return 0 unless ($ssh_user); `ssh $ssh_user\@$orig_master_host \" $ssh_stop_vip \"`;}sub usage { print "Usage: master_ip_failover --command=start|stop|stopssh|status --orig_master_host=host --orig_master_ip=ip --orig_master_port=port --new_master_host=host --new_master_ip=ip --new_master_port=port\n";}
故障
脚本
切换
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技名片
湖北九亚互联网络科技有限公司
深圳九邦互联网科技有限公司
湖南永感互联网科技有限公司
广州百单互联网科技有限公司
A股互联网金融科技公司
金融科技创新监管互联网金融
智网互联网科技
上海万想互联网科技
互联网科技公司做什么
互联网实体化科技化
栖莱科技互联网股份有限公司
民营互联网公司国防科技
天津腾达互联网科技有限公司
互联网行业科技股
城市宝互联网科技有限公司
互联网科技年终奖
下一代互联网重大应用科技园
三亚科技创新互联网基地
杭州科技互联网公司有哪些
互联网科技股票
北京禾田雨橡互联网科技
成都仁贤领冠互联网科技有限公司
新华互联网科技2019
荆州市昕露互联网络科技有限公司
互联网科技产业特征
注册互联网科技公司经营范围大全
江苏互联网智能科技产品出厂价
中国科技和美国互联网
科技发展第三阶段互联网时代