也许有更好的方法

也许有更好的方法

我想拥有 Openshift 项目的完整副本(包括所有构建、pod、机密等)用于测试目的(第二个独立测试环境)。有没有办法复制项目?

答案1

我不确定……但你想要的本质上是创建模板

具体来说,从现有对象编写模板的部分非常相关。

oc get -o yaml all > <yaml_filename>

然而,我很不愿意应用这一点(如果你这么做了,一定要重写它;至少要更改命名空间)。...不寒而栗

特别注意您创建的任何集群级资源(例如 PV、ClusterRoles 等)以及每个环境需要不同的任何内容(命名空间、路由/入口)。

也许有更好的方法

我建议处理此问题的更好方法是使用 Kustomize,它内置于 kubectl 和 oc 的最新版本中。

这让您可以轻松拥有基本配置,并为不同的环境应用覆盖。作为一个简单的示例,我使用它为每个环境设置一个命名空间,并设置通用注释。您会看到这被称为“设置交叉字段' 在 Kustomize 文档中。

这是我迄今为止的基本用例的屏幕截图(我自己对此也是新手)。

使用 kustomize 设置命名空间和通用注解的截图

相关内容