我如何在Kubernetes中设置工人(基础设施问题)

时间:2019-05-16 08:17:04

标签: kubernetes worker

我正在使用kubernetes,我想设置工人,我的一个docker托管了一个使用flask的API,我在另一个docker中拥有一个算法(相同的pod,我不知道是否应该将其保留在相同)以及也在单独的泊坞窗中的其他脚本。 我想链接所有这些内容,当我在API上收到请求时,根据请求调用其他泊坞窗并获得返回。

我不知道如何使用多个docker和kubernetes。

直到现在,我一直在使用RQ库进行python并行化,但是它在Heroku上没有kubernetes(我现在正在迁移到天蓝色),我不知道它在后面如何管理它。

谢谢。

3 个答案:

答案 0 :(得分:0)

使用kubeadm遵循以下参考和设置kubernetes集群。

https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/

使用“ kubeadm join”命令,您应该能够将工作节点添加到主节点。 上面给定的链接中有步骤使工人加入到掌握中

答案 1 :(得分:0)

如果使用的是Azure,则可以尝试探索AKS。开箱即用。您只需要配置kubectl,就可以了。

关于部署多个微服务(API),您可以使用kubectl将每个微服务部署为单独的k8s部署,并使用服务公开它们。这样,他们可以使用暴露的终结点(API)或消息队列相互通信。

这是一个快速指南,您可以从以下网站获取帮助:https://dzone.com/articles/quick-guide-to-microservices-with-kubernetes-sprin

答案 2 :(得分:0)

通常,每个吊舱只能使用一个容器。每个吊舱可能有多个容器,但通常用于边车,而不用于其他API。

您可以使用kubernetes服务公开您的服务,如果您不想这样做,则无需在其他端口上运行所有内容。

典型的webapi调用的最小设置如下所示(如果将API服务公开为公共LoadBalancer,则不一定需要Ingress)

客户端->(入口)-> API服务-> API部署容器->内部服务->部署容器。

您可以使用http(s):// servicename [:custom-port]从集群内部访问内部服务

另一方面,如果您仅使用flask将API调用转发到其他服务,则可能需要将其替换为为您执行所有路由的Ingress Controller。