Linux下nginx+tomcat集群安装
step1、前置准备
安装nginx需要用到的包
1.yum –y install lrzsz //上传下载工具,高大上的工具,再次鄙视那些用ftp工具的
2.yum –y install gcc gcc-c++ //两个包gcc和gcc-c++ 为了pcre的编译
3.yum –y install openssl* //ssl的支持
4.安装 PCRE yum install -y pcre pcre-devel
5.安装zlib库 yum install -y zlib zlib-devel
要是编译报错看错误提示,有的可能是少包的支持,没啥yum啥
关闭防火墙
首先把防火墙关闭:service iptables stop
再设置为永久关闭:chkconfig iptables off
一定要关,不然本地可能访问不了虚拟机上的apache
step2、安装JDK
在oracle官网下载jdk1.7 jdk-7u71-linux-i586.rpm
在/opt下创建文件夹jdk
将jdk-7u71-linux-i586.rpm上传到/opt/jdk下
rpm -ivh jdk-7u71-linux-i586.rpm
之后修改配置文件
vi /etc/profile
在最后加上:
# jdk
export JAVA_HOME=/usr/java/jdk1.7.0_71
export ANDROID_JAVA_HOME=$JAVA_HOME
export JRE_HOME=/usr/java/jdk1.7.0_71/jre
export CLASSPATH=/usr/java/jdk1.7.0_71/lib
export PATH=$JAVA_HOME/bin:$PATH
保存退出之后执行
source /etc/profile //使更改的配置立即生效
然后输入
java –version查看jdk是否安装成功,出现版本信息表示安装完成
[root@localhost conf]# java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) Client VM (build 24.71-b01, mixed mode, sharing)
step3、安装nginx
下载nginx: wget http://nginx.org/download/nginx-1.13.0.tar.gz
装在 /usr/local/ 下
解压 tar -zxvf nginx-1.13.0.tar.gz
进入目录 运行 ./configure 产生makefile
此时目录多出了 makefile
编译make
安装:make install
完成后 local 目录下 多了个 nginx
启动 nginx
进入sbin 目录 执行./nginx
查看启动结果
Window 访问 192.168.1.108 nginx 默认端口为80
关闭 ./nginx -s stop
关闭后此时对应也无法访问
./nginx -s reload 可以在启动后重新加载配置文件 适合于在启动会修改了配置文件
step4、安装tomcat
Tomcat安装
在/opt下创建文件夹tomcat
将apache-tomcat-6.0.37.tar.gz上传到/opt/tomcat下
- apache-tomcat-7.0.41.tar.gz
- mv apache-tomcat-7.0.41 tomcat1
- mv tomcat1 /usr/local/
- cp –r tomcat1 tomcat2
- vi /etc/profile修改配置文件
加入:
#tomcat
export TOMCAT_HOME=/usr/local/tomcat1
export TOMCAT_HOME=/usr/local/tomcat2
- 启动tomcat
/usr/local/tomcat1/bin/startup.sh
/usr/local/tomcat2/bin/startup.sh
显示
Using CATALINA_BASE: /usr/local/tomcat1
Using CATALINA_HOME: /usr/local/tomcat1
Using CATALINA_TMPDIR: /usr/local/tomcat1/temp
Using JRE_HOME: /usr/java/jdk1.7.0_71/jre
Using CLASSPATH: /usr/local/tomcat1/bin/bootstrap.jar
然后ps –ef|grep tomcat查看进程
最后IE中输入http://ip:端口看到如下页面证明tomcat安装成功
step5、
Nginx负载配置
修改nginx.conf,配置文件内容如下
#user nobody;
#启动进程数
worker_processes 1;
#全局错误日志及PID文件
#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服务器,利用它的反向代理功能提供负载均衡支持
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;
## 配置反向代理的后端tomcat集群
upstream web_server {
server tomcat1 ip:8080 weight=1 max_fails=2 fail_timeout=30s; #tomcat1实例的ip
server tomcat2 ip:9090 weight=1 max_fails=2 fail_timeout=30s; ##tomcat2实例的ip
}
server {
listen 80;
server_name localhost;
## 网页、视频、图片文件从本地读取,且定义在浏览器中缓存30天
location ~ .*\.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$
{
expires 30d;
}
## js、css文件从本地读取,且定义在浏览器中缓存1小时
location ~ .*\.(js|css)?$
{
expires 1h;
}
## 动态文件转发到后端的tomcat集群
location ~ .*\.(php|jsp|cgi|jhtml)?$ {
proxy_pass http://web_server;#后面的地址要和第一步upstream定义的名称保持一致
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
}
}