如何正确定义部署规范文件
How to correctly define deployment spec file
我必须创建部署规范文件,它将:
- 启动带有标签 all_labelnginx 图像的 3 个副本
- 部署名称star_deploy
将此规范文件的副本保存到 deployment_spec.yaml 或 json。完成后,我需要清理(删除)在此任务期间生成的所有新 Kubernetes 对象。基于这个任务,我不知道如何解决这个任务。我应该创建部署然后使用命令
kubectl get deployment star_deploy -o yaml > deployment_spec.yaml
或在创建过程中,使用命令
kubectl create deployment star_deploy --image=nginx --dry-run -o yaml > deployment_spec.yaml
您认为最好的方法是什么?
我提倡使用 --dry-run
选项来创建一个基本的 yaml 文件并对其进行编辑以进行必要的更改,然后使用 kubectl create -f deployment.yaml
实际创建资源。
任务完成后,您可以使用 kubectl delete -f deployment.yaml
进行清理
这是遵循声明式方法,可以更轻松地定义部署(或任何资源)并通过 CI/CD 或 GitOps 管理它们的生命周期。
Dry 运行 总是好的,因为它只提供必要的输出,没有任何垃圾值,如修订号、creationTimestmp 等。这将为您提供用于部署的干净的生产级 yaml 文件。稍后您可以使用它来创建 daemonsets 等
kubectl create deployment star_deploy --image=nginx --dry-run=client -o yaml > deployment_spec.yaml
注意:总是运行干-运行作为客户
生成 yaml 后,应用此 yaml 以使用
创建部署
kubectl apply -f deployment_spec.yaml
要为该部署扩展 pods,您甚至不需要编辑 yaml 文件。
kubectl scale deployment star_deploy --replicas=3
要删除已创建的部署,您可以使用
kubectl delete deployment star_deploy
我必须创建部署规范文件,它将:
- 启动带有标签 all_labelnginx 图像的 3 个副本
- 部署名称star_deploy
将此规范文件的副本保存到 deployment_spec.yaml 或 json。完成后,我需要清理(删除)在此任务期间生成的所有新 Kubernetes 对象。基于这个任务,我不知道如何解决这个任务。我应该创建部署然后使用命令
kubectl get deployment star_deploy -o yaml > deployment_spec.yaml
或在创建过程中,使用命令
kubectl create deployment star_deploy --image=nginx --dry-run -o yaml > deployment_spec.yaml
您认为最好的方法是什么?
我提倡使用 --dry-run
选项来创建一个基本的 yaml 文件并对其进行编辑以进行必要的更改,然后使用 kubectl create -f deployment.yaml
实际创建资源。
任务完成后,您可以使用 kubectl delete -f deployment.yaml
这是遵循声明式方法,可以更轻松地定义部署(或任何资源)并通过 CI/CD 或 GitOps 管理它们的生命周期。
Dry 运行 总是好的,因为它只提供必要的输出,没有任何垃圾值,如修订号、creationTimestmp 等。这将为您提供用于部署的干净的生产级 yaml 文件。稍后您可以使用它来创建 daemonsets 等
kubectl create deployment star_deploy --image=nginx --dry-run=client -o yaml > deployment_spec.yaml
注意:总是运行干-运行作为客户
生成 yaml 后,应用此 yaml 以使用
创建部署kubectl apply -f deployment_spec.yaml
要为该部署扩展 pods,您甚至不需要编辑 yaml 文件。
kubectl scale deployment star_deploy --replicas=3
要删除已创建的部署,您可以使用
kubectl delete deployment star_deploy