nginx+keepalived高性能web负载均衡搭建

简介:

Nginx+keepalived高性能网站负载均衡

Nginx+Keepalived的说明及环境说明

Nginx负载均衡作服务器遇到的故障一般有①服务器网线松动等网络故障;②服务器硬件故障从而crash;③nginx服务死掉;遇到前二者情况,keeaplived是能起到HA的作用的;然而遇到③种情况就没有办法了,但可以通过shell监控解决这问题,从而实现真正意义上的负载均衡高可用。下面将其安装步骤详细说明下:

环境介绍:

rhel5.5(32位)、nginx-1.5.3、keepalived-1.2.7

主nginx:192.168.1.131

从nginx:192.168.1.130

Vip:192.168.1.50

安装nginx及相关配置

1.#添加运行nginx的用户和组www

2.groupadd www

3.useradd  -g www  www

4.tar  xzf nginx-1.5.3.tar.gz

5.cd  nginx-1.5.3/

6../configure  --user=www --group=www --prefix=/usr/local/nginx/

7.make  && make install

安装之前你要先安装“pcre”正则库文件,yum –y install “pcre*”。

安装完之后编辑配置文件vim /usr/local/nginx/conf/nginx.conf

185530558.jpg

185532125.jpg

安装keepalived,让其作为nginx的HA

1.tar xzf keepalived-1.2.7.tar.gz

2. cd  keepalived-1.2.7

3../configure  --prefix=/usr/local/keepalived

4.make&& make install

5.cp   /usr/local/keepalived/sbin/keepalived   /usr/sbin/

6.cp/usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

7.cp  /usr/local/keepalived/etc/rc.d/init.d/keepalived  /etc/init.d/

8.mkdir  /etc/keepalived/

9.cd  /etc/keepalived/

安装之前要先安装一些依赖库:

yum –y installkernel-devel

yum –y installpopt-devel    //#这个库文件有时候默认已经安装了;

yum –y installopenssl-devel

安装完成之后编辑文件 vim keepalived.conf

185921325.jpg

185923111.jpg

在配置文件里面还得加入调用刚才上面忘了加入结果测试的时候不自动调用检测脚本

155120211.jpg

针对Keepalived的不足,用nginx.sh来监控nginx进程,实现真正意义上的负载均衡高可用。我这里把脚本存放在了/usr/local/keepalived/nginx.sh.脚本的本意就是监控nginx如果进程消失,则尝试重启nginx,如果失败则立即停掉keepalived服务,让另一台接手。

154746583.jpg

编辑完成之后service keepalived start

然后ip addr 查看下虚拟ip跟eth0绑定在了一块。说明vip已经启动,这样主keepalived就配置好了,从的跟主的配置文件差不多。

190129778.jpg

190131117.jpg

测试方法

在后台网站上面分别建立不同的主页,index.html的内容为,192.168.1.129,192.168.1.128然后用客户机访问curl 192.168.1.50,主nginx服务down之后从会马上接替提供服务。




本文转自Devin 51CTO博客,原文链接:http://blog.51cto.com/devingeng/1330519
相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
14天前
|
应用服务中间件 网络安全 nginx
快速上手!使用Docker和Nginx部署Web服务的完美指南
快速上手!使用Docker和Nginx部署Web服务的完美指南
|
1月前
|
运维 应用服务中间件 Linux
keepalived详解(三)——keepalived与Nginx配合实战
keepalived详解(三)——keepalived与Nginx配合实战
30 1
|
2天前
|
应用服务中间件 nginx
如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
7 0
|
3天前
|
缓存 负载均衡 安全
深入探索Nginx高性能Web服务器配置与优化
【5月更文挑战第7天】本文深入探讨了Nginx的配置与优化,重点介绍了基础配置参数如`worker_processes`、`worker_connections`和`keepalive_timeout`,以及优化策略,包括使用epoll事件驱动模型、开启gzip压缩、启用缓存、负载均衡和安全配置。此外,还提到了性能调优工具,如ab、nginx-stats和nmon,以助于提升Nginx的性能和稳定性。
|
10天前
|
缓存 监控 测试技术
【Go语言专栏】使用Go语言构建高性能Web服务
【4月更文挑战第30天】本文探讨了使用Go语言构建高性能Web服务的策略,包括Go语言在并发处理和内存管理上的优势、基本原则(如保持简单、缓存和并发控制)、标准库与第三方框架的选择、编写高效的HTTP处理器、数据库优化以及性能测试和监控。通过遵循最佳实践,开发者可以充分利用Go语言的特性,构建出高性能的Web服务。
|
10天前
|
负载均衡 网络协议 应用服务中间件
【亮剑】在 Linux 中如何使用 HAProxy、Nginx 和 Keepalived 进行负载均衡?
【4月更文挑战第30天】本文介绍了在Linux中构建高可用性和高性能网络服务的负载均衡工具HAProxy、Nginx和Keepalived。HAProxy是一个高性能的开源TCP和HTTP负载均衡器,适合处理大量并发连接;Nginx是一个多功能Web服务器和反向代理,支持HTTP、HTTPS和TCP负载均衡,同时提供缓存和SSL功能;Keepalived用于监控和故障切换,通过VRRP实现IP热备份,保证服务连续性。文中详细阐述了如何配置这三个工具实现负载均衡,包括安装、配置文件修改和启动服务,为构建可靠的负载均衡系统提供了指导。
|
10天前
|
开发框架 网络协议 前端开发
Python高性能web框架--Fastapi快速入门
Python高性能web框架--Fastapi快速入门
|
11天前
|
缓存 前端开发 JavaScript
|
11天前
|
缓存 负载均衡 前端开发
构建高性能Web应用的关键技术
本文探讨了构建高性能Web应用的关键技术,包括前端优化、后端架构、数据库设计等方面的最佳实践。通过优化前端页面加载速度、采用高效的后端框架和数据库引擎,可以显著提升Web应用的性能和用户体验。
|
14天前
|
前端开发 JavaScript Go
构建高性能Web应用:优化前端资源加载
在构建现代Web应用时,优化前端资源加载是至关重要的一步。本文将介绍一些提升Web应用性能的关键策略,包括减少HTTP请求、压缩和合并资源、使用CDN加速、以及异步加载技术等。通过实施这些优化策略,开发人员可以显著提升网站的加载速度和用户体验。