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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章