Kubernetes-并非所有Pod都响应对单个节点的请求

时间:2019-08-05 15:35:27

标签: kubernetes

我有一个单节点迷你库集群,其中 5个吊舱具有相同的Docker映像。我想同时向此节点发出5个或更多请求,并希望将请求分配到各个容器中。但是,当我发出的请求等于或大于节点中的容器时,某些请求将失败( 500内部服务器错误)。我确认请求没有通过他们的日志到达Pod,所以我认为该节点无法同时处理那么多请求。

有没有一种方法可以向节点发出并行请求,并在没有可用容器的情况下将其正确分配到各个容器中并进行缓冲。

使用过this教程来创建我的集群

使用this使用以下cmd进行缩放

kubectl scale deployment --replicas=5

我正在使用Python请求库来请求节点ip。对于并行请求,我使用具有5个进程的多处理池

def fn_to_req_node(string):
     requests.post(http://nodeip:nodeport, data=json.dumps(string), headers=headers)

pool= Pool(processes=5)
pool.apply_async(fn_to_req_node, (string1))
pool.apply_async(fn_to_req_node, (string2))
pool.apply_async(fn_to_req_node, (string3))
pool.apply_async(fn_to_req_node, (string4))
pool.apply_async(fn_to_req_node, (string5))

更新:在带有外部负载均衡器的GCE上进行了尝试,但存在相同的问题-某些请求出现500个内部服务器错误。

1 个答案:

答案 0 :(得分:0)

您如何公开运行在Pod上的服务器,是否正在使用负载平衡器/服务?

如果使用负载平衡器公开应用程序,则负载平衡器将负责在pod之间分配请求。