天津哪里有做网站的公司,学院网站设计方案,华东建设安装有限公司网站,小说网站收录了怎么做排名一、Nginx的高可用 线上如果采用单个节点的方式部署Nginx#xff0c;难免会出现天灾人祸#xff0c;比如系统异常、程序宕机、服务器断电、机房爆炸、地球毁灭....哈哈哈#xff0c;夸张了。但实际生产环境中确实存在隐患问题#xff0c;由于Nginx作为整个系统的网关层接入…一、Nginx的高可用 线上如果采用单个节点的方式部署Nginx难免会出现天灾人祸比如系统异常、程序宕机、服务器断电、机房爆炸、地球毁灭....哈哈哈夸张了。但实际生产环境中确实存在隐患问题由于Nginx作为整个系统的网关层接入外部流量所以一旦Nginx宕机最终就会导致整个系统不可用这无疑对于用户的体验感是极差的因此也得保障Nginx高可用的特性。 接下来则会通过keepalived的VIP机制实现Nginx的高可用。VIP并不是只会员的意思而是指Virtual IP即虚拟IP。 keepalived在之前单体架构开发时是一个用的较为频繁的高可用技术比如MySQL、Redis、MQ、Proxy、Tomcat等各处都会通过keepalived提供的VIP机制实现单节点应用的高可用。 Keepalived重启脚本双机热备搭建 具体青请参考在上篇《深入浅出 -- 系统架构之Keepalived搭建双机热备》中通过keepalived如何搭建了主从双机热备。 Nginx高可用性测试 经过上述步骤后keepalived的VIP机制已经搭建成功在上个阶段中主要做了几件事
一、为部署Nginx的机器挂载了VIP。二、通过keepalived搭建了主从双机热备。三、通过keepalived实现了Nginx宕机重启。 由于前面没有域名的原因因此最初server_name配置的是当前机器的IP所以需稍微更改一下nginx.conf的配置 sever{listen 80;# 这里从机器的本地IP改为虚拟IPserver_name 192.168.12.111;# 如果这里配置的是域名那么则将域名的映射配置改为虚拟IP
}最后来实验一下效果 在上述过程中首先分别启动了keepalived、nginx服务然后通过手动停止nginx的方式模拟了Nginx宕机情况过了片刻后再次查询后台进程我们会发现nginx依旧存活。 从这个过程中不难发现keepalived已经为我们实现了Nginx宕机后自动重启的功能那么接着再模拟一下服务器出现故障时的情况 在上述过程中我们通过手动关闭keepalived服务模拟了机器断电、硬件损坏等情况因为机器断电等情况主机中的keepalived进程消失然后再次查询了一下本机的IP信息很明显会看到VIP消失了 现在再切换到另外一台机器192.168.12.130来看看情况 此刻我们会发现在主机192.168.12.129宕机后VIP自动从主机飘移到了从机192.168.12.130上而此时客户端的请求就最终会来到130这台机器的Nginx上。 最终利用Keepalived对Nginx做了主从热备之后无论是遇到线上宕机还是机房断电等各类故障时都能够确保应用系统能够为用户提供7x24小时服务。