【问题标题】:find which yaml file was used for the any kubernetes resource?找出哪个 yaml 文件用于任何 kubernetes 资源?
【发布时间】:2019-12-28 09:24:47
【问题描述】:

如何找到用于部署任何 kubernetes 资源的 yaml 文件。

我检查了“kubectl describe”,它没有列出相同的,有没有知道的。

用例:

我想更新 yaml 并重新部署,一种选择,我猜是从正在运行的资源生成 yaml,更新并重新部署。

有什么建议吗?

【问题讨论】:

  • 试试kubectl edit

标签: kubernetes yaml kubectl


【解决方案1】:

为您的 k8s 应用程序部署获取 yaml。

使用this

kubectl get deploy my-deployment -o yaml --export
 OR
kubectl get pod my-pod -o yaml --export
 OR
kubectl get svc my-svc -o yaml --export

编辑也很简单。

kubectl get deploy my-deployment -o yaml --export > my-deployment.yml
<Edit the my-deployment.yml file and kubectl apply -f my-deployment.yml>

OR 

kubectl edit deployment my-deployment

希望这会有所帮助。

【讨论】:

  • 标志 --export 已被弃用,此标志已弃用,将来将被删除。
  • 谢谢,export yml, 选项提供了太多额外的 yml 标签,除了原来的 yml,比如 progressDeadlineSeconds: 600 和许多注释。第二个选项:kubectl edit deployment my-deployment 看起来好多了,但我实际上想检查一下,是否有办法找到在部署期间使用的确切 yml 文件路径?我想,这可能是不可能的,因为 k8 不会跟踪它,因为它可能已被删除。
【解决方案2】:

您可以使用以下命令获取用于创建部署的 yaml 文件的内容:
kubectl apply view-last-applied &lt;resource_type&gt; &lt;resource_name&gt;

在您的情况下,它将类似于:
kubectl apply view-last-applied deployment &lt;deployment_name&gt;

【讨论】:

    【解决方案3】:

    我认为您可以从两个选项中进行选择。

    选项 1:

    您可以grep所有 YAML 查找特定注释或标签。

    $ grep "app: nginx-test" *.yaml
    

    $ grep -e "prometheus.io/scheme: http" *.yaml
    

    找到合适的文件后,您可以对其进行编辑(vi、nano 等)并应用。

    $ kubectl apply -f [yaml-name]
    

    选项 2:

    当您知道部署的名称后,您可以对其进行编辑。

    $ kubectl edit deployment [deployment-name]
    

    您将看到当前部署 YAML,其中包含描述当前部署状态的 status: 部分。如果你不喜欢 vi,你可以用 nano 代替

    $ KUBE_EDITOR="nano" kubectl edit [deployment-name]
    

    如果您想从当前部署创建 YAML,我建议您使用带有 --export 标志的 kubectl edit。它将删除不需要的信息(例如之前评论中的status:)。

    $ kubectl get deploy [your-deployment] -oyaml --export >> newDeployment.yaml
    

    希望它会有所帮助。

    【讨论】:

      猜你喜欢
      • 2021-04-30
      • 1970-01-01
      • 2011-11-19
      • 1970-01-01
      • 1970-01-01
      • 2021-11-03
      • 1970-01-01
      • 2020-07-10
      • 1970-01-01
      相关资源
      最近更新 更多