Merge branch 'sim_backup' into 'sim'

Sim backup

See merge request eshop/biz_service_ebtp_project!35
This commit is contained in:
万宸舜
2021-05-14 09:42:10 +08:00
4 changed files with 303 additions and 4 deletions

114
deployment-sim.yaml Normal file
View File

@ -0,0 +1,114 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: biz-service-ebtp-project #[1] Deployment名称可填写微服务名称
namespace: default
labels:
app: biz-service-ebtp-project
spec:
replicas: 3
strategy:
rollingUpdate:
maxSurge: 1
maxUnavailable: 1
selector:
matchLabels:
app: biz-service-ebtp-project #[2] 选择器匹配时标签名称,可填写微服务名称
template:
metadata:
labels:
app: biz-service-ebtp-project #[3] 模板名称,可填写微服务名称
annotations:
prometheus.io/port: '18012'
prometheus.io/jl-pod: 'true'
spec:
volumes:
- name: log
persistentVolumeClaim:
claimName: log-pvc
readOnly: false
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- biz-service-ebtp-project
topologyKey: "kubernetes.io/hostname"
containers:
- name: biz-service-ebtp-project #[6] 必选,容器名称,可填写微服务名称
image: harbor.dcos.guangzhou.unicom.local/eshop/biz-service-ebtp-project:latest #[7] 镜像名称请把biz-service-ebtp-project替换为服务名称
args: ["java","-Djava.security.egd=file:/dev/./urandom", "-javaagent:/pinpoint/tianyan-springboot-agent/pinpoint-bootstrap-1.8.0.jar", "-Dpinpoint.agentId=$(MY_POD_IP)", "-Dpinpoint.applicationName=$(APP_NAME)", "-Dpinpoint.licence=$(AGENT_LICENCE_DEV)", "-Dspring.profiles.active=sim", "-jar", "/app.jar"]
volumeMounts:
- name: log
mountPath: /log
ports:
- containerPort: 18012 #[8] 容器需要监听的端口号与配置文件中的server.port参数相同与参数[4]相同
# livenessProbe:
# failureThreshold: 3
# httpGet:
# port: 18012 #[11] pod存活检测端口,修改为该微服务配置文件中server.port的端口号,与参数[5]相同
# path: /actuator/prometheus
# scheme: HTTP
# initialDelaySeconds: 300
# periodSeconds: 60
# successThreshold: 1
# timeoutSeconds: 2
# readinessProbe:
# failureThreshold: 1
# httpGet:
# port: 18012 #[12] pod就绪检测端口,修改为该微服务配置文件中server.port的端口号,与参数[5]相同
# path: /actuator/prometheus
# scheme: HTTP
# periodSeconds: 5
# successThreshold: 2
# timeoutSeconds: 2
resources:
requests:
cpu: 1000m
memory: 2Gi
limits:
cpu: 3000m
memory: 6Gi
env:
- name: APP_NAME
value: biz_ebtp_project
- name: AGENT_LICENCE
value: 527BFA7B28577578
- name: APOLLO_CONFIGSERVICE
value: http://apollo-configservice:8080
- name: MY_POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: JAVA_TOOL_OPTIONS
value:
-XX:+UnlockExperimentalVMOptions
-XX:+UseContainerSupport
-XX:+UseCGroupMemoryLimitForHeap
-XX:InitialRAMPercentage=40.0
-XX:MinRAMPercentage=20.0
-XX:MaxRAMPercentage=80.0
---
kind: Service
apiVersion: v1
metadata:
name: biz-service-ebtp-project-svc # [11] service的名字格式为“服务名-svc”
namespace: default
labels:
service: biz-service-ebtp-project-svc # [12] service的标签可与参数[11]相同
annotations:
prometheus.io/port: '18012' #[13] prometheus自动发现service的端口也是该微服务所使用的端口与参数[4]相同
prometheus.io/jl-svc: 'true'
spec:
ports:
- port: 18012 #[15] 与参数4相同
targetPort: 18012 #[16] 与参数4相同
selector:
app: biz-service-ebtp-project #[17] 该service对应Deployment的名字与参数[1]相同
---

View File

@ -84,6 +84,15 @@ spec:
valueFrom: valueFrom:
fieldRef: fieldRef:
fieldPath: status.podIP fieldPath: status.podIP
- name: JAVA_TOOL_OPTIONS
value:
-XX:+UnlockExperimentalVMOptions
-XX:+UseContainerSupport
-XX:+UseCGroupMemoryLimitForHeap
-XX:InitialRAMPercentage=40.0
-XX:MinRAMPercentage=20.0
-XX:MaxRAMPercentage=80.0
--- ---
kind: Service kind: Service
apiVersion: v1 apiVersion: v1

View File

@ -0,0 +1,176 @@
server:
port: 18012
servlet:
context-path: /
seata:
service:
vgroup-mapping:
biz-service-ebtp-project-service-group: seata-server-jl
registry:
type: eureka
eureka:
serviceUrl: http://eureka-1-svc:8080/eureka,http://eureka-2-svc:8080/eureka,http://eureka-3-svc:8080/eureka
# 对应 apollo 配置中心的应用名
app:
id: biz-service-ebtp-project
# Apollo 配置信息
apollo:
meta: http://10.242.31.54:6002/
bootstrap:
namespace: application
enabled: true
eagerLoad:
enabled: true
spring:
aop:
auto: true #开启spring的aop配置
proxy-target-class: true
application:
name: biz-service-ebtp-project
shardingsphere:
datasource:
names: ds0
ds0:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
username: mall
password: unicom
jdbc-url: jdbc:mysql://10.125.160.37:3306/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
url: jdbc:mysql://10.125.160.37:3306/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
filters: stat,wall,log4j
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20
connection-properties: druid.stat.merggSql=ture;druid.stat.slowSqlMillis=5000
props:
sql:
show: false
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
serialization:
write-dates-as-timestamps: false
# 天宫Kafka增加了安全认证需要配置安全属性
kafka:
bootstrap-servers: 10.125.164.24:32002,10.125.164.192:32096,10.125.164.89:32002
template:
default-topic: jl_eshop
# 生产者配置参数
producer:
client-id: core-service-ebtp-crypt
properties:
security.protocol: SASL_PLAINTEXT
sasl.mechanism: SCRAM-SHA-256
sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="eshop-kafka-sim" password="Unicom#135";
# 消费者配置参数
consumer:
group-id: core-service-ebtp-crypt-consumer
auto-offset-reset: latest
properties:
security.protocol: SASL_PLAINTEXT
sasl.mechanism: SCRAM-SHA-256
sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="eshop-kafka-sim" password="Unicom#135";
# 生产区 redis 配置
redis:
sentinel:
master: eshop-redis-sim
nodes: 10.125.164.24:32510,10.125.164.90:32515,10.125.164.89:32516
password: Unicom#135
# 天宫Eureka配置
eureka:
client:
service-url:
defaultZone: http://eureka-1-svc:8080/eureka,http://eureka-2-svc:8080/eureka,http://eureka-3-svc:8080/eureka
instance:
prefer-ip-address: true
instance-ip: ${spring.cloud.client.ip-address}:${server.port}
mybatis-plus:
configuration:
# 是否开启自动驼峰命名规则映射:从数据库列名到Java属性驼峰命名的类似映射
map-underscore-to-camel-case: true
auto-mapping-behavior: full
# 这个配置会将执行的sql打印出来在开发或测试的时候可以用
#log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath*:com/chinaunicom/mall/ebtp/**/mapper/*Mapper.xml
global-config:
# 逻辑删除配置
db-config:
logic-not-delete-value: normal # 逻辑删除标记:正常数据
logic-delete-value: deleted # 逻辑删除标记:已删除的数据
type-aliases-package: com.chinaunicom.mall.ebtp.project
hystrix:
command:
default:
execution:
timeout:
enabled: true
isolation:
strategy: SEMAPHORE
thread:
timeoutInMilliseconds: 200000 #熔断超时时间
circuitBreaker:
sleepWindowInMilliseconds: 20000
forceClosed: true
ribbon:
ReadTimeout: 20000 #请求处理的超时时间
ConnectTimeout: 20000 #请求连接超时时间
MaxAutoRetries: 0 #对当前实例的重试次数
MaxAutoRetriesNextServer: 1 #切换实例的重试次数 1
mconfig:
swagger-ui-open: true
exception-handle-enabled: true
seata-open-enabled: false
work-id: 1 #终端ID
datacenter-id: 1 #数据中心ID
host-name: http://10.238.25.112/
service-name-purp: mall-purp #采购系统委托项目微服务
service-name-wfap: mall-wfap #重新评审 流程微服务
service-name-resu: mall-resu #重新评审 项目中心查询服务
service-price-query: biz-service-price-query #商城询价服务
service-price-usercenter: core-service-usercenter-public #用户中心服务
#内部服务
service-name-archive: biz-service-ebtp-archive #归档服务
service-name-auction: biz-service-ebtp-auction #竞拍服务API
service-name-calibration: biz-service-ebtp-calibration #标段定标接口
service-name-bid: biz-service-ebtp-bid #标段出始化流程
service-name-process: biz-service-ebtp-process #标段出始化流程
service-name-resps: biz-service-ebtp-resps #标段应答文件
service-name-rsms: biz-service-ebtp-rsms #评审微服务
service-name-tender: biz-service-ebtp-tender #标段投标微服务
wfSectionNo: '080'
wfSectionName: 标段重新评审审批单
# 用户暴露给 prometheus 的健康数据
management:
endpoints:
web:
exposure:
include: "*"
cors:
allowed-origins: "*"
allowed-methods: "*"

View File

@ -11,7 +11,7 @@
<!--展示格式 layout--> <!--展示格式 layout-->
<layout class="ch.qos.logback.classic.PatternLayout"> <layout class="ch.qos.logback.classic.PatternLayout">
<pattern> <pattern>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${MY_POD_IP} %contextName [%thread] %-5level %logger{50} - [ppTraceId: %X{PtxId}, ppSpanId: %X{PspanId}] - %msg%n</pattern> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${MY_POD_IP} %contextName [%thread] %-5level %logger{50}  - [ppTraceId: %X{PtxId}, ppSpanId: %X{PspanId}] - %msg%n</pattern>
</pattern> </pattern>
</layout> </layout>
</appender> </appender>
@ -27,7 +27,7 @@
<!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间--> <!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间-->
<FileNamePattern>${logback.logdir}/${logback.appname}-${MY_POD_IP}.%d{yyyy-MM-dd}.log</FileNamePattern> <FileNamePattern>${logback.logdir}/${logback.appname}-${MY_POD_IP}.%d{yyyy-MM-dd}.log</FileNamePattern>
<!--只保留最近3天的日志--> <!--只保留最近3天的日志-->
<maxHistory>90</maxHistory> <maxHistory>3</maxHistory>
<!--应用启动时删除超过时间范围的日志文件--> <!--应用启动时删除超过时间范围的日志文件-->
<cleanHistoryOnStart>true</cleanHistoryOnStart> <cleanHistoryOnStart>true</cleanHistoryOnStart>
<!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志--> <!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志-->
@ -39,11 +39,11 @@
<pattern>%d ${MY_POD_IP} [%thread] %-5level %logger{64} %line - [ppTraceId: %X{PtxId}, ppSpanId: %X{PspanId}] - %msg%n</pattern> <pattern>%d ${MY_POD_IP} [%thread] %-5level %logger{64} %line - [ppTraceId: %X{PtxId}, ppSpanId: %X{PspanId}] - %msg%n</pattern>
</encoder> </encoder>
</appender> </appender>
<!--指定最基础的日志输出级别--> <!--指定最基础的日志输出级别-->
<root level="INFO"> <root level="INFO">
<!--appender将会添加到这个logger-->
<appender-ref ref="consoleLog"/> <appender-ref ref="consoleLog"/>
<!--appender将会添加到这个logger-->
<appender-ref ref="fileInfoLog"/> <appender-ref ref="fileInfoLog"/>
</root> </root>