Esta noticia ha sido analizado por expertos así garantizamos la exactitud de nuestra esta crónica.
Solución:
Método 1: Para eliminar todo del espacio de nombres actual (que normalmente es el defecto espacio de nombres) usando kubectl delete
:
kubectl delete all --all
all
se refiere a todos los tipos de recursos, como pods, implementaciones, servicios, etc. --all
se utiliza para eliminar todos los objetos de ese tipo de recurso en lugar de especificarlo con su nombre o etiqueta.
Para eliminar todo de un determinado espacio de nombres, usa la bandera -n:
kubectl delete all --all -n namespace
Método 2: También puede eliminar un espacio de nombres y volver a crearlo. Esto eliminará todo lo que le pertenece:
kubectl delete namespace namespace
kubectl create namespace namespace
Nota (gracias @Marcus): all
en kubernetes no se refiere a todos los objetos de kubernetes, como los recursos de nivel de administrador (límites, cuotas, políticas, reglas de autorización). Si realmente desea asegurarse de eliminar todo, es mejor eliminar el espacio de nombres y volver a crearlo. Otra forma de hacerlo es usar kubectl api-resources
para obtener todos los tipos de recursos, como se ve aquí:
kubectl delete "$(kubectl api-resources --namespaced=true --verbs=delete -o name | tr "n" "," | sed -e 's/,$//')" --all
El espacio de nombres de Kubernetes sería la opción perfecta para ti. Puede crear fácilmente un recurso de espacio de nombres.
kubectl create -f custom-namespace.yaml
$ apiVersion: v1
kind: Namespace
metadata:
name:custom-namespace
Ahora puede implementar todos los demás recursos (Implementación, ReplicaSet, Servicios, etc.) en esos espacios de nombres personalizados.
Si desea eliminar todos estos recursos, solo necesita eliminar el espacio de nombres personalizado. al eliminar el espacio de nombres personalizado, se eliminarán todos los demás recursos. Sin él, ReplicaSet podría crear nuevos pods cuando se eliminen los existentes.
Para trabajar con el espacio de nombres, debe agregar la marca –namespace a los comandos k8s.
Por ejemplo:
kubectl create -f deployment.yaml --namespace=custom-namespace
puede enumerar todos los pods en el espacio de nombres personalizado.
kubectl get pods --namespace=custom-namespace
También puede eliminar los recursos de Kubernetes con la ayuda de las etiquetas adjuntas. Por ejemplo, suponga que la etiqueta siguiente se adjunta a todos los recursos
metadata:
name: label-demo
labels:
env: dev
app: nginx
ahora solo ejecuta los siguientes comandos
deleting resources using app label
$ kubectl delete pods,rs,deploy,svc,cm,ing -l app=nginx
deleting resources using envirnoment label
$ kubectl delete pods,rs,deploy,svc,cm,ing -l env=dev
Eres capaz de auxiliar nuestro ensayo poniendo un comentario o dejando una puntuación te lo agradecemos.