求助!keepalived启动后不生效

全部都是按照网上博客的做法

服务器环境:ubuntu18.04

以下全部为root操作

  1. 安装keepaalive: apt-get install keepalived
  2. 去/etc/keepalived目录下新建keepalived.conf,并设置内容
    global_defs {
            router_id MySQL-HA //主备一致
     }
     vrrp_script check_run {
                    script "/etc/keepalived/service_check.sh" //手动在该目录创建一个脚本文件,文件内容稍后附上
                    interval 3
                    weight -20
     }
     vrrp_instance VI_1 {
                    state MASTER //当前为主,备填写的是BACKUP
                    interface enp2s0 //这里的网卡名称稍后截图
                    viual_router_id 90 //主备一致
                    priority 100 //当前为主,备填写的比该值低
                    advert_int 1
                    nopreempt
                    authentication {
                            auth_type PASS
                            auth_pass 1111
                    }
                    virtual_ipaddress {
                            192.168.0.90 //虚拟出的ip地址
                    }
                    track_script {
                            check_run //调用上面定义的方法名
                    }
     }
     virtual_server 192.168.0.90 3306 {
                    delay_loop 6
                    lb_algo wcl
                    lb_kind DR
                    #nat_mask 255.255.255.0
                    persistence_timeout 50
                    protocol TCP
                    real_server 192.168.0.88 3306 {
                            weight 1
                            notify_down /etc/keepalived/service_down.sh  
                            TCP_CHECK {
                                     connect_timeout 10
                                     nb_get_retry 3
                                     delay_before_retry 3
                                     connect_port 3306
                            }
                    }
    }

    其中的interface 通过命令ifconfig获取到的

     配置文件中涉及到的检查脚本

  首先在对应目录变为

root@Vostro-3670:/etc/keepalived# ll
总用量 28
drwxr-xr-x   2 root root  4096 9月  29 11:07 ./
drwxr-xr-x 131 root root 12288 9月  29 10:41 ../
-rw-r--r--   1 root root  1809 9月  29 11:07 keepalived.conf
-rwxrwxrwx   1 root root  1087 9月  29 08:51 service_check.sh*
-rwxrwxrwx   1 root root    38 9月  27 16:04 service_down.sh*

脚本 service_check.sh

#!/bin/bash
MYSQL=/usr/bin/mysql
        MYSQL_HOST=192.168.0.88
        MYSQL_USER='root'
        MYSQL_PASSWORD='mypasswd'

        CHECK_TIME=3
        #mysql is working MYSQL_OK is 0 , mysql down MYSQL_OK is 1
        MYSQL_OK=1

        function check_mysql_helth (){
        $MYSQL -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASSWORD -e "show status;" > /dev/null 2>&1
        if [ $? = 0 ] ;then
        MYSQL_OK=0
        else
        MYSQL_OK=1
        fi
        return $MYSQL_OK
        }

        while [ $CHECK_TIME -ne 0 ]
        do
        let "CHECK_TIME -= 1"

        check_mysql_helth

        if [ $MYSQL_OK = 0 ] ; then
        CHECK_TIME=0
        echo "OK"
        exit 0
        fi

        if [ $MYSQL_OK -eq 1 ] && [ $CHECK_TIME -eq 1 ]
        then
          #/etc/init.d/keepalived stop
          echo "failed"
          pkill keepalived 
        exit 1
        fi

        sleep 1
done

service_down.sh

 #!/bin/sh
        pkill keepalived
                      

最后我查看日志,只有这点信息

然后用ip a 看到对应网卡里也只有本机的静态IP

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
您好!对于keepalived启动不起来的问题,可能有多种原因导致。以下是一些常见的故障排除步骤,您可以尝试一下: 1. 检查配置文件:确保keepalived的配置文件正确无误。常见的配置文件路径是/etc/keepalived/keepalived.conf。请检查文件是否存在、语法是否正确,以及是否包含必要的参数。 2. 检查日志文件:keepalived有自己的日志文件用于记录运行时的错误信息。您可以查看日志文件以获取更多详细的错误信息。通常情况下,keepalived的日志文件位于/var/log/keepalived.log。 3. 检查权限:确保keepalived进程有足够的权限运行。请检查相关文件和目录的权限设置,确保keepalived用户(通常是root)可以读取和写入必要的文件。 4. 检查端口冲突:如果您在配置文件中使用了keepalived需要监听的端口(如VRRP或者健康检查端口),请确保这些端口没有被其他进程占用。 5. 检查依赖项:确保keepalived所依赖的相关软件包已经安装并且可用。例如,如果您在配置文件中使用了邮件通知功能,那么您需要安装邮件客户端软件。 6. 尝试重启网络服务:有时候,网络服务的异常也可能导致keepalived无法启动。您可以尝试重启网络服务来解决此问题。具体的命令可能因操作系统而异,可以尝试使用"service network restart"或"systemctl restart network"。 希望这些步骤能对您有所帮助!如果问题仍然存在,请提供更多详细的错误信息,以便更进一步的排查。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值