Connect with us

Linux

Come Installare un Kubernetes Cluster su CentOS 7

Kubernetes, spesso abbreviato come K8s, è una piattaforma open-source utilizzata per automatizzare il deployment, la scalabilità e la gestione delle applicazioni containerizzate. È diventato lo standard de facto per il deployment e la gestione di applicazioni in ambienti cloud, on-premise e ibridi. In questa guida, esploreremo come installare un cluster Kubernetes su CentOS 7, passo dopo passo.

Requisiti di Sistema

Per seguire questa guida, avrai bisogno di almeno due macchine CentOS 7:

  • Master Node: La macchina che gestisce e controlla il cluster Kubernetes.
  • Worker Node(s): Le macchine che eseguono le applicazioni containerizzate gestite dal master node.

Assicurati che ogni macchina soddisfi i seguenti requisiti minimi:

  • 2 vCPU
  • 2 GB di RAM
  • Rete tra i nodi

Preparazione dell’Ambiente

  1. Configurazione dell’Hostname: Imposta un hostname univoco per ogni nodo.
    hostnamectl set-hostname master-node
    hostnamectl set-hostname worker-node-1
  2. Configura il File Hosts: Aggiungi un’entrata nel file /etc/hosts su ogni macchina per garantire che tutti i nodi possano comunicare tra loro usando gli hostname.
    192.168.1.100 master-node
    192.168.1.101 worker-node-1
  3. Disabilita SELinux: Kubernetes non funziona correttamente con SELinux abilitato.
    setenforce 0
    sed -i --follow-symlinks 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/sysconfig/selinux
  4. Disabilita il Firewall: Per semplificare la configurazione, disabilita il firewall su tutti i nodi.
    systemctl stop firewalld
    systemctl disable firewalld
  5. Abilita il Modulo br_netfilter: Questo modulo è necessario per il corretto funzionamento della rete.
    modprobe br_netfilter
    echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables

Installazione di Docker

Kubernetes utilizza Docker come runtime dei container di default. Installa Docker su tutti i nodi.

  1. Aggiungi il Repository Docker:
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  2. Installa Docker:
    yum install docker-ce docker-ce-cli containerd.io -y
  3. Avvia e Abilita Docker:
    systemctl start docker
    systemctl enable docker

Installazione di Kubernetes

Devi installare i componenti di Kubernetes, inclusi kubeadm, kubelet e kubectl, su tutti i nodi.

  1. Aggiungi il Repository Kubernetes: Crea un file chiamato /etc/yum.repos.d/kubernetes.repo e aggiungi le seguenti informazioni:
    [kubernetes]
    name=Kubernetes
    baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
    enabled=1
    gpgcheck=1
    repo_gpgcheck=1
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
  2. Installa i Componenti Kubernetes:
    yum install -y kubelet kubeadm kubectl
    systemctl enable kubelet
    systemctl start kubelet

Inizializzazione del Cluster

Sull’master node, inizializza il cluster Kubernetes.

  1. Inizializza il Kubernetes Cluster:
    kubeadm init --pod-network-cidr=10.244.0.0/16

    La flag --pod-network-cidr è richiesta per la maggior parte dei plugin di rete. Qui utilizziamo la subnet utilizzata da Flannel come esempio.

  2. Configura kubectl: Segui le istruzioni a schermo per configurare kubectl usando il tuo utente non root.
    mkdir -p $HOME/.kube
    cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    chown $(id -u):$(id -g) $HOME/.kube/config
  3. Installa il Plugin di Rete: Installa un plugin di rete sul cluster, come Flannel.
    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Aggiunta dei Worker Nodes

Per aggiungere un worker node al cluster, usa il comando kubeadm join fornito alla fine dell’inizializzazione del cluster sul master node. Dovrai eseguire questo comando su ogni worker node.

Verifica del Cluster

Per verificare che il cluster sia stato configurato correttamente, esegui il seguente comando sul master node:

kubectl get nodes

Dovresti vedere tutti i nodi elencati con lo stato Ready.

Conclusione

Hai appena completato l’installazione di un cluster Kubernetes su CentOS 7. Ora hai una solida base su cui puoi iniziare a distribuire le tue applicazioni containerizzate. Ricorda che la gestione di un cluster Kubernetes può diventare complessa, quindi è importante continuare ad apprendere e sperimentare con Kubernetes per sfruttare appieno le sue capacità.

Click to comment

Leave a Reply

Esegui l'accesso per Commentare

Di tendenza

Close Popup
Questo sito utilizza i cookie per migliorare servizi ed esperienza dei lettori. Se decidi di continuare la navigazione senza blocchi premi su Accetto, oppure continua tranquillamente la navigazione, nessun dato sulla tua navigazione verrà raccolto.
Close Popup
Privacy Settings saved!
Impostazioni

Quando visiti un sito Web, esso può archiviare o recuperare informazioni sul tuo browser, principalmente sotto forma di cookies. Controlla qui i tuoi servizi di cookie personali.

Questi cookie sono necessari per il funzionamento del sito Web e non possono essere disattivati nei nostri sistemi.

Cookie tecnici
Per utilizzare questo sito web usiamo i seguenti cookie tecnici necessari:
  • wordpress_test_cookie
  • wordpress_logged_in_
  • wordpress_sec
  • swpm_session

Google Adsense
Usiamo la pubblicità di Google solo per mantenere attivi i nostro sito. Con ip anonimizzati.

Rifiuta tutti i Servizi
Save
Accetta tutti i Servizi