Kubernetes 健康检查、资源管理与数据持久化全解析
1. 健康检查
1.1 进程健康检查与存活检查
在 Kubernetes 中,将应用作为容器运行时,会通过进程健康检查自动保持应用存活。此检查仅确保应用的主进程正在运行,若进程停止,Kubernetes 会重启它。然而,简单的进程检查往往不够。例如,若进程死锁且无法处理请求,进程健康检查仍会认为应用正常,因为进程仍在运行。
为解决此问题,Kubernetes 引入了应用存活检查。存活健康检查运行特定于应用的逻辑(如加载网页),以验证应用不仅在运行,而且功能正常。由于这些存活健康检查是特定于应用的,因此必须在 Pod 清单中定义它们。
1.2 存活探针(Liveness Probe)
当 kuard 进程启动并运行后,需要一种方法来确认它确实健康且无需重启。存活探针是针对每个容器定义的,这意味着 Pod 内的每个容器都会单独进行健康检查。以下是一个在 kuard 容器中添加存活探针的示例:
apiVersion: v1
kind: Pod
metadata:
name: kuard
spec:
containers:
- image: gcr.io/kuar-demo/kuard-amd64:blue
name: kuard
livenessProbe:
httpGet:
path: /healthy
port: 8080
initialDelaySeconds: 5
ti
超级会员免费看
订阅专栏 解锁全文
891

被折叠的 条评论
为什么被折叠?



