Panoramica
rkt è un motore per container applicativi adatto ai moderni ambienti di produzione cloud native. Si caratterizza per un approccio pod native, un ambiente di esecuzione integrabile e una superficie ben definita che facilita l'integrazione con altri sistemi.
L'unità di esecuzione centrale di rkt è il pod, un gruppo di una o più applicazioni eseguite in un contesto condiviso (i pod di rkt sono l'equivalente dei pod nel sistema di orchestrazione Kubernetes). rkt consente agli utenti di applicare varie configurazioni (ad esempio i parametri di isolamento) sia a livello di pod che a quello più granulare delle singole applicazioni. Grazie all'architettura di rkt ciascun pod viene eseguito direttamente nel classico modello di processo Unix (cioè senza daemon centrale) e in un ambiente isolato e autosufficiente. rkt implementa la specifica App Container (appc), un formato di container standard, open source e moderno, ma è in grado di eseguire anche altre immagini dei container, come quelle create con Docker.
I vantaggi di rkt
Componibile
Coerente alla filosofia degli strumenti Unix, rkt è un file binario unico che si integra a pipeline DevOps complesse, script e sistemi init. I container si inseriscono nella gerarchia PID e si possono gestire con utility standard.
Isolamento personalizzabile
Grazie all'architettura di esecuzione integrabile di rkt è possibile utilizzare i container come oggetti di deployment standard in tutta sicurezza e scegliere il livello adeguato di isolamento (detto "fase").
Pod integrati
L'unità più piccola di rkt è il pod, un gruppo di container correlati che condividono le risorse. I pod agevolano la stratificazione dei componenti correlati e si associano direttamente ai concetti di gestione del cluster.
La storia di rkt
Dal dicembre 2014, anno della sua pubblicazione ad opera di CoreOS, il progetto rkt è maturato considerevolmente e ha acquisito popolarità. È disponibile oggi per la maggior parte delle distribuzioni Linux® e ciascuna versione offre agli utenti pacchetti rpm/deb autosufficienti. Questi pacchetti sono disponibili anche come componenti del repository Kubernetes per consentire il test dell'integrazione rkt + Kubernetes. Inoltre, rkt è un elemento fondamentale per l'esecuzione di Kubernetes da parte di Google Container Image e CoreOS Container Linux. Red Hat ha donato il progetto alla Cloud Native Computing Foundation (CNCF).
Il progetto rkt si trasferisce alla Cloud Native Computing Foundation (CNCF).