部署到特定Kubernetes集群节点

时间:2018-05-07 13:42:08

标签: jenkins kubernetes

我正在尝试使用Kubernetes,Jenkins和我的私有SVN存储库来实现CI / CD管道。我计划使用具有3个主机和15个工作机器/节点的Kubernetes集群。并使用Jenkins部署使用spring boot开发的微服务。所以当我使用Jenkins进行部署时,如何定义哪个微服务需要部署在kubernetes集群中的哪个节点?我需要在Pod中指定吗?还是其他任何定义?

2 个答案:

答案 0 :(得分:3)

  

如何定义哪个微服务需要部署在kubernetes集群中的哪个节点?我需要在Pod中指定吗?还是其他任何定义?

  • 如其他答案中所述,您不需要来执行此操作,但如果有任何理由使用已弃用的nodeSelector或优先关联,可以。它们非常值得花时间阅读,因为您可以将某些与特定服务/微服务组相关的窗格组合在一起,或者在可用节点之间相互远离,以实现更灵活,更灵活的架构和适当的扩展。这样您就可以帮助调度程序决定在何处放置实现所需布局的内容。对于之前提到的大多数基本需求,资源分配可以做到这一点,但对于任何细粒度,您都可以随意使用亲和力(和抗亲和力)。详细说明的文档在这里:https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

答案 1 :(得分:1)

Kubernetes指出哪些节点应该运行什么pod。你不必这样做。你需要指出每个pod需要多少内存和cpu,k8s到第一个近似值就可以看出其余的。

那就是说,你要做的就是弄清楚如何划分你需要运行的全套工作负载 - 比如环境(dev / stage / prod)或者租户(团队X /团队Y /团队Z或客户端X /客户端Y /客户端Z) - 进入命名空间,然后找出哪个工作流对该分区有意义,然后配置CI以满足该工作流程。