GNU/Linux >> Linux Esercitazione >  >> Linux

Creazione della tua prima distribuzione su un cluster Kubernetes

In questo articolo vedremo come creare la tua prima distribuzione su un cluster Kubernetes. Ad esempio, creeremo una distribuzione per NginX.

Una volta che abbiamo un cluster Kubernetes in esecuzione, possiamo distribuire le nostre applicazioni containerizzate su di esso. Possiamo creare una configurazione di distribuzione di Kubernetes per raggiungere questo obiettivo.

Una distribuzione fornisce aggiornamenti dichiarativi per pod e replicaSet. Descriviamo uno stato desiderato in Deployment e il Deployment Controller cambia lo stato effettivo nello stato desiderato a una velocità controllata.

Possiamo creare e gestire una distribuzione utilizzando l'interfaccia della riga di comando "kubectl" di Kubernetes. Kubectl utilizza l'API Kubernetes per interagire con il cluster.

Ci sono tre fasi in un ciclo di vita della distribuzione:

  1. Avanzamento : Kubernetes contrassegna una distribuzione come in corso quando la distribuzione crea un nuovo ReplicaSet, la distribuzione sta aumentando il suo ReplicaSet più recente o riducendo il suo ReplicaSet precedente o i nuovi pod diventano pronti o disponibili 
  2. Completo : Kubernetes contrassegna una distribuzione come completa quando tutte le repliche associate alla distribuzione sono state aggiornate, sono disponibili, nessuna replica precedente per la distribuzione è in esecuzione.
  3. Non riuscito : Ciò può verificarsi a causa di una quota insufficiente, errori del probe di disponibilità, errori di pull dell'immagine, autorizzazioni insufficienti.

Prerequisiti

  1. Account AWS (crea se non ne hai uno)
  2. Un cluster Kubernetes

Nota:puoi utilizzare anche le VM per creare un cluster se non desideri provare su istanze AWS EC2.

Cosa faremo

  1. Crea una distribuzione Kubenetes per NginX

Crea una distribuzione Kubenetes per NginX

Per creare la nostra prima distribuzione, creiamo semplicemente una nuova directory per creare il nostro file Object/Deployment. Utilizza il comando seguente per creare una nuova directory nel tuo sistema

mkdir my-first-deployment
cd my-first-deployment/

Prima di procedere, verifica lo stato del cluster.

Per controllare i nodi disponibili nel cluster e per verificare la  versione di "kubectl " usa i seguenti comandi.

versione sudo kubectl
sudo kubectl get nodes

Una volta che hai nodi disponibili nel tuo cluster, sei pronto per creare la tua distribuzione.

Crea un file "my-first-deployment.yml" con il seguente blocco di codice

vim my-first-deployment.yml

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80

Qui,

  • apiVersion : APIVersion definisce lo schema con versione di questa rappresentazione di un oggetto.
  • gentile :tipo di oggetto che vuoi creare come Deployment, Service, Configmap e altro.
  • nome : Il nome deve essere univoco all'interno di uno spazio dei nomi.
  • etichette : Mappa di chiavi e valori di stringa che possono essere utilizzati per organizzare e classificare gli oggetti
  • specifica : Specifica del comportamento desiderato per la distribuzione.
  • replica : Numero di pod desiderati.
  • selettore : Selettore di etichette per i pod. I ReplicaSet esistenti i cui pod sono selezionati da questo saranno quelli interessati da questa distribuzione. Deve corrispondere alle etichette del modello del pod.

Ora sei pronto per creare la tua distribuzione utilizzando i seguenti comandi.

sudo kubectl apply -f my-first-deployment.yml
sudo kubectl get deployments

Nella schermata sopra puoi vedere che la distribuzione è stata creata con due pod disponibili per l'uso.

Puoi ottenere i dettagli dei pod utilizzando il comando seguente.

sudo kubectl ottieni i pod

Se vuoi saperne di più sull'implementazione, puoi utilizzare questo comando "kubectl describe" per ottenere i dettagli completi dell'implementazione.

sudo kubectl ottieni le implementazioni
sudo kubectl descrivi  le implementazioni nginx-deployment

Se non hai più bisogno della distribuzione, puoi eliminarla utilizzando il "comando kubectl delete".

sudo kubectl get deployments
sudo kubectl delete deployments nginx-deployment
sudo kubectl get deployment

Nello screenshot sopra, puoi vedere che la distribuzione non è più disponibile dopo che è stata eliminata.

Una volta eliminata la distribuzione, anche i pod vengono eliminati.

Puoi verificare la disponibilità dei pod usando il seguente comando.

sudo kubectl ottieni i pod

Nella schermata sopra, puoi vedere che i pod sono stati eliminati dopo aver eliminato la distribuzione e non sono disponibili.

Conclusione

In questo articolo, abbiamo visto i passaggi per creare la tua prima distribuzione NginX su Kubernetes. Abbiamo anche visto come possono essere estratti i dettagli relativi alla distribuzione. Insieme a questo, abbiamo esplorato i comandi per eliminare la distribuzione.


Linux
  1. Distribuire MySQL su Kubernetes {Guida}

  2. Come distribuire il tuo primo pod su un cluster Kubernetes

  3. Imposta il cluster Kubernetes con Rancher

  4. Creazione del primo contenitore di Windows Server Docker

  5. kubectl apply vs create:quale utilizzare per la creazione di risorse nell'ambiente del cluster Kubernetes?

Creazione di un singolo cluster Kubernetes del piano di controllo con kubeadm

Cluster Kubernetes che utilizza K3S con Multipass di Canonical

Creazione di un account cPanel

Bash Beginner Series n. 1:crea ed esegui il tuo primo script Bash Shell

Guida completa per principianti alla distribuzione del cluster Kubernetes su CentOS (e altri Linux)

Crea velocemente il tuo primo sito web su Cloud Server