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)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
1月前
|
前端开发 数据库 UED
构建高性能Web应用的关键技术
本文将介绍构建高性能Web应用的关键技术,包括前端优化、后端优化、数据库优化等方面。通过深入讨论各项技术的原理和实践方法,帮助开发者们提升Web应用的响应速度和用户体验。
|
1月前
|
负载均衡 Java 中间件
使用Go语言构建高性能Web服务
Go语言作为一种快速、高效的编程语言,其在构建高性能Web服务方面具有独特优势。本文将探讨如何利用Go语言开发和优化Web服务,以实现更高的性能和可伸缩性。
|
24天前
|
前端开发 应用服务中间件 nginx
使用Docker快速搭建Web服务器Nginx
本文指导如何使用Docker快速搭建Nginx服务器。首先,通过`docker pull`命令获取Nginx镜像,然后以容器形式运行Nginx并映射端口。通过挂载目录实现本地文件与容器共享,便于自定义网页。使用`docker ps`检查运行状态,访问IP:8088确认部署成功。最后,介绍了停止、删除Nginx容器的命令,强调Docker简化了服务器部署和管理。
39 0
|
2天前
|
缓存 监控 数据库
Flask性能优化:打造高性能Web应用
【4月更文挑战第16天】本文介绍了提升Flask应用性能的七大策略:优化代码逻辑,减少数据库查询,使用WSGI服务器(如Gunicorn、uWSGI),启用缓存(如Flask-Caching),优化数据库操作,采用异步处理与并发(如Celery、Sanic),以及持续监控与调优。通过这些手段,开发者能有效优化Flask应用,适应大型或高并发场景,打造高性能的Web服务。
|
1月前
|
监控 前端开发 JavaScript
构建高性能Web应用:前端性能优化的关键策略与实践
本文将深入探讨前端性能优化的关键策略与实践,从资源加载、渲染优化、代码压缩等多个方面提供实用的优化建议。通过对前端性能优化的深入剖析,帮助开发者全面提升Web应用的用户体验和性能表现。
|
1月前
|
缓存 监控 API
Python Web框架FastAPI——一个比Flask和Tornada更高性能的API框架
Python Web框架FastAPI——一个比Flask和Tornada更高性能的API框架
57 0
|
1月前
|
弹性计算 算法 应用服务中间件
倚天使用|Nginx性能高27%,性价比1.5倍,基于阿里云倚天ECS的Web server实践
倚天710构建的ECS产品,基于云原生独立物理核、大cache,结合CIPU新架构,倚天ECS在Nginx场景下,具备强大的性能优势。相对典型x86,Http长连接场景性能收益27%,开启gzip压缩时性能收益达到74%。 同时阿里云G8y实例售价比G7实例低23%,是Web Server最佳选择。
|
1月前
|
缓存 前端开发 UED
构建高性能Web应用:前端资源优化与加载策略探讨
本文将深入剖析前端资源优化和加载策略,包括减少HTTP请求、使用CDN加速、异步加载、资源压缩等技术手段。通过合理的资源管理和加载策略,可以显著提升Web应用的性能和用户体验。
|
1月前
|
SQL JSON 应用服务中间件
web后端-win-phpMySql-nginx-web发布
web后端-win-phpMySql-nginx-web发布
|
1月前
|
应用服务中间件 Linux nginx
web后端-linux-nginx-1.18操作命令和部署
web后端-linux-nginx-1.18操作命令和部署