前言
做手机app信息统计分析项目过程中,模拟生成数据使用到了nginx和tomcat,配置过程做一下记录
一、Nginx
- 安装Pcre包
# 下载pcre包
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
# 解压安装
tar zxvf pcre-8.35.tar.gz
# 进入安装包目录
cd pcre-8.35
# 编译
./configre
# 如果编译过程中报错:error: You need a C++ compiler for C++ support,这是由于没有安装 gcc,输入以下指令进行安装:
yum install -y gcc gcc-c++
# 安装pcre
make && make install
# 查看pcre版本
pcregrep -V
pcregrep version 8.35 2014-04-04
- 安装Nginx
# 解压安装包
tar zxvf nginx-1.12.2.tar.gz
# 进入目录
cd nginx-1.12.2
# 编译 !!!注意--with-pcre=的pcre安装目录!!!
./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/opt/pcre-8.35
# 安装
make && make install
# 如果出现错误:./configure: error: SSL modules require the OpenSSL library.
yum -y install openssl openssl-devel
# 查看版本
[root@node2 sbin] ./nginx -v
nginx version: nginx/1.12.2
- Nginx 负载均衡配置
/usr/local/webserver/nginx/conf
vi nginx.conf
添加upstream xyz {server 1 ip:port; server 2 ip:port;}
和location中的proxy_pass http://xyz
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
upstream test{
server 192.168.44.12:18080;
server 192.168.44.12:28080;
}
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://test;
}
server的添加按实际tomcat所在主机的ip来设置
- nginx启动/停止
cd /usr/local/webserver/nginx/sbin
./nginx
./nginx -s stop
二、Tomcat
- tomcat安装
将 Tomcat 压缩包 apache-tomcat-7.0.72.tar.gz 解压到指定目录即可。
# 这里在同一台虚拟机部署了两个tomcat,分别命名为tomcat-01/02
tar zxvf apache-tomcat-7.0.72.tar.gz
mv apache-tomcat-7.0.72 apache-tomcat-7.0.72-01
tar zxvf apache-tomcat-7.0.72.tar.gz
mv apache-tomcat-7.0.72 apache-tomcat-7.0.72-02
- 分别配置各个tomcat,所有的port前面都对应加x,x代表第几个tomcat(下面可能不全)
tomcat1
<Server port="18005" shutdown="SHUTDOWN">
<Connector port="18080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="18009" protocol="AJP/1.3" redirectPort="8443" />
tomcat2
<Server port="28005" shutdown="SHUTDOWN">
<Connector port="28080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="28009" protocol="AJP/1.3" redirectPort="8443" />
- 如果tomcat部署在不同机器,则无需配置
- tomcat设置昵称
# 修改index.jsp配置文件
cd /opt/apache-tomcat-7.0.72-01/webapps/ROOT
vi index.jsp
添加下面内容<h1>Tomcat01</h1>
<div id="asf-box">
<h1>${pageContext.servletContext.serverInfo}</h1>
<h1>Tomcat01</h1>
</div>
tomcat2同理
- tomcat启动/停止
cd /opt/apache-tomcat-7.0.72/bin
./startup.sh
./shutdown.sh
- 配置完成nginx和tomcat后,打开网页(机器的IP)默认为nginx,重复刷新,就可以看到tomcat1和tomcat2交替出现,自动负载均衡。