Come installare Kubernetes su Ubuntu: una guida per principianti

5 feb 2024 3 min di lettura
Come installare Kubernetes su Ubuntu: una guida per principianti
Indice dei contenuti

Introduzione

La configurazione di Kubernetes su Ubuntu è un viaggio che trasforma la tua infrastruttura in un potente centro di orchestrazione dei container, consentendoti di distribuire, scalare e gestire i container di applicazioni su un cluster di macchine. Kubernetes, noto anche come K8, automatizza la distribuzione, il dimensionamento e il funzionamento dei contenitori di applicazioni, semplificando la gestione delle applicazioni da parte di sviluppatori e amministratori di sistema.

Questo articolo fornisce una guida completa alla configurazione di Kubernetes su Ubuntu, coprendo tutto, dall'installazione al funzionamento. Che tu stia configurando un cluster a nodo singolo per lo sviluppo o un cluster a nodo multiplo per la produzione, questa guida ti guiderà attraverso i passaggi necessari per rendere operativo il tuo cluster Kubernetes.

Prerequisiti

Prima di iniziare, assicurati di avere:

  • Una o più macchine che eseguono Ubuntu 18.04 LTS o versioni successive, ciascuna con almeno 2 GB di RAM e 2 CPU.
  • Un account utente con privilegi sudo su ogni macchina.
  • Le macchine sono collegate in rete tra loro, in grado di comunicare tra loro.

Passaggio 1: preparare l'ambiente

Aggiorna il tuo sistema : inizia aggiornando il tuo sistema per assicurarti che tutti i pacchetti siano aggiornati.

sudo apt-get update
sudo apt-get upgrade -y

Installa Docker : Kubernetes utilizza Docker come runtime del contenitore. Installa Docker su ogni macchina.

sudo apt-get install docker.io -y

Dopo l'installazione, aggiungi il tuo utente al gruppo Docker per eseguire i comandi Docker senza sudo.

sudo usermod -aG docker $USER

Disabilita scambio : Kubernetes richiede di disabilitare lo scambio su ogni macchina.

sudo swapoff -a

Per rendere permanente questa modifica, commentare qualsiasi voce di swap in /etc/fstab.

Passaggio 2: installa i componenti Kubernetes

Aggiungi repository Kubernetes : aggiungi il repository dei pacchetti Kubernetes a ogni macchina.

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list

Installa Kubernetes: installa kubeadm, kubelet e kubectl su ogni macchina.

sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl

Blocca le loro versioni per impedire gli aggiornamenti automatici.

sudo apt-mark hold kubelet kubeadm kubectl

Passaggio 3: inizializza il cluster

Sul nodo master inizializza il cluster utilizzando kubeadm.

sudo kubeadm init --pod-network-cidr=192.168.0.0/16

Dopo l'inizializzazione, segui le istruzioni visualizzate sullo schermo per iniziare a utilizzare il cluster. Ciò in genere comporta l'esecuzione dei seguenti comandi come utente normale.

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

Passaggio 4: installa una rete Pod

Installa un componente aggiuntivo della rete pod sul tuo cluster in modo che i tuoi pod possano comunicare tra loro. Calico è una scelta popolare che può essere installata con:

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

Passaggio 5: unisci i nodi al cluster

Per aggiungere nodi di lavoro al tuo cluster, utilizza il comando kubeadm join fornito alla fine del processo di inizializzazione del master. Esegui questo comando su ciascun nodo di lavoro.

sudo kubeadm join <master-ip>:<port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>

Passaggio 6: distribuire le applicazioni

Con il tuo cluster attivo e funzionante, sei pronto per distribuire le applicazioni. Puoi iniziare distribuendo una semplice applicazione utilizzando un file YAML di distribuzione.

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

Applicare questa distribuzione utilizzando: kubectl apply -f <filename>.yaml.

Passaggio 7: ridimensiona e gestisci il tuo cluster

Scala le tue applicazioni regolando il numero di repliche nella tua distribuzione e gestisci le risorse del tuo cluster utilizzando kubectl, lo strumento da riga di comando di Kubernetes. Esplora distribuzioni più complesse, configura Kubernetes Dashboard per una GUI e considera l'installazione di Helm per la gestione dei pacchetti.

Conclusione

Congratulazioni! Hai configurato con successo un cluster Kubernetes su Ubuntu. Questo cluster è ora pronto per la distribuzione delle applicazioni. Ricorda, Kubernetes è uno strumento potente e c'è molto altro da imparare sulle sue caratteristiche e capacità. Sperimenta la distribuzione di diverse applicazioni, il loro ridimensionamento e l'esplorazione delle numerose funzionalità di Kubernetes per acquisire dimestichezza nella gestione dei tuoi ambienti containerizzati.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.