Casa Attività commerciale 6 Ragioni per distribuire il software come appliance virtuale

6 Ragioni per distribuire il software come appliance virtuale

Sommario:

Video: 6° Coffee With Partners - Save Your "Smart" Connection (Settembre 2024)

Video: 6° Coffee With Partners - Save Your "Smart" Connection (Settembre 2024)
Anonim

La gestione dell'infrastruttura IT è una proposta più complessa di prima. L'era dei server locali e delle applicazioni monolitiche sta lasciando il posto a una nuova realtà ibrida: legacy, infrastruttura locale si sta mescolando con una cacofonia di tecnologie di database e app basate su cloud, virtuali e modulari. Sta cambiando il modo in cui le aziende ospitano, forniscono e distribuiscono software.

Uno dei catalizzatori in questo cambio di paradigma è l'ascesa di dispositivi virtuali (VA). Costruito su macchine virtuali (VM) basate su cloud, un VA è uno strumento preconfigurato per configurare ed eseguire app virtuali senza preoccuparsi di alcuna installazione, provisioning o distribuzione manuale. Kit Colbert, CTO della Business Unit Cloud Platform di VMware, ha detto di pensare ai VA come a qualsiasi altra appliance: non è necessario sapere come funziona il tuo frigorifero, funziona e basta.

Colbert ha trascorso 14 anni in VMware. Ha lavorato su gran parte del portafoglio dell'azienda software aziendale, dal sistema operativo VMkernel (OS) alla virtualizzazione dei server vSphere, fino al vRealize IT Operations Manager e alla piattaforma VMware AirWatch per la gestione dei dispositivi mobili (MDM), tra gli altri ruoli. PCMag ha parlato con Colbert di cosa sono i VA e perché sono utili in scenari pratici di business. Abbiamo discusso su come sfruttare i VA, insieme alle tecnologie emergenti lato sviluppatore come container e microservizi, come parte di uno stack software di prossima generazione e infrastruttura IT.

Cosa sono i VA?

I VA stanno diventando sempre più comuni nei data center e nei server virtuali, in esecuzione come parte dei cloud Infrastructure-as-a-Service (IaaS). Per capire cosa sono i VA e quanto sono importanti negli ambienti di cloud computing, Colbert ha affermato che la parola chiave è "apparecchio".

"Pensa a un elettrodomestico a casa tua: forni, microonde, frigoriferi. Li colleghi e funzionano", ha detto Colbert. "I meccanismi interni sono complessi - e ora con l'Internet of Things (IoT) molti di loro hanno il Wi-Fi. Ma quanti di noi sanno davvero come funziona un frigorifero o un forno? Non è necessario. manopole per controllare un dispositivo molto complesso con un'interazione molto semplice. Un'appliance contiene quella complessità per rendere più semplice per un utente ottenere valore. Un'appliance virtuale fa la stessa cosa all'interno di una VM in un data center."

Come ha spiegato Colbert, un VA fornisce essenzialmente un'astrazione software per prendere un sistema virtuale complesso e focalizzarlo in una configurazione specifica e strettamente controllata sia per il fornitore di software indipendente (ISV) che vende il prodotto sia per un dipartimento IT aziendale che acquista e distribuisce quel software. Per gli ISV, i VA riducono il numero di opzioni di configurazione e distribuzione. Maggiore è il numero di opzioni, impostazioni e sistemi operativi supportati, più è difficile garantire che il software funzioni correttamente in ambienti diversi. Dal punto di vista aziendale, i VA consentono al reparto IT di dedicare meno tempo alla configurazione dell'app e alla configurazione della rete e delle impostazioni di conformità, ecc. Colbert ha affermato che si tratta di semplicità e time-to-value.

"Tradizionalmente, quando si installa il software, c'è una miriade di cose che devi fare per far alzare l'applicazione. L'obiettivo con un'appliance virtuale è preconfigurare tutto e iniziare a usarlo", ha affermato Colbert. "Guarda un sistema operativo come iOS. È un set di software che funziona solo con questo set di dispositivi Apple. Confronta quello con Android in cui hai un sistema operativo altamente configurabile in esecuzione su centinaia di migliaia di dispositivi diversi. È molto più lavoro per produttori da personalizzare su diversi dispositivi mentre, con l'iPhone, è stato creato una sola volta."

VA contro VM

I VA e le VM sono spesso confusi ma semplicemente: le VM sono il meccanismo di packaging e distribuzione di un VA. Colbert ha spiegato che una stessa VM è più o meno una tela bianca con una vasta gamma di usi. Una VA costruita sopra una VM è un modo per personalizzare e personalizzare quella VM per l'uso in un modo molto specifico. Tornando alla metafora dell'elettrodomestico, racchiude tutta la complessità della VM e offre all'utente alcune semplici manopole, per così dire.

"Un'appliance virtuale è una macchina virtuale implementata in un modo molto specifico che semplifica l'implementazione e limita le opzioni per configurare un milione di cose diverse", ha affermato Colbert. "Con una macchina virtuale per uso generale, è possibile installare il software server e il sistema operativo desiderati, e ciò è utile in alcuni casi. Ciò di cui stiamo parlando qui è una personalizzazione e ottimizzazione su quel modello di macchina virtuale più generale."

6 Suggerimenti per la distribuzione di VA

VMware è lungi dall'essere l'unico fornitore di software aziendale che lavora con VA, ma la società afferma di avere una competenza più profonda della maggior parte. VMware ha impiegato anni a sviluppare vApp VMware, che funziona su Open Virtualization Format (OVF) standardizzato. La piattaforma vApp VMware raggruppa le VM in VA che funzionano su diversi sistemi operativi e architetture di cloud computing. Colbert ha offerto cinque raccomandazioni che le aziende dovrebbero tenere a mente quando si considerano, creano e implementano VA.

1. Sapere quando utilizzare un VA, non una macchina virtuale

Dopo aver compreso la differenza tra una macchina virtuale e una macchina virtuale, è importante sapere quando è più vantaggioso utilizzarne una rispetto all'altra. Nel decidere se lasciare una VM così com'è o distribuirla insieme a un VA preconfigurato, Colbert ha detto di pensare al processo aziendale che si sta tentando di risolvere.

"Se scopri di avere questo modello in cui un'applicazione o un processo sono comunemente utilizzati da molti dipendenti e altre persone all'interno dell'azienda, questo è un buon obiettivo per un VA. Le applicazioni che vengono distribuite e ridistribuite dove vuoi contenere quella complessità ", ha detto Colbert. "Invece di avere tutte queste diverse istanze in cui ogni utente sta configurando le cose in modo leggermente diverso, puoi prendere il controllo di quella situazione e dare loro solo il giusto set di manopole sul loro forno."

2. Costruisci un App Store per data center

I VA sono facili da usare e dovrebbero anche essere facili da trovare e ottenere. Tradizionalmente, ha spiegato Colbert, per accedere a un'app, è necessario inviare una sorta di richiesta basata su ticket all'IT e quindi l'amministratore provvede manualmente a provvedere. Negli ultimi anni, questo è diventato più automatizzato attraverso cataloghi di servizi curati o un app store gestito che offre app per il download approvate dall'IT. Comunque rendi disponibili i VA, gli utenti non dovrebbero saltare attraverso i cerchi.

"Volete sfruttare la semplicità delle appliance virtuali e fornirle direttamente all'utente, pur gestendo i requisiti dal punto di vista IT", ha affermato Colbert. "In strumenti come AirWatch, hai un app store per l'utente finale con app da configurare sui tuoi dispositivi. Ma di cosa stiamo parlando qui è più di un app store per data center. Se un utente deve eseguire il provisioning di un'app in un server da qualche parte, sarebbero arrivati ​​a questo tipo di portale self-service secondario ".

3. Utilizzare configurazioni di rete flessibili

Uno degli aspetti più difficili per ottenere un VA distribuito è l'integrazione con le reti di un cliente. Allocare l'archiviazione e distribuire la macchina virtuale sottostante è relativamente semplice e facile da automatizzare, ma Colbert ha affermato che la rete diventa interessante.

"La persona che crea l'applicazione deve essere in grado di fornire all'utente sufficienti manopole per configurare correttamente la rete. Alcune reti utilizzano HTTP, altre potrebbero avere un set statico di indirizzi IP e altre potrebbero utilizzare strumenti di terze parti per la gestione degli indirizzi IP Quindi ci sono molte variazioni che possono farti inciampare ", ha detto Colbert. "Vale la pena dedicare un po 'di tempo in più per assicurarsi di esporre il giusto set di opzioni che gli utenti possano configurare. E assicurarsi che il VA sia flessibile nelle configurazioni di rete che può supportare."

4. Non dormire sulla sicurezza

I VA funzionano principalmente su sistemi operativi Linux. Uno dei problemi che puoi incontrare è con problemi di sicurezza a livello di sistema operativo. Indipendentemente dal fatto che tu stia utilizzando Application Performance Management (APM) o software di monitoraggio della rete o che tu abbia un team di monitoraggio delle vulnerabilità e delle esposizioni comuni (CVE) Linux all'interno dei pacchetti software open source che la tua azienda sta sfruttando, Colbert ha affermato che dovrebbe esserci un set di procedure fino a ottenere rapidamente le patch.

"Una cosa che fai come creatore è assumerti la responsabilità della sicurezza di un VA e di ogni cosa al suo interno. Che si tratti di Shellshock o Heartbleed o di quello che hai, spetta a te come sviluppatore di VA reagire rapidamente quando si verificano questi tipi di problemi, " disse Colbert. "Questa è una delle cose che può limitare i VA se il cliente non si fida che il fornitore applichi le patch. La maggior parte degli ISV ha un intero team di sicurezza che controlla i CVE di Linux. Quando VMware rileva un nuovo calo di CVE, c'è un intero processo impostato per eseguilo su questo e ottieni le patch in poche ore o giorni nel peggiore dei casi. Hai bisogno di quei team che guardano e sono pronti a reagire, e il meccanismo di consegna per far arrivare tali modifiche agli utenti finali."

5. Sapere come VM e container si adattano insieme

Abbiamo iniziato questo pezzo parlando di una nuova era di software virtualizzato e tecnologia delle app, e gran parte di ciò è dovuto alla rivoluzione degli sviluppatori e dell'IT causata da container e microservizi. Colbert ha spiegato come i container si adattano perfettamente a VA e VM.

"Stiamo assistendo a una proliferazione di tecnologie nello spazio che hanno molti diversi compromessi e capacità. In generale, questa è una buona cosa, ma può creare confusione su ciò che è meglio fare", ha detto Colbert.

"Ci sono due aspetti su cui concentrarsi con VA e container: l'imballaggio e l'autonomia", ha continuato. "Le VM si astraggono a livello hardware mentre i container si attraggono a livello di sistema operativo. Ma entrambi hanno un livello di packaging per creare un'immagine. Ciò che gente come Docker ha fatto davvero bene è integrarli con il flusso di lavoro di sviluppo. Contenitori e VM sono entrambi meccanismi generici, quindi quello che vedrai in genere è un'app normale direttamente impacchettata in una macchina virtuale, o talvolta un contenitore e una macchina virtuale insieme direttamente distribuiti nella loro infrastruttura come singola applicazione."

Questa non è la fine della storia, però. Durante gli esperimenti con macchine virtuali e container, Colbert ha affermato che è fondamentale tenere presente come le app containerizzate e virtuali si collegheranno al resto dell'infrastruttura e a tutti gli altri problemi logistici, di conformità e di sicurezza che ne derivano.

"Quando i clienti iniziano a modernizzarsi, è necessario risolvere le operazioni del secondo giorno. Mentre si creano tutte queste soluzioni attorno a macchine virtuali e appliance virtuali e si estendono tali soluzioni ai container, è necessario pensare a monitoraggio, backup, sicurezza, accesso, ripristino di emergenza. Devi rispondere a tutte queste domande ", ha detto Colbert. Molti clienti chiedono quando containerizzare le cose, e penso che abbia molto senso guidare un processo più rapido e coerente tra sviluppo e produzione. La containerizzazione è piuttosto semplice da fare… la sfida è quando si entra nel refactoring di un'applicazione per diventare più distribuiti con un'architettura di microservizi. È uno sforzo enorme, enorme."

6. Decidi se utilizzare i microservizi

Il modo in cui le architetture di microservizi tengono conto di ciò è una proposta più complicata. All'interno di un contenitore, è possibile eseguire un'app monolitica tradizionale o un'app di microservizi suddivisa in servizi modulari. In relazione a VA e VM, Colbert afferma che la decisione se passare a un'architettura di microservizi dipende da alcuni fattori.

"L'applicazione deve essere estremamente importante per la tua azienda e generare entrate di alto livello. In caso contrario, lasciala così com'è e raggiungila in un secondo momento", ha affermato Colbert. "Le applicazioni che generano entrate sono quelle che desideri su un'architettura più distribuita. O quella o qualsiasi altra cosa su larga scala in cui molti utenti si connettono e interagiscono con essa o se desideri aggiornamenti molto veloci."

I microservizi ti consentono di aggiornare i singoli componenti di un'app frequentemente e indipendentemente l'uno dall'altro. Poiché i singoli servizi sono in gran parte disaccoppiati, gli sviluppatori possono aggiornarli indipendentemente senza coordinamento. Colbert ha affermato che si ottengono molti vantaggi dai microservizi, ma che i clienti sottovalutano il lavoro coinvolto e le sfide del re-architetto, anche se l'app è già in esecuzione su una macchina virtuale o in un contenitore.

"I microservizi sono fantastici, ma non andare in quel viaggio fino a quando non sei sicuro che ci sia un motivo commerciale convincente", ha detto Colbert. "Se si tratta di un'applicazione complessa di alto livello con grandi livelli di scala che richiede agilità e aggiornamenti rapidi, provaci."

6 Ragioni per distribuire il software come appliance virtuale