Kubernetes è un sistema open source utilizzato per automatizzare la distribuzione, il ridimensionamento e la gestione delle applicazioni containerizzate. Si chiama anche K8s che è una breve abbreviazione che deriva dalla sostituzione delle restanti otto lettere "ubernete" con 8.
Installazione di Kubernetes su Ubuntu
In questo tutorial, ti mostreremo come installare Kubernetes e configuralo sul sistema Ubuntu. Per questo tutorial avrai bisogno di due nodi Ubuntu (macchine) con le seguenti configurazioni minime:
- Nodo 1:sarà un nodo master (CPU di 2 core, 2 GB di RAM).
- Nodo 2:sarà un nodo slave (CPU di 1 Core, 1 GB di RAM).
Prima di iniziare il processo di installazione, dovrai assicurarti che la tua macchina sia aggiornata. Puoi usare i seguenti comandi:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
Imposta il nome host per i tuoi nodi
Passaggio 1. Sul tuo nodo master, usa il seguente comando:
sudo hostnamectl set-hostname kubernetes-master
Passaggio 2. Sul tuo nodo slave, usa il seguente comando:
sudo hostnamectl set-hostname kubernetes-slave
Si consiglia vivamente a entrambi i nodi di avere un'ora e una data precise per ottenere certificati TLS validi.
Installazione Docker
Eseguire i seguenti passaggi sia su Master che su Slave.
Passaggio 1. Installa Docker utilizzando il seguente comando.
sudo apt install docker.io
Passaggio 2. Verifica la tua installazione che puoi utilizzare:
docker --version
Passaggio 3. Per impostazione predefinita, il servizio Docker non è abilitato. Quindi, una volta completata l'installazione, esegui il comando seguente su entrambi i nodi per abilitare il servizio Docker.
sudo systemctl enable docker
Installazione Kubernetes
Eseguire i seguenti passaggi sia su Master che su Slave.
Passaggio 1. Installa il pacchetto curl utilizzando il comando successivo.
sudo apt install curl
Passaggio 2. Aggiungi la chiave di firma Kubernetes.
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
Passaggio 3. Aggiungi il repository Kubernetes.
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
Nota che al momento della stesura di questo tutorial è disponibile solo il repository Xenial Kubernetes, quindi sarà quello che useremo per la nostra installazione.
Passaggio 4. Verifica la tua installazione, usa il comando:
kubeadm version
Passaggio 5. Prima di installare Kubernetes, assicurati che il tuo sistema non stia utilizzando la memoria di scambio perché Kubernetes si rifiuterà di funzionare se Ubuntu utilizza la memoria di scambio.
Disabilita la memoria di scambio:
sudo swapoff -a
Passaggio 6. Installa Kubernetes.
sudo apt install kubeadm
Inizializzazione del server principale Kubernetes
Passaggio 1. Sul tuo nodo master, usa il comando successivo per inizializzare il nodo master Kubernetes.
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Prendi una copia dall'ultima riga “kubeadm join 10.0.2.15:6443 –token edvbbv.51hy5e2hgaxr1b4h –discovery-token-ca-cert-hash sha256:01db7c5913e363c099dc7a711550b8399c41f7cc92bda6b5ff06d6b3b8382a fare lo screenshot come slave nel nodo precedente che lo useremo per essere in2382” si unisce al cluster.
Passaggio 2. Inoltre, come per l'output precedente, si consiglia di utilizzare i seguenti comandi per iniziare a utilizzare il cluster Kubernetes.
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Distribuzione della rete Pod
Per abilitare la comunicazione tra i nodi del cluster, dobbiamo distribuire una rete pod.
Passaggio 1. Sul nodo master, utilizza il comando seguente per distribuire una rete pod.
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Passaggio 2. Sul nodo principale, assicurati che tutto sia attivo e funzionante.
kubectl get pods --all-namespaces
Unisciti al cluster Kubernetes
Per ora, tutto dovrebbe essere pronto per consentire ai nodi master e slave di unirsi al cluster Kubernetes.
Passaggio 1. Sul nodo slave e per consentire al nodo slave di unirsi al cluster, utilizza il comando copiato in precedenza dall'output del passaggio di inizializzazione di Kubernetes, che dovrebbe essere simile al seguente:
sudo kubeadm join 10.0.2.15:6443 --token edvbbv.51hy5e2hgaxr1b4h --discovery-token-ca-cert-hash sha256:01db7c5913e363c099dc7a711550b8399c41f7cc92bda6b5ff06d6b83e82a>7
Passaggio 2. Sul nodo master, controlla se il nodo slave è entrato a far parte del cluster:
kubectl get nodes
Congratulazioni, hai appena creato il cluster Kubernetes e tutto dovrebbe essere pronto per andare avanti e distribuire qualsiasi servizio di cui hai bisogno (come il container Apache o il server Nginx) per iniziare a utilizzare il tuo cluster.
Spero che questo tutorial ti sia piaciuto e nel caso in cui hai riscontrato difficoltà durante l'installazione lascia un commento e saremo lieti di aiutarti.