web-dev-qa-db-fra.com

Comment tuer les pods sur la configuration locale de Kubernetes

Je commence à explorer les conteneurs docker runnign avec Kubernetes. J'ai fait ce qui suit

  1. Docker run etcd
  2. docker run master
  3. proxy de service runer docker
  4. kubectl run web --image = nginx

Pour nettoyer l'état, j'ai d'abord arrêté tous les conteneurs et effacé les images téléchargées. Cependant, je vois toujours des pods fonctionner.

$ kubectl get pods 
NAME                   READY     STATUS    RESTARTS   AGE
web-3476088249-w66jr   1/1       Running   0          16m

Comment puis-je supprimer cela?

9
Pankaj Garg

Pour supprimer le pod:

kubectl delete pods web-3476088249-w66jr

Si ce pod est démarré via un replicaSet ou un déploiement ou tout ce qui crée des répliques, recherchez-le et supprimez-le d'abord.

kubectl get all

Cela répertoriera toutes les ressources qui ont été créées dans votre cluster k8s. Pour obtenir des informations sur les ressources créées dans votre espace de noms kubectl get all --namespace=<your_namespace>

Pour obtenir des informations sur la ressource qui contrôle ce module, vous pouvez le faire

kubectl describe  web-3476088249-w66jr

Il y aura un champ "Contrôlé par" ou un champ propriétaire à l'aide duquel vous pourrez identifier la ressource qui l'a créé.

17
Sushil Kumar Sah

Quand vous faites kubectl run ..., c'est un déploiement que vous créez, pas un pod directement. Vous pouvez vérifier cela avec kubectl get deploy. Si vous souhaitez supprimer le module, vous devez supprimer le déploiement avec kubectl delete deploy DEPLOYMENT.

Je vous recommande de créer un espace de noms pour les tests lorsque vous faites ce genre de choses. Vous faites juste kubectl create ns test, vous effectuez tous vos tests dans cet espace de noms (en ajoutant -n test). Une fois que vous avez terminé, il vous suffit de kubectl delete ns test, et vous avez terminé.

3
suren