k8s deployment文件属性简介

apiVersion: apps/v1 #指定api版本,此值必须在k8s api-versions中 kind: Deployment # 指定创建资源的角色/类型 metadata: # 资源的元数据/属性 name: # 资源的名字,在同一个namespace中必须唯一 namespace: # 部署在哪个namespace中 spec: # 资源规范字段 strategy: # 策略 type: RollingUpdate # 滚动更新策略 selector: # 选择器 matchLabels: # 匹配标签 app: replicas: 1 # 声明副本数目 template: # 模版 metadata: # 资源的元数据/属性 labels: # 设定资源的标签 app: jxcc-trade-merchants-server spec: # 资源规范字段 containers: - name: # 容器的名字 image: # 容器使用的镜像地址 imagePullPolicy: Always # 每次Pod启动拉取镜像策略,三个选择 Always、Never、IfNotPresent # Always,每次都检查;Never,每次都不检查(不管本地是否有);IfNotPresent,如果本地有就不检查,如果没有就拉取 args: ["test"] #指定dockerFile运行时,指定使用哪个bootstrap-xxx.ymal文件 ports: #容器端口 - containerPort: - containerPort: resources: # 资源管理 limits: # 最大使用 cpu: 1000m # CPU,1核心 = 1000m memory: 2000Mi # 内存,1G = 1024Mi requests: # 容器运行时,最低资源需求,也就是说最少需要多少资源容器才能正常运行 cpu: 1000m memory: 2000Mi readinessProbe: # Pod 准备服务健康检查设置 httpGet: path: /actuator/health port: scheme: HTTP # 表明第一次检测在容器启动后多长时间后开始 initialDelaySeconds: 30 # 检查间隔时间 periodSeconds: 5 # 失败门槛,失败1次,pod杀掉,重启一个新的pod failureThreshold: 1 # 成功门槛 successThreshold: 1 # 检测的超时时间 timeoutSeconds: 5 #pod生命周期 lifecycle: preStop: exec: command: - bash - -c - 'curl -X "POST" "http:"' # pod DNS的策略 ClusterFirst:默认的配置,所有请求会优先在集群所在域查询,如果没有才会转发到上游DNS dnsPolicy: ClusterFirst #重启策略 Always : 容器失效时,kubelet 自动重启该容器; # 可选策略 # OnFailure : 容器终止运行且退出码不为0时重启; # Never : 不论状态为何, kubelet 都不重启该容器。 restartPolicy: Always #定义优雅关闭的宽限期,即在收到停止请求后,有多少时间来进行资源释放或者做其它操作, #如果到了最大时间还没有停止,会被强制结束。默认30s terminationGracePeriodSeconds: 30
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章