具体的流程如下:
登陆使用Tomcat配置Nginx配置Tomcat安装部署Nginx安装部署
本章将向您讲述将Nginx和Tomcat所需要的信息和步骤;
安装之前
在安装部署之前,请仔细阅读一下几点说明:
- 检查要启动的集群服务器和应用服务器所需要的端口是否被服务器其他应用所占用,这回导致启动失败;
- 是否有相对应的本级域名映射,如果没有可在服务器的hosts里面添加;
安装NGINX
本次方案是在centos 6 64位操作系统中进行,建议操作系统一致;
登陆系统;
这里借助的远程操作工具Xmanager,功能成熟与强大;
使用Xshell 登陆到系统之后,进入命令行操作界面;
切换用户;
`
创建nginx文件夹;
进入到/usr/local 目录下并创建nginx目录,用于保存nginx 文件及安装相关的文件;
Cd / (进入到哪个目录)
Mkdir 文件名 (创建某个文件夹,该命令用于创建文件夹,不是文件,请注意)
Ls (查询当前目录下存在的文件夹及文件)
Ll (用于查看文件夹及文件所属类型,可执行操作及所属用户等)
下载nginx安装包;
创建完成之后,进入nginx目录并获取nginx安装文件
wget http://nginx.org/download/nginx-1.10.2.tar.gz
查看并解压文件;
tar –zxvf 文件名称(解压文件名为XXX的压缩文件)
添加用户;
useradd 用户名称 (添加一个用户)
这里添加一个名为www的用户;
创建完毕
yum依赖包;
yum install xxx (在线yum安装依赖包,简单快速方便)
也有本地离线yum,这里只介绍在线yum;
yum -y install pcre-devel openssl openssl-devel
安装g++:
yum install gcc gcc-c++
这个步骤是为了安装nginx时的编译正常,缺少该步骤或者缺少所需的依赖包会导致安装异常;
到此,依赖包安装成功;
安装编译nginx;
进入nginx-1.10.2
./configure -user=www group=www -prefix=/usr/local/nginx (该命令的意思是安装的文件所属用户及群为www,安装在/usr/local/nginx目录下)
make && make install (编译程序)
Nginx安装完毕!
测试nginx安装程序是否正常;
/usr/local/nginx/sbin/nginx -t
在浏览器上输入IP
如显示如上,证明nginx已成功安装;
Tomcat部署
创建smartbi目录
进入/usr/local目录下创建smartbi目录;
下载tomcat 7
进入smartbi目录并下载tomcat 7;
在apache官网下载 http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.34/bin/apache-tomcat-7.0.34.tar.gz
上传tomcat 7
上传tomcat 7到目标计算机上,借助xftp进行文件的传输;
查看和解压文件
查看文件并解压文件;
Ls 查看与 tar –zxvf 解压
修改文件
修改<Tomcat>\conf\server.xml文件
命令: vim -修改文件
退出不保存:esc键后输:q
强制退出:esc键后输:q!
保存退出:esc键后输:wq!
允许输入内容:直接输入字母i
查找<Engine name="Catalina" defaultHost="localhost" >标签,在其中加上jvmRoute="tomcat1"属性。
注意:每个服务器上的 tomcat 都要修改,并且必须保证每个Server都使用不相同的值,不允许多个服务器使用相同的 jvmRoute 值。
找到之后,点击字母i允许输入:
修改完成之后保存!
下载jdk
在oracle官网下载64位的jdk 安装包
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html?ssSourceSiteId=otncn#jdk-7u79-oth-JPR
上传jdk和解压
上传jdk到指定目录/smartbi并解压文件
使用tar -zxvf jdk-7u79-linux-x64.gz 解压jdk
修改环境变量
修改/etc/profile 文件内容,使用vim /etc/profile命令
配置java路径和一些java虚拟机参数
添加
export JAVA_HOME=/usr/local/smartbi/jdk1.7.0_79
export JAVA_OPTS="$JAVA_OPTS -Xms2048m -Xmx2048m -XX:MaxNewSize=256m -XX:MaxPermSize=512m"
export JRE_HOME=/usr/local/smartbi/jdk1.7.0_79/jre
exportPATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
加载使其生效;命令为source /etc/profile
Java –version查看生效情况;
成功!
让tomcat 和jdk文件授予可读可写可执行的权限
修改war包
将smartbi.war\WEB-INF\ehcache.xml 文件删除;然后将smartbi.war\WEB-INF\ehcache_cluster.xml 文件重命名为 ehcache.xml。
上传smartbi
将修改后的 smartbi.war 包复制到每个<Tomcat>\webapps 目录下
同理借助xftp将smartbi.war上传就可以
启动tomcat
进入到apache-tomcat-7.0.34/bin目录下,执行./startup.sh启动 tomcat 程序
命令:./startup.sh (启动这个文件)
查看端口进程:lsof –i:8080
成功!
登录smartbi 配置页面
http://ip:8080/smartbi
设置知识库信息,上传License文件,完成系统配置。
注意:所有服务器节点必须连同一个知识库,这样才能在连接到任一节点时都看到相同的资源。
这里信息要全部一致。
同个服务器部署说明;
同理,在同个服务器上部署tomcat可以按照上面tomcat部署步骤安装,但是下面几点需要修改;
a. 修改<Tomcat>\conf\server.xml文件。查找<Engine name="Catalina" defaultHost="localhost" >标签,添加 jvmRoute="tomcatX"
b.修改端口;
第一个修改的端口:
第二个修改的端口:
第三个修改的端口:
确保了这三个端口修改了,另外的tomcat才能正常启动,避免冲突;
Nginx配置
proxy.conf
在conf文件夹下新建proxy.conf文件并加入如下代码
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
roxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
gzip.conf
在conf文件夹下新建gzip.conf文件并加入如下代码
gzip on;
gzip_min_length 1000;
gzip_types text/plain text/cssapplication.x-javascript;
nginx.conf
打开nginx.conf 修改配置如下:
#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;
server {
listen 80;
server_name localhost;
#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
#
#location ~ \.php$ { - proxy_pass http://127.0.0.1;
#} - pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ { - root html;
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
- include fastcgi_params;
#} - deny access to .htaccess files, if Apache's document root
- concurs with nginx's one
#
#location ~ /\.ht { - deny all;
#}
}
- another virtual host using mix of IP-, name-, and port-based configuration
#
#server { - listen 8000;
- listen somename:8080;
- server_name somename alias another.alias;
- location / {
- root html;
- index index.html index.htm;
- }
#} - upstream的负载均衡,weight是权重,可以根据机器配置定义权重。weigth参数表 示权值,权值越高被分配到的几率越大,此处为配置权值,默认为轮巡方式。
upstream localhost {
ip_hash;
server 192.168.1.160:8080 weight=1; #server {ip}:{prot} [weight];
server 192.168.1.160:8081 weight=1;
server 192.168.1.161:8080 weight=1;
}
server {
listen 80; #nginx监听端口
server_name 192.168.1.161; #nginx服务名
location / {
proxy_connect_timeout 3;
proxy_send_timeout 30;
proxy_read_timeout 30;
proxy_pass http://localhost; #nginx监听地址
}
} - HTTPS server
#
#server { - listen 443 ssl;
- server_name localhost;
- ssl_certificate cert.pem;
- ssl_certificate_key cert.key;
- ssl_session_cache shared:SSL:1m;
- ssl_session_timeout 5m;
- ssl_ciphers HIGH:!aNULL:!MD5;
- ssl_prefer_server_ciphers on;
- location / {
- root html;
- index index.html index.htm;
- }
#}
}
这里使用ip_hash 权重分配模式每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题,对于到smartbi产品的session会话,采取该种权重分配较为合适;测试配置文件是否通过
/usr/local/nginx/sbin/nginx -t
测试通过!
重启nginx
cd /usr/local/nginx/sbin
./nginx -s reload
输入IP测试默认端口为80
进入tomcat主页面
Tomcat配置
配置IP:端口访问;修改文件
修改conf/server.xml文件
添加如下内容:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/" reloadable="true" docBase="/usr/local/smartbi/tomcat1/smartbi">
<Manager className="org.apache.catalina.session.StandardManager" pathname=""/>
</Context>移动应用包
把smartbi应用包移动到 tomcat目录下
mv smartbi /usr/local/smartbi/tomcat1重新启动应用
Cd /usr/local/smartbi/tomcat1/bin
./shutdown.sh 关闭
./startup.sh 启动访问
输入IP: 端口即可访问,不需要加项目名;