JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

天翼云上使用keepalived加VIP实现nginx高可用

wys521 2024-10-16 14:38:52 精选教程 20 ℃ 0 评论

1.首先在天翼云申请一个VIP

2.将申请的虚拟IP绑定到主备云服务器上

可以绑定到多台主机

3.主备服务器安装keepalived、nginx

yum install keepalived –y

//centos默认无nginx源
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

yum install -y nginx

4.修改keepalived配置文件(/etc/keepalived/keepalived.conf)

global_defs {
    notification_email {
        acassen@firewall.loc
        failover@firewall.loc
        sysadmin@firewall.loc
    }
    notification_email_from Alexandre.Cassen@firewall.loc
    smtp_server 192.168.200.1
    smtp_connect_timeout 30
    router_id BACKUP                        # 主机标识
    vrrp_skip_check_adv_addr
    # vrrp_strict                           # 一定要注释掉
    vrrp_garp_interval 0
    vrrp_gna_interval 0
}



vrrp_script chk_nginx {
    script "/etc/keepalived/chk_nginx.sh"    # 检测脚本
    interval 2                               # 执行脚本间隔 2s
    weight -30                               # 本服务器宕机后权重减少 -30
}


vrrp_instance VI_1 {
    state BACKUP    # MASTER主服务器,BACKUP备份服务器
    interface ens33 #网卡
    virtual_router_id 51    # 虚拟路由ID,主备必须一致
    priority 80     # 优先级,即权重,主比备要高
    advert_int 1    # 服务器心跳 1s 检测一次
    authentication {
        auth_type PASS  # 认证方式 主备需一致
        auth_pass 1111  # 认证密码 主备需一致
    }
    virtual_ipaddress {
        192.168.72.155  # 虚拟地址,可以多个
    }
}

5.nginx检测脚本

#!/bin/bash
A=`ps -C nginx -no-header |wc -l`
if [ $A -eq 0 ];then
# 以下两行暂时先注掉,防止测试时,手动关闭nginx后,脚本又自动启动nginx
#      /usr/sbin/nginx
#       sleep 2
        if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
                killall keepalived
        fi
fi


# 修改脚本权限
chmod 777 nginx_check.sh

6.重启keepalivee、nginx

service nginx restart
service keepalived restart

7.查看虚地址是否绑定成功

ip a

8.测试

可以将EIP绑定到虚拟IP,或者过防火墙用防火墙的公网IP

断开主节点,看是能飘逸到备节点上

9.意义

原因:Nginx+Tomcat实现负载均衡我们已经能通过Nginx来实现Tomcat应用的负载均衡,但是单个的Nginx会存在单点隐患,如果Nginx挂掉,那么全部的Tomcat应用都将变得不可用,所以实现Nginx的高可用是必不可少的一步。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表