标签:files pass 应该 ogg 业务 nap jdk override dump
Java服务在灰度环境和生产环境需要参照此文档进行部署.
需要在JVM中安装JCE来进行加解密.
将生产环境的tdkeys.jks拷贝到/usr/local/software/td-config目录下
在/usr/local/software/td-config目录下创建enviroments文件, 这个文件内容在灰度环境和生产环境不相同.
灰度环境:
SERVICE_LOG_FOLDER=/data/logs
EUREKA_URL="http://192.168.1.14:21111/eureka"
生产环境:
SERVICE_LOG_FOLDER=/data/logs
EUREKA_URL="http://192.168.1.70:21111/eureka,http://192.168.1.71:21111/eureka,http://192.168.1.72:21111/eureka"
如果目录不存在, 需要创建/data/logs目录, 用来存放日志文件
安装包有4个文件:
一般由开发提供, 后期可以从CI环境获取.
以financial-manager项目为例, 文件名为financial-manager.service, 脚本内容如下:
[Unit]
Description=financial-manager service
After=syslog.target
[Service]
EnvironmentFile=/usr/local/software/td-config/enviroments
Type=simple
ExecStart=/usr/local/java/jdk/bin/java -server -Xms1024m -Xmx1024m -XX:+UseG1GC -verbose:gc -Xloggc:/data/logs/financial_manager_gc.log -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/logs -jar /usr/local/software/financial-manager/financial-manager-core-1.0-SNAPSHOT.jar --spring.config.location=/usr/local/software/financial-manager/override.properties
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
注意这个文件里的路径必须都为绝对路径. 需要修改的内容:
/usr/local/java/jdk/bin/java
: 这是java命令的执行路径, 环境和机器不一样可能导致命令的执行路径不同.-Xms1024m -Xmx1024m
: Java堆内存大小的配置, 最大内存和最小内存应该一样, 具体配置多少根据业务确定.-Xloggc:/data/logs/financial_manager_gc.log
: gc日志文件路径/usr/local/software/financial-manager/financial-manager-core-1.0-SNAPSHOT.jar
: jar包路径./usr/local/software/financial-manager/override.properties
: 配置文件override.properties路径.以financial-manager项目为例, 脚本名为install, 脚本内容如下:
#bash/bin!
cp financial-manager.service /etc/systemd/system/
systemctl enable financial-manager.service
server.port=9003 #启动端口
logging.level.root=INFO
logging.level.com.tuandai=INFO
logging.level.cn.tdw=INFO
spring.application.index=0 #实例编号, 具体见下面解释
spring.cloud.config.profile=prev #启动环境, prev为灰度环境, prod为生产环境
# 加解密相关
encrypt.keyStore.location=file:///usr/local/software/td-config/tdkeys.jks
encrypt.keyStore.password=4DpeZbUL^Xy%KdHm #需要替换为生产环境password
encrypt.keyStore.alias=tdkey
encrypt.keyStore.secret=oQ$!3QnXm%&cS%GQ #需要替换为生产环境secret
需要修改的内容:
server.port
: 修改启动端口spring.cloud.config.profile
: prev为灰度环境, prod为生产环境spring.application.index
: spring.application.index代表了实例编号, 对于同一个服务, 实例编号需要不同. 假设综合理财需要在192.168.1.70~73部署4个实例, 则spring.application.index需要分别配置为0, 1, 2, 3. 例如192.168.1.70机器上的spring.application.index设置为0, 192.168.1.71机器上的spring.application.index设置为1.encrypt.keyStore.*
: 需要修改为生产环境的密钥配置.运行install脚本即可完成安装
systemctl start user-service
systemctl stop user-service
systemctl status user-service
示例文件可见附件
标签:files pass 应该 ogg 业务 nap jdk override dump
原文地址:https://www.cnblogs.com/chengjunhao/p/9323221.html