GNU/Linux >> Linux Esercitazione >  >> Linux

Come eliminare una distribuzione Kubernetes [Suggerimenti rapidi per K8s]

Una distribuzione Kubernetes esegue più repliche della tua applicazione e sostituisce automaticamente tutte le istanze che hanno esito negativo o che non rispondono.

Quando fai pratica con Kubernetes, dovrai spesso eliminare le distribuzioni Kubernetes.

Eliminare le distribuzioni è facile, grazie al comando kubectl delete deployments:

kubectl delete deployment deployment_name

Ne parlerò un po' più in dettaglio con i passaggi per ottenere il nome della distribuzione. Ti mostrerò anche un altro modo per eliminare le implementazioni in Kubernetes.

Utilizza il comando kubectl delete deployment per eliminare le distribuzioni Kubernetes

Anche se in genere viene completata la scheda, faresti meglio con il nome della distribuzione che desideri eliminare.

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

Una volta ottenuto il nome della distribuzione, utilizzalo semplicemente in questo modo:

kubectl delete deployments my-dep

Dovrebbe mostrare un output che ti dice che la tua distribuzione è stata eliminata:

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

Puoi verificarlo controllando le implementazioni disponibili:

[email protected]:~/pod-create# kubectl get deployments
No resources found in default namespace.
Puoi anche utilizzare deploy o deployments (con una s) invece di deployment nel kubectl delete deployment comando. È lo stesso.

Eliminazione di Kubernetes Deployment da uno specifico spazio dei nomi

Il kubectl delete deployments comando elimina le distribuzioni che sono presenti nello spazio dei nomi "predefinito" a meno che tu non fornisca uno spazio dei nomi diverso.

Cos'è lo spazio dei nomi in Kubernetes?

Gli spazi dei nomi sono destinati all'uso in ambienti con molti utenti distribuiti su più team o progetti. È come un cluster virtuale separato all'interno del cluster Kubernetes.

Ad esempio, puoi avere spazi dei nomi separati per isolare i carichi di lavoro per gli ambienti di produzione, staging e sviluppo.

Elenca tutti gli spazi dei nomi disponibili e le relative implementazioni

Per vedere tutti gli spazi dei nomi, usa il seguente comando:

[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

Puoi anche elencare tutte le distribuzioni da tutti gli spazi dei nomi:

[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

Quando hai lo spazio dei nomi e il nome della distribuzione, puoi specificarlo nel comando kubectl delete deployment:

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

Come puoi vedere, webapps-dep è stato eliminato.

[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

Eliminazione di più implementazioni

Puoi eliminare più di una distribuzione Kubernetes fornendo i loro nomi in questo modo:

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

Eliminazione delle distribuzioni Kubernetes utilizzando il suo file di configurazione YAML

Puoi anche utilizzare il file di configurazione YAML per eliminare la risorsa ad esso associata.

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

Lascia che te lo mostri passo dopo passo.

Crea una nuova distribuzione utilizzando il file 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

Crea la distribuzione utilizzando il file YAML sopra:

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

Puoi vedere la distribuzione ora:

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

Ora, se fai riferimento allo stesso file YAML a scopo di eliminazione, eliminerà le risorse (distribuzioni qui) associate a quel file.

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

Puoi verificarlo elencando tutte le implementazioni:

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

Spero che questo rapido suggerimento di K8 ti piaccia. Tratteremo più tutorial di Kubernetes. Iscriviti per ulteriori materiali didattici.


Linux
  1. Come eseguire le implementazioni Canary su Kubernetes

  2. Come eliminare i pod in Kubernetes [Suggerimenti rapidi per K8s]

  3. Come riavviare i pod in Kubernetes [Suggerimento rapido per K8]

  4. Come leggere i nodi in Kubernetes [Suggerimento rapido per K8]

  5. Come eliminare un servizio in Kubernetes

Come installare Kubernetes (k8s) su Ubuntu 20.04 LTS Server

Come configurare il cluster Kubernetes(k8s) in HA con Kubeadm

Come configurare il registro Docker privato in Kubernetes (k8s)

Come eliminare le righe in Vim / Vi

Come creare una distribuzione in Kubernetes

Perché Kubernetes si chiama K8s?