Estrarre dati da SAP in modo semplice con Amazon AppFlow
04 Dicembre 2024 - 2 min. read
Mehmed Dourmouch
DevOps Engineer
Recentemente ci siamo trovati a risolvere l'esigenza di un'azienda di distribuire applicazioni estremamente dispendiose dal punto di vista della GPU in modo facile, scalabile, sicuro ed economico, assicurando ai propri utenti accesso remoto su richiesta affinché potessero svolgere in qualsiasi momento le loro attività quotidiane.
Una volta analizzati i requisiti, ci siamo orientati sull'utilizzo di Amazon AppStream 2.0, il servizio completamente gestito di AWS per la distribuzione di immagini/applicazioni personalizzate agli utenti.
In questo articolo abbiamo raccolto alcune considerazioni fatte alla luce della sua applicazione: cos'è, come si configura e perché preferirlo rispetto ad altri servizi sono solo alcune delle domande a cui risponderemo nelle prossime righe!
Amazon AppStream 2.0 è un servizio di AWS che facilita la gestione di applicazioni centralizzate e la loro condivisione. Essendo un servizio gestito, eliminare la necessità di gestire l'infrastruttura sottostante. Un enorme vantaggio per un amministratore di sistema che, ogni giorno, è chiamato a gestire centinaia di macchine da solo.
Per utilizzare Amazon AppStream 2.0 avremo bisogno solo di una flotta (fleet) e uno stack, due semplici componenti principali, che spiegherò tra poco.
In questo articolo, vedremo come funziona Amazon AppStrea focalizzandoci su alcuni dettagli e considerazioni dettati dalla nostra esperienza di utilizzo.
Lo Stack una parte dell'intera architettura di Amazon AppStream che gestisce le impostazioni dell'utente, ad esempio se i dati devono essere salvati durante ogni sessione o occorre partire da una situazione "pulita" ogni volta.
La flotta può essere configurata con il tipo di istanza che meglio si adatta alle nostre esigenze, dalle istanze ad uso generico, fino ad istanze specifiche per tipo di workload come la grafica professionale.
Dopo la scelta del tipo di istanze, il passo successivo sarà impostare la capacità della flotta e la politica di scalabilità necessaria; entrambi gli aspetti sono molto importanti poiché, se configurate in modo errato, potreste incorrere in un'interruzione del servizio o in picchi di spesa inaspettati.
A questo punto, potremo creare e assegnare un ruolo IAM, in modo che gli utenti che si connetteranno alle istanze abbiano autorizzazioni ben definite (parleremo più avanti della sicurezza).
Dopo aver impostato il ruolo IAM, la configurazione principale della flotta è completata. Ora abbiamo solo bisogno di un'immagine e della configurazione di rete!
L'immagine può essere selezionata dall'elenco predefinito di immagini fornite da AWS, oppure possiamo personalizzarne una nostra.
Questo è il principale vantaggio del servizio: configurare un'immagine e lo streaming delle applicazioni da essa.
L'ultimo passo riguarda la rete; poiché l'infrastruttura sottostante è un'istanza EC2 con un auto-scaling Group, dovremo fornire ad Amazon AppStream una VPC, 3 subnet (non necessariamente dedicate al servizio) e un security group. Puoi implementarlo con il servizio AWS Directory Service se trovi più facile gestire le autorizzazioni da lì.
Una volta configurati tutti questi parametri, la flotta di Amazon AppStream sarà pronta per l'uso. Ma cosa succede se vuoi creare un'immagine specifica con un programma specifico?
Innanzitutto, dovrai avviare un'istanza di Image Builder, la cui configurazione non è altro che una versione ridotta dell'intera flotta, quindi non preoccuparti!
Una volta avviato l'Image Builder, dovrai connetterti all'istanza e personalizzare l'immagine per ottenere un'immagine con le tue applicazioni preferite configurate su di essa.
Potrai cambiare l'immagine predefinita della flotta come desideri; i cambiamenti apportati all'immagine non interferiranno con l'attività degli utenti già connessi a una sessione attiva, ma solo le nuove connessioni stabilite dopo il cambiamento avranno l'immagine aggiornata.
Come sempre, anche i migliori hanno dei difetti. Anche Amazon AppStream 2.0! Vediamo quindi le cose che potrebbero dissuaderci dall'usare questo servizio:
Le immagini che puoi utilizzare come immagini di partenza sono esclusivamente immagini server. Non essendo disponibili immagini client, se l'applicazione non è compatibile con un sistema operativo server, non sarà possibile utilizzare questo servizio;
Puoi accedere alle applicazioni anche da tablet, l'unico requisito che AWS richiede è una risoluzione di almeno 768x1028. Bisogna tuttavia considerare la larghezza di banda che si possiede, poiché si trattandosi comunque di un servizio di streaming;
È possibile utilizzare la licenza BYOL (Bring Your Own License) su Amazon AppStream. Aspetto spesso determinante nella scelta della miglior soluzione.
Amazon AppStream 2.0 e Amazon Workspaces a primo impatto possono sembrare molto simili, ma dopo un'analisi più approfondita si possono facilmente vedere le differenze nei casi d'uso di ciascuno di essi.
Amazon AppStream ti consente di effettuare lo streaming di un'applicazione all'interno di un ambiente chiuso senza possibilità di intervenire sul sistema operativo sottostante, anche senza ulteriori passaggi.
Amazon Workspaces, invece, effettua lo streaming di un intero ambiente desktop offrendo maggiore libertà, ma una minor personalizzazione nelle configurazioni, ad esempio per quanto riguarda la sicurezza.
Se hai bisogno di diverse applicazioni o se devi modificare ad esempio alcune chiavi del Registro di sistema in Windows, dovrai quindi lavorare necessariamente con Amazon Workspaces. Questo perché Amazon AppStream 2.0 non permette alcuna modifica una volta completata l'immagine.
Il metodo di connessione ad Amazon AppStream tramite un singolo URLè più diretto e semplificato, mentre Amazon Workspaces richiede una connessione tramite una connessione RDP.
In conclusione, perché utilizzare Amazon AppStream invece di Amazon Workspaces o delle alternative di altri fornitori di servizi?
La risposta è nell'obiettivo che vogliamo raggiungere: Amazon AppStream è stato creato per risolvere il problema specifico dello streaming di singole applicazioni personalizzate, mentre non si presta bene allo streaming di interi ambienti desktop; si può configurare per farlo, ma il risultato non sarà equiparabile a quello ottenuto tramite tool concorrenti.
Una delle applicazioni per cui Amazon AppStream è particolarmente consigliato ed indicato è quando si lavora con software CAD. Grazie alla facilità con cui è possibile selezionare tipo e dimensioni ottimali delle istanze, permette di ottimizzare notevolmente il costo dei workload notoriamente più "pesanti", risultando più economico rispetto all'acquisto diretto dell'hardware necessario per eseguire alcune delle applicazioni più GPU-intensive.
Le applicazioni CAD sono un tipico esempio di applicazioni di con altissima richiesta di GPU il cui prezzo medio per GB è relativamente alto.
Non ha senso configurare e riservare un'intera istanza desktop se l'unica cosa che utilizzerai è un'applicazione.
Inoltre, è possibile salvare senza problemi i file all'interno di un bucket S3, dove, se configurato correttamente, puoi utilizzare un endpoint VPC e spostare solo i file CAD (che altrove costerebbero molto a livello di traffico in uscita) all'interno della regione AWS, riducendo ulteriormente i costi!
Complessivamente, Amazon AppStream è un'opzione solida che può essere presa in considerazione quando si affronta la necessità di distribuire applicazioni in modo facile, scalabile, sicuro ed economico, rispettando anche l'ambiente degli utenti finali.
Personalmente ho trovato l'utilizzo relativamente semplice; non richiede molto sforzo nella configurazione dell'ambiente e dell'applicazione e la gestione delle immagini e delle flotte è ottimizzata e ben documentata.
Ci sono sicuramente alternative simili ad Amazon AppStream, come Citrix, VMWare e Microsoft, ma ognuna di queste ha i propri casi d'uso preferiti. Il consiglio è quindi quello di valutare attentamente i pro e i contro di ciascun fornitore alla luce del nostro obiettivo finale.
Se siete interessati ad approfondire lo streaming delle applicazioni, questo è il posto giusto! Saremo felici di dedicare uno dei nostri prossimi articoli a questo tema.
A presto con un nuovo post su Proud2beCloud!
Proud2beCloud è il blog di beSharp, APN Premier Consulting Partner italiano esperto nella progettazione, implementazione e gestione di infrastrutture Cloud complesse e servizi AWS avanzati. Prima di essere scrittori, siamo Solutions Architect che, dal 2007, lavorano quotidianamente con i servizi AWS. Siamo innovatori alla costante ricerca della soluzione più all'avanguardia per noi e per i nostri clienti. Su Proud2beCloud condividiamo regolarmente i nostri migliori spunti con chi come noi, per lavoro o per passione, lavora con il Cloud di AWS. Partecipa alla discussione!