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

Kubernetes Helm chart initiation with Kubernetes cluster

常嘉平
2023-03-14

我正在使用Ansible、Docker、Jenkins和Kubernetes实现持续集成和持续部署。我已经使用Ansible和kubespray部署创建了一个具有1个主节点和2个工作节点的Kubernetes集群。我有30-40个微服务应用。我需要创建这么多的服务和部署。

我的困惑

当我使用Kubernetes包管理器Kubernetes Helm chart时,我需要在主节点上启动我的图表,还是在我部署kubernete集群的基础机器上启动我的图表?

  1. 如果我在master内部启动,那么我可以使用kubectl在远程工作节点上使用ssh进行部署吗?
  2. 如果我在库伯内特斯集群节点之外启动,那么我可以使用kubectl命令在库伯内特斯集群中部署吗?

共有2个答案

于嘉誉
2023-03-14

如果您正在寻找在 Kubernetes 集群中运行 helm 客户端的方法,请检查 Helm-Operator 的概念。

我建议您也看看术语“GitOps”——一套将Git与Kubernetes结合起来的实践,并将Git作为您的声明性基础设施和应用程序的真实来源。

有两个伟大的OSS项目实现了GitOps最佳实践:

  • 通量(使用Helm运算符)
  • Jenkins-x(使用helm作为发布管道的一部分,请查看YT上的此课程以了解其实际操作)
秋兴思
2023-03-14

你的困惑似乎在于头盔组件的配置和交互。这个解释提供了一个很好的图形来表示这种关系。

如果您使用的是传统的Helm/Tiller配置,Helm将在您的机器上本地安装,并且假设您拥有正确的<code>kubectl<code>配置,您可以通过运行<code>Helm init<code>将Tiller安装到集群中来“初始化”集群。Tiller将作为kube系统中的部署运行,并具有创建/修改/删除/查看图表资源的RBAC权限。Helm将自动为您管理所有API对象,kube调度器将相应地为您的所有节点调度POD。您不应通过控制台直接与主机和节点进行交互。

在任何一种配置中,您都将始终使用kubectl访问集群的权限从本地机器进行Helm部署。

希望这有所帮助!

 类似资料:

相关问答

相关文章

相关阅读