Nginx集群搭建学习心得(入门)
nginx安装以及注册nginx为系统服务:linux 系统下四种nginx安装方法_linux安装nginx-CSDN博客
keepalived安装以及注册nginx为系统服务:Keepalived - linux 安装&配置&启动_keepalived启动服务-CSDN博客
介绍
现在我有这样一个需求:在搭建nginx集群的时候,为了不向外界暴露不必要的代理ip地址和希望用户只访问一个url或一类url就可以得到相同的服务,那么可以在nginx代理之前加一个虚拟ip实现再代理,如图,那么用户只需要访问192.168.107.80就能将请求转发到其他的代理服务器上。
ip配置信息
keepalived介绍
为了能检测两个代理的状态,这里引入了keepalived作为心跳检测,它的好处是:
健康检查:监控节点状态,当主节点出现故障时从结点可以转换为主节点。
负载均衡:将请求分配到多个服务器上。
keepalived.conf配置
#这里我把192.168.107.3设为主节点
global_defs {
#节点标识符
router_id k1
}
vrrp_instance VI_1 {
#节点身份
state MASTER
#网段
interface ens33
virtual_router_id 51
#优先级
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
#指定的虚拟ip
virtual_ipaddress {
192.168.107.80
}
}
virtual_server 192.168.200.100 443 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.201.100 443 {
weight 1
SSL_GET {
url {
path /
digest ff20ad2481f97b1754ef3e12ecd3a9cc
}
url {
path /mrtg/
digest 9b3a0c85a887a256d6939da88aabd8cd
}
connect_timeout 3
retry 3
delay_before_retry 3
}
}
}
(在root权限下)启动keepalived,以下是主节点信息,可以看到虚拟ip192.168.107.80
备份节点信息,如图
现在通过kill进程来模拟192.168.107.3这台代理服务器发生故障
查看备份节点192.168.107.33的网段信息可以看到,虚拟代理ip信息;这样当主节点发生故障的时候,请求就会被分发到备份节点上。
Nginx集群搭建学习心得(入门)
http://localhost:8090//archives/nginxji-qun-da-jian