生活随笔
收集整理的這篇文章主要介紹了
YAML字段详解
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
規(guī)則:
大小寫敏感
通過縮進表示層級關(guān)系
禁止使用tab縮進,只能使用空格鍵
縮進的空格數(shù)目不重要,只要相同層級左對齊
使用#表示注釋
引號的區(qū)別:
單引號(''): 特殊字符作為普通字符串處理
雙引號(""): 特殊字符作為本身想表示的意思
錨點與引用:
使用&定義數(shù)據(jù)錨點,即要復(fù)制的數(shù)據(jù)
使用*引用錨點數(shù)據(jù),即數(shù)據(jù)的復(fù)制目的地
數(shù)據(jù)類型:
YAML允許使用感嘆號(!)強制轉(zhuǎn)換數(shù)據(jù)類型,單嘆號通常是自定義類型,雙嘆號是內(nèi)置類型
數(shù)據(jù)類型分為純量、數(shù)組(用-表示)、對象
apiVersion: group/api-version # 版本信息
kind: # 資源類別
metadata: # 資源元數(shù)據(jù)name: # 元數(shù)據(jù)對應(yīng)的名稱namespace: # 元數(shù)據(jù)所屬的命名空間lables: # 對資源打上便簽供后續(xù)使用annotations: # 主要目的是方便用戶閱讀查找
spec: # 資源對象的詳細定義progressDeadlineSeconds #升級過程中的最大時間?? ? ? ??replicas: 3?? ? ? ? ? #定義副本數(shù)量revisionHistoryLimit #定義保留的升級記錄數(shù)目strategy:rollingUpdate: ? ? #滾動更新maxSurge: 25% ? ?#更新過程中Pod總數(shù)超過Pod期望副本數(shù)部分的最大值maxUnavailable: 25% #更新過程中不可用狀態(tài)的Pod數(shù)量的上限type: RollingUpdate#strategy:# Recreate: ? ? ? ? ?#殺掉Pod后重建# ?maxSurge: 25% ? ??# ?maxUnavailable: 25% ?type: Recreateselector:?? ? ? ? ? ? ? #定義選擇器matchLabels:?? ? ? #匹配標簽app: nginx?? ? ? #匹配標簽的名稱template:?? ? ? ? ? ? ? #定義Pod模板metadata:?? ?labels:app: nginxspec: ? ? # 資源對象的詳細定義containers: ? ? ? ? ? ? ? ?#定義容器信息- name: nginx?? ? ? ? ? ? ? ? #容器名,與標簽名要相同env:[] ? ? ? ? ? ? ? ? ?#容器啟動的環(huán)境變量- name:value:volumeMounts: ? ? ? ? ? #掛載外部文件到容器- name: ? ? ? ? ? ? ? ? ?#volume的namemountPath:/home?? ??? ? #掛載到容器中的指定路徑image: nginx:1.15.4 ? ? ?#容器使用的鏡像以及版本imagePullPolicy:Always ?#鏡像拉取策略:每次部署時都重新拉取鏡像ports: ? ? ? ? ? ? ? ? ? #定義容器的對外端口- containerPort: 80?? ? ? ??protocol:TCPworkingDir: ? ? ? ? ? ? #指定容器的工作目錄resources:limits: ? ? ? ? ? ? ? ?#資源最大申請量cpu: '2' ? ? ? ? ? ??memory: 1Grequests: ? ? ? ? ? ? ?#資源最小申請量cpu: 200mmemory: 500MlivenessProbe: ? ? ? ? ?#存活探針httpGet: ? ? ? ? ? ? ? #http方式path: ? ? ? ? ? ? ? ?#路徑port: ? ? ? ? ? ? ? ?#端口httpHeaders: ? ? ? ? #請求頭設(shè)置- name:value:initialDelaySeconds: ? #開始探針檢測的等待秒數(shù)periodSeconds: ? ? ? ? #執(zhí)行探測的間隔timeoutSeconds: ? ? ? ?#探測超時的時間successThreshold: ? ? ?#探針成功的閾值failureThreshold: ? ? ?#探針失敗的閾值readinessprobe: ? ? ? ? #就緒探針tcpSocket: ? ? ? ? ? ? #tcp端口探測模式port: ? ? ? ? ? ? ? ?#需要探測的容器端口terminationMessagePath: /dev/termination-log #容器異常終止消息的存放路徑terminationMessagePolicy: File ? ? ? ? ? ? ? #異常終止消息存為文件dnsPolicy: ClusterFirst|Default|None #優(yōu)先使用k8s的DNS服務(wù)|繼承Pod所在宿主機的DNS服務(wù)|忽略k8s的DNS服務(wù)并自定義restartPolicy: Always ? ? ? ? ? ? ? ? ? ? ? ? ?#重啟策略schedulerName: default-scheduler ? ? ? ? ? ? ? #調(diào)度器securityContext: {}terminationGracePeriodSeconds: 30 ? ? ? ? ? ? #優(yōu)雅關(guān)閉時間,收到SIDTERM停止請求后,進行資源釋放的寬限期
status:availableReplicas: 1conditions:- lastTransitionTime: '2019-08-07T03:43:50Z'lastUpdateTime: '2020-01-13T01:12:14Z'message: ReplicaSet "rmlistapi-6fbbf8d969" has successfully progressed.reason: NewReplicaSetAvailablestatus: 'True'type: Progressing- lastTransitionTime: '2021-04-02T14:59:33Z'lastUpdateTime: '2021-04-02T14:59:33Z'message: Deployment has minimum availability.reason: MinimumReplicasAvailablestatus: 'True'type: AvailableobservedGeneration: 12readyReplicas: 1replicas: 1updatedReplicas: 1?? ??? ?
補充:
Lifecycle字段,定義的是容器生命周期鉤子函數(shù)Container Lifecycle Hooks。其的作用是在容器狀態(tài)發(fā)生變化時觸發(fā)一系列鉤子函數(shù)。如preStart、preStop等
# *********
spec: # 資源對象的詳細定義
template: # 定義pod的模板
# *********
總結(jié)
以上是生活随笔為你收集整理的YAML字段详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。