1、新安装centos7后查看系统是否有自带openjdk,查看命令
java -version;若有版本信息继续执行如下命令
rpm -qa|grep java查看是否有若干版本的jdk。复制相应jdk名称,使用如下名称对其一一卸载:yum -y remove java java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64;
全部卸载完成后再次使用Java -version查看,直至打印:bash: /usr/bin/java: 没有那个文件或目录
2、安装jdk,我下载的版本是jdk-8u101-linux-x64.rpm,进入文件所在目录执行命令
rpm -ivh jdk-8u101-linux-x64.rpm
3、java -version查看安装好了没,没有的话就配置环境变量,命令
vi /etc/profile
4、安装tomcat省略。
5、配置nginx
nginx.conf内容如下(注意pid的路径):
#user nobody;
worker_processes 4;
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid /usr/local/nginx/logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
upstream Tmobile {
server 192.168.195.128:9030;
server 192.168.195.130:9030;
}
log_format wwwlog '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
include vhosts/Tmobile/*;
}
在conf目录下加入vhosts/Tmobile目录,目录内放入以访问项目域名命名的文件
比如:upgrade.baidu.com
文件内容:
server
{
listen 80;
server_name upgrade.baidu.com;
index index.htm index.html index.jsp login.htm main.htm foot.htm top.htm mobile.htm;
root /PROJECT/MobileUpgradeCenter;
charset utf-8;
if (-d $request_filename)
{
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}
location ~ \.(do|shtml|html|json|jsp|htm|svl|cdo|dld)?$
{
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://Tmobile;
}
location ~ ^/(WEB-INF)/
{
deny all;
}
location ~ \.(gif|jpg|jpeg|swf|png|bmp|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|xlsx|mp3|wma|apk|ipa)?$
{
expires 1d;
}
location ~ \.(js|css)?$
{
expires 1h;
}
access_log /data/logs/upgrade.baidu.com_access wwwlog;
error_log /data/logs/upgrade.baidu.com_error ;
}
其它机器的nginx配置和此机器的配置均一致,主要配置使用机器在upstream Tmobile 这个地方,自此配置完毕。测试可用
6、编写启动脚本restart.sh
te by cpeak
#create time 2015 10 12
#===============定义变量
Tomcat_Home="/usr/local/server/apache-tomcat-7.0.70"
Log_Stop_Tag="Server startup in"
#=======================
source /etc/profile
. /etc/init.d/functions
Sum_num=0
date=`date +"%Y-%m-%d"`
Shell_file=$0
#LOGFILE=${Tomcat_Home}/logs/catalina_all.$(date +'%Y-%m-%d').log
LOGFILE=${Tomcat_Home}/logs/catalina.out
Tomcat_PID=`/bin/ps axu |grep "=${Tomcat_Home}" |grep -v grep |awk '{print $2}'`
Tomcat_PID_Num=`/bin/ps axu |grep "=${Tomcat_Home}" |grep -v grep |wc -l`
function down_nginx(){
sed -i 's/server 192.168.195.130:9030;/server 192.168.195.130:9030 down;/g' /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx -s reload
ssh 192.168.195.130 "sed -i 's/server 192.168.195.130:9030;/server 192.168.195.130:9030 down;/g' /usr/local/nginx/conf/nginx.conf && /usr/local/nginx/sbin/nginx -s reload"
}
function up_nginx(){
sed -i 's/server 192.168.195.130:9030 down;/server 192.168.195.130:9030;/g' /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx -s reload
ssh 192.168.195.130 "sed -i 's/server 192.168.195.130:9030 down;/server 192.168.195.130:9030;/g' /usr/local/nginx/conf/nginx.conf && /usr/local/nginx/sbin/nginx -s reload"
}
function stop_tomcat(){
down_nginx
while [[ $Tomcat_PID_Num -ne 0 ]]
do
if [[ $Sum_num == 0 ]];then
/bin/bash ${Tomcat_Home}/bin/shutdown.sh
sleep 15
else
action "Stop Tomcat:" /bin/false
echo "正在进行第${Sum_num}次强制停止"
/bin/ps axu |grep "=${Tomcat_Home}" |grep -v grep |awk '{print $2}' |xargs kill -s 9 && sleep 2
fi
Tomcat_PID_Num=`/bin/ps axu |grep "=${Tomcat_Home}" |grep -v grep |wc -l`
(( Sum_num = Sum_num +1 ))
done
action "Stop Tomcat:" /bin/true
/bin/rm -rf ${Tomcat_Home}/work/*
[ $? -eq 0 ] && action "Clear Tomcatcache:" /bin/true || action "Clear Tomcatcache:" /bin/false
}
function start_tomcat(){
/bin/bash ${Tomcat_Home}/bin/startup.sh
tail -n 0 -f ${LOGFILE} | while read line;
do
echo $line
if [[ "$line" =~ "$Log_Stop_Tag" ]];then
action "Start Tomcat:" /bin/true
up_nginx
Shell_num=`/bin/ps aux |grep ${Shell_file} |grep -v grep |awk '{print $2}' |wc -l `
if [ $Shell_num -le 3 ];then
/bin/ps aux |grep ${Shell_file} |grep -v grep |awk '{print $2}' | xargs kill
fi
fi
done
}
case $1 in
stop)
stop_tomcat
;;
start)
systemctl start nginx.service
start_tomcat
;;
restart|*)
stop_tomcat
systemctl restart nginx.service
start_tomcat
;;
esac