gpt4 book ai didi

kubernetes - 您可以在 Terraform 中使用 YAML 定义 Kubernetes 服务/Pod吗?

转载 作者:行者123 更新时间:2023-12-02 11:36:01 25 4
gpt4 key购买 nike

我正在使用 Kubernetes Provider描述 Terraform 中的服务/pod。

使用 Hashicorp 配置语言来定义 kubernetes_pod 可能会让人感到困惑。或 kubernetes_service资源,因为 Kubernetes 文档描述了 YAML 中的所有内容,这意味着您需要将其转换为 HCL。

是否可以将 pod 定义为 YAML 并将它们与 kubernetes_pod 一起使用?和 kubernetes_service资源作为模板?

最佳答案

虽然 Terraform 通常使用 HCL,但这是 JSON 的超集(很像 YAML 本身)所以 can also read JSON .

一种可能的选择是采用您已有的 YAML 示例并将它们转换为 JSON,然后在这些示例上使用 Terraform。

不幸的是,这不太可能奏效,因为关键字可能与 Terraform 期望的事情不同,因此您需要编写一些内容来将输入的 YAML 进行一些基本的转换,以便将输入的 YAML 转换为 Terraform 资源 JSON。在这一点上,如果您打算保留 Terraform 配置而不只是一次转换和应用配置,那么将 HCL 输出添加到转换中可能是值得的,因此您输出的 Terraform 配置更具可读性。

这样做的好处是你有一个可重用的 Kubernetes 配置,可以使用 kubectl 运行。或其他工具,但为您提供 Terraform 生命周期管理的强大功能,能够计划更改和与基础架构的非 Kubernetes 部分的集成(例如设置实例以在其上运行 Kubernetes 集群)。

我用得不多,但我相信 Kops将允许您将 pod/service 配置保存在典型的 Kubernetes YAML 文件中,然后可以使用 Terraform 管理配置,甚至允许您输出 Terraform 配置,以便您可以在 Kops 本身之外运行它。

关于kubernetes - 您可以在 Terraform 中使用 YAML 定义 Kubernetes 服务/Pod吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47236358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com