apiVersion: v1? ? ? #必選艰亮,版本號(hào),例如v1
kind: Pod? ? ? #必選挣郭,Pod
metadata:? ? ? #必選迄埃,元數(shù)據(jù)
? name: string? ? ? #必選,Pod名稱
? namespace: string? ? #必選兑障,Pod所屬的命名空間
? labels:? ? ? #自定義標(biāo)簽
? ? - name: string? ? #自定義標(biāo)簽名字
? annotations:? ? ? #自定義注釋列表
? ? - name: string
spec:? ? ? ? #必選侄非,Pod中容器的詳細(xì)定義
? containers:? ? ? #必選,Pod中容器列表
? - name: string? ? #必選流译,容器名稱
? ? image: string? ? #必選逞怨,容器的鏡像名稱
? ? imagePullPolicy: [Always | Never | IfNotPresent] #獲取鏡像的策略 Alawys表示下載鏡像 IfnotPresent表示優(yōu)先使用本地鏡像,否則下載鏡像先蒋,Nerver表示僅使用本地鏡像
? ? command: [string]? ? #容器的啟動(dòng)命令列表,如不指定宛渐,使用打包時(shí)使用的啟動(dòng)命令
? ? args: [string]? ? #容器的啟動(dòng)命令參數(shù)列表
? ? workingDir: string? ? #容器的工作目錄
? ? volumeMounts:? ? #掛載到容器內(nèi)部的存儲(chǔ)卷配置
? ? - name: string? ? #引用pod定義的共享存儲(chǔ)卷的名稱竞漾,需用volumes[]部分定義的的卷名
? ? ? mountPath: string? ? #存儲(chǔ)卷在容器內(nèi)mount的絕對(duì)路徑,應(yīng)少于512字符
? ? ? readOnly: boolean? ? #是否為只讀模式
? ? ports:? ? ? #需要暴露的端口庫(kù)號(hào)列表
? ? - name: string? ? #端口號(hào)名稱
? ? ? containerPort: int? #容器需要監(jiān)聽(tīng)的端口號(hào)
? ? ? hostPort: int? ? #容器所在主機(jī)需要監(jiān)聽(tīng)的端口號(hào)窥翩,默認(rèn)與Container相同
? ? ? protocol: string? ? #端口協(xié)議业岁,支持TCP和UDP,默認(rèn)TCP
? ? env:? ? ? #容器運(yùn)行前需設(shè)置的環(huán)境變量列表
? ? - name: string? ? #環(huán)境變量名稱
? ? ? value: string? ? #環(huán)境變量的值
? ? resources:? ? ? #資源限制和請(qǐng)求的設(shè)置
? ? ? limits:? ? ? #資源限制的設(shè)置
? ? ? ? cpu: string? ? #Cpu的限制寇蚊,單位為core數(shù)笔时,將用于docker run --cpu-shares參數(shù)
? ? ? ? memory: string? ? #內(nèi)存限制,單位可以為Mib/Gib仗岸,將用于docker run --memory參數(shù)
? ? ? requests:? ? ? #資源請(qǐng)求的設(shè)置
? ? ? ? cpu: string? ? #Cpu請(qǐng)求允耿,容器啟動(dòng)的初始可用數(shù)量
? ? ? ? memory: string? ? #內(nèi)存清楚借笙,容器啟動(dòng)的初始可用數(shù)量
? ? livenessProbe:? ? #對(duì)Pod內(nèi)個(gè)容器健康檢查的設(shè)置,當(dāng)探測(cè)無(wú)響應(yīng)幾次后將自動(dòng)重啟該容器较锡,檢查方法有exec业稼、httpGet和tcpSocket,對(duì)一個(gè)容器只需設(shè)置其中一種方法即可
? ? ? exec:? ? ? #對(duì)Pod容器內(nèi)檢查方式設(shè)置為exec方式
? ? ? ? command: [string]? #exec方式需要制定的命令或腳本
? ? ? httpGet:? ? ? #對(duì)Pod內(nèi)個(gè)容器健康檢查方法設(shè)置為HttpGet蚂蕴,需要制定Path低散、port
? ? ? ? path: string
? ? ? ? port: number
? ? ? ? host: string
? ? ? ? scheme: string
? ? ? ? HttpHeaders:
? ? ? ? - name: string
? ? ? ? ? value: string
? ? ? tcpSocket:? ? #對(duì)Pod內(nèi)個(gè)容器健康檢查方式設(shè)置為tcpSocket方式
? ? ? ? port: number
? ? ? initialDelaySeconds: 0? #容器啟動(dòng)完成后首次探測(cè)的時(shí)間,單位為秒
? ? ? timeoutSeconds: 0? #對(duì)容器健康檢查探測(cè)等待響應(yīng)的超時(shí)時(shí)間骡楼,單位秒熔号,默認(rèn)1秒
? ? ? periodSeconds: 0? ? #對(duì)容器監(jiān)控檢查的定期探測(cè)時(shí)間設(shè)置,單位秒鸟整,默認(rèn)10秒一次
? ? ? successThreshold: 0
? ? ? failureThreshold: 0
? ? ? securityContext:
? ? ? ? privileged:false
? ? restartPolicy: [Always | Never | OnFailure]#Pod的重啟策略引镊,Always表示一旦不管以何種方式終止運(yùn)行,kubelet都將重啟吃嘿,OnFailure表示只有Pod以非0退出碼退出才重啟祠乃,Nerver表示不再重啟該P(yáng)od
? ? nodeSelector: obeject? #設(shè)置NodeSelector表示將該P(yáng)od調(diào)度到包含這個(gè)label的node上,以key:value的格式指定
? ? imagePullSecrets:? ? #Pull鏡像時(shí)使用的secret名稱兑燥,以key:secretkey格式指定
? ? - name: string
? ? hostNetwork:false? ? ? #是否使用主機(jī)網(wǎng)絡(luò)模式亮瓷,默認(rèn)為false,如果設(shè)置為true降瞳,表示使用宿主機(jī)網(wǎng)絡(luò)
? ? volumes:? ? ? #在該pod上定義共享存儲(chǔ)卷列表
? ? - name: string? ? #共享存儲(chǔ)卷名稱 (volumes類型有很多種)
? ? ? emptyDir: {}? ? #類型為emtyDir的存儲(chǔ)卷嘱支,與Pod同生命周期的一個(gè)臨時(shí)目錄。為空值
? ? ? hostPath: string? ? #類型為hostPath的存儲(chǔ)卷挣饥,表示掛載Pod所在宿主機(jī)的目錄
? ? ? ? path: string? ? #Pod所在宿主機(jī)的目錄除师,將被用于同期中mount的目錄
? ? ? secret:? ? ? #類型為secret的存儲(chǔ)卷,掛載集群與定義的secre對(duì)象到容器內(nèi)部
? ? ? ? scretname: string?
? ? ? ? items:? ?
? ? ? ? - key: string
? ? ? ? ? path: string
? ? ? configMap:? ? #類型為configMap的存儲(chǔ)卷扔枫,掛載預(yù)定義的configMap對(duì)象到容器內(nèi)部
? ? ? ? name: string
? ? ? ? items:
? ? ? ? - key: string