三号线应急系统相关配置备忘,关键信息隐藏,切勿复制后直接使用
Nginx配置
# 服务配置
server {
listen 81 ssl;
server_name ***.***.com;
ssl_certificate /usr/local/nginx/security/_.***.crt;
ssl_certificate_key /usr/local/nginx/security/_.***.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
error_page 497 301 https://$http_host$request_uri;
# server-api
location ^~/prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://ucdapi/;
}
# job-api
location ^~/job-api/ {
proxy_pass http://10.0.0.3:8081/;
}
# pc_ui
location / {
root /usr/local/nginx/html/mose_pc;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/local/nginx/html/mose_pc;
}
}
server {
listen 81;
server_name localhost;
rewrite ^(.*) https://$host$1 permanent;
}
upstream ucdapi {
ip_hash;
server 10.0.0.3:8081 weight=10;
server 10.0.0.3:8082 weight=10;
server 10.0.0.3:8083 weight=10;
#server 10.0.0.3:8084 weight=10;
}
upstream ucdsocket {
server 10.0.0.3:9091 weight=10;
server 10.0.0.3:9092 weight=10;
server 10.0.0.3:9093 weight=10;
#server 10.0.0.3:9094 weight=10;
}
server {
listen 9090 ssl;
server_name ***.***.com;
ssl_certificate /usr/local/nginx/security/_.***.crt;
ssl_certificate_key /usr/local/nginx/security/_.***.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
error_page 497 301 https://$http_host$request_uri;
location /ws {
proxy_pass http://ucdsocket;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
}
server {
listen 8888 ssl;
server_name ***.***.com;
ssl_certificate /usr/local/nginx/security/_.***.crt;
ssl_certificate_key /usr/local/nginx/security/_.***.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
error_page 497 301 https://$http_host$request_uri;
location / {
proxy_buffering off;
proxy_pass http://localhost:8000;
proxy_set_header Host $host:$server_port;
client_max_body_size 20M;
}
}
server {
listen 8888;
server_name ***.***.com;
rewrite ^(.*) https://$host$1 permanent;
}
Api负载脚本
#!/bin/sh
#chkconfig: 2345 80 90
#description: start api
echo '====>>> Backup the old package <<<===='
##备份上次的jar包
mv /home/ucd/mose/mose-admin.jar /home/ucd/backup/mose/mose-admin-$(date "+%Y%m%d%H%M%S").jar
##保留最近5个备份jar包
cd /home/ucd/backup/mose/
ls -t |grep 'mose-admin' | sed -n '6,$p' | xargs -I {} rm -rf {}
echo '====>>> Download the new package <<<===='
##下载构建后最新的jar包
cd /home/ucd/mose/
wget http://***.**.***.***:****/mose-prod/mose-admin.jar
echo '====>>> Stop the old package <<<===='
##停止负载的各个jar包节点
pid_81=`ps -ef |grep java|grep ucd-admin81.jar|grep -v grep|awk '{print $2}'`
echo '====>>> old pid_81: '$pid_81
if [ -n "$pid_81" ]
then
kill -9 $pid_81
fi
sleep 1
pid_82=`ps -ef |grep java|grep ucd-admin82.jar|grep -v grep|awk '{print $2}'`
echo '====>>> old pid_82: '$pid_82
if [ -n "$pid_82" ]
then
kill -9 $pid_82
fi
sleep 1
pid_83=`ps -ef |grep java|grep ucd-admin83.jar|grep -v grep|awk '{print $2}'`
echo '====>>> old pid_83: '$pid_83
if [ -n "$pid_83" ]
then
kill -9 $pid_83
fi
sleep 1
echo '====>>> Start the new package <<<===='
##清除旧的jar包,分发新的节点jar包并启动
rm -rf ucd-admin*.jar
rm -rf ucd-admin*.log
cp mose-admin.jar ucd-admin81.jar
cp mose-admin.jar ucd-admin82.jar
cp mose-admin.jar ucd-admin83.jar
export JAVA_HOME=/home/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tool.jar
export PATH=${JAVA_HOME}/bin:$PATH
sleep 1
nohup java -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -Xms4096m -Xmx4096m -Xmn1024m -Xss1024m -jar -Dspring.profiles.active=prod -Dserver.port="8081" -Dnetty.port="9091" /home/ucd/mose/ucd-admin81.jar > /home/ucd/mose/ucd-admin81.log 2>&1 &
nohup java -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -Xms4096m -Xmx4096m -Xmn1024m -Xss1024m -jar -Dspring.profiles.active=prod -Dserver.port="8082" -Dnetty.port="9092" /home/ucd/mose/ucd-admin82.jar > /home/ucd/mose/ucd-admin82.log 2>&1 &
nohup java -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -Xms4096m -Xmx4096m -Xmn1024m -Xss1024m -jar -Dspring.profiles.active=prod -Dserver.port="8083" -Dnetty.port="9093" /home/ucd/mose/ucd-admin83.jar > /home/ucd/mose/ucd-admin83.log 2>&1 &
echo '==> The new package was updated successfully'
UI-PC更新脚本
#!/bin/bash
cd /usr/local/nginx/html/mose_pc/
rm -rf dist.zip
wget http://***.**.***.***:****/mose-prod/dist.zip
unzip -o dist.zip
echo "Pc replacement completed !"
评论区