k8s基本字段
k8s基本字段
apiVersion
apiVersion:v1,k8s以常見核心對(duì)象都屬于v1核心API。常見的pod,service等都屬于核心API;
apiVersion: apps/v1,表示擴(kuò)展資源如deployment,statefulSet,daemonSet
limits字段
此字段限制的是硬件的資源,如果容器嘗試申請(qǐng)超過限制的內(nèi)存將會(huì)終止容器
requests字段
此字段限制的是容器最小資源申請(qǐng)量,不能超過limits, 500m等于0.5個(gè)CPU

本地臨時(shí)性文件,采用這種配置時(shí),你會(huì)把所有類型的臨時(shí)性本地?cái)?shù)據(jù)(包括 emptyDir 卷、可寫入容器層、容器鏡像、日志等)放到同一個(gè)文件系統(tǒng)中。 作為最有效的 kubelet 配置方式,這意味著該文件系統(tǒng)是專門提供給 Kubernetes (kubelet)來(lái)保存數(shù)據(jù)的。目錄為/var/lib/kubelet,可以在pod的
ephemeral-storage臨時(shí)性存儲(chǔ)字段
管理臨時(shí)存儲(chǔ)如/var/lib/kubelet大小
spec.containers[].resources.limits.ephemeral-storage
spec.containers[].resources.requests.ephemeral-storage


鉤子
lifecycle生命周期管理
k8s支持設(shè)置lifecycle字段來(lái)控制pod的生命周期,preStop是一個(gè)鉤子,會(huì)在容器終止之前被調(diào)用。
prelock鉤子可以用來(lái)容器優(yōu)雅退出
lifecycle:
preStop:
exec:
command: ["/bin/sh", "-c", "for i in $(pgrep -p 1); do kill -9 $i; done"]
InitContainers
初始化容器用來(lái)在主容器啟動(dòng)之前執(zhí)行任務(wù),完成之后才會(huì)啟動(dòng)主容器
Containers:
-name: xxx
image: xxx
image
initContainers:
- name: init-container
image: busybox
command: ['sh', '-c', 'echo "Initializing..." && sleep 5']
probe
探針,用來(lái)監(jiān)控容器健康狀態(tài)和就緒狀態(tài),livenessProbe存活探針判斷是否運(yùn)行,readinessProbe就緒探針判斷是否準(zhǔn)備好接受流量
containers:
- name: my-container
image: my-image
livenessProbe:
httpGet:
path: /healthz
port: 8080
initialDelaySeconds: 5
periodSeconds: 10
readinessProbe:
httpGet:
path: /ready
port: 8080
initialDelaySeconds: 3
periodSeconds: 5

浙公網(wǎng)安備 33010602011771號(hào)