GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So löschen Sie eine Kubernetes-Bereitstellung [Schnelle K8s-Tipps]

Eine Kubernetes-Bereitstellung führt mehrere Replikate Ihrer Anwendung aus und ersetzt automatisch alle Instanzen, die ausfallen oder nicht mehr reagieren.

Wenn Sie Kubernetes üben, müssen Sie häufig Kubernetes-Bereitstellungen löschen.

Das Löschen von Deployments ist dank des Befehls kubectl delete Deployments einfach:

kubectl delete deployment deployment_name

Ich werde es mit den Schritten zum Abrufen des Bereitstellungsnamens etwas detaillierter besprechen. Ich zeige Ihnen auch eine andere Möglichkeit zum Löschen von Deployments in Kubernetes.

Verwenden Sie den Befehl kubectl delete Deployment zum Löschen von Kubernetes-Bereitstellungen

Obwohl es normalerweise mit der Registerkarte abgeschlossen wird, sollten Sie besser den Namen der Bereitstellung verwenden, die Sie löschen möchten.

[email protected]:~# kubectl get deployments
NAME     READY   UP-TO-DATE   AVAILABLE   AGE
my-dep   2/2     2            2           4m22s

Sobald Sie den Bereitstellungsnamen haben, verwenden Sie ihn einfach wie folgt:

kubectl delete deployments my-dep

Es sollte eine Ausgabe anzeigen, die Ihnen mitteilt, dass Ihre Bereitstellung gelöscht wurde:

[email protected]:~/pod-create# kubectl delete deployments my-dep
deployment.apps "my-dep" deleted

Sie können dies überprüfen, indem Sie die verfügbaren Bereitstellungen überprüfen:

[email protected]:~/pod-create# kubectl get deployments
No resources found in default namespace.
Sie können auch Deployment oder Deployments (mit einem s) anstelle von Deployment im kubectl delete deployment verwenden Befehl. Es ist alles dasselbe.

Löschen der Kubernetes-Bereitstellung aus einem bestimmten Namespace

Die kubectl delete deployments Der Befehl löscht Bereitstellungen, die im "Standard"-Namespace vorhanden sind, es sei denn, Sie geben einen anderen Namespace an.

Was ist Namespace in Kubernetes?

Namespaces sind für die Verwendung in Umgebungen mit vielen Benutzern vorgesehen, die über mehrere Teams oder Projekte verteilt sind. Es ist wie ein separater virtueller Cluster innerhalb des Kubernetes-Clusters.

Beispielsweise können Sie separate Namespaces haben, um Ihre Workloads für Produktions-, Staging- und Entwicklungsumgebungen zu isolieren.

Alle verfügbaren Namespaces und ihre Bereitstellungen auflisten

Verwenden Sie den folgenden Befehl, um alle Namespaces anzuzeigen:

[email protected]:~# kubectl get namespaces
NAME              STATUS   AGE
default           Active   46d
kube-node-lease   Active   46d
kube-public       Active   46d
kube-system       Active   46d
webapps           Active   22d

Sie können auch alle Bereitstellungen aus allen Namespaces auflisten:

[email protected]:~# kubectl get deployments --all-namespaces
NAMESPACE     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
default       my-dep2                   2/2     2            2           3h29m
kube-system   calico-kube-controllers   1/1     1            1           46d
kube-system   coredns                   2/2     2            2           46d
webapps       webapps-dep               2/2     2            2           5h19m

Wenn Sie den Namespace und den Deployment-Namen haben, können Sie ihn mit dem Befehl kubectl delete Deployment angeben:

[email protected]:~# kubectl delete deployments --namespace=webapps webapps-dep
deployment.apps "webapps-dep" deleted

Wie Sie sehen können, webapps-dep wurde gelöscht.

[email protected]:~# kubectl get deployments --all-namespaces
NAMESPACE     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
default       my-dep2                   2/2     2            2           3h29m
kube-system   calico-kube-controllers   1/1     1            1           46d
kube-system   coredns                   2/2     2            2           46d

Mehrere Bereitstellungen löschen

Sie können mehr als eine Kubernetes-Bereitstellung löschen, indem Sie ihre Namen wie folgt angeben:

[email protected]:~/pod-create# kubectl delete deployment my-dep my-dep-2 --namespace=default

Löschen von Kubernetes-Bereitstellungen mithilfe seiner YAML-Konfigurationsdatei

Sie können auch die YAML-Konfigurationsdatei verwenden, um die damit verknüpfte Ressource zu löschen.

[email protected]:~/pod-create# kubectl delete -f deployment-definition.yml
deployment.apps "my-dep" deleted

Lassen Sie mich es Ihnen Schritt für Schritt zeigen.

Erstellen Sie eine neue Bereitstellung mithilfe der Datei „deployment-definition.yml“:

[email protected]:~# cat pod-create/deployment-definition.yml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-dep
  labels:
    app: webapp
  namespace: default

spec:
  template:
    metadata:
      name: my-dep-pods
      labels:
        app: webapp
        tier: front-end
    spec:
      containers:
        - name: httpd
          image: httpd
          imagePullPolicy: IfNotPresent
          ports:
          - containerPort: 80
  replicas: 2
  selector:
    matchLabels:
      tier: front-end

Erstellen Sie die Bereitstellung mithilfe der obigen YAML-Datei:

[email protected]:~/pod-create# kubectl apply -f deployment-definition.yml
deployment.apps/my-dep created

Sie können die Bereitstellung jetzt sehen:

[email protected]:~# kubectl get deployments --all-namespaces
NAMESPACE     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
default       my-dep                    2/2     2            2           1m13s

Wenn Sie jetzt auf dieselbe YAML-Datei zum Löschen verweisen, werden die Ressourcen (hier Bereitstellungen) gelöscht, die dieser Datei zugeordnet sind.

[email protected]:~/pod-create# kubectl delete -f deployment-definition.yml
deployment.apps "my-dep" deleted

Sie können dies überprüfen, indem Sie alle Bereitstellungen auflisten:

[email protected]:~/pod-create# kubectl get deployments
No resources found in default namespace.

Ich hoffe, Ihnen gefällt dieser schnelle K8s-Tipp. Wir werden weitere Kubernetes-Tutorials behandeln. Abonnieren Sie weitere Lernmaterialien.


Linux
  1. So führen Sie Canary-Bereitstellungen auf Kubernetes durch

  2. So löschen Sie Pods in Kubernetes [Schnelle K8s-Tipps]

  3. So starten Sie Pods in Kubernetes neu [Schneller K8s-Tipp]

  4. So lesen Sie Knoten in Kubernetes [Schneller K8s-Tipp]

  5. So löschen Sie einen Dienst in Kubernetes

So installieren Sie Kubernetes (k8s) auf einem Ubuntu 20.04 LTS-Server

So richten Sie Kubernetes (k8s)-Cluster in HA mit Kubeadm ein

So richten Sie eine private Docker-Registrierung in Kubernetes (k8s) ein

So löschen Sie Zeilen in Vim / Vi

So erstellen Sie eine Bereitstellung in Kubernetes

Warum heißt Kubernetes K8s?