Slurm è un modo semplice per immergersi nel mondo di Kubernetes

Slurm è un modo semplice per immergersi nel mondo di Kubernetes

Ad aprile mi hanno contattato gli organizzatori di Slurm — corsi su Kubernetes — per testare e condividere le mie impressioni:

Dmitriy, Slurm è un workshop intensivo di tre giorni su Kubernetes, un evento formativo molto denso. Difficilmente potrai scrivere di esso se ti limiti a partecipare a due ore della prima lezione. Sei pronto a partecipare attivamente?

Prima del workshop di Slurm, è necessario completare corsi online preparatori su Ansible, Docker e Ceph.
Dopo, dovrai prendere il codice e le istruzioni dettagliate dai repository, seguendo riga per riga durante le lezioni insieme ai relatori.

Confermo che sono pronto a partecipare attivamente a entrambi i corsi.

E dopo ciò, ci sarà un lavoro intenso per 6 giorni (Slurm base e MegaSlurm) in aula, piena zeppa di sistemisti.

Fontane

Qual è la difficoltà nello sviluppo di servizi? Ad esempio, l'azienda richiede di effettuare un invio promozionale di push! A prima vista, sembra che ci sia uno sviluppatore full stack con un sito e sviluppatori mobili con un'app. Un compito che dovrebbe richiedere 15 minuti. Diciamo all'azienda che ci impiegheremo un giorno!

E qui si scopre che non sono mai stati inviati push. Non è stata effettuata alcuna connessione preventivamente a una piattaforma esterna o self-hosted per l'invio di push. E questa non è più una questione di 15 minuti o un'ora; bene che ci riescano in una settimana. È iniziata la magia e il mistero. Tutto è confuso, strano e imprevedibile.

Lo sviluppo è diventato completamente imprevedibile solo per un motivo: non hanno tenuto conto che oltre allo strato delle esigenze aziendali c'è anche uno strato infrastrutturale.

Se lo strato delle esigenze aziendali è una fontana che spruzza una miriade di compiti, verifiche di ipotesi e gadget visivi, l'infrastruttura è come le sue tubazioni. Qui è necessario un orizzonte di pianificazione di almeno sei mesi avanti.

Tubazioni per fontane

A causa della complessità e della necessità di prestare molta attenzione ai dettagli, lo sviluppo delle 'tubazioni' è affidato a persone appositamente formate: i DevOps, che sono emersi dai più esperti amministratori e sviluppatori. Il loro lavoro è sistematico e rigorosamente sequenziale. Sono simili a costruttori di ponti: qualsiasi errore porta a trasformare un semplice compito aziendale di 15 minuti in una ripianificazione dell'infrastruttura che richiede giorni e denaro.

Slërm è attualmente l'unico corso in Russia (per quanto ne so) che insegna a costruire infrastrutture in modo standardizzato, consentendo di mitigare gli errori di pianificazione. Ho seguito corsi su Kubernetes e a settembre parteciperò a un nuovo corso su DevOps.

Slërm è stato creato dalla società Southbridge, un outsourcer di amministrazione che ha realizzato decine di fontane di forme diverse. Southbridge è un KTP e KCSP certificato (membro CNCF, Linux Foundation).

Cosa si insegna specificamente nei corsi su Kubernetes?

Come organizzare tutto ciò che hanno fatto gli sviluppatori affinché non crolli?

  • Lavorare con Kubespray
  • Installazione di componenti aggiuntivi
  • Testing e troubleshooting del cluster

Come autorizzare gli utenti (sviluppatori) nel cluster per lavorare con esso?

  • LDAP (Nginx + Python)
  • OIDC (Dex + Gangway)

Come proteggersi a livello di rete dagli hacker?

  • Introduzione a CNI
  • Politica di Sicurezza della Rete

E in generale, la sicurezza!

  • Politica di Sicurezza dei Pod
  • Budget per l'Interruzione dei Pod

Non nascondiamo nulla: spieghiamo nel dettaglio cosa c'è sotto il cofano

  • Struttura del controller
  • Operatori e CRD

Applicazioni Stateful nel cluster

  • Avvio di un cluster DB con PostgreSQL
  • Avvio di un cluster RabbitMQ

Come non conservare numerosi password e configurazioni in chiaro

  • Gestione dei segreti in Kubernetes
  • Vault

Scalabilità orizzontale con un clic

  • Teoria
  • Pratica

Backup

  • Backup e ripristino del cluster utilizzando Heptio Velero (ex Ark) ed etcd

Deploy facile in ambienti di test, staging e produzione

  • Lint
  • Strumenti di templating e deployment
  • Strategie di deploy

C'è anche un corso avanzato, dove è tutto hardcore. Tuttavia, dopo il corso base è già possibile costruire il proprio ambiente.

Dopo il Slerma, i partecipanti hanno ricevuto dei materiali — una registrazione video di tutti i giorni, istruzioni dettagliate per ogni punto insieme a ricette precise, le cui squadre possono essere semplicemente copiate e incollate per assemblare una soluzione di backup o una soluzione per ambienti di test o altro.

Dunque, è tutto così semplice. Sì. Sono venuto per alcuni giorni, mi sono immerso nell'argomento, ho ottenuto ricette precise e sono tornato al lavoro per costruire l'infrastruttura del progetto — semplice, corretto e, soprattutto, prevedibile nei tempi. La magia e il mistero sono finiti, resta solo da lavorare.

Quali sono i risultati finali?

Alla fine della corsa, per alcuni giorni, si ha la sensazione che siano quasi i DevOps stessi a costruire progetti seri. Ed è sorprendente come tutto il materiale studiato sia chiaro; lo applico ogni giorno sui miei server.

Fortunatamente, il pubblico si è spostato nel gruppo Telegram, dove anche dopo molte settimane c'è ancora una certa attività.

E ora?

Gli organizzatori stanno preparando un Slurm DevOps per l'autunno e io mi sto già preparando. Scriverò presto a riguardo nel mio canale per CTO su Telegram @ctorecords.

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster