kubernetes - 有没有办法从 kube 集群中导出资源,以便可以将其应用于另一个集群
问题描述
我正在尝试从一个集群中导出一些 kube 资源(配置映射、部署、服务),以便将其应用于另一个集群。
像这样的东西......
kubectl --kubeconfig ${src} -n ${ns} 获取配置映射 ${cm} -o yaml | \ kubectl --kubeconfig ${dst} -n ${ns} 应用 -f -
它很有效,一次。尚未创建资源的第一次。如果我第二次运行它,尝试更新目标,我会收到类似的错误...
对象已被修改;请将您的更改应用到最新版本,然后重试。
我怀疑它与输出中出现的 resourceVersion 或时间戳字段有关。
是否可以输出资源,以便去除所有服务器端特定信息?其他的一堆 sed delete 和 grep -v 语句。
TIA
解决方案
您可以使用以下带有--export
标志的命令来删除特定于集群的信息。
kubectl get cm cmname -o yaml --export > cm.yaml
--export
已弃用并将在将来删除的警告。因此,使用它需要您自担风险。
推荐阅读
- r - R 向量 - 找到可以从两个向量的差异中获得的最大正结果的计数
- c - 使用另一个枚举进行枚举初始化
- google-chrome - 如何让 Electron 使用 chrome://flags/#enable-force-dark
- java - 使用 Apache HTTPAsyncClient 为每个 HTTPS 请求自定义 SSLContext
- python - 如何处理 pytz 的 POSIX 时区信息(如 CST)?
- grep - 比较 Ansible 中的两个文件列表
- arrays - 过滤的多个 FIND 条件
- python - numpy vs. python:修补圆形函数
- c++ - 如何在 Arduino (C/C++) 中制作文字处理器,其中文本逐个字符出现?
- ios - Expo React Native App 未加载 AppEntry.bundle