kubernetes 如何从yaml文档中提取某些合格的节点并使用PyYAML添加到新文档中?[关闭]

von4xj4u  于 5个月前  发布在  Kubernetes
关注(0)|答案(1)|浏览(49)

已关闭。此问题需要更多focused。目前不接受回答。
**要改进此问题吗?**更新此问题,使其仅针对editing this post的一个问题。

上个月就关门了。
Improve this question
我是Python和YAML的新手(擅长JavaScript和JSON),我需要构建YAML文件的子集。特别是,我想生成一个.yaml文件,用于在openshift/kubernetes中创建新的部署,从运行的pod/deployments中收集所需的信息。YAML文件将有单独的PVC,Service和Deployments部分。
我需要消除状态之类的东西,以及在创建新的pvcs、服务和部署时生成的大量元数据。我想使用的步骤是:

  • 获取正在运行的部署的PVC声明列表
  • 对于其中的每一个,生成准系统YAML以创建这些PVC
  • 获取当前附加到目标部署的服务的yaml
  • 生成基本YAML以创建此服务
  • 获取目标部署的yaml
  • 生成基本YAML以创建此部署

这看起来是一件很容易的事情,但是由于我对Python和YAML都缺乏经验,我似乎不能正确地完成它。我甚至不能遍历YAML文档的所有节点并打印出合格的节点名称。
编辑:我知道我需要哪些oc/kubectl命令来获得我需要的YAML,我只是需要一些帮助,从这些文件中只提取某些部分,并通过插入这些提取的部分来生成一个新文档,

edqdpe6u

edqdpe6u1#

你的python脚本是否运行在有kubectl的环境中?你可以尝试创建python脚本,它可以做这样的事情-
1.使用kubectl命令使用jsonpath过滤器提取数据;将关键信息存储在变量中
1.创建Kubernetes部署命令,传递相关参数并使用--dry-run=client和-oyaml生成源yaml
这将确保生成正确的符合kubernetes的yaml。
1.使用python脚本执行yaml。
P.S.这些想法可能会让事情变得简单。

相关问题