当前位置: 首页 > 知识库问答 >
问题:

向Kubernetes指定吊舱“忙”时

毛弘博
2023-03-14

我的一个微服务正在Kubernetes上运行。我想指定到K8s负载均衡器当一个吊舱是繁忙的,因为行为,我得到目前是不确定的。

一个例子:

我有8个豆荚运行,每个豆荚一次可以处理1个请求。每个请求占用分配给pod的CPU核心的70%到100%。但是当我向我的应用程序发送8个请求时,Kubernetes不会将这些请求分派到8个吊舱,而是尝试只使用一个。由于我(通过threadpool)阻止每个应用程序副本一次只使用一个线程,所以请求当然会排队等待POD1。

所以我的问题是:我如何告诉Kubernetes pod1很忙,负载平衡器必须将请求2发送到pod2?

注意:出于开发和测试的目的,我在Windows10和Kubectl上使用Docker Desktop(Docker For Windows)。

共有1个答案

融宏伟
2023-03-14

您必须使用LivenessProbe

当Pod无法处理请求时,它的IP将从服务endpoint移除,因此不会向它转发任何通信量。

LivenessProbe可以是TCP或HTTP

 类似资料:
  • 我对Kubernetes是新来的。 我发现了2个pod优先级选项-优先级类别和服务质量。它们之间有什么不同? (https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/https://kubernetes.io/docs/tasks/configure-pod-container/quality-servi

  • 我的要求是在自定义指标上扩展POD,如队列中的挂起消息,PODS必须增加以处理作业。在kubernetes,Scale up在普罗米修斯适配器和普罗米修斯操作员中工作得很好。 我在pods中有长时间运行的进程,但HPA检查自定义度量并试图缩小规模,因为这个进程杀死了操作的中间并丢失了消息。我如何控制HPA只杀死没有进程运行的自由豆荚。 序列查询:‘{namespace=“default”,serv

  • 我们正在使用Docker 1.19运行库伯内特斯(1.18) Container是一个基于Java13的Spring启动应用程序(使用基本图像作为openjdk: 13-alpin),下面是内存设置。 豆荚: 内存-最小448M,最大2500M cpu-最小值0.1 容器: Xms:256M,Xmx:512M 当流量发送更长时间时,容器会突然重新启动;在Prometheus中,我可以看到Pod内存

  • 我有一个后端nodeJS应用程序运行在kubernetes集群。现在我想运行两个cron作业计划每个月。cron作业在一个JS文件中。如何使用库伯内特斯创建一个作业,在每个月运行该服务的pod中运行这些JS文件? 此链接提供了对其工作原理的基本理解,但我对如何为特定服务和特定Pod运行它有点困惑 https://kubernetes.io/docs/concepts/workloads/contr

  • 在kubernetes仪表板上,有一个pod,其中内存使用情况(字节)显示为。 这个pod保存了使用Xms512m-Xmx1024m运行的java应用程序,该应用程序位于kubernetes部署文件中- 我已启用gc日志,并在pod日志中看到这些日志: kubernetes是如何到达用法的?如果我理解正确,目前的用法只有: 运行ps显示除了这个java应用程序之外,pod上没有其他进程在运行<任何

  • 我想看看kubernetes吊舱使用了多少内存和CPU。我为此运行了以下命令: 我收到以下错误: > 如果我们进入pod并运行linux命令,我们会得到相同的输出吗?