关于负载均衡原理方面的知识点不在本文讨论范畴,本文主要就负载均衡配置过程中的细节部分配置做详细说明。
本次负载均衡大致的配置如下:
环境 : WIN7 + VM虚拟机3台(centos6.5)
Nginx: nginx-1.8.0.tar.gz
Tomcat: apache-tomcat-7.0.47
Nginx 安装在虚拟机 192.168.248.129 上
Tomcat8.5 分别安装在 192.168.248.130、192.168.248.132上
使用本机win7环境客户机访问 Nginx服务器192.168.248.129。
0、安装前准备
一. gcc 安装
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++
二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
1、下载安装nginx
1) 官网下载nginx
centos环境可以使用 wget download_url 的方式进行下载,现在下载最新的Nginx方式为 wget http://nginx.org/download/nginx-1.15.7.tar.gz
wget命令会将下载文件默认下载到当前目录。
下载完成后拷贝至 /usr/local/ 并解压
2) 配置nginx ./config
切换至nginx目录并执行配置命令(本机为已经安装完成后的目录,所以目录会略有不同)
3) 编译并安装 make && makeinstall
当前目录直接执行 make && makeinstall 命令
4) 关闭系统防火墙并重启
(1) 永久性生效
开启:chkconfig iptables on
关闭:chkconfig iptables off
(2) 即时生效,重启后失效
开启:service iptables start
关闭:service iptables stop
(如果你的系统不是centos,关于关闭防火墙的方法请请教百度或者谷歌老师)
5) 启动nginx
安装完成后访问 localhost应该可以看到 “Welcome to Nginx” 的欢迎页面
2、下载安装并启动tomcat
安装tomcat的步骤省略(记得关闭系统防火墙),类似的文章较多,不做赘述。
本机的tomcat端口号均为8080默认端口
3、环境检测
在本机win7环境,访问 http://192.168.248.129 (nginx) 可看到nginx欢迎页面
访问 http://192.168.248.130 (tomcat) 可看到tomcat欢迎页面
访问 http://192.168.248.132 (tomcat) 可看到tomcat欢迎页面
4、Nginx配置
切换至nginx目录下的conf目录,编辑nginx.conf目录
1) 添加tomcat web服务器节点
配置location, proxy_pass 后面的名字必须和upstream tomcats一一对应。
经验证,tomcat实例在关闭或者重连后,nginx可随时检测并识别。