网络连接配置异常修复后又不行,网络连接配置修复失败

首页 > 实用技巧 > 作者:YD1662023-10-29 15:08:04

6.2在 mysql1 上配置到数据库节点 slave1 和 slave2 的无密码认证

ssh-keygen -t rsa

ssh-copy-id 192.168.88.20

ssh-copy-id 192.168.88.30

6.3在 slave1 上配置到数据库节点 mysql1 和 slave2 的无密码认证

ssh-keygen -t rsa

ssh-copy-id 192.168.88.10

ssh-copy-id 192.168.88.30

6.4在 slave2 上配置到数据库节点 mysql1 和 slave1 的无密码认证

ssh-keygen -t rsa

ssh-copy-id 192.168.88.10

ssh-copy-id 192.168.88.20

7.在 manager 节点上配置 MHA7.1在 manager 节点上复制相关脚本到/usr/local/bin 目录

cp -rp /opt/mha4mysql-manager-0.57/samples/scripts /usr/local/bin

ll /usr/local/bin/scripts/

#拷贝后会有四个执行文件

master_ip_failover #自动切换时 VIP 管理的脚本

master_ip_online_change #在线切换时 VIP 的管理

power_manager #故障发生后关闭主机的脚本

send_report #因故障切换后发送报警的脚本

网络连接配置异常修复后又不行,网络连接配置修复失败(21)

7.2复制上述的自动切换时 VIP 管理的脚本到 /usr/local/bin 目录,这里使用master_ip_failover脚本来管理 VIP 和故障切换

cp /usr/local/bin/scripts/master_ip_failover /usr/local/bin

#删除原有内容,直接复制并修改vip相关参数。可在拷贝前输入 :set paste 解决vim粘贴乱序问题

vim /usr/local/bin/master_ip_failover

my $vip = '192.168.80.200'; #指定vip的地址

my $brdc = '192.168.80.255'; #指定vip的广播地址

my $ifdev = 'ens33'; #指定vip绑定的网卡

my $key = '1'; #指定vip绑定的虚拟网卡序列号

my $ssh_start_vip = "/sbin/ifconfig ens33:$key $vip";

#代表此变量值为ifconfig ens33:1 192.168.80.200

my $ssh_stop_vip = "/sbin/ifconfig ens33:$key down";

#代表此变量值为ifconfig ens33:1 192.168.80.200 down

my $exit_code = 0;

脚本

#!/usr/bin/env perl

use 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

);

#############################添加内容部分#########################################

my $vip = '192.168.88.200';

my $brdc = '192.168.88.255';

my $ifdev = 'ens33';

my $key = '1';

my $ssh_start_vip = "/sbin/ifconfig ens33:$key $vip";

my $ssh_stop_vip = "/sbin/ifconfig ens33:$key down";

my $exit_code = 0;

#my $ssh_start_vip = "/usr/sbin/ip addr add $vip/24 brd $brdc dev $ifdev label $ifdev:$key;/usr/sbin/arping -q -A -c 1 -I $ifdev $vip;iptables -F;";

#my $ssh_stop_vip = "/usr/sbin/ip addr del $vip/24 dev $ifdev label $ifdev:$key";

##################################################################################

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,

);

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 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 VIP - $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";

exit 0;

}

else {

&usage();

exit 1;

}

}

sub start_vip() {

`ssh $ssh_user\@$new_master_host \" $ssh_start_vip \"`;

}

## A simple system call that disable the VIP on the old_master

sub stop_vip() {

`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";

}

7.3创建 MHA 软件目录并拷贝配置文件,这里使用配置文件来管理 mysql 节点服务器

#创建相关目录(所有节点)

mkdir -p /opt/mysql-mha/mha-node

# manager节点

mkdir -p /opt/mysql-mha/mha

#编写配置文件

vim /opt/mysql-mha/mysql_mha.cnf

[server default]

manager_log=/opt/mysql-mha/manager.log

manager_workdir=/opt/mysql-mha/mha

master_binlog_dir=/usr/local/mysql/data

master_ip_failover_script=/usr/local/bin/master_ip_failover

master_ip_online_change_script=/usr/local/bin/master_ip_online_change

user=mha

password=manager

port=3306

ping_interval=1

remote_workdir=/opt/mysql-mha/mha-node

repl_user=myslave

repl_password=123456

secondary_check_script=/usr/local/bin/masterha_secondary_check -s 192.168.88.20 -s 192.168.88.30

shutdown_script=""

ssh_user=root

[server1]

hostname=192.168.88.10

port=3306

[server2]

candidate_master=1

check_repl_delay=0

hostname=192.168.88.20

port=3306

[server3]

hostname=192.168.88.30

port=3306

[server default]

manager_log=/opt/mysql-mha/manager.log #指定manager日志路径

manager_workdir=/opt/mysql-mha/mha #指定manager工作目录

#指定master保存binlog的位置,这里的路径要与master里配置的binlog的路径一致,以便MHA能找到

master_binlog_dir=/usr/local/mysql/data

#设置自动failover时候的切换脚本,也就是上面的那个脚本

master_ip_failover_script=/usr/local/bin/master_ip_failover  

#设置手动切换时候的切换脚本

master_ip_online_change_script=/usr/local/bin/master_ip_online_change  

user=mha #设置mha访问数据库的账号

password=manager #设置mha访问数据库的账号密码

ping_interval=1 #设置监控主库,发送ping包的时间间隔,默认是3秒,尝试三次没有回应的时候自动进行failover

remote_workdir=/opt/mysql-mha/mha-node #指定mha在远程节点上的工作目录

repl_user=myslave #设置主从复制的用户

repl_password=123 #设置主从复制的用户密码

report_script=/usr/local/send_report     #设置发生故障切换的时候发送邮件提醒

secondary_check_script=/usr/local/bin/masterha_secondary_check -s 192.168.80.11 -s 192.168.80.12 #指定检查的从服务器IP地址

shutdown_script="" #设置故障发生后关闭故障主机脚本(该脚本的主要作用是关闭主机防止发生脑裂,这里没有使用)

ssh_user=root #设置ssh的登录用户名

[server1]

hostname=192.168.80.10

port=3306

[server2]

hostname=192.168.80.11

port=3306

candidate_master=1

#设置为候选master,设置该参数以后,发生主从切换以后将会将此从库提升为主库,即使这个从库不是集群中最新的slave

check_repl_delay=0

#默认情况下如果一个slave落后master 超过100M的relay logs的话,MHA将不会选择该slave作为一个新的master, 因为对于这个slave的恢复需要花费很长时间;通过设置check_repl_delay=0,MHA触发切换在选择一个新的master的时候将会忽略复制延时,这个参数对于设置了candidate_master=1的主机非常有用,因为这个候选主在切换的过程中一定是新的master

[server3]

hostname=192.168.80.12

port=3306

网络连接配置异常修复后又不行,网络连接配置修复失败(22)

8. 在master节点上手动开启虚拟ip

#第一次配置需手动配置

/sbin/ifconfig ens33:1 192.168.88.200/24

网络连接配置异常修复后又不行,网络连接配置修复失败(23)

9.在 manager 节点上测试 ssh 无密码认证

#如果正常最后会输出 successfully

masterha_check_ssh -conf=/opt/mysql-mha/mysql_mha.cnf

网络连接配置异常修复后又不行,网络连接配置修复失败(24)

上一页23456下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.