Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等
Nginx在国内很流行,今天我们用它搭建一个简单的集群。
搭建平台:centos 7
Nginx 版本:1.10
tomcat 版本:8.0
如何在Linux上安装tomcat
JDK 版本:1.8
如何在Linux安装JDK
下载完成Nginx后
开始安装Nginx
先创建Nginx目录
[root@localhost file]# mkdir /usr/local/nginx
将Nginx解压到Nginx目录
[root@localhost file]# tar -xvf nginx-1.10.3.tar.gz -C /usr/local/nginx/
解压完成后先安装工具包对Nginx进行编译
[root@localhost file]# yum install gcc
[root@localhost file]# yum install pcre pcre-devel
[root@localhost file]# yum install zlib zlib-devel
[root@localhost file]# yum install openssh openssh-devel
工具包安装完成后
进入Nginx的目录
[root@localhost file]# cd /usr/local/nginx/nginx-1.10.3
[root@localhost nginx-1.10.3]# ./configure
编译
[root@localhost nginx-1.10.3]# make
安装
[root@localhost nginx-1.10.3]# make install
至此Nginx安装完成
Nginx的启动与关闭
进入目录
[root@localhost nginx]# cd /usr/local/nginx/sbin
启动Nginx
[root@localhost sbin]# ./nginx
关闭Nginx
[root@localhost sbin]# ./nginx -s stop
退出Nginx
[root@localhost sbin]# ./nginx -s quit
配置Nginx搭建集群
首先安装多个tomcat这里用两个tomcat作为例子
先修改tomcat的端口使他们的接口都不一样
进入配置文件目录
[root@localhost conf]# cd /usr/local/tomcat1/apache-tomcat-8.5.11/conf
打开配置文件
[root@localhost conf]# vim server.xml
修改port建议在原有的基础上加一个整数我这里是加了10
<Server port="8015" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8453" />
<Connector port="8019" protocol="AJP/1.3" redirectPort="8453" />
修改完成后启动两个tomcat
成功则证明修改成功
之后修改Nginx的配置文件来创建集群
打开Nginx的配置文件
[root@localhost nginx]# vim /usr/local/nginx/conf/nginx.conf
找到下面这一段加入有中文注解的部分
#gzip on;
#创建集群server_tomcat
upstream server_tomcat{
#服务器1
server 127.0.0.1:8080;
#服务器2
server 127.0.0.1:8090;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
#添加集群
proxy_pass http://server_tomcat;
}
当然这只是Nginx基本配置,高级配置大家可以去看官方API
配置完成后重启一下
记得开放默认端口80这样才能在外部访问到
[root@localhost bin]# firewall-cmd --add-port=80/tcp
至此Nginx的简单集群搭建完毕