Questo sito web utilizza cookie tecnici e, previo Suo consenso, cookie di profilazione, nostri e di terze parti. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsente all'uso dei cookie. Leggi la nostra Cookie Policy per esteso.OK

Container e big data: 5 cose da sapere per utilizzare Kubernetes

pittogramma Zerouno

TechTarget Tech InDepth

Container e big data: 5 cose da sapere per utilizzare Kubernetes

Partizionare e containerizzare è un approccio che risolve molti problemi legati alla gestione di applicazioni e dati ma gli esperti consigliano di non sottovalutare alcuni aspetti. Ad esempio, prima di distribuire sistemi Big Data nei container, è necessario pianificare con attenzione la sicurezza, la gestione delle API, mettendo in contro il potenziamento dell’infrastruttura

24 Lug 2019

di Laura Zanotti - Fonte TechTarget

La containerizzazione è una modalità di partizione dei dati che, utilizzando tipicamente dei domini, aiuta le organizzazioni a gestire informazioni di molteplici entità. Da un paio d’anni il modello di riferimento più adottato dalle aziende è la containerizzazione Docker. Questo in virtù del fatto che Docker risolve e razionalizza la containerizzazione di tutto il mondo open source basato su Linux. In questo articolo analizzeremo il tema dei container e big data.

Container big data in chiave Docker

I container Docker nei cluster di Kubernetes offrono ai team IT un nuovo framework per l’implementazione dei sistemi di big data management. È così che si può rendere più semplice la creazione di un’infrastruttura aggiuntiva per la gestione di tutte le nuove fonti di dati. Pensando all’evoluzione dell’intelligenza artificiale questo tipo di container facilita l’orizzonte delle personalizzazioni associate alla gestione di specifici progetti di data science come, ad esempio, la creazione di modelli di machine learning. Il tutto semplificando il provisioning dell’infrastruttura dei dati quando l’azienda è pronta a mettere in produzione questi modelli avanzati.

La containerizzazione Docker offre un meccanismo di partizione delle applicazioni, dei codici di sviluppo e degli strumenti come Jupyter Notebooks.

“Questa modalità – ha sottolineato Brian Gracely, direttore della strategia di prodotto di Red Hat – abilita la coerenza tra dev, test, staging e produzione, o quando si lavora in ambienti cloud privati o pubblici”.

Open source e containerizzazione: i plus Kubernetes

L’insieme dei container di dati viene generalmente gestita utilizzando Kubernetes, un sistema open source per risolvere i container Linux attraverso ambienti in cloud pubblici, privati o ibridi.

Kubernetes fornisce una piattaforma altamente scalabile per la distribuzione e l’esecuzione di applicazioni di big data, permettendo di eseguire quasi tutti i carichi di lavoro associati ai big data, all’AI o alle applicazioni di machine learning. Questo riduce la necessità di dover mantenere cluster a silos per ogni tipo di framework legato ai big data. Le tecnologie emergenti di Kubernetes, come Operator Framework, semplificano il modo in cui vengono gestiti i grandi framework e le applicazioni dei dati, consentendo operazioni altamente automatizzate.

Con la containerizzazione, tuttavia, l’implementazione di sistemi big data può comportare anche più configurazioni e impostazioni che devono essere capite e gestite. Gli esperti offrono le linee guida della governance in 5 punti per container e big data.

1. Esplorare le community

La maggior parte delle piattaforme di containerizzazione di dati, Kubernetes incluso, sono tecnologie completamente open source per cui hanno comunità grandi e vivaci che le utilizzano e ne garantiscono il pieno supporto. Come prima cosa da fare, gli esperti suggeriscono di controllare le bacheche delle varie community, i siti GitHub, i canali Slack e i blog, in modo da verificare se ciò che si intende realizzare possa essere già stato fatto. Capitalizzare l’esperienza delle community, infatti, è un grosso valore aggiunto. Progetti come Radanalytics, Kubeflow, TensorFlow, PyTorch, JupyterHub e OperatorHub sono davvero utili sia che si stia partendo con un progetto oppure che si stiano cercando integrazioni esistenti per rendere più efficace il lavoro in esecuzione. Ci sono anche diversi e ottimi tutorial gratuiti online su OpenShift, Kubernetes e l’utilizzo dei container. È importante, infatti, operare un confronto con quanto fatto da altre aziende che hanno implementato la containerizzazione per la gestione dei Big Data. Il progetto ChRIS del Massachusetts Open Cloud, ad esempio, sta risolvendo i problemi della sanità utilizzando un grande volume e un’ampia varietà di fonti di dati. UPS, invece, sta eseguendo analisi a livello edge relative alle consegne effettuate dai propri camion. ACI Worldwide, ancora, utilizza la containerizzazione per fare analisi legate al rilevamento delle frodi con le carte di credito.

2. Pianificare la sicurezza

La containerizzazione è un approccio nuovo e, a dispetto della sua rapida adozione, presuppone comunque diversi punti di attenzione. Gli osservatori, ad esempio, segnalano un potenziale di nuove vulnerabilità alla sicurezza. Le organizzazioni devono formare le persone non solo a realizzare e mettere in produzione i container di dati, ma anche a identificare le possibili falle alla protezione aziendale. Tra le linee guida di quando si implementa una app associata ai big data in un container rientra il monitoraggio, che deve essere parte integrante dello sviluppo. È fondamentale identificare e attenuare i problemi all’interno dei container man mano che si verificano, in quanto una violazione potrebbe significare l’accesso non autorizzato a un’app, una violazione dei dati sensibili o vulnerabilità dei sistemi core. Il modo migliore per garantire la sicurezza in base alla progettazione (Security by design) consiste nell’utilizzare la rete di applicazioni che emerge in modo naturale quando un’azienda partiziona applicazioni, dati e dispositivi tramite API standardizzate in modo da renderli collegabili e riutilizzabili. Queste API possono essere distribuite in contenitori di dati, insieme o separatamente, a seconda delle esigenze aziendali. Quando sono collegati a una rete di applicazioni, i container devono essere progettati in modo da mostrare esattamente quali applicazioni di dati potrebbe essere compromessa, cosicché da poterli disattivare ​​in caso di violazione.

3. Pianificare le API legate alla containerizzazione

Con la containerizzazione, gli utenti possono partizionare le loro applicazioni big data con tutti gli strumenti e le risorse di cui hanno bisogno. L’insieme dei microservizi utilizzati possono essere distribuiti all’interno del container di dati, creando un ecosistema isolato che non può essere influenzato dai processi a valle. Una volta creati, questo tipo di container può essere inserito in una rete di applicazioni API e spostati su qualsiasi cloud o centro dati. La containerizzazione dei microservizi isola ulteriormente un’applicazione big data da un singolo punto di errore, fornendo dei punti logici di accesso ai diversi aspetti funzionali.

4. Integrare i big data e l’infrastruttura delle app

La distribuzione delle app in relazione ai big data su container offre numerosi vantaggi alle organizzazioni che desiderano aumentare isolamento, flessibilità e portabilità. Kubernetes, ad esempio, è la soluzione ideale per avere una singola interfaccia unificata per gli ambienti clusterizzati. Inoltre, dicono gli esperti, eseguendo un cluster Kubernetes per carichi di lavoro che non hanno grandi dimensioni e non sono a pieno utilizzo permette a team IT e agli sviluppatori di dati di poter attingere a quei carichi di lavoro inutilizzati per aumentare l’efficienza complessiva delle risorse all’interno dell’organizzazione.

Chi si occupa di programmazione potrà esplorare le migliori pratiche per la creazione di configurazioni personalizzate a livello di sistema operativo, in modo da facilitare il supporto dei container di applicazioni e dati sulla stessa infrastruttura. Sarà possibile containerizzare le librerie per le applicazioni in modo da poter fare aggiornamenti più mirati o migrare dei particolari carichi di lavoro.

5. Prestare attenzione al potenziamento delle infrastrutture

Come avvertono gli esperti, i grandi sistemi di dati che sono containerizzati e utilizzano Kubernetes non risolvono magicamente tutti i problemi. Chi si occupa di consulenza segnala il caso in cui i team che si occupano dei dati stiano utilizzando YARN, ricordando che l’aggiunta di Kubernetes per container di big data rappresenta un altro ambiente cluster tutto da capire e da gestire. I registri di controllo, il networking delle applicazioni e i dati stateful distribuiti diventano ulteriori aree su cui i team devono intervenire. Per questo, prima di implementare sistemi di Big Data attraverso la containerizzazione, è necessario mettere in conto l’espansione delle infrastrutture da progettare e presidiare.

New call-to-action

Z

Laura Zanotti - Fonte TechTarget

Giornalista

Ha iniziato a lavorare come technical writer e giornalista negli anni '80, collaborando con tutte le nascenti riviste di informatica e Telco. In oltre 30 anni di attività ha intervistato centinaia di Cio, Ceo e manager, raccontando le innovazioni, i problemi e le strategie vincenti delle imprese nazionali e multinazionali alle prese con la progressiva convergenza tra mondo analogico e digitale. E ancora oggi continua a farlo...

Argomenti trattati

Approfondimenti

S
Software Container
Tech InDepth
Container e big data: 5 cose da sapere per utilizzare Kubernetes

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

    LinkedIn

    Twitter

    Whatsapp

    Facebook

    Link

    Articolo 1 di 4