我刚刚创建了一个名称空间,没有对它做任何操作,现在删除了它。但是,当我列出上下文时,我仍然可以在那里看到它。好像已经被删除了,不能再删除了。当我获得上下文时,为什么我仍然可以看到它被列出?
kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* dev minikube minikube dev
minikube minikube minikube
kubectl delete namespace dev
namespace "dev" deleted
kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* dev minikube minikube dev
minikube minikube minikube我切换了上下文以防万一,但仍然遇到了同样的问题。例如。
kubectl delete namespace dev
Error from server (NotFound): namespaces "dev" not found
kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
dev minikube minikube dev
* minikube minikube minikube有趣的是,当我列出名称空间时,我看不到它。例如。
kubectl get namespaces发布于 2018-11-13 22:30:54
kubectl中的context只是一个本地配置,其中包含有关特定集群或命名空间的详细信息(元数据)。这是使用kubectl客户端进行群集/命名空间管理所需的配置。
因此,当您键入kubectl config <any_command>时,它只是在您的计算机上本地存储的文件中进行查找。运行以下命令以了解有关此命令的更多信息以及如何控制配置文件的位置:
kubectl config --help删除集群或命名空间不会删除关联的上下文。原因是删除集群或命名空间是在集群上运行的异步操作。此操作实际完成所需的时间可能超过几秒钟。因此,在您向集群主机发出delete命令后,kubectl不能立即从配置文件中删除上下文。
要回答您的问题,您必须使用以下命令手动删除上下文:
kubectl config delete-context devhttps://stackoverflow.com/questions/53283120
复制相似问题