Sommario:
- Comprensione della configurazione EC2 di base
- Definire l'impostazione di sicurezza
- Utilizzo delle opzioni di archiviazione standard
Video: AWS Summit Milan 2017 2024
Considera il significato di elastico in molti dei nomi dei servizi AWS. Quando vedi la parola elastica, dovresti pensare alla capacità di allungare e contrarre. Tutta la documentazione di AWS allude a questo fatto, ma spesso rende l'intero processo abbastanza complicato quando in realtà non lo è. Pensa a un computer che può allungarsi quando hai bisogno di più risorse e contratti quando non lo fai.
Con AWS, paghi solo per i servizi che usi effettivamente, quindi questa capacità di allungare e contrarre è importante perché significa che la tua organizzazione può spendere meno e finire con la giusta quantità dei servizi necessari.
Anche se alcuni membri della tua organizzazione potrebbero fissarsi sulla questione del denaro, il vero valore dietro il termine elastico è il tempo. Mantenere la propria attrezzatura di misura giusta richiede molto tempo, soprattutto quando è necessario ridimensionare. L'utilizzo di EC2 consente di aggiungere o rimuovere capacità di calcolo in pochi minuti, anziché settimane o mesi. Poiché i nuovi requisiti tendono a cambiare rapidamente oggi, la capacità di ridimensionare la tua capacità in pochi minuti è cruciale, specialmente se vuoi davvero aumentare la paga.
Comprensione della configurazione EC2 di base
Dal punto di vista dello sviluppatore, la natura elastica di EC2 ti consente di tradurre il tuo ambiente di sviluppo in qualcosa che potresti solo simulare in passato: un ambiente di prova in cui può considerare i trade-off presentati da varie configurazioni. Avere un ambiente elastico significa che puoi effettivamente testare la tua applicazione in varie condizioni in modo da poter formulare raccomandazioni sulla configurazione basate sulla conoscenza del mondo reale.
Inoltre, è possibile simulare condizioni di errore e quindi creare un notebook per la risoluzione dei problemi prima di rilasciare un'applicazione in produzione. Proprio come con il tuo server locale, hai delle scelte da fare quando si costruisce un'istanza EC99 (una singola sessione utilizzata per eseguire una o più attività correlate). L'istanza può avere queste caratteristiche:
- Sistema operativo: Linux o Windows.
- Dimensione dell'istanza: È possibile ridimensionare l'istanza per fornire un numero limitato di servizi o per agire come un cluster di computer per enormi attività di elaborazione (e tutto il resto). In effetti, è possibile creare istanze ottimizzate per attività che richiedono più risorse nelle seguenti aree:
- CPU
- Memoria
- Memoria
- GPU
Poiché le attività assegnate a un'istanza cambiano, quindi può la configurazione dell'istanza.È possibile regolare solo l'allocazione di memoria per un'istanza o fornire più spazio di archiviazione quando necessario. La maggior parte degli sviluppatori non si preoccupa troppo di quanto costano le cose, ma quella situazione cambia man mano che ci si sposta nel cloud. Il tuo sistema di test richiederà un investimento, quindi conoscere le tue opzioni potrebbe ridurre i costi operativi e farti sembrare meglio agli occhi del capo. Ecco i modelli di prezzo disponibili con EC2:
- On Demand: Paghi per ciò che usi.
- Istanza riservata: Offre un prezzo significativamente ridotto in cambio di un pagamento una tantum basato su ciò che ritieni possa essere necessario in termini di servizio.
- Istanza Spot: Consente di denominare il prezzo che si desidera pagare, con il prezzo che influisce sul livello del servizio ricevuto.
La scalabilità automatica è una funzione EC2 che si utilizza per garantire che l'istanza cambi automaticamente la configurazione man mano che il carico su di esso cambia. Sebbene rappresenti un'ottima soluzione per gli amministratori dei sistemi di produzione, potrebbe porre problemi agli sviluppatori nell'ambiente di test perché non si può essere sicuri delle caratteristiche della configurazione di prova. In generale, si desidera evitare l'uso della scalabilità automatica sui sistemi di test in modo da poter mantenere un controllo più saldo sulle condizioni di test.
Definire l'impostazione di sicurezza
AWS offre anche caratteristiche di sicurezza distinte. Gli sviluppatori di solito conoscono bene la maggior parte di queste funzionalità dal punto di vista della programmazione. Tuttavia, ecco un riepilogo delle funzionalità di sicurezza utilizzate con EC2:
- Virtual Private Cloud (VPC): Separa ogni istanza in esecuzione sul server fisico da ogni altra istanza. In teoria, nessuno può accedere all'istanza di qualcun altro (anche se può accadere nel mondo reale (vedere questi dettagli su come gli hacker hanno suddiviso le istanze EC2 in passato).
- LLL (Network Access Control List) (facoltativo): Funziona come firewall per controllare le richieste in entrata e in uscita a livello di sottorete.
- Utenti e autorizzazioni di gestione e identità (IAM): Controlla il livello di accesso concesso a singoli utenti e gruppi di utenti. può consentire e negare l'accesso a risorse specifiche gestite da EC2.
- Gruppi di sicurezza: Funziona come firewall per controllare le richieste in entrata e in uscita a livello di istanza. Ogni istanza può avere fino a cinque gruppi di sicurezza, ciascuno di che può avere autorizzazioni diverse Questa funzionalità di sicurezza fornisce un controllo più preciso dell'accesso rispetto agli ACL di rete, ma è necessario mantenerla anche per ogni istanza, piuttosto che per la macchina virtuale nel suo complesso.
- Dispositivo di sicurezza hardware: Si basa su un hardware dispositivo di sicurezza che si installa per controllare la sicurezza tra la rete locale e il cloud AWS.
Nessuna quantità di sicurezza ostacolerà un determinato intruso. Chiunque desideri accedere al tuo server troverà un modo per farlo indipendentemente dalla tua altezza. Oltre a una grande sicurezza, è necessario monitorare il sistema e, presumendo che qualcuno possa entrare in azione, gestire l'intruso il più rapidamente possibile.Fornire sicurezza tiene a bada l'intruso meno esperto e aiuta a mantenere onesti le persone essenzialmente oneste, ma gli intrusi esperti troveranno sempre un modo per entrare.
La gravità di queste violazioni varia, ma può effettivamente far fallire le aziende, come in il caso di Code Spaces. Un certo numero di ricercatori di sicurezza avvertono che AWS è soggetto a problemi di sicurezza. Tuttavia, non dare per scontato che altri servizi cloud offrano una sicurezza migliore. Ogni volta che si utilizzano servizi esterni, si assumono anche rischi significativi.
Utilizzo delle opzioni di archiviazione standard
Una considerazione finale è l'uso dello spazio di archiviazione. Ogni istanza viene fornita con una quantità specifica di spazio di archiviazione in base al tipo di istanza creata. Se la memoria dell'istanza non fornisce la funzionalità o la capacità necessarie, è anche possibile aggiungere il supporto EBS (Elastic Block Store). Il vantaggio principale dell'utilizzo di EBS, oltre a capacità e flessibilità, è la capacità di definire un livello specifico di prestazioni di archiviazione per garantire che l'applicazione venga eseguita come previsto.