Kubernetes è un sistema open source utilizzato per automatizzare la distribuzione, il ridimensionamento e la gestione di 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
Passo 1. Sul tuo nodo master, usa il seguente comando:
sudo hostnamectl set-hostname kubernetes-master
Passo 2. Sul tuo nodo slave, usa il seguente comando:
sudo hostnamectl set-hostname kubernetes-slave
È altamente raccomandato che entrambi i nodi abbiano un'ora e una data precise per ottenere certificati TLS validi.
Installazione della finestra mobile
Eseguire i seguenti passaggi su Master e slave.
Passo 1. Installa Docker usando il seguente comando.
sudo apt install docker.io
Passo 2. Verifica la tua installazione che puoi usare:
docker --versione
Passaggio 3. Per impostazione predefinita, il servizio docker non è abilitato. Quindi, una volta completata l'installazione, eseguire il seguente comando su entrambi i nodi per abilitare il servizio docker.
sudo systemctl abilita la finestra mobile
Installazione Kubernetestes
Eseguire i seguenti passaggi su Master e slave.
Passo 1. Installa il pacchetto curl usando il comando successivo.
sudo apt install curl
Passo 2. Aggiungi la chiave di firma Kubernetes.
curl -s https://packages.nube.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:
versione kubeadm
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.
Disabilitare la memoria di swap:
sudo swapoff -a
Passaggio 6. Installa Kubernetes.
sudo apt install kubeadm
Inizializzazione del server master Kubernetes
Passo 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:01db7c5913e363c099dc7a711550b8399c41f7cc92bda6b5ff06d6b8382a73e2" nello screenshot precedente poiché lo useremo nel nodo slave del cluster per farlo aderire al cluster slave.
Passo 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 di rete pod
Per abilitare la comunicazione tra i nodi del cluster, dobbiamo distribuire una rete di pod.
Passo 1. Sul nodo master, usa il seguente comando per distribuire una rete pod.
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Passo 2. Sul nodo master, assicurati che tutto sia attivo e funzionante.
kubectl get pod --all-namespaces
Unisciti al cluster Kubernetes
Per ora, tutto dovrebbe essere pronto affinché i nodi master e slave si uniscano al cluster Kubernetes.
Passo 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 avere un aspetto simile a questo:
sudo kubeadm unisciti a 10.0.2.15:6443 --token edvbbv.51hy5e2hgaxr1b4h --discovery-token-ca-cert-hash sha256:01db7c5913e363c099dc7a711550b8399c41f7cc92bda6b5ff06d6b8382a73e2
Passo 2. Sul nodo master, controlla se il nodo slave si è unito al cluster:
kubectl ottiene nodi
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 contenitore 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.