Kubernetes 是一个容器,用于探测活动性或就绪性';s配置设置为“a”;吊舱检查“;集装箱?

Kubernetes 是一个容器,用于探测活动性或就绪性';s配置设置为“a”;吊舱检查“;集装箱?,kubernetes,Kubernetes,我正在跟踪这项任务 我也不清楚进行检查的集装箱是否仅用于检查吊舱的可用性?因为如果pod检查容器失败是有意义的,所以api不会让任何流量进入pod 所以一个健康检查信号必须来自某个运行图像或应用程序的容器?(很抱歉,还有一个问题)从您提供的链接中,他们似乎在谈论容器,而不是吊舱,因此探针是针对每个容器的。当所有容器准备就绪时,pod也被描述为准备就绪,如您提供的文档中所述: kubelet使用准备就绪探测器来了解容器何时准备就绪 开始接受流量。当一个吊舱的所有组件 集装箱准备好了。该信号的一个用

我正在跟踪这项任务 我也不清楚进行检查的集装箱是否仅用于检查吊舱的可用性?因为如果pod检查容器失败是有意义的,所以api不会让任何流量进入pod


所以一个健康检查信号必须来自某个运行图像或应用程序的容器?(很抱歉,还有一个问题)

从您提供的链接中,他们似乎在谈论容器,而不是吊舱,因此探针是针对每个容器的。当所有容器准备就绪时,pod也被描述为准备就绪,如您提供的文档中所述:

kubelet使用准备就绪探测器来了解容器何时准备就绪 开始接受流量。当一个吊舱的所有组件 集装箱准备好了。该信号的一个用途是控制哪些吊舱 用作服务的后端。当一个吊舱没有准备好时,它就是 已从服务负载平衡器中删除


因此,是的,运行某些图像或应用程序的每个容器都应该公开这些指标。

Livenes和readiness probe(如所述)是容器内的附加检查,并由kubelet根据特定探测器的设置进行验证:

如果命令(由健康检查定义)成功,则返回0,kubelet认为容器处于活动状态且健康。如果命令返回非零值,则kubelet将终止容器并重新启动它

此外:

kubelet使用liveness探测器来知道何时重新启动容器。例如,liveness探测器可能会捕获死锁,即应用程序正在运行,但无法取得进展。在这种状态下重新启动容器有助于使应用程序更可用,尽管存在bug

从另一个角度来看:

Pod是Kubernetes REST API中的顶级资源。

根据文件: 豆荚是短暂的。它们不是设计用来永远运行的,当一个吊舱被终止时,它不能被带回来。通常,POD在被用户或控制器删除之前不会消失。 有关控制器的信息可以找到:

因此,最好的做法是使用上面描述的控制器。您很少直接在Kubernetes中创建单独的豆荚,即使是单个豆荚。这是因为豆荚被设计成相对短暂的一次性实体。当Pod被创建时(直接由您创建,或间接由控制器创建),它将被安排在集群中的节点上运行。Pod将保留在该节点上,直到进程终止、Pod对象删除、Pod因资源不足而退出或节点出现故障

注:

重启吊舱中的容器不应与重启吊舱混淆。Pod本身不运行,但它是一个容器运行的环境,并一直持续到被删除为止

因为POD代表集群中节点上正在运行的进程,所以当不再需要这些进程时,允许它们优雅地终止是很重要的(而不是被KILL信号猛烈杀死,并且没有机会清理)。用户应该能够请求删除并知道进程何时终止,但也能够确保删除最终完成。当用户请求删除Pod时,系统会记录允许强制终止Pod之前的预期宽限期,并向每个容器中的主进程发送一个术语信号。一旦宽限期到期,KILL信号将发送到这些进程,然后Pod将从API服务器中删除。如果在等待进程终止时重新启动Kubelet或容器管理器,将在完整的宽限期内重试终止

Kubernetes API服务器验证和配置API对象的数据,这些对象包括POD、服务、ReplicationController等。API服务器为REST操作提供服务,并为集群的共享状态提供前端,所有其他组件通过该状态进行交互

例如,当您使用Kubernetes API创建部署时,将为系统提供新的所需状态。Kubernetes控制平面记录该对象的创建,并通过启动所需的应用程序并将其调度到集群节点来执行指令,从而使集群的实际状态与所需状态匹配

在这里您可以找到有关的信息

有不同的探头: 例如,对于HTTP探测:

  • 即使你的应用程序不是HTTP服务器,你也可以在你的应用程序中创建一个轻量级HTTP服务器来响应liveness探测
  • 命令
  • 对于命令探测,Kubernetes在容器中运行命令。如果命令返回,退出代码为0,则容器将标记为正常
更多关于


希望有帮助。

是的,但我认为健康检查容器是API决定pod是否准备就绪的容器?这就是为什么我叫它“吊舱检查”集装箱。它只是一个存在于其他容器中的检查容器。这是我的理解。所以每一个容器都应该有一个探测装置,以某种方式检查图像或应用程序?