Kubernetes “的反面是什么?”;“kubectl应用”吗;?
我在minikube玩,安装了错误版本的istio。我跑:Kubernetes “的反面是什么?”;“kubectl应用”吗;?,kubernetes,Kubernetes,我在minikube玩,安装了错误版本的istio。我跑: kubectl apply -f install/kubernetes/istio-demo-auth.yaml 而不是: kubectl apply -f install/kubernetes/istio-demo.yaml 我想我应该撤销它,然后安装正确的 但是我似乎找不到一个命令 如何撤消“kubectl apply”命令?一种方法是,但它意味着几件事: 这些资源是首先创建的。如果你真的想“恢复到以前的状态”,我不确定Kube
kubectl apply -f install/kubernetes/istio-demo-auth.yaml
而不是:
kubectl apply -f install/kubernetes/istio-demo.yaml
我想我应该撤销它,然后安装正确的
但是我似乎找不到一个命令
如何撤消“kubectl apply”命令?一种方法是,但它意味着几件事:
这些资源是首先创建的。如果你真的想“恢复到以前的状态”,我不确定Kubernetes中是否有内置的工具可以做到这一点(因此,如果你有备份,你真的会从备份中恢复)
容器并没有修改主机:容器可以挂载根文件系统并对其进行更改,或者挂载内核子系统(iptables等)。delete
命令也不会将其还原,在这种情况下,您确实需要检查产品的文档,看看它们是否提供了任何官方方法来保证正确的清理
如果您创建了新的应用程序,请使用@zerkms建议的kubectl delete
但是,如果您像我一样,将较新版本部署到不同的群集,则应用程序会陷入如下创建模式:
NAME READY STATUS RESTARTS AGE
my-application-csbxl 0/1 ContainerCreating 0 5m25s
my-application-5bcvc 1/1 Running 0 2d1h
那么最好的解决方案是回滚,因为它会返回到以前的部署:
kubectl rollout undo deployment my-application
kubectl delete-f
但这意味着您从头开始创建了这些资源,它将从字面上删除它们,而不是“恢复到以前的版本”。另外,若他们的容器和主机有关系,它也不会被还原。@zerkms请不要在评论中回答问题。我认为你所说的是正确的,而且是合适的回答。@ChathanDriehuys它需要的远不止这些,但确实如此。@zerkms fair。对于这样一个简单的问题,我认为一个简单的两行回答,一个命令和一个文档链接就足够了。当然,这个观点完全是我自己的,而且是我自己的!好吧,那就不要回去了。小心使用apply命令。(我是kubernetes的新手,因此使用minikube而不是真正的集群学习这是一件好事。(关闭重置minikube…@Vaccano您是否尝试使用正确的清单重新应用了它?如果它是一个学习集群-对它做肮脏的事情,同时您可以从中学习:-)嗯,这将是一个非常好的主意。唉,我已经运行了minikube delete
。也许下次吧。我确实从中学到了关于库伯内特斯备份的重要一课。对于我的项目,它已升级为“必须拥有”。请注意,从版本开始,您可能需要单独删除入口资源,例如kubectl delete ing-l app=bar-n foo