Fork me on GitHub

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 

posted @ 2022-08-04 16:46  doMakeBetter  阅读(188)  评论(0编辑  收藏  举报