1、项目架构
项目地址 https://gitee.com/leifengyang/yygh-parent https://gitee.com/leifengyang/yygh-admin https://gitee.com/leifengyang/yygh-site
2、中间件
中间件 | 集群内地址 | 外部访问地址 |
---|
Nacos | his-nacos.his:8848 | http://139.198.165.238:30349/nacos | MySQL | his-mysql.his:3306 | 139.198.165.238:31840 | Redis | his-redis.his:6379 | 139.198.165.238:31840 | Sentinel | his-sentinel.his:8858 | 139.198.165.238:31840 | MongoDB | hismongodb.his:27017 | 139.198.165.238:31840 | RabbitMQ | his-rabbitm-rabbitmq.his:5672 | 139.198.165.238:31840 | ElasticSearch | his-es.his:9200 | 139.198.165.238:31840 |
3、生产与开发配置隔离
4、deploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: service-cart
name: service-cart
namespace: his #一定要写名称空间
spec:
progressDeadlineSeconds: 600
replicas: 1
selector:
matchLabels:
app: service-cart
strategy:
rollingUpdate:
maxSurge: 50%
maxUnavailable: 50%
type: RollingUpdate
template:
metadata:
labels:
app: service-cart
spec:
imagePullSecrets:
- name: aliyun-docker-hub #提前在项目下配置访问阿里云的账号密码
containers:
- image: $REGISTRY/$ALIYUNHUB_NAMESPACE/service-cart
readinessProbe:
httpGet:
path: /actuator/health
port: 8080
timeoutSeconds: 10
failureThreshold: 30
periodSeconds: 5
imagePullPolicy: Always
name: app
ports:
- containerPort: 8080
protocol: TCP
resources:
limits:
cpu: 300m
memory: 600Mi
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
dnsPolicy: ClusterFirst
restartPolicy: Always
terminationGracePeriodSeconds: 30
---
apiVersion: v1
kind: Service
metadata:
labels:
app: service-cart
name: service-cart
namespace: his
spec:
ports:
- name: http
port: 8080
protocol: TCP
targetPort: 8080
selector:
app: service-cart
sessionAffinity: None
type: ClusterIP
4、devops实战
第一步:拉取代码
第二部,项目编译
1、修改maven让他从阿里云下载镜像 ● 使用admin登陆ks ● 进入集群管理 ● 进入配置中心 ● 找到配置 ○ ks-devops-agent ○ 修改这个配置。加入maven阿里云镜像加速地址 shell:script mvn clean package -Dmavernetest.skip=true 2、缓存机制 已经下载过的jar包,下一次流水线的启动,不会重复下载
第三步,构建镜像
并行构建镜像
|