Pat*_*ick 1 kubernetes kustomize
我是 kubernetes 的新手,我正在到处学习一些教程。我正在努力理解不同的组件和工具,其中之一就是 kustomize。我看到了 kustomize 用法的不同示例,但我不明白其中之一(即使在网上搜索后)。那么你能向我解释一下以下命令的功能吗kustomize:
kustomize edit add configmap mnist-map-training --from-literal=trainSteps=200
Run Code Online (Sandbox Code Playgroud)
Kubernetes 基本上是一个编排 Docker 容器的工具。我们使用 yaml 创建部署、服务、入口,这些构成了集群的组件。然而,假设一个团队已经为开发环境提供了 kubernetes 集群配置 yaml 文件。例如,集成环境,yaml 文件略有不同。它有所不同,对于生产环境来说更是如此。因此,显而易见且简单的解决方案是维护 yaml 文件的三个副本。但从长远来看,这可能行不通。应用于一种环境的更改可能需要应用于其他环境。错过更改可能会导致问题。
Kustomize 是解决这个问题的工具。您创建kubernetes yaml 配置文件的基本副本(根据我们的示例,假设其开发环境)以及 kustomization 文件。一般来说,kustomization 文件描述了要创建的资源(yaml 文件)、configmaps、秘密。然后,在集成和生产环境中创建 kubernetes 集群配置的差异将被创建为覆盖。您可以使用此链接作为完整参考,尽管它不是最新的,但可能会有所帮助。另外github上也有文档。
现在关于这个命令,
kustomize edit add configmap mnist-map-training --from-literal=trainSteps=200
Run Code Online (Sandbox Code Playgroud)
此命令编辑当前目录中的 kustomize 文件,以创建如下代码片段:
configMapGenerator:
- name: mnist-map-training
literals:
- trainSteps=200
Run Code Online (Sandbox Code Playgroud)
kustomize build运行命令时,会创建一个 configmap yaml,如下所示:
apiVersion: v1
kind: ConfigMap
metadata:
name: mnist-map-training
data:
trainSteps: "200"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2360 次 |
| 最近记录: |