Il Software Defined non è solo Network, e non è il tramonto dell’hardware, ma un nuovo modo per gestire le infrastrutture, governate con il paradigma dell’automatizzazione definita, appunto, dal software. Software Defined è, al pari di tanti termini cavalcati dai vendor di tecnologie in ottica marketing, molto spesso abusato come definizione, se non addirittura utilizzato impropriamente a descrivere tecnologie che con il Software Defined non hanno nulla a che fare.
Con l’uniformarsi complessivo dell’hardware, infatti, a parità di configurazione, ciò che distingue un prodotto dall’hardware è la dotazione software che tale hardware riesce a supportare, le cui funzionalità riescono a evidenziare la differenza rispetto alla concorrenza. Da qui, la “forza” del Software Defined è facilmente percepibile come messaggio, e in quanto tale è stato adottato dagli uffici marketing.
![software defined network](https://img.techcompany360.it/wp-content/uploads/2019/02/software-defined-network-640x360.jpg)
Indice degli argomenti
Da Virtualizzazione a Software Defined: focus su flessibilità e automatizzazione
Il termine Software Defined sostituisce, di fatto, i precedentemente usati (e anch’essi ampiamente abusati) Virtualizzazione o Cloud, ed è stato inizialmente utilizzato proprio da vendor di virtualizzazione (come VMware) a indicare la propria vision di un data center interamente governato dal software e, da qui, il termine deve essere piaciuto molto al mercato, evocativo di innovazione in generale tanto da essere associato a prodotti e soluzioni networking, storage e cloud.
Ma il termine Software Defined comprende una nuova classe di prodotti dove il software ha la priorità rispetto all’hardware nell’erogazione delle soluzioni, al contrario che in passato, dove le funzionalità infrastrutturali del data center crescevano con il crescere dell’hardware, essendovi direttamente legato, mentre il software aveva un ruolo marginale e di supporto. Un nuovo modo quindi di intendere il potenziamento e la gestione delle performance a cui via via si sono associati vari vendor. A torto o a ragione che fossero.
Analisti di Tech Target definiscono il Software Defined come “la capacità di rendere astratte le capacità di gestione e di amministrazione della tecnologia”, automatizzando la flessibilità (della rete, dei server, dello storage, dell’infrastruttura, ecc) in base alla reale necessità del momento.
Software Defined: il software plasma dimensioni e funzionalità dell’hardware
I data center sono evoluti da stanzoni pieni di hardware a una collezione di server che ospitano hypervisor, con il software che, in definitiva, consente alle aziende di sfruttarne i vantaggi in termini di agilità, scalabilità e ridondanza. Obiettivo di una vera infrastruttura che sia Software Defined è arrivare ad avere l’infrastruttura hardware come vera e propria commodity, con il software che ne aumenta funzionalità e dimensioni.
SDX e affini: le tante declinazioni del Software Defined
Con Software Defined, si intende, in linea generale, un prodotto dotato di un mix di caratteristiche, cha vanno dall’astrazione di risorse fisiche, all’automazione delle azioni e funzionalità e dalla possibilità di effettuare in forma predittiva configurazioni o controlli dei workload, affrancandoli, di fatto, dall’intervento dell’amministratore di sistema. Varie, dicevamo, le declinazioni che vengono date al Software Defined. Un elenco a cui è ancora presto per dare una completezza, aperto a nuove interpretazioni, al punto che più genericamente, si parla di SDX (Software Defined Everything), acronimo che lascia incognita l’ultima lettera, in previsione di applicazioni future.
Se l’impiego del software driven comporta vantaggi in termini funzionali ed economici nel network, ovviamente si cerca di declinare lo stesso principio anche in altri ambiti, dallo Storage, ai Server o al Data Center nel suo complesso, con tendenza a rendere gestibile da software, in maniera automatica, qualsiasi componente dell’infrastruttura. Un modello che richiede di confrontarsi con nuovi interlocutori rispetto al passato. Non sono più, infatti, i responsabili storage, network, ecc, a essere coinvolti nel disegno di queste infrastrutture, ma nel software defined (soprattutto in quello di tipo completo, come in aziende quali Airbnb o Uber, per esempio, ma anche nel caso di aziende tradizionali) entrano in gioco i team di sviluppo software, o i cloud architect.
Software Defined Data Center (SDDC): un trend in crescita
Il Software Defined Data Center è una modalità di gestione di data storage che prevede la virtualizzazione delle varie componenti infrastrutturali, server, network, storage, CPU e sicurezza, e sono rese disponibili as a service. Un ambiente dove sviluppo, operatività, erogazione e configurazione sono gestiti direttamente da software e svincolati dall’hardware.
Si tratta di una modalità che sta vedendo un crescente interesse da parte delle aziende: Gartner stima che entro il 2021 il mercato del software defined data center raggiungerà gli 83,2 miliardi di dollari, seguendo, a partire dal 2016, una crescita media annua del 27%.
Il concetto di SDDC va oltre alla dotazione minima infrastrutturale per l’esecuzione dei workload, consentendo anche modelli predittivi dei potenziali rischi, come il flusso complessivo all’interno del data center, i potenziali cali o interruzioni di potenza o energia e persino i rischi fisici dovuti a eventi naturali, fortuiti, deliberati o terroristici. Per salvaguardare la salute del business, anche la gestione dell’energia e del raffreddamento delle macchine in certi periodi dell’anno o nell’arco del giorno stesso, dovrebbero essere presi in considerazione, movimentando i workload in maniera dinamica in modo da ottimizzare non solo le performance, ma anche i costi operativi di business.
Software Defined Storage (SDS): gestione dinamica dei dati
Il Software Defined Storage è un programma software che è in grado di gestire le risorse di storage indipendentemente dallo strato infrastrutturale hardware su cui si appoggia. Consente un bilanciamento in entrata e in uscita all’interno di un sistema storage o tra diversi sistemi o, ancora, sistemi storage iperconvergenti, che rende possibile pertanto un bilanciamento automatico e predittivo nell’uso delle risorse in base alle richieste da parte del tipo di workload, per peso/dimensioni o impiego di tempo.
Al contrario dei sistemi monolitici SAN e NAS, le soluzioni di software defined storage consento agli utenti di upgradare il software in maniera indipendente dall’hardware, oltre a poter aggregare risorse storage, scalando il sistema attraverso cluster di server, gestire e condividere spazi e servizi storage attraverso una unica interfaccia, dalla quale controllare le funzionalità storage.
Software defined Storage: strada obbligata nell’era dei Big Data
Tra i fattori che hanno spinto molte aziende all’utilizzo del Software Defined Storage, vi è l’enorme crescita negli ultimi tempi dei dati destrutturati, i quali richiederebbero un incredibile aumento di architetture scale out per lo storage, la disponibilità sul mercato di server high performance con processori multicore, di una cultura ormai generalmente propensa al concetto di virtualizzazione di server, pc, applicazioni e network e, ovviamente, la popolarità riscontrata ultimamente dal cloud computing.
Il layer hardware di base continua, ovviamente, ad avere una grande importanza, e alcuni vendor di soluzioni di Software Defined Storage arrivano a certificare le infrastrutture hardware che possono esaltare le funzionalità dei propri prodotti, al punto che alcuni arrivano a vendere pacchetti che comprendono hardware server standard, in modo da offrire ai clienti una soluzione pronta all’uso.
Software Defined Networking (SDN): un semaforo per i diversi flussi di rete
Pensato all’interno dello scenario Cloud, dove i workload delle virtual machine vengono spostati tra diversi data center o addirittura tra regioni diverse. Una prassi che richiede di avere configurazioni adeguate di rete definite in tempo prima che la transizione avvenga, per poi poter ritornare alle configurazioni originarie o standard non appena la transizione è avvenuta. Una flessibilità, automatizzata, della disponibilità di rete per gestire i picchi di utilizzo, che è in grado di rispondere in maniera molto veloce ai cambiamenti richiesti. In un software defined network, un amministratore di rete può gestire il traffico da una console centralizzata senza andare a toccare fisicamente i singoli switch. Da questo punto centralizzato si possono comandare i vari switch a rilasciare i servizi di rete là dove sono richiesti, a prescindere dalle singole connessioni tra i server e i device. Si possono cambiare, tramite software, ruoli e priorità ai vari switch, o bloccarne le attività, con alta precisione. Funzioni particolarmente utili in architetture Cloud multi-tenant, dove c’è bisogno di gestire flussi di traffico in modo efficiente e flessibile, consentendo all’amministratore di avere una maggiore accuratezza sul traffico di rete.
Software Defined Compute: tutti per uno, all’insegna della flessibilità
Il Software Defined Compute prevede l’allocazione delle capacità computazionali dell’infrastruttura laddove e quando ve ne sia bisogno, per la gestione di picchi di carichi di elaborazione. Si tratta di un bilanciamento del workload in maniera automatica, gestito, appunto, da software, in sostituzione del tradizionale intervento di un amministratore.
Il Software Defined Compute sposta le funzioni di computing in ambienti virtualizzati e sul cloud per gestirle attraverso una console centralizzata che riesce a interpretare tutte le risorse di computing come un unico elemento. Le potenze di calcolo dei singoli hardware, vengono così rese flessibili, sommabili e accessibili in un contesto comune, piuttosto che sfruttare le singole potenze assegnate alle singole macchine.
Software Defined Security (SDS): sicurezza garantita anche in ambienti scalabili
Come per le altre declinazioni del Software Driven, anche il Software Defined Security è un modello che prevede l’implementazione, il controllo e la gestione della sicurezza delle informazioni contenute in un ambiente di computing attraverso un software. Un software di sicurezza, appunto, in grado di monitorare, in maniera automatica eventuali azioni di intrusion detection, ma anche di network segmentation e access control.
Anche qui, si tratta di modalità che esaltano le proprie funzionalità in ambienti virtualizzati o cloud, dove l’indipendenza dall’hardware è più marcata. Ogni nuovo device che viene inserito all’interno dell’architettura, viene in tal modo immediatamente e automaticamente controllato dal software che garantisce la sicurezza dell’architettura secondo le policy definite, in questo modo la sicurezza viene garantita in maniera scalabile, seguendo la crescita dell’infrastruttura stessa. Anche la migrazione di tali ambienti da un data center all’altro è possibile senza incorrere in rischi per la sicurezza, che essendo gestita via software rimane, comunque, garantita.