k8s发布模板
deploymentapiVersion: apps/v1kind: Deploymentmetadata:labels:app: {{ (datasource "config").name }}name: {{ (datasource "config").name }}namespace: {{ (datasource "config").namespace }}spec:replicas: {
·
deployment
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: {{ (datasource "config").name }}
name: {{ (datasource "config").name }}
namespace: {{ (datasource "config").namespace }}
spec:
progressDeadlineSeconds: 600
revisionHistoryLimit: 10
replicas: {{ (datasource "config").replicas }}
selector:
matchLabels:
app: {{ (datasource "config").name }}
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
labels:
app: {{ (datasource "config").name }}
spec:
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
labelSelector:
matchLabels:
app: {{ (datasource "config").name }}
containers:
- env:
- name: TZ
value: Asia/Shanghai
- name: APOLLO_META
value: {{ (datasource "config").apollo }}
- name: configServerUrl
value: {{ (datasource "config").apollo }}
- name: RUN_ENV
value: {{ (datasource "config").run_env }}
- name: SPRING_PROFILES_ACTIVE
value: {{ (datasource "config").run_env }}
resources:
limits:
#ephemeral-storage: {{ (datasource "config").limits_disk }}
cpu: {{ (datasource "config").limits_cpu }}
memory: {{ (datasource "config").limits_mem }}
requests:
cpu: {{ (datasource "config").requests_cpu }}
memory: {{ (datasource "config").requests_mem }}
image: {{ (datasource "config").image }}:{{ (datasource "config").tag }}
imagePullPolicy: Always
restartPolicy: Never (Always)
imagePullSecrets:
- name: myregistrykey
name: app
volumeMounts:
- mountPath: {{ (datasource "config").log_dir }}
name: log-volume
# - env:
# - name: POD_IP
# valueFrom:
# fieldRef:
# apiVersion: v1
# fieldPath: status.podIP
# - name: POD_NAME
# valueFrom:
# fieldRef:
# apiVersion: v1
# fieldPath: metadata.name
# - name: KAFKA_HOSTS
# value: '{{ (datasource "config").kafka_hosts }}'
# - name: KAFKA_TOPIC
# value: {{ (datasource "config").kafka_topic }}
# - name: KAFKA_SERVICE
# value: {{ (datasource "config").namespace }}-{{ (datasource "config").name }}
# image: harbor.saxofintech.com/online/filebeat:7.12.0
# imagePullPolicy: IfNotPresent
# name: filebeat
# resources:
# requests:
# cpu: 50m
# volumeMounts:
# - mountPath: /app/log/
# name: log-volume
dnsPolicy: ClusterFirst
# imagePullSecrets:
# - name: harbor-secret
volumes:
- name: log-volume
emptyDir:
sizeLimit: {{ (datasource "config").limits_disk }}
service
apiVersion: v1
kind: Service
metadata:
labels:
app: {{ (datasource "config").name }}-svc
name: {{ (datasource "config").name }}-svc
namespace: {{ (datasource "config").namespace }}
spec:
type: ClusterIP
ports:
- name: {{ (datasource "config").name }}-{{ $index }}
port: {{ $element }}
targetPort: {{ $element }}
protocol: TCP{{ end }}
sessionAffinity: ClientIP
sessionAffinityConfig:
clientIP:
timeoutSeconds: 10800
selector:
app: {{ (datasource "config").name }}
ingress
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: 50m
name: {{ (datasource "config").name }}-ingress
namespace: {{ (datasource "config").namespace }}
spec:
rules:
- host: {{ (datasource "config").name }}.{{ (datasource "config").namespace }}.saxok8s.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ (datasource "config").name }}-svc
port:
number: {{ $element }}{{ end }}
更多推荐
已为社区贡献14条内容
所有评论(0)