k8s中获取各资源类型pod的yml编排文件

1.导出某个Deployment的YAML文件

<deployment-name>是您想要导出的Deployment的名称,此命令将导出Deployment的完整YAML文件,包括所有注释和注释行

kubectl get deployment <deployment-name> -n <namespace> -o yaml > <deployment-name>.yaml


2.只想导出Deployment的规范部分

kubectl get deployment <deployment-name> -n <namespace> -o yaml | grep -v '^\s*#' > <deployment-name>.yaml


3.导出某个daemonSet pod 的ymal 文件

<daemonSet-name>是您想要导出的daemonSet的名称
<namespace>是该daemonSet所在的命名空间
<filename>是您想要保存的本地文件名

kubectl get daemonSet <daemonSet-name> -n <namespace> -o yaml > <filename>.yaml

4.导出某个ingress pod 的 yaml 文件

Ingress并不是一个Pod,而是一个Kubernetes资源对象,用于管理HTTP(S)流量的路由。因此,您不能像导出Pod YAML文件那样导出Ingress YAML文件。


<ingress-name>是您想要导出的Ingress的名称
<namespace>是该Ingress所在的命名空间
<filename>是您想要保存的本地文件名

kubectl get ingress -A -o wide

kubectl get ingress <ingress-name> -n <namespace> -o yaml > <filename>.yaml

5.导出某个service pod 的ymal 文件

<service-name>为要导出的service的名称
<service-name>.yaml为导出的yaml文件的文件名

kubectl get service <service-name> -n <namespace> -o yaml > <service-name>.yaml

6.导出某个pod的yaml文件

kubectl get pod <pod-name> -n <namespace> -o yaml > <pod-name>.yaml

7.导出某个CronJob pod 的ymal 文件

kubectl get cronjob <cronjob-name> -n <namespace> -o yaml > <cronjob-name>.yaml

8.导出CronJob中的Pod的yaml文件

kubectl get pods -l job-name=<cronjob-name> 命令获取到所有与该CronJob相关的Pod的名称和时间戳

kubectl get pod -l job-name=<cronjob-name>-<timestamp> -n <namespace> -o yaml > <pod-name>.yaml


9.导出secret中的yaml文件
kubectl get secret <secret-name> -n <namespace> -o yaml > <secret-name>.yaml

posted @ 2023-07-03 09:58  哈喽哈喽111111  阅读(721)  评论(0)    收藏  举报