- 此模版部署所有xxx前后端工程
- 集成 arthas3.1.7
- 集成 skywalking7.0.0,默认关闭
- 集成 filebeat7.5.1,环境变量注入了节点ip,默认关闭
- 集成 Prometheus监控,见service上prometheus.io/scrape注解,默认不允许发现
- 加入调度策略,默认不允许部署在ops节点,集群部署分布在不同节点,不同可用区
kubectl create secret generic encrypt --from-env-file=encrypt -n uat
# 添加仓库并更新
helm repo add meiwu https://xxx.tencentcloudcr.com/chartrepo/library --username xxx --password xxx
helm repo up
2.2 部署java工程(默认不创建service,99%工程都是经过gateway外网访问)
helm install distribution --namespace prod --version 0.1 meiwu/meiwu \
--set nameOverride=distribution \
--set image.repository=xxx.tencentcloudcr.com/library/distribution \
--set image.tag=116 \
--set skywalking.enabled=false \ # 是否开启skywalking, prod开启
--set log.enabled=false \ # 是否开启日志采集,prod开启
--set log.elasticsearch.host=192.168.48.45 \
--set log.elasticsearch.username=elastic \
--set log.elasticsearch.password=12345 \
--set resources.limits.cpu=2 \
--set resources.limits.memory=8Gi \
--set resources.requests.cpu=2 \
--set resources.requests.memory=8Gi \
--set spring.profiles.active=prod \
--set apollo.configservice=http://apollo.xxx.cn \ # dev、test用此配置,uat、prod下删除
--set apollo.meta=http://apollo-config-server-prod.apollo:8080 \ # uat、prod下用此配置,dev、test删除
--set service.enabled=true \ # 只有mw-iim,gateway 需要加
--set ingress.enabled=true \ # 只有mw-iim,gateway 需要加
--set ingress.hosts[0]=distribution.test.mw \ # 只有mw-iim,gateway 需要加
--set ingress.tls[0].hosts[0]=$host \ # 只有mw-iim,gateway 需要加
--set ingress.tls[0].secretName=ssl # 只有mw-iim,gateway 需要加
2.3 部署前端工程(前端工程要传递 lang=js 参数)
helm install nginx --namespace test --version 0.1 meiwu/meiwu \
--set nameOverride=nginx \
--set image.repository=xxx.tencentcloudcr.com/library/nginx \
--set image.tag=1.9 \
--set lang=js \
--set resources.limits.cpu=4 \
--set resources.limits.memory=8Gi \
--set resources.requests.cpu=4 \
--set resources.requests.memory=8Gi \
--set service.enabled=true \
--set ingress.enabled=true \
--set ingress.hosts[0]=nginx.test.com \
--set ingress.tls[0].hosts[0]=nginx.test.com \
--set ingress.tls[0].secretName=ssl
helm install distribution --namespace prod --set skywalking.enabled=true --set log.enabled=true --set spring.profiles.active=dev --set service.enabled=true --dry-run --debug ./meiwu
参数 |
描述 |
默认值 |
是否必须 |
nameOverride |
名字 |
- |
必须设置 |
lang |
区分前后端工程,可以选择java、js |
java |
必须设置 |
skywalking.enabled |
是否开启skywalking |
false |
- |
arms.enabled |
是否开启arms监控 |
false |
- |
ports.http.enabled |
是否开启http(80)端口 |
true |
- |
ports.xxl.enabled |
是否开启xxljob(9991)端口 |
false |
- |
replicaCount |
部署实例个数 |
1 |
- |
image.repository |
镜像仓库 |
harbor.top.mw/library/distribution |
必须设置 |
image.tag |
版本号 |
5 |
必须设置 |
imagePullSecrets |
拉去镜像的密钥 |
[] |
- |
log.enabled |
是否采集日志 |
false |
- |
log.path |
采集日志目录 |
/log |
- |
log.elasticsearch.host |
es地址 |
- |
- |
log.elasticsearch.port |
es端口 |
9200 |
- |
log.elasticsearch.username |
es账号 |
- |
- |
log.elasticsearch.password |
es密码 |
- |
- |
service.enabled |
是否开启svc |
false |
前端工程必须设置,需要暴露的工程必须设置 |
ingress.enabled |
是否开启ingress |
false |
依赖service.endabled, 需要暴露的工程必须设置 |
ingress.hosts[0] |
外网域名 |
- |
- |