Terraform,为什么要使用kubernetes作为附加层?

Terraform,为什么要使用kubernetes作为附加层?,kubernetes,terraform,Kubernetes,Terraform,我在网上读了很多文件。他们描述的最佳组合是地形和库伯内特斯。 使用Terraform进行资源调配,使用Kubernetes进行pod管理 如果我需要扩展,那么我会说Terraform添加新的容器。那么为什么是库伯内特斯呢? 在这种情况下,它更像是一种监控工具吗,库伯内特斯?我的意思是,我不能对库伯内特斯说,我需要更多的容器,因为它会与地形发生冲突 我不明白为什么要使用额外的Kubernetes层。是一个跨云提供商配置基础设施的工具,它允许您将要配置的基础设施描述为代码(基础设施为代码或IaC)。

我在网上读了很多文件。他们描述的最佳组合是地形和库伯内特斯。 使用Terraform进行资源调配,使用Kubernetes进行pod管理

如果我需要扩展,那么我会说Terraform添加新的容器。那么为什么是库伯内特斯呢? 在这种情况下,它更像是一种监控工具吗,库伯内特斯?我的意思是,我不能对库伯内特斯说,我需要更多的容器,因为它会与地形发生冲突

我不明白为什么要使用额外的Kubernetes层。

是一个跨云提供商配置基础设施的工具,它允许您将要配置的基础设施描述为代码(基础设施为代码或IaC)。您运行它,基础设施就准备好了,就这样

另一方面,是一个容器编排引擎。它协调工作节点,在那里安排POD。委员会就下列事项作出决定:

  • 调度:应调度POD以确保其资源(CPU/RAM)请求得到满足
  • 服务发现:一个服务如何与另一个服务通信
  • 自愈:当豆荚不健康时采取行动并重新启动。此外,如果工作节点不健康,它将采取措施
  • 自动缩放:在服务负载较高时自动调配新副本
  • 版本展开:如何部署新版本和终止旧版本
这些只是Kubernetes的一些特性,您可以在的“Kubernetes特性”部分查看更多特性


Terraform可以帮助您配置基础设施,但当您的工作负载基于容器时,则需要容器编排器。这就是Kubernetes的用武之地。

你从哪里读到terraform可以创建容器?terraform提供商有docker,所以它使用docker来创建容器。但仍然不清楚为什么要用库伯内特斯,谢谢。但是,当库伯内特斯(Kubernetes)发生自动缩放时,它怎么能不发生冲突呢?它为它添加了一个新的pod。Terraform不知道Kubernetes改变了基础设施。我有冲突?不是吗?阅读第一个问题下面的评论,我知道你指的是。如果我理解正确,此提供程序允许您在Docker中创建容器。让我们考虑一下用这个提供程序创建一个容器和应用程序崩溃的场景。它会重新启动吗?如果节点崩溃怎么办?如果您希望在不导致服务停机的情况下部署新版本,该怎么办?这些都是像Kubernetes这样的容器编排引擎可以帮助解决的问题。oke我明白您所说的pod状态以及监控pod和停机时间,这一点我很清楚。但是自动缩放部分我仍然对它一无所知,因为在我看来它改变了关于自动缩放的基础结构,通常的做法是,当您配置它时(无论是针对VM实例/节点还是POD),您可以配置所需的最小和最大复制副本数量,然后让autoscaler根据负载配置当前的复制副本数量。由于自动缩放中当前的节点数量受负载影响,并且随着时间的推移而变化,因此无法准确地将其描述为代码(例如,在Terraform或Kubernetes中)。这就是为什么要为它设置最小值和最大值的原因。