GNU/Linux >> Linux Esercitazione >  >> Linux

Come creare una distribuzione in Kubernetes

Le distribuzioni rappresentano un insieme di pod identici. Una distribuzione esegue più copie dell'applicazione. Sostituisce automaticamente tutte le istanze che non riescono. Aiuta a garantire che una o più istanze dell'applicazione siano sempre attive e in esecuzione. Le distribuzioni sono gestite dal controller di distribuzione Kubernetes. Le distribuzioni utilizzano un modello di pod, che contiene una specifica per i suoi pod.

Una distribuzione Kubernetes è un oggetto risorsa in Kubernetes che fornisce aggiornamenti dichiarativi alle applicazioni.

Per ulteriori informazioni sulle specifiche di distribuzione, consulta la documentazione dell'API Kubernetes

In questo articolo impareremo a creare una distribuzione in Kubernetes ed eseguire operazioni su di essa.

Prerequisiti

Cluster Kubernetes con almeno 1 nodo di lavoro.
Se vuoi imparare a creare un Cluster Kubernetes, fai clic qui. Questa guida ti aiuterà a creare un cluster Kubernetes con 1 master e 2 nodi su istanze AWS Ubuntu 18l04 EC2.

Cosa faremo

Crea una distribuzione

Crea una distribuzione

Crea un file e aggiungi la seguente definizione di distribuzione al suo interno.

vim my-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: httpd-frontend
  name: httpd-frontend
spec:
  replicas: 1
  selector:
    matchLabels:
      app: httpd-frontend
  template:
    metadata:
      labels:
        app: httpd-frontend
    spec:
      containers:
      - image: httpd:2.4-alpine
        name: httpd



In questo esempio:

  • Verrà creato un Deployment denominato httpd-frontend , indicato dai metadata: name campo.
  • La distribuzione creerà 1 replica del Pod, indicata dalle replicas campo.
  • Il modello Pod, o spec: template campo, indica che i suoi Pod sono etichettati app: httpd-frontend .
  • Specifica del modello Pod o template: spec campo, indica che i Pod eseguono un contenitore, httpd, che esegue l'immagine httpd: nella versione 2.4-alpine.

Usa il comando seguente per creare una distribuzione

kubectl create -f my-deployment.yaml

Una volta creata una distribuzione, puoi ottenerne i dettagli utilizzando il comando seguente.

kubectl get deployment | grep httpd-frontend

La distribuzione ha creato un set di repliche, per elencarlo utilizzare il comando seguente.

kubectl get replicaset | grep httpd-frontend

I pod creati dal set di repliche possono essere elencati utilizzando il comando seguente che elencherà i pod corrispondenti al nome specificato.


kubectl get pods | grep httpd-frontend

Ora puoi testare la creazione automatica del pod se quello esistente non riesce eliminandolo.

Per eliminare il pod esistente, utilizza i seguenti comandi.


kubectl get pods | grep httpd-frontend
kubectl delete pod httpd-frontend-74fd6fd8cd-8nj2s
kubectl get pods | grep httpd-frontend

Nello screenshot sopra, puoi vedere che il pod è stato creato dopo aver eliminato il pod esistente.

Ora, anche se il set di repliche viene eliminato, la distribuzione lo creerà.

Per verificarlo, elimina il set di repliche utilizzando il comando seguente.


kubectl get replicaset | grep httpd-frontend
kubectl delete replicaset httpd-frontend-74fd6fd8cd
kubectl get replicaset | grep httpd-frontend

Nello screenshot sopra puoi vedere che anche dopo aver eliminato il set di repliche, è stato creato.

Per visualizzare un po' più di informazioni sul pod, puoi utilizzare "-o wide" nel comando come segue.

kubectl get pods | grep httpd-frontend
kubectl get pods -o wide | grep httpd-frontend

Per ottenere le informazioni complete del pod, può essere descritto utilizzando il comando seguente.

kubectl describe pod httpd-frontend

Ora, se non hai più bisogno che la tua applicazione venga distribuita utilizzando la distribuzione, può essere eliminata eliminando la distribuzione.

Utilizzare i seguenti comandi per eliminare la distribuzione.

kubectl get deployment | grep httpd-frontend
kubectl delete deployment httpd-frontend
kubectl get deployment | grep httpd-frontend

Nello screenshot sopra, puoi vedere che dopo aver eliminato la distribuzione non è stata creata. Ma se elimini il pod o il set di repliche che sono stati creati come parte della distribuzione, vengono creati.

Conclusione

In questo articolo abbiamo imparato a creare una distribuzione e provato l'operazione di eliminazione su Pod, Replicaset e Deployment.


Linux
  1. Come distribuire il tuo primo pod su un cluster Kubernetes

  2. Come creare tag Git

  3. Come creare un sottodominio

  4. Come eliminare una distribuzione Kubernetes [Suggerimenti rapidi per K8s]

  5. Come creare un collegamento a una directory

Come creare file Tar Gz

Come creare un modulo Terraform

Come creare uno StatefulSet in Kubernetes

Creazione della tua prima distribuzione su un cluster Kubernetes

Come creare un cluster Kubernetes con AWS CLI

Come creare e gestire i pod Kubernetes in Linux