nginx,keepalived高可用部署
环境
172.16.91.218 主
172.16.91.219
安装包版本
nginx-1.14.0.tar.gz
keepalived-2.0.7.tar.gz
把 nginx,keepalived 压缩包 上传到 /usr/local/src/
两个机器 都 安装 nginx
- 安装 依赖 包
yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
- 把 nginx 解压 放到 /usr/local/ 并重命名为 nginx
./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf
- 编译 安装
cd /usr/local/nginx/
make && make install
基本 命令使用
Nginx 启动
Nginx -s stop 关闭 nginx
Nginx -s start 启动nginx
两台机器 都要 安装 keepalived
- 安装 所需要 的依赖包
yum install -y gcc;
yum install -y openssl-devel;
yum install -y libnl;
yum install -y libnl-devel;
yum install -y libnfnetlink-devel;
- 解压,并 放到 /usr/local /, 并 重命名为 keepalived
- ./configure --prefix=/usr/local/keepalived/ --sysconf /etc
4
cd /usr/local/keepalived/
make && make install
ln -s sbin/keepalived /sbin/
cd keepalived
cp etc/init.d/keepalived /etc/init.d/
chkconfig --add keepalived
chkconfig keepalived on
service keepalived start
主 服务器 keepalived 的 keepalived 配置
! Configuration File for keepalived
global_defs { router_id LVS_DEVEL }
vrrp_script chk_nginx_service { script "/usr/local/keepalived/nginx-ha-check.sh" interval 2 weight -10 }
vrrp_instance VI_1 { state MASTER interface ens160 virtual_router_id 51 priority 100 advert_int 1
authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.16.91.100 } track_script { chk_nginx_service } }
virtual_server 172.16.91.100 80 { delay_loop 6 lb_algo rr lb_kind NAT persistence_timeout 50 protocol TCP
real_server 172.16.91.218 80 { weight 1 TCP_CHECK { connect_timeout 3 delay_before_retry 3 connect_port 80 }
} }
} |
从 服务器 keepalived 的 keepalived 配置
! Configuration File for keepalived
global_defs { router_id LVS_DEVEL }
vrrp_script chk_nginx_service { script "/usr/local/keepalived/nginx-ha-check.sh" interval 2 weight -10 }
vrrp_instance VI_1 { state BACKUP interface ens160 virtual_router_id 51 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.16.91.100 }
track_script { chk_nginx_service }
}
virtual_server 172.16.91.100 80 { delay_loop 6 lb_algo rr lb_kind NAT persistence_timeout 50 protocol TCP
real_server 172.16.91.219 80 { weight 1 TCP_CHECK { connect_timeout 3 delay_before_retry 3 connect_port 80 }
} }
} |
触发的脚本
#! /bin/sh A=`ps -C nginx --no-header | wc -l` if [ $A -eq 0 ] then echo 'nginx server is died' service keepalived stop fi ~ |
Keepalived 配置文件 讲解
global_defs { router_id LVS_DEVEL 运行 keepalived 服务器的标识,在一个网络内应该是唯 一的 } vrrp_instance VI_1 { #vrrp 实例定义部分 state MASTER #设置 lvs 的状态,MASTER 和 BACKUP 两种,必须大写 interface ens33 #设置对外服务的接口 virtual_router_id 51 #设置虚拟路由标示,这个标示是一个数字,同一个 vr rp 实例使用唯一标示 priority 100 #定义优先级,数字越大优先级越高,在一个 vrrp——instance 下, master 的优先级必须大于 backup advert_int 1 #设定 master 与 backup 负载均衡器之间同步检查的时间间隔,单 位是秒 authentication { #设置验证类型和密码 auth_type PASS auth_pass 1111 #验证密码,同一个 vrrp_instance 下 MASTER 和 BACKU P 密码必须相同 } virtual_ipaddress { #设置虚拟 ip 地址,可以设置多个,每行一个 192.168.11.100 } } virtual_server 192.168.11.100 80 { #设置虚拟服务器,需要指定虚拟 ip 和服务 端口 delay_loop 6 #健康检查时间间隔 lb_algo rr #负载均衡调度算法 lb_kind NAT #负载均衡转发规则 persistence_timeout 50 #设置会话保持时间 protocol TCP #指定转发协议类型,有 TCP 和 UDP 两种 real_server 192.168.11.160 80 { #配置服务器节点 1,需要指定 real serve r 的真实 IP 地址和端口 weight 1 #设置权重,数字越大权重越高 TCP_CHECK { #realserver 的状态监测设置部分单位秒 connect_timeout 3 #超时时间 delay_before_retry 3 #重试间隔 connect_port 80 #监测端口 } } } |
阅读更多
- Centos 7部署docker+nginx+keepalived实现高可用web集群
- 使用ansible结合keepalived高可用,nginx反向代理部署小型企业环境
- Nginx+keepalived高可用部署
- 实践:在CentOS7.3部署 keepalived 高可用nginx(负载均衡)
- keepalived+nginx实现高可用负载均衡部署
- lvs+keepalived+nginx+tomcat高可用高性能集群部署
- keepalived入门之nginx高可用部署 (应用篇)
- Keepalived+Nginx+Redis+Tomcat实现高可用web负载均衡
- 基于keepalived 实现VIP转移,lvs,nginx的高可用
- 分布式架构学习之:Keepalived+Nginx实现高可用Web负载均衡
- 高可用高性能分布式文件系统FastDFS进阶keepalived+nginx对多tracker进行高可用热备
- 用NginX+keepalived实现高可用的负载均衡
- Keepalived+Nginx+Tomcat配置高可用负载均衡系统示例
- 分布式架构高可用架构篇_04_Keepalived+Nginx实现高可用Web负载均衡
- RHEL 5.4下部署LVS(DR)+keepalived实现高性能高可用负载均衡
- Nginx+Keepalived实现负载均衡高可用
- CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡
- lvs+keepalived+nginx环境部署