Come Installare Kubernetes su Linux

Kubernetes è una piattaforma open source che permette di automatizzare la gestione, il deployment e il scaling delle applicazioni containerizzate. Se stai cercando una guida facile per installare Kubernetes su Linux, sei nel posto giusto. In questo tutorial ti guiderò attraverso il processo di installazione di Kubernetes su una distribuzione Linux, come Ubuntu, e ti mostrerò come configurare gli strumenti essenziali come kubectl, kubeadm e kubelet.

Requisiti per installare Kubernetes su Linux

Prima di iniziare l’installazione, assicurati di avere i seguenti requisiti per installare Kubernetes:

  • Un server con una distribuzione Linux (come Ubuntu 20.04 o 22.04).
  • Accesso come utente root o con privilegi sudo.
  • Almeno 2 CPU e 2 GB di RAM per ogni nodo.
  • Connessione internet stabile.
  • Una rete configurata correttamente con connessioni tra i nodi.
  • Swap disabilitato. Kubernetes non funziona correttamente se lo swap è abilitato.

Una volta verificati questi requisiti, possiamo procedere con l’installazione.

Passo 1: Installare Docker

Kubernetes utilizza Docker (o un altro container runtime) per eseguire i container. Il primo passo è quindi installare Docker. Apri il terminale e segui i passaggi seguenti per installarlo:

Una volta installato Docker, verifica che sia in esecuzione con il seguente comando:

Se tutto è corretto, vedrai che Docker è attivo e in esecuzione.

Passo 2: Installare kubelet, kubeadm e kubectl

Kubernetes richiede tre componenti principali: kubelet, kubeadm e kubectl. Ecco come installarli.

Prima di tutto, aggiungi il repository Kubernetes:

Ora installa kubelet, kubeadm e kubectl con il seguente comando:

Il comando apt-mark hold assicura che questi pacchetti non vengano aggiornati automaticamente, evitando possibili problemi di compatibilità.

Passo 3: Disabilitare lo swap

Kubernetes richiede che lo swap sia disabilitato sul sistema. Puoi farlo temporaneamente con il seguente comando:

Per disabilitarlo permanentemente, modifica il file /etc/fstab e commenta (aggiungi un # all’inizio della linea) la linea che riguarda lo swap.

Passo 4: Inizializzare il cluster con kubeadm

Una volta installati tutti i componenti, è il momento di inizializzare il cluster Kubernetes. Puoi farlo eseguendo il comando kubeadm init. Questo comando configurerà il master node, che gestisce il cluster.

Al termine dell’inizializzazione, kubeadm ti fornirà un comando simile a questo, che dovrai copiare per aggiungere i worker node al cluster:

Segui le istruzioni che appariranno per configurare kubectl. Per l’utente corrente, esegui i seguenti comandi per configurare l’accesso al cluster:

Passo 5: Configurare la rete del cluster

Una volta che il master node è stato inizializzato, è necessario configurare la rete del cluster. Kubernetes utilizza vari plugin per il networking. Uno dei più comuni è Calico. Ecco come installarlo:

Questo comando scaricherà e installerà il plugin Calico, che consente ai pod di comunicare tra loro.

Passo 6: Aggiungere nodi al cluster

Ora che il master è pronto, puoi aggiungere altri nodi al cluster. Usa il comando che hai ottenuto durante l’inizializzazione del cluster (quello che inizia con kubeadm join) e eseguilo sui nodi worker.

Se hai perso il comando kubeadm join, puoi rigenerarlo sul master con il seguente comando:

Passo 7: Verificare lo stato del cluster

Una volta aggiunti i nodi al cluster, puoi verificare che tutto funzioni correttamente eseguendo il seguente comando:

Dovresti vedere una lista di nodi con lo stato “Ready”. Questo indica che il cluster è configurato correttamente e pronto per l’uso.

Passo 8: Installare un’applicazione su Kubernetes

Ora che hai il tuo cluster Kubernetes funzionante, puoi installare una delle tue applicazioni containerizzate. Per esempio, per eseguire una semplice applicazione nginx, puoi usare i seguenti comandi:

Questo creerà un deployment nginx e lo esporrà su una porta del nodo.

Conclusioni

Installare Kubernetes su Linux può sembrare complicato, ma seguendo questa guida passo-passo, il processo diventa molto più semplice. Dopo aver installato Docker, kubelet, kubeadm e kubectl, sarai in grado di creare il tuo cluster Kubernetes e aggiungere nodi worker. Con Kubernetes, puoi scalare le tue applicazioni in modo efficiente e gestire migliaia di container su diversi server. Questo tutorial ti fornisce una solida base per iniziare con Kubernetes su Linux, sia per test che per ambienti di produzione.

Non dimenticare di tenere aggiornati i componenti del tuo cluster e di monitorare le sue prestazioni per garantire che tutto funzioni correttamente.