在centos7中搭建负载均衡的环境
------------恢复内容开始------------
前言
当自己的web网站访问的人越来越多,一台服务器无法满足现有的业务时,此时会想到多加几台服务器来实现负载均衡。
网站的访问量越来越大,服务器的服务模式也得进行相应的升级,怎样将同一个域名的访问分散到两台或更多的机器上呢?这就需要用nginx来配置负载均衡的环境了。
以多个tomcat服务为例,用nginx配置管理多个tomcat服务
什么是负载均衡
负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
如果还是不懂的话,可以举个例子:
假设你是个妹子,你败家太厉害,以至于你的男友根本吃不消,于是乎你找了两个男朋友,一三五单号,二四六双号限行,从而减少一个男朋友所面临的压力,这叫负载均衡。
nginx的负载均衡策略有2种,第一种是轮询:也就是上面说的“两个男朋友,一三五单号,二四六双号限行”,看下图
我们之前已经在centos7中安装了多个Tomcat的环境,搭建了Nginx。
-
nginx配置
先配置一个tomcat环境,当访问http://192.168.x.x:80/端口时,让nginx把服务指向一个tomcat服务http://192.168.x.x:8081/
vi打开/usr/local/nginx/conf/nginx.conf先配置server
vi /usr/local/nginx/conf/nginx.conf
把location 这项改成proxy_pass http://192.168.64.129:8081;注意后面有个分号
编辑完成后:wq保存退出,执行reload,重新加载nginx文件
[root@yoyo conf]# cd /usr/local/nginx/sbin/
[root@yoyo sbin]# ./nginx -s reload
接着在浏览器输入http://192.168.117.135/ 就能访问到8081的tomcat首页了,之前是访问的nginx页面,说明监听成功
-
负载均衡
轮询访问
一台服务配置好了,接着把三个tomcat服务全部放到一块,让访问http://192.168.64.129/能自动分配到8081、8082、8083这三个服务器上,实现负载均衡
vim打开
/usr/local/nginx/conf/nginx.conf
在server上方加个upstream标签,把多个服务器server地址配置进去就可以了
编辑完成后:wq保存退出,执行reload,重新加载nginx文件
cd /usr/local/nginx/sbin/
./nginx -s reload
接着在浏览器输入http://192.168.117.135/,多次刷新,会发现tomcat首页轮询显示Home8081、Home8082、Home8083
------------恢复内容结束------------