Ricerca nel sito web

5 motivi in più per eseguire Kubernetes nel tuo homelab Linux


I vantaggi di Kubernetes non sono solo ciò che può fare, ma anche ciò che sapere che può fare per te.

In 5 motivi per eseguire Kubernetes sul tuo laboratorio domestico Raspberry Pi, spiego perché potresti voler utilizzare Kubernetes a casa. Tali ragioni sono relativamente arbitrarie e si concentrano principalmente sui risultati. A parte ciò che Kubernetes può fare, ci sono molti altri buoni motivi per considerare Kubernetes come un importante passo successivo nella tua esperienza di personal computing.

1. È costruito sulle fondamenta di Linux

(Seth Kenlon, CC BY-SA 4.0)

Kubernetes ha una certa reputazione. Più precisamente, ha diverse reputazioni. Per alcuni è una tecnologia misteriosa dal nome impronunciabile. Per altri è un cane da pastore che li aiuta a radunare una sovrabbondanza di contenitori. Per altri è una sorta di sistema operativo per il cloud, un'interfaccia utile per uno sviluppo cloud efficace. E per la maggior parte delle persone, probabilmente, si tratta di software back-end di cui non hanno nemmeno mai sentito parlare. Come potresti aspettarti, è tutto questo e altro ancora.

Non tutti interagiscono con Kubernetes allo stesso modo, ma se hai un'inclinazione per l'amministrazione di sistema, scoprirai che Kubernetes è solo un altro comando Linux.

Ho una maglietta con la scritta "I container sono Linux", che afferma ciò che, riflettendoci, è ovvio. La tecnologia dei contenitori utilizza i cgroup per eseguire immagini di un sistema operativo Linux minimo contenente un'applicazione o un insieme di applicazioni. Dall'inizio alla fine, quando scegli di eseguire un contenitore, scegli di eseguire Linux. Sebbene i comandi Kubernetes vengano eseguiti su molte piattaforme, gestisce i contenitori Linux e quando interagisci con Kubernetes tramite un terminale, si tratta di Linux come al solito: comando, opzioni, argomenti, sintassi. L'esecuzione dei comandi kubeadm o (su OKD o OpenShift) oc sembra familiare perché funzionano come qualsiasi altro comando Linux che sei abituato a eseguire. Ciò che inizia a sembrare estraneo diventa naturale in pochissimo tempo e qualsiasi utente Linux interessato a trascorrere del tempo sul terminale può trovare molte cose divertenti da esplorare in Kubernetes.

2. Flessibile

Kubernetes era un po’ rigido. Supportava, essenzialmente, un runtime di contenitore, in modo così rigoroso, infatti, che fino ad oggi esiste uno spessore codificato per aggirare quell'eredità. Fortunatamente, oggi Kubernetes è diventato abbastanza flessibile da soddisfare le diverse esigenze degli amministratori. Sono disponibili Podman e CRI-O come motori contenitore, entrambi integrabili con systemd. (Volevo dire quello che ho detto quando ti ho detto che sotto c'era tutto Linux.) Puoi scegliere tra filesystem, dimensioni e costruzione del cluster, strumenti di monitoraggio, immagini, linguaggi di programmazione e molto altro. Francamente, alcune persone dicono che c'è troppa scelta, il che di solito è quando sospetto che dopo qualche anno in più, avrà abbastanza scelta per me.

3. Sviluppo personale

I container sono un business fruttuoso e hanno l’abitudine di moltiplicarsi rapidamente. Questo è previsto dalla progettazione. I contenitori sono pensati per ridimensionarsi e si ridimensionano generando cloni. Inserisci i contenitori in gruppi (chiamali pod) e automatizza il modo in cui vengono gestiti i cicli di vita dei pod. Questo è tutto ciò che Kubernetes è realmente e sta cambiando il modo in cui i server possono funzionare.

Potresti non aver bisogno di una raccolta di contenitori infinitamente scalabile e potresti non aver bisogno di nulla che ti aiuti a gestire uno o due contenitori che esegui. Tuttavia, se stai cercando di trarre profitto dalla tua capacità di gestire i pod, allora Kubernetes è esattamente lo strumento che desideri. Poiché sempre più aziende e organizzazioni diventano globali e abbracciano la trasformazione digitale, Kubernetes sta diventando una competenza richiesta nell'IT. Se questo è il percorso che stai seguendo, è un buon investimento impararlo adesso e acquisire familiarità con i problemi comuni e le relative soluzioni.

4. Dare un senso ai contenitori

Potresti ricordare diversi anni fa quando i progetti open source iniziarono a distribuire il loro codice come immagini contenitore. Per molti, in quel momento, era sconcertante. Non molti amministratori capivano veramente cosa fosse un contenitore, o dove fossero i confini del contenitore immaginario, o come entrare nel contenitore, o perché i dati non potevano vivere all'interno del contenitore.

Ora, il mondo IT, compresi gli sviluppatori, è a proprio agio con il concetto di contenitori. La consegna ai contenitori ha senso per un moderno flusso di lavoro CI/CD. Per l'amministratore di sistema, tuttavia, i vantaggi dei contenitori sono duplici: l'installazione è (teoricamente) più semplice che aspettare che una distribuzione aggiorni i suoi pacchetti, e i contenitori scalano. Tuttavia è molto probabile che nessuno di questi vantaggi si manifesti realmente finché non avrai utilizzato Kubernetes. Una volta che inizi a gestire i container con Kubernetes e gli strumenti correlati, i vantaggi della distribuzione continua e la capacità di scalabilità sono probabilmente solo idee di cui hai letto. Integra i contenitori nel modo in cui gestisci i tuoi server e all'improvviso capirai di cosa si tratta.

(Seth Kenlon, CC BY-SA 4.0)

Il più elementare dei test lo rende abbastanza chiaro. Basta avviare il tuo server Web preferito in un contenitore, creare un pod, quindi inviare al tuo server il traffico proveniente da Apache JMeter e osservare i contenitori rispondere.

5. Nativo del cloud

Se ti occupi più di sviluppo che di amministrazione di sistema, Kubernetes fornisce un'eccellente piattaforma per quello che è facilmente diventato l'obiettivo più grande di tutti: le app web. Ormai tutti utilizziamo le app Web, anche se la maggior parte delle persone le considera semplicemente "siti Web". Il Web ha una base di utenti estremamente significativa (per non dire altro), quindi ha senso fornire applicazioni open source tramite il browser. Esistono alcune fantastiche applicazioni open source che vengono eseguite su una rete e molte di queste vengono fornite come contenitori per garantire una facile installazione e un'esperienza utente coerente.

Bonus: è divertente

Ricordi quando eri ancora nuovo a Linux? Per alcune persone potrebbe essere successo decenni fa, mentre per altri è ancora dietro l’angolo. Per tutti noi, però, imparare qualcosa di nuovo può essere una sfida divertente. Se sei arrivato al punto in cui le installazioni Linux sono più un fastidio che una sfida, potresti provare a costruire un cluster Kubernetes nel tuo ripostiglio. Ti reintrodurrà a tutti i tipi di concetti di cui ti eri dimenticato. Hacking su file di configurazione di testo semplice (in particolare YAML), configurazione di interfacce e reti di rete, instradamento del traffico, analisi approfondita dei vantaggi e degli svantaggi di un backend rispetto a un altro, esecuzione di --dry-run dopo --esegui i test a secco, premendo provvisoriamente Invio per scoprire se hai fatto tutto bene. Onestamente, Kubernetes è semplicemente divertente.

Se vuoi costruire la tua infrastruttura, non c'è niente di meglio che costruire il tuo cluster Kubernetes. Ti si aprirà un mondo completamente nuovo. Diventi rapidamente un architetto del cloud, perfezionando il tuo cloud aperto, installando straordinarie applicazioni Web open source in contenitori e magari offrendo anche l'accesso alla tua famiglia e ai tuoi amici.

Diventi la soluzione. È davvero molto soddisfacente.

Esplora Kubernetes

All’inizio Kubernetes potrebbe sembrare fuori portata. È nuovo, un po' spaventoso e, peggio ancora, a quanto pare richiede una nuvola. Tuttavia, ci sono alcuni modi per iniziare.

Innanzitutto, installa Minikube o Minishift. Entrambi ti consentono di eseguire un'istanza locale di Kubernetes sul tuo personal computer. Non è così soddisfacente come creare un cluster e aprirlo ai tuoi amici, ma è un modo efficace e sicuro per acquisire familiarità con il panorama, i comandi e il toolkit.

Una volta che sei pronto per la realtà, leggi l'articolo di Chris Collins Costruisci un cluster Kubernetes con Raspberry Pi. Successivamente, scarica il nostro ebook gratuito Running Kubernetes sul tuo homelab Raspberry Pi. Prima che tu te ne accorga, ti ritroverai a indossare anche le magliette Kubernetes.

Articoli correlati: