美文网首页
Keepalived安装及入门级部署

Keepalived安装及入门级部署

作者: 修行_badb | 来源:发表于2020-01-11 10:49 被阅读0次

    (NOTE:本文只提供 Keepalived 的下载安装及入门级部署,本人还在学习中,若有错误,欢迎指正!)

    系统环境

    阿里云 Ubuntu 16.04 轻应用服务器(学生),因为没有外网网卡(有内网网卡)【弹性ECS服务器有弹性外网网卡,但没使用过,不知道能不能达到预期效果】,所以部署完后,只能在内网测试 ╮(╯▽╰)╭.....,也可以本地用 wget http:// xxx.xxx.x.xxx 访问虚拟IP进行测试。

    此系统下安装部署本人实测有效,若发生其他问题,请自行解决。

    Keepalived 与Nginx 实现服务高可用,本文并没有Nginx的安装部署(请自行查看有关 Nginx 的文章)

    依赖安装

    必须安装的

    apt-get install libpopt-dev daemon gcc libssl-dev libc-dev openssl libnl-dev libnfnetlink-dev libnl-3-dev libnl-genl-3.dev

    Keepalived安装

    apt-get install keepalived

    很简单,安装完毕,我当时所安装的版本 Keepalived v1.2.24 (02/14,2019) 。

    systemctl status keepalived 查看当前 Keepalived 服务的状态

    systemctl start keepalived 启动 Keepalived 服务

    systemctl stop keepalived 关闭 Keepalived 服务

    keepalived -v 查看版本

    whereis keepalived 查看 Keepalived 在哪些目录下

    配置文件所在  /etc/keepalived/keepalived.conf (若不存在,自行创建目录及文件)

    启动文件所在 /usr/sbin/keepalived

    keepalived.conf  文件

    # keepalived.conf 配置文件

    global_defs {

        router_id iZ2zec3nc5wsqad0674qimZ  # 指定一个字符串给Keepalived,默认是主机名,也可写其他字符串

    }

    # 检测脚本执行

    vrrp_script chk_health {

        script "/opt/keepalived/check_nginx.sh"                              # 脚本所在位置

        interval 1                                                                                       # 检测脚本执行的间隔,间隔 1 秒 执行一次脚本

        weight 1                                                                                         # 权重

    }

    vrrp_instance VI_1 {

        state MASTER                                                                             # 主服务器 MASTER 备份服务器 BACKUP

        interface eth0                                                                              # 网卡,看自己机器 网卡名 ifconfig

        virtual_router_id 51                                                                  # 主备机必须相同

        priority 100                                                                                  # 主备机必须取不同的值,主机大于备机的值

        advert_int 1

        authentication {                                                                          # 所有机器 默认都这样写

            auth_type PASS

            auth_pass 123456

        }

        virtual_ipaddress {

            192.168.100.30                                                                     # 虚拟IP,可以写多个虚拟IP

        }

    }

    check_nginx.sh 文件

    #!/bin/bash

    A='ps -C nginx -no-header |wc -1'

    if [ $A -eq 0 ];then

            /usr/sbin/nginx                                                                                # Nginx 执行文件,所在目录

            sleep 2

            if [ 'ps -C nginx --no-header |wc -1' -eq 0 ];then

                    killall keepalived

            fi

    fi

    ~

    默认 Nginx 已在运行中,启动 keepalived

    systemctl start keepalived  

    此时使用,systemctl status keepalived   会包含以下内容出现

    Active: active (running)

    Keepalived 已部署成功了!!

    相关文章

      网友评论

          本文标题:Keepalived安装及入门级部署

          本文链接:https://www.haomeiwen.com/subject/weuvactx.html