E4 Container Platform
Kubernetes Cluster ad alte prestazioni
I container consentono di sviluppare e distribuire applicazioni complesse più rapidamente e, soprattutto, garantiscono un utilizzo efficiente dell’infrastruttura sottostante: una combinazione unica di vantaggi
Perché svolgere operazioni in modalità manuale con la certezza che qualcosa andrà storto?
Quando si tratta di eseguire applicazioni multi-container in un ambiente di produzione, la situazione si complica: centinaia o migliaia di container e diversi tipi di applicazioni. Kaptain, la E4 Container Platform basata su Kubernetes, è il direttore d’orchestra che serve alla tua infrastruttura
Perché Kaptain?
“Un capitano di mare è un marinaio con licenza di alto grado che detiene il comando e la responsabilità finali di una nave.
Il capitano è responsabile del funzionamento sicuro ed efficiente della nave e delle persone e del carico a bordo”
Wikipedia – Sea Captain
Le applicazioni di nuova generazione sono disegnate come architetture a micro-servizi ed implementate attraverso un insieme di container, ciascuno dei quali assolve ad una specifica funzione. Il cluster Kubernetes è oggi l’infrastruttura standard per ospitare applicazioni multi container, perché garantisce una distribuzione su più server efficiente ed in alta affidabilità dei diversi container ed offre funzionalità per gestire con semplicità le operazioni di deployment, di scheduling e di load balancing, anche negli scenari applicativi più complessi.
Kaptain è un cluster Kubernetes chiavi in mano, disegnato per garantire semplicità d’uso ed alte prestazioni: la sua configurazione iniziale integra, ad esempio, un servizio di block storage distribuito per la data persistency dei container ed una potente interfaccia web che, tra le altre cose, dà accesso ad un articolato catalogo di applicazioni open-source, pronte all’uso. Integrare Kaptain nella tua infrastruttura significa rendere produttivi i tuoi DevOps fin dal primo giorno!
VELOCE
Kaptain è un cluster Kubernetes bare-metal, disegnato da esperti HPC per fornire ai container un ambiente ad alte prestazioni. Dischi all-flash, networking a bassa latenza (RDMA) e supporto GPU sono la chiave per garantire ai workload containerizzati sia un accesso veloce ai dati, che i minori tempi di elaborazione possibili
INTUITIVO
Kaptain è dotato di una potente interfaccia grafica che semplifica le operazioni più complesse. L’utente finale accede ad un ricco catalogo di applicazioni open-source, da installare con un semplice click del mouse. Con Kaptain non è più necessario un dottorato in “Kubernetes-ologia” per essere un DevOps produttivo
INTEGRATO
La E4 Container Platform è progettata per essere facilmente integrata con i tuoi servizi di data center. Kaptain può utilizzare i sistemi di autenticazione pre-esistenti (AD, LDAP, openID) ed allocare volumi persistenti per i container sulle più diffuse tecnologie di storage di rete (iSCSI, CephRDB, NFS, GlusterFS, …)
MODERNO
Kaptain è un’infrastruttura ad alte prestazioni disegnata per ospitare piattaforme di analisi dati su larga scala come Apache Spark, KubeFlow, Dask e Ray. Con l’integrazione di MinIO (storage S3 ad alte prestazioni) e di un workflow manager (AirFlow, Prefect, …), otterrai un sistema potente e completo per la Cloud Native Data Science.
Dall’introduzione di Docker® nel 2013, la tecnologia dei container si è imposta a tutti i livelli, per l’efficienza che garantisce e i vantaggi in termini di costi che offre. Il grande successo della containerizzazione ha portato alla rapida diffusione di piattaforme per la gestione dei container, che consentono di gestire le complessità tipiche del ciclo di vita di applicazioni e sistemi multi-container.
Oggi Kubernetes è la soluzione principe per l’orchestrazione dei container su larga scala e Kaptain è un cluster Kubernetes standard, progettato per ospitare workload che richiedono alte prestazioni e configurato per essere semplice da usare.
Scopri i dettagli
La struttura di Kaptain
Un cluster Kubernetes è un’insieme di server configurati per eseguire applicazioni e servizi containerizzati; il core dell’architettura è la cosiddetta ControlPlane (l’insieme dei servizi API Server, Controller Manager, Scheduler ed Etcd) che è preposta alla gestione ed all’orchestrazione dei container e fornisce l’interfaccia (API) verso l’esterno del cluster. La più semplice configurazione di una infrastruttura Kubernetes prevede un Master Node, che ospita la ControlPlane, ed un insieme di Worker Node, dedicati all’esecuzione dei workload utente containerizzati. I server dell’infrastruttura possono essere interconnessi sia attraverso una Rete Interna, dedicata alla comunicazione tra la ControlPlane ed i Worker Node, che tramite una Rete Esterna, dedicata all’accesso ad applicazioni ed servizi in esecuzione sui Worker Node.

Rispetto al setup di base di Kubernetes, la versione standard di Kaptain prevede la configurazione in alta affidabilità della ControlPlane, integra un servizio di distributed block storage ad alte prestazioni necessario per fornire la persistenza dei dati ai container e prevede un’ulteriore Network ad alte prestazioni (RDMA – alta banda e bassa latenza), sulla quale è configurato il Software Defined Network di Kubernetes.
L’alta affidabilità verso l’interno del Cluster è ottenuta attraverso la “replica” dei servizi della ControlPlane su 3 Master Node distinti; su tali server sono configurati anche HA-Proxy e Keepalived, affinché l’accesso alla Kubernetes API sia bilanciato ed in alta affidabilità, anche dall’esterno del Cluster.
La funzionalità di distributed block storage è integrata attraverso il deployment e la configurazione di Longhorn, una soluzione di block storage distribuito cloud native sviluppata da Rancher e supportata dalla Cloud Native Computing Foundation. Tutti i Worker Node di Kaptain (o parte di essi) sono equipaggiati da un set di dischi all-flash dedicati; i servizi di Longhorn aggregano tali dischi nella StorageClass di default del Cluster, alla quale i workload dell’utente possono richiedere Volumi Persistenti da “montare” sui container in esecuzione. Longhorn utilizza la volume replica su più Worker Node per garantirne la ridondanza su sistemi fisici diversi. Longhorn prevede un livello di replica di default configurabile, che può essere modificato dall’utente al momento della creazione del singolo volume, in funzione di specifiche necessità. Naturalmente Kaptain utilizza la rete interno ad alte prestazioni sia per l’accesso ai Volumi Persistenti che per le operazioni di replica ad essi connesse.
Su richiesta, le funzionalità di block storage distribuito cloud native possono essere implementate anche attraverso Rook-Ceph.
Le configurazioni di Kaptain
Kaptain è disponibile in 3 configurazioni: Iper-Convergente, Convergente e Distribuita.
La configurazione Iper Convergente prevede complessivamente 3 server, ciascuno dei quali svolge sia il ruolo di Master Node che di Worker Node del Cluster. In questa configurazione ognuno dei 3 server dell’infrastruttura ospita anche i servizi di block storage distribuito, cioè svolge anche il ruolo di Storage Node. E’ la minima configurazione in grado di garantire alta affidabilità all’infrastruttura.
La Configurazione Convergente prevede 3 o 5 server dedicati al ruolo di Master Node ed i restanti che assolvono contemporaneamente il ruolo di Worker Node e Storage Node. E’ la configurazione ideale per le organizzazioni che prevedono una crescita contemporanea nel tempo delle capacità di calcolo e storage loro necessarie.
La Configurazione Distribuita prevede 3 o 5 server dedicati al ruolo di Master Node ed i restanti server che sono dedicati al ruolo di Worker Node oppure al ruolo di Storage Node. E’ la configurazione di massime prestazioni, perché, oltre a prevedere server dedicati alla ControlPlane, consente di implementare il distributed block storage cloud native sul numero di Storage Node ideale per ottimizzare le prestazioni in funzione dello spazio disco netto necessario e di configurare i Worker Node rimanenti esclusivamente in base ai requisiti dei workload utente e delle relative capacità di scaling orizzontale.
Le funzionalità uniche di Kaptain: cosa lo distingue dalla concorrenza!
Kaptain è un cluster Kubernetes pronto all’uso, ad alte prestazioni, cioè progettato per ospitare i workload più onerosi in termini di risorse di calcolo e storage e configurato per essere facile da usare.
High Performance Platform: E4 significa “When Performance Matters” e questo motto ossessiona talmente i nostri ingegneri, che, quando hanno disegnato Kaptain, avevano in mente principalmente i workload containerizzati più onerosi in termini di risorse di calcolo e di storage. Di qui un disegno che include componenti tipici delle infrastrutture HPC (dischi all-flash, GPU e networking RDMA) per ottenere una soluzione in grado ospitare, ad esempio, le piattaforme distribuite per l’analisi di Big Data più onerose in termini di risorse, garantendo all’utente finale il supporto multi GPU per i workload che le utilizzano ed un ambiente per cui l’acceso ai dati da elaborare non rappresenti mai il collo di bottiglia.
Easy & powerful UI: Kaptain è facile da usare sopratutto grazie all’integrazione di Rancher Server, un servizio configurato in alta affidabilità che fornisce una potente interfaccia grafica accessibile da web, adatta sia all’amministratore, che, grazie al componente Cluster Manager, dispone di uno strumento che semplifica le operazioni più complesse necessarie al management del infrastruttura, che all’utente finale, che può utilizzare il Cluster Explorer per gestire i propri workload containerizzati ed accedere ad un ricco catalogo di applicazioni open-source, da installare con un semplice click del mouse.
Cloud Native Storage preconfigurato: oltre alla possibilità di utilizzare risorse di storage esterne (NFS, Gluster, Ceph, ..), in ogni configurazione Kaptain ospita una soluzione di block storage distribuito, per il deployment, in self provisioning, di Volumi Persistenti da “associare” ai workload containerizzati. Grazie all’utilizzo di tecnologie all-flash per i dischi di back-end, all’utilizzo del network interno a bassa latenza ed alta banda per l’accesso e le operazioni di replica, la Storage Class di default permette di configurare Volumi che garantiscono affidabilità e performance nell’accesso ai dati persistenti.
Cloud Native Data Science Infrastructure: Kaptain è stato progettato per fornire al cliente un’infrastruttura ad alte prestazioni per ospitare le più moderne piattaforme di analisi dati distribuita. Scegliere Kaptain come infrastruttura abilitante per il Big Data Analytics significa, ad esempio, evitare di dotarsi di un cluster monolitico per l’ecosistema Apache Hadoop/Spark, ma piuttosto disporre di un’infrastruttura flessibile, sulla quale un cluster Apache Spark containerizzato possa facilmente convivere con soluzioni di seconda generazione come KubeFlow, Dask o Ray. Kaptain è una soluzione in grado di seguire l’evoluzione nel tempo delle tue applicazioni data-driven, senza alcun compromesso in termini di usabilità e performance: una sola infrastruttura ad alte prestazioni per mettere on-line un object storage S3 ad alte prestazioni, ospitare piattaforme distribuite per ETL di enormi quantità di dati, addestrare complessi Data Model basati su algoritmi di Machine e Deep Learning, grazie al supporto del GPU computing, e rendere accessibili gli “attrezzi del mestiere” (workflow manager, database sql e no-sql, tool per la visualizzazione avanzata e per la CI/CD, …) che aumentano la produttività dei tuoi Data Scientist e Data Engineer.
Kaptain 1.1: specifiche tecniche
Kubernetes: disponibile nelle versioni 1.17, 1.18 o 1.19 e configurato attraverso Rancher Kubernetes Engine (RKE) 1.2
Cloud Native Distributed Block Storage: Longhorn 1.1 o, in alternativa, Rook-Ceph 1.5
Web based Cluster Manager/Explorer : Rancher Server 2.5
Bare Metal Load Balancer: MetalLB 0.9.5
Application Catalog: based on Helm3 package manager
Supported Client Apps: kubectl, rancherCLI e LENS
E4 CONTAINER PLATFORM