2025-10-24 18:19:10 +08:00
|
|
|
|
# 创建 Deployment
|
|
|
|
|
|
apiVersion: apps/v1
|
|
|
|
|
|
kind: Deployment
|
|
|
|
|
|
metadata:
|
2025-10-27 16:54:28 +08:00
|
|
|
|
name: test-lessie-agents-deployment
|
2025-10-24 18:19:10 +08:00
|
|
|
|
namespace: test-lessie
|
|
|
|
|
|
labels:
|
2025-10-27 16:54:28 +08:00
|
|
|
|
app: test-lessie-agents
|
2025-10-24 18:19:10 +08:00
|
|
|
|
environment: test
|
|
|
|
|
|
project: lessie
|
|
|
|
|
|
spec:
|
2025-10-27 16:54:28 +08:00
|
|
|
|
replicas: 1
|
2025-10-24 18:19:10 +08:00
|
|
|
|
selector:
|
|
|
|
|
|
matchLabels:
|
|
|
|
|
|
labels:
|
2025-10-27 16:54:28 +08:00
|
|
|
|
app: test-lessie-agents
|
2025-10-24 18:19:10 +08:00
|
|
|
|
environment: test
|
|
|
|
|
|
project: lessie
|
2025-10-27 16:54:28 +08:00
|
|
|
|
strategy:
|
|
|
|
|
|
type: RollingUpdate # 滚动更新策略
|
|
|
|
|
|
rollingUpdate:
|
|
|
|
|
|
maxSurge: 1 # 最大新增副本数
|
|
|
|
|
|
maxUnavailable: 1 # 最大不可用副本数
|
|
|
|
|
|
template:
|
|
|
|
|
|
metadata:
|
|
|
|
|
|
labels:
|
|
|
|
|
|
app: test-lessie-agents
|
|
|
|
|
|
environment: test
|
|
|
|
|
|
project: lessie
|
|
|
|
|
|
spec:
|
|
|
|
|
|
imagePullSecrets:
|
|
|
|
|
|
- name: dxin-image-repository # 镜像仓库凭证Secret
|
|
|
|
|
|
volumes:
|
|
|
|
|
|
- name: aws-credentials-volume # aws-credentials 卷文件
|
|
|
|
|
|
configMap:
|
|
|
|
|
|
name: aws-credentials
|
|
|
|
|
|
- name: google-credentials-volume
|
|
|
|
|
|
configMap:
|
|
|
|
|
|
name: google-credentials
|
|
|
|
|
|
- name: lessie-logs-volume
|
|
|
|
|
|
hostPath:
|
|
|
|
|
|
path: /data/logs/lessie-agents/
|
|
|
|
|
|
type: DirectoryOrCreate
|
|
|
|
|
|
containers:
|
|
|
|
|
|
- name: test-lessie-agents # 容器名称
|
|
|
|
|
|
image: uswccr.ccs.tencentyun.com/lessietest/lessie-sourcing-agents:v21_dxin_f2c4c4b0_202510271638 # 容器镜像
|
|
|
|
|
|
imagepullPolicy: IfNotPresent # 镜像拉取策略 ,有则不拉
|
|
|
|
|
|
env:
|
|
|
|
|
|
- name: POD_NAME
|
|
|
|
|
|
valueFrom:
|
|
|
|
|
|
fieldRef:
|
|
|
|
|
|
fieldPath: metadata.name
|
|
|
|
|
|
- name: APP_ENV_VALUE
|
|
|
|
|
|
value: "s1"
|
|
|
|
|
|
- name: APP_PORT
|
|
|
|
|
|
value: "8000"
|
|
|
|
|
|
- name: GUNICORN_WORKERS
|
|
|
|
|
|
value: "2"
|
|
|
|
|
|
- name: MAX_REQUESTS
|
|
|
|
|
|
value: "200"
|
|
|
|
|
|
- name: MAX_REQUESTS_JITTER
|
|
|
|
|
|
value: "50"
|
|
|
|
|
|
ports:
|
|
|
|
|
|
- containerPort: 8000 # 容器暴露的端口
|
|
|
|
|
|
resources:
|
|
|
|
|
|
requests:
|
|
|
|
|
|
cpu: "1" # 容器请求分配1个CPU核心
|
|
|
|
|
|
memory: "2Gi" # 容器请求分配2Gi内存
|
|
|
|
|
|
limits:
|
|
|
|
|
|
cpu: "2" # 最多可以使用2个CPU核心
|
|
|
|
|
|
memory: "8Gi" # 容器最多可以使用8Gi内存
|
|
|
|
|
|
volumeMounts:
|
|
|
|
|
|
- name: aws-credentials-volume
|
|
|
|
|
|
mountPath: /root/.aws/
|
|
|
|
|
|
- name: google-credentials-volume
|
|
|
|
|
|
mountPath: /root/.google/
|
|
|
|
|
|
- name: lessie-logs-volume
|
|
|
|
|
|
mountPath: /data/webapps/lessie_sourcing_agents/logs/
|
|
|
|
|
|
subPathExpr: lessie-agents-$(POD_NAME)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
# 创建 Service
|
|
|
|
|
|
# 集群内部(其他 Pod):http://test-lessie-agents-svc.test-lessie:8000
|
|
|
|
|
|
# 集群外部(其他节点):http://<Node_IP>:38000
|
|
|
|
|
|
apiVersion: v1
|
|
|
|
|
|
kind: Service
|
|
|
|
|
|
metadata:
|
|
|
|
|
|
name: test-lessie-agents-svc
|
|
|
|
|
|
namespace: test-lessie
|
|
|
|
|
|
labels:
|
|
|
|
|
|
app: test-lessie-agents
|
|
|
|
|
|
environment: test
|
|
|
|
|
|
project: lessie
|
|
|
|
|
|
spec:
|
|
|
|
|
|
type: NodePort
|
|
|
|
|
|
selector: # 必须匹配 Deployment 的 labels 才能关联 Pod
|
|
|
|
|
|
app: test-lessie-agents
|
|
|
|
|
|
environment: test
|
|
|
|
|
|
project: lessie
|
|
|
|
|
|
ports:
|
|
|
|
|
|
- name: http
|
|
|
|
|
|
port: 8000 # ClusterIP 内部端口
|
|
|
|
|
|
targetPort: 8000 # 容器端口
|
|
|
|
|
|
nodePort: 38000 # 节点对外端口
|
2025-10-24 18:19:10 +08:00
|
|
|
|
|
|
|
|
|
|
|