From 099aac3973b3722a9e3a813b6d98fa3f51fa477e Mon Sep 17 00:00:00 2001 From: haoxr <1490493387@qq.com> Date: Fri, 13 Jan 2023 16:56:04 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E6=B7=BB=E5=8A=A0K8S=E9=83=A8=E7=BD=B2?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deploy/prod/deploy.yaml | 65 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 deploy/prod/deploy.yaml diff --git a/deploy/prod/deploy.yaml b/deploy/prod/deploy.yaml new file mode 100644 index 00000000..e64fe481 --- /dev/null +++ b/deploy/prod/deploy.yaml @@ -0,0 +1,65 @@ +--- +# 定义工作负载 +apiVersion: apps/v1 +kind: Deployment # 无状态部署 +metadata: # 资源元数据 + name: youlai-boot-deployment # Deployment名称(必须) + namespace: youlai + labels: # 资源标签 k8s核心分组机制,通过label selector 能够识别一组有共同特征或属性的资源对象, kubectl get pod -l app=youlai-boot --show-labels 过滤出所有 + app: youlai-boot +spec: # Deployment 规格说明 + replicas: 1 # 副本数量 + strategy: # 更新策略 + type: RollingUpdate # Recreate:停止所有原来启动新的,适用开发环境;RollingUpdate: 滚动升级,启动新的完成后才停止旧的,保证业务连贯性,如果新的版本发布错误则会保持老的版本 + rollingUpdate: + maxSurge: 25% # 100个pod,可启动25个新的pod + maxUnavailable: 25% # 100个pod,可关闭25旧的个pod + selector: + matchLabels: + app: youlai-boot + template: # pod基本信息 + metadata: # pod元数据 + labels: # 至少需要定义一个label用于service识别转发pod + app: youlai-boot # 完全匹配spec.selector.matchLabels + spec: # pod规格 + containers: + - name: youlai-boot # 必须 + image: youlaitech/youlai-boot:latest # 必须 + imagePullPolicy: Always + ports: + - containerPort: 8989 + protocol: TCP + env: + - name: spring.profiles.active # 容器端口 + value: prod + - name: TZ + value: Asia/Shanghai + volumeMounts: + - mountPath: /logs/youlai-boot + name: log-path + resources: # 资源限制 + limits: + cpu: 256m + memory: 512Mi + dnsPolicy: ClusterFirst + restartPolicy: Always + +--- +# 定义服务 +apiVersion: v1 +kind: Service +metadata: + labels: + app: youlai-boot + name: youlai-boot-deployment + namespace: youlai +spec: + ports: + - name: http + port: 8989 + protocol: TCP + targetPort: 8989 + selector: + app: youlai-boot + sessionAffinity: None + type: NodePort \ No newline at end of file