Files
jenkins-pipeline/k8s_yaml/test/test-flymoon-admin.yaml

92 lines
2.8 KiB
YAML
Raw Permalink Normal View History

2025-10-30 11:20:06 +08:00
# ----------------------------
# Deployment
# ----------------------------
apiVersion: apps/v1
kind: Deployment
metadata:
name: test-flymoon-admin-deployment
namespace: test-lessie
labels:
app: test-flymoon-admin
environment: test
project: flymoon
spec:
replicas: 1
selector:
matchLabels:
app: test-flymoon-admin
environment: test
project: flymoon
strategy:
type: RollingUpdate # 滚动更新策略
rollingUpdate:
maxSurge: 1 # 最大新增副本数更新过程中「超出期望副本数」最多为1每次只创建1个新 Pod
maxUnavailable: 0 # 最大不可用副本数,更新过程中「不可用 Pod 数」最多为0不允许服务降级
2025-10-30 11:20:06 +08:00
template:
metadata:
labels:
app: test-flymoon-admin
environment: test
project: flymoon
spec:
imagePullSecrets:
- name: dxin-image-repository # 镜像仓库凭证Secret
volumes:
- name: flymoon-admin-logs-volume
hostPath:
path: /data/logs/flymoon-admin/
type: DirectoryOrCreate
containers:
- name: test-flymoon-admin # 容器名称
image: uswccr.ccs.tencentyun.com/lessietest/flymoon-admin:v0.0.1 # 容器镜像
imagePullPolicy: Always # 镜像拉取策略 拉
2025-10-30 11:20:06 +08:00
env:
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: SPRING_PROFILES_ACTIVE
value: "s1"
ports:
- containerPort: 8080 # 容器暴露的端口
resources:
requests:
cpu: "100m" # 容器请求分配0.1个CPU核心这不是实际占用但调度会以这里进行参考
memory: "1Gi" # 容器请求分配1Gi内存这会实际预留
limits:
cpu: "1" # 最多可以使用1个CPU核心
memory: "3Gi" # 容器最多可以使用3Gi内存
volumeMounts:
- name: flymoon-admin-logs-volume
mountPath: /app/logs/
subPathExpr: flymoon-admin-log-$(POD_NAME)
---
# ----------------------------
# Service
# 集群内部http://test-flymoon-admin-svc.test-lessie.svc.cluster.local:8080
# 集群外部http://<Node-IP>:30808
# ----------------------------
apiVersion: v1
kind: Service
metadata:
name: test-flymoon-admin-svc
namespace: test-lessie
labels:
app: test-flymoon-admin
environment: test
project: flymoon
spec:
type: NodePort
selector: # 必须匹配 Deployment 的 labels 才能关联 Pod
app: test-flymoon-admin
environment: test
project: flymoon
ports:
- name: http
port: 8080 # ClusterIP 内部端口
targetPort: 8080 # 容器端口
nodePort: 30808 # 节点对外端口(30000-32767)