Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

96
Consigli e Best Practice per iniziare con il Cloud AWS Danilo Poccia Solutions Architect

Transcript of Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Page 1: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Consigli e Best Practice per iniziare con il Cloud AWS

Danilo Poccia – Solutions Architect

Page 2: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Nicola Previati – [email protected]

Mario Vetrano – [email protected]

Page 3: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Agenda

Amazon Web Services

I vantaggi dell’Elasticità

Best Practice

Scegli il caso d’uso

Prepara l’ambiente

Pensa in modo sicuro

Usa i vantaggi del Cloud

Servizi o Software

Ottimizzazione dei costi

Page 4: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

I tuoi feedback sono importanti

Raccontaci:

Cosa ti piace , cosa non ti piace

Cosa vorresti ascoltare

durante questi webinar

Quali servizi vorresti vedere offerti da AWS

Page 5: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Mission di AWS

Permettere ad Aziende e Sviluppatori di creare applicazioni complesse e

scalabili attraverso l’utilizzo di servizi web*.

*Quello che oggi viene comunemente chiamato “cloud”

Page 6: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

• $5.2B fatturato “retail”

• 7,800 dipendenti

• Una grande quantità di server

2003

Page 7: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

• $5.2B fatturato “retail”

• 7,800 dipendenti

• Una grande quantità di server

Ogni giorno AWS aggiunge capacità

server equivalente a quanto era

necessario ad Amazon quando era

una società da $5B di fatturato

2003 2013

Page 8: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Tra i quali:

AWS Oregon Region

Elastic Beanstalk (Beta)

Amazon SES (Beta)

AWS CloudFormation

Amazon RDS for Oracle

AWS Direct Connect

AWS GovCloud (US)

Amazon ElastiCache

VPC Virtual Networking

VPC Dedicated Instances

SMS Text Notification

Tra i quali:

Amazon SNS

Amazon CloudFront

Amazon Route 53

S3 Bucket Policies

RDS Multi-AZ Support

RDS Reserved Databases

AWS Import/Export

Tra i quali:

Amazon RDS

Amazon VPC

Amazon EMR

EC2 Auto Scaling

EC2 Reserved Instances

Tra i quali:

6 nuovi Direct Connect

DynamoDBRDS in VPC

AWS Trusted Advisor

CloudFormation in VPC

AWS Storage Gateway

Amazon Glacier

Cost Allocation Tagging

CloudFront Live Streaming

Amazon CloudSearch

AWS Marketplace

Red Hat Reserved Instances

Nuove istanze EC2

Multi-AZ Oracle RDS

RDS SQL Server

EC2 RI Marketplace

VM Export

Multiple IPs in VPC

Provisioned IOPS

Oracle Data Pump

New APAC Region – Sydney

AWS Data Pipeline

La velocità dell’innovaizone in AWS

Page 9: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Tra i quali:

AWS Management Console Tablet e

Mobile Support

Elastic Transcoder

Riduzione di prezzo di EC2, disponibilità

globale delle istanze Standard di tipologia

M3 e costi di data transfer ridotti.

53 annunci di nuovi servizi e

aggiornamenti in Q1 2013

Tra i quali:

Amazon Redshift disponibile per tutti i

Clienti

AWS Opsworks

Ruoli IAM e supporto dell’auto scaling

per Amazon CloudWatch Monitoring

Scripts per Linux

Riduzione dei prezzi di Amazon SQS

and SNS e incremento del Free Tier.

Tra i quali:

Riduzione di prezzo delle istanze

riservate EC2.

ElastiCache ora incluso nel Free Tier

Riduzione di prezzo di Amazon

DynamoDB

AWS Elastic Beanstalk per Node.js

Amazon RDS ora supporta 3TB e

30,000 Provisioned IOPS per database

Annunciato il supporto EBS-Optimized

per ulteriori tipologie di istanze.

La velocità dell’innovaizone in AWS

21

14

18

Gennaio Marzo Febbraio

Page 10: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

AMAZON S3: PIU’ di 2 MILIONI DI MILIONI DI OGGETTI

1.1M di transazioni al secondo

Page 11: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Una Copertura Globale

Region

US-WEST (N. California) EU-WEST (Ireland)

ASIA PAC (Tokyo)

ASIA PAC (Singapore)

US-WEST (Oregon)

SOUTH AMERICA (Sao Paulo)

US-EAST (Virginia)

GOV CLOUD

ASIA PAC (Sydney)

Page 12: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Availability Zone

Una Copertura Globale

Page 13: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Edge Locations

Dallas(2)

St.Louis

Miami

Jacksonville Los Angeles (2)

Palo Alto

Seattle

Ashburn(2)

Newark

New York (2)

Dublin

London(2)

Amsterdam

Stockholm

Frankfurt(2)

Paris(2)

Singapore(2)

Hong Kong

Tokyo

Sao Paulo

South Bend

San Jose

Osaka Milan

Sydney

Una Copertura Globale

Seoul

Page 14: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Una Console di Management Web

Page 15: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Elasticità

Page 16: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Capacità IT

necessaria con

sistemi tradizionali

Capacità Elastica

Capacità

Tempo Le tue esigenze IT

Page 17: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Accendi e Spegni Crescita Rapida

Picchi Variabili Picchi non Prevedibili

Capacità Elastica

Page 18: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Accendi e Spegni Crescita Rapida

Picchi non Prevedibili Picchi Variabili

Spreco di risorse

Cliente non soddisfatto

Capacità Elastica

Page 19: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Capacità Elastica

Capacità IT necessaria con

sistemi tradizionali

Le tue esigenze IT

Tempo

Capacità

Capacità Elastica

Page 20: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Crescita Rapida Accendi e Spegni

Picchi non Prevedibili Picchi Variabili

Capacità Elastica

Page 21: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

503 Service Temporarily Unavailable

The server is temporarily unable to service

your request due to maintenance downtime or

capacity problems. Please try again later.

Page 22: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

503 Service Temporarily Unavailable

The server is temporarily unable to service

your request due to maintenance downtime or

capacity problems. Please try again later.

Page 23: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Da una istanza…

Page 24: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

…a migliaia di istanze

Page 25: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Tempo: +00h

<10 core

Capacità Elastica

Numero di Core

Page 26: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Tempo: +24h

>1500 core

Capacità Elastica

Numero di Core

Page 27: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Tempo: +72h

<10 cores

Capacità Elastica

Numero di Core

Page 28: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Tempo: +120h

>600 cores

Capacità Elastica

Numero di Core

Page 29: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Num

ero

di is

tanze E

C2

4/12/2008 4/14/2008 4/15/2008 4/16/2008 4/18/2008 4/19/2008 4/20/2008 4/17/2008 4/13/2008

Da 40 server a 5000 in 3 giorni

EC2 ha scalato fino al picco di 5000 istanze

Recensione su “Techcrunch”

Lancio dell’integrazione con Facebook

Carico costante per ~40 istanze

Page 30: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Best Practice

Page 31: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Scegli il caso d’uso

1

Page 32: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Scegli il caso d’uso

Alcuni ambiti sono più “semplici” da gestire

Page 33: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Scegli il caso d’uso

Sviluppo & Collaudo

Aggiungi e rimuovi ambienti su

richiesta

Disaccoppia gli ambienti di

sviluppo e test dai vincoli

operativi

Esplora l’elasticità in un ambiette

protetto

Alcuni ambiti sono più “semplici” da gestire

Page 34: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Backup & DR

Porta parte dei tuoi dati o delle

tue applicazioni nell’ambiente di

DR un passo alla volta

Usa failover controllati per

verificare e sfruttare al meglio le

funzionalità del Cloud

Alcuni ambiti sono più “semplici” da gestire

Scegli il caso d’uso

Sviluppo & Collaudo

Aggiungi e rimuovi ambienti su

richiesta

Disaccoppia gli ambienti di

sviluppo e test dai vincoli

operativi

Esplora l’elasticità in un ambiette

protetto

Page 35: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Nuovi Progetti

La mancanza di vincoli pregressi

favorisce l’uso delle funzionalità

del Cloud Computing

In particolare progetti “Web”,

archiviazione di documenti, ecc.

Alcuni ambiti sono più “semplici” da gestire

Scegli il caso d’uso

Backup & DR

Porta parte dei tuoi dati o delle

tue applicazioni nell’ambiente di

DR un passo alla volta

Usa failover controllati per

verificare e sfruttare al meglio le

funzionalità del Cloud

Computing

Sviluppo & Collaudo

Aggiungi e rimuovi ambienti su

richiesta

Disaccoppia gli ambienti di

sviluppo e test dai vincoli

operativi

Esplora l’elasticità in un ambiette

protetto

Page 36: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Alcuni ambiti sono più “semplici” da gestire

Punti “deboli”

Aspetti costosi o complessi da

gestire

Workflow, motori di ricerca,

streaming video, archiviazione

documenti, analisi di dati

Scegli il caso d’uso

Nuovi Progetti

La mancanza di vincoli pregressi

favorisce l’uso delle funzionalità

del Cloud Computing

In particolare progetti “Web”,

archiviazione di documenti, ecc.

Backup & DR

Porta parte dei tuoi dati o delle

tue applicazioni nell’ambiente di

DR un passo alla volta

Usa failover controllati per

verificare e sfruttare al meglio le

funzionalità del Cloud

Computing

Sviluppo & Collaudo

Aggiungi e rimuovi ambienti su

richiesta

Disaccoppia gli ambienti di

sviluppo e test dai vincoli

operativi

Esplora l’elasticità in un ambiette

protetto

Page 37: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Progetto pilota Produzione Automazione

Approfondisci I servizi

Verifica le performance

Disegna pensando alla scalabilità

Crea team cross-funzionali (DevOps)

Implementa il monitoring

Manutenzione evolutiva/correttiva

Gestisci la sicurezza

Sfrutta la scalabilità

Procedure correttive

Scalabilità automatica

Deployment senza “fermi”

Backup / Recovery

Esem

pi

Pianifica e imposta gli obiettivi

Page 38: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Pianifica e imposta gli obiettivi

Beanstalk

Beanstalk Cloud Formation Cloud Watch IAM

API CLI Auto Scaling

Progetto pilota Produzione Automazione

Approfondisci I servizi

Verifica le performance

Disegna pensando alla scalabilità

Crea team cross-funzionali (DevOps)

Implementa il monitoring

Manutenzione evolutiva/correttiva

Gestisci la sicurezza

Sfrutta la scalabilità

Procedure correttive

Scalabilità automatica

Deployment senza “fermi”

Backup / Recovery

Esem

pi

Page 39: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Prepara l’ambiente

2

Page 40: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Crea una struttura di account in base alla tua organizzazione

Usa gli account come ambienti dove hai necessità di separazione e/o

controllo

Ad esempio:

Ambienti di Sviluppo Ambienti di Collaudo

Dipartimenti Prodotti & Servizi

Prepara l’ambiente

Account

Page 41: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Controlla l’accesso alle informazioni di fatturazione

Usa utenti IAM per mantenere I dati di fatturazione nel master account

Consolida la fatturazione su un

unico account

Fai in modo cha un account paghi per i “sotto” account

Imposta notifiche e

reportistica per la fatturazione

Ricevi notifiche da CloudWatch quando la fattura raggiunge un certo valore e scrivi report CSV su S3 per

scopi di analisi

Fatturazione

Prepara l’ambiente

Crea una struttura di account in base alla tua organizzazione

Usa gli account come ambienti dove hai necessità di separazione e/o

controllo

Ad esempio:

Ambienti di Sviluppo Ambienti di Collaudo

Dipartimenti Prodotti & Servizi

Account

Page 42: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Attiva CSV & Accesso Programmatico

Impostazioni di Fatturazione

Configurazioni per la Fatturazione

Page 43: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Sviluppo 1

Sviluppo 2

Collaudo Master Account

Consolidated Billing

I dati sono scritti in S3

Produzione

Sistemi Interni

Billing Alert La fattura ha raggiunto $x

Usa il tuo strumento

preferito per analizzarli

Configurazioni per la Fatturazione

Page 44: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Master Account

Sviluppo 1 ha speso $100

Sviluppo 2 ha speso $250

Collaudo ha speso $1,000

Produzione ha speso $1,200

Sistemi Interni ha speso $400

Configurazioni per la Fatturazione

Sviluppo 1

Sviluppo 2

Collaudo

Produzione

Sistemi Interni

Page 45: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Prepara l’ambiente

Controlla l’accesso alle informazioni di fatturazione

Usa utenti IAM per mantenere I dati di fatturazione nel master account

Consolida la fatturazione su un

unico account

Fai in modo cha un account paghi per i “sotto” account

Imposta notifiche e

reportistica per la fatturazione

Ricevi notifiche da CloudWatch quando la fattura raggiunge un certo valore e scrivi report CSV su S3 per

scopi di analisi

Fatturazione

Crea una struttura di account in base alla tua organizzazione

Usa gli account come ambienti dove hai necessità di separazione e/o

controllo

Ad esempio:

Ambienti di Sviluppo Ambienti di Collaudo

Dipartimenti Prodotti & Servizi

Account

Page 46: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Decidi come gestire le chiavi d’accesso

Controlla l’accesso alle istanze EC2 (ad es. via SSH per Linux) usando le EC2 “key pair” per gruppi di istanze

o per account

Automatizza la gestione delle

chiavi SSH

Modifica le chiavi e configura il file authorized_keys per le istanze

attive

Considera di implementare una automazione al boot che fornisce un

accesso “personale” per gli

sviluppatori

Chiavi d’Accesso

Prepara l’ambiente

Controlla l’accesso alle informazioni di fatturazione

Usa utenti IAM per mantenere I dati di fatturazione nel master account

Consolida la fatturazione su un

unico account

Fai in modo cha un account paghi per i “sotto” account

Imposta notifiche e

reportistica per la fatturazione

Ricevi notifiche da CloudWatch quando la fattura raggiunge un certo valore e scrivi report CSV su S3 per

scopi di analisi

Fatturazione

Crea una struttura di account in base alla tua organizzazione

Usa gli account come ambienti dove hai necessità di separazione e/o

controllo

Ad esempio:

Ambienti di Sviluppo Ambienti di Collaudo

Dipartimenti Prodotti & Servizi

Account

Page 47: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Usa “IAM Groups” per gestire l’accesso a console e API

Fornisci un utente IAM con credenziali per le API ad ogni

sviluppatore

Controlla cosa un utente IAM può fare assegnando gruppi con le

corrette policy

Assegna “IAM Roles” alle istanze EC2

Lascia che sia AWS a gestire l’accesso alle API per le istanze EC2

attive assegnando un °ruolo° specifico,

ad esempio questa istanza puà leggere in questo bucket S3

Gruppi & Ruoli

Prepara l’ambiente

Decidi come gestire le chiavi d’accesso

Controlla l’accesso alle istanze EC2 (ad es. via SSH per Linux) usando le EC2 “key pair” per gruppi di istanze

o per account

Automatizza la gestione delle

chiavi SSH

Modifica le chiavi e configura il file authorized_keys per le istanze

attive

Considera di implementare una automazione al boot che fornisce un

accesso “personale” per gli

sviluppatori

Chiavi d’Accesso

Controlla l’accesso alle informazioni di fatturazione

Usa utenti IAM per mantenere I dati di fatturazione nel master account

Consolida la fatturazione su un

unico account

Fai in modo cha un account paghi per i “sotto” account

Imposta notifiche e

reportistica per la fatturazione

Ricevi notifiche da CloudWatch quando la fattura raggiunge un certo valore e scrivi report CSV su S3 per

scopi di analisi

Fatturazione

Crea una struttura di account in base alla tua organizzazione

Usa gli account come ambienti dove hai necessità di separazione e/o

controllo

Ad esempio:

Ambienti di Sviluppo Ambienti di Collaudo

Dipartimenti Prodotti & Servizi

Account

Page 48: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Account

Amministratori Sviluppatori Applicazioni

Bob

Kevin

Tomcat

Jim Brad

Mark

Susan

Reporting

Console

Identity & Access Management

Page 49: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Account

Amministratori Sviluppatori Applicazioni

Bob

Kevin

Tomcat

Jim Brad

Mark

Susan

Reporting

Console

Autenticazione Multi-Fattore

Gruppi

Identity & Access Management

Page 50: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Autorizzazione per API AWS

Ruoli Account

Amministratori Sviluppatori Applicazioni

Bob

Kevin

Tomcat

Jim Brad

Mark

Susan

Reporting

Console

Autenticazione Multi-Fattore

Gruppi

Identity & Access Management

Page 51: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Policy IAM

{

"Statement": [

{

"Effect": "Allow",

"Action": [

"elasticbeanstalk:*",

"ec2:*",

"elasticloadbalancing:*",

"autoscaling:*",

"cloudwatch:*",

"s3:*",

"sns:*"

],

"Resource": "*"

}

]

}

Accesso guidato

da Policy

Una definizione dichiarativa dei diritti di

accesso per i “gruppi”

Accesso controllati alle API AWS

con i “ruoli”

Page 52: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

3 Pensa in modo

sicuro

Page 53: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Servizi Fondamentali

Compute Storage Database Networking

Infrastruttura Globale AWS Region

Availability Zone

Edge Location

Client-side Data Encryption & Data Integrity Authentication

Server-side Encryption (File System and/or Data)

Network Traffic Protection (Encryption/Integrity/Identity)

Piattaforme, Applicazioni, Credenziali d’Accesso

Configurazione del Sistema Operativo, del Network e del Firewall

I (tuoi) Dati

Am

azo

n

Tu

Responsabilità Condivisa

Page 54: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Usa la Responsabilità Condivisa

Usa la Responsabilità Condivisa

Page 55: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Conosci i tuoi Clienti e scegli il livello di sicurezza

Usa la Responsabilità Condivisa

Tue certificazioni Tuoi processi

Penetration test

Audience esterna

Page 56: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Conosci i tuoi Clienti e scegli il livello di sicurezza

Usa la Responsabilità Condivisa

IAM

Amministrazione

Architettura

Audience interna

Tue certificazioni Tuoi processi

Penetration test

Audience esterna

Page 57: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Conosci i tuoi Clienti e scegli il livello di sicurezza

Usa la Responsabilità Condivisa

Certificazioni AWS

White Paper AWS

AWS QSA Process

Audience controllata

IAM

Amministrazione

Architettura

Audience interna

Tue certificazioni Tuoi processi

Penetration test

Audience esterna

Page 58: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Conosci i tuoi Clienti e scegli il livello di Sicurezza

Pensa fin dall’inizio alla Sicurezza della tua Soluzione

Usa la Responsabilità Condivisa

AWS è compliant con le principali certificazioni (PCI, ISO27001, SOC1, …)

Costruisci una soluzione in cui la sicurezza sia parte dei requisiti

Page 59: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Conosci i tuoi Clienti e scegli il livello di Sicurezza

Pensa fin dall’inizio alla Sicurezza della tua Soluzione

Usa la documentazione e le certificazioni fornite da AWS

Usa la Responsabilità Condivisa

http://aws.amazon.com/security/ http://aws.amazon.com/compliance/

Risk and compliance paper

AWS security processes paper

Page 60: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Conosci i tuoi Clienti e scegli il livello di Sicurezza

Pensa fin dall’inizio alla Sicurezza della tua Soluzione

Usa la documentazione e le certificazioni fornite da AWS

Usa le funzionalità di AWS nel disegno della soluzione

Usa la Responsabilità Condivisa

Page 61: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Usa le funzionalità di AWS

IAM

Controlla gli utenti e usa I ruoli per permettere ad AWS di gestire le

credenziali per l’accesso ai servizi dalle istanze EC2

API vs Istanze

Fornisci credenziali per le API agli sviluppatori e controlla l’accesso alle

chiavi SSH (key pair)

Credenziali Temporanee

Usa credenziali temporanee quando possibile

Firewall per le Istanze

I Security Group sono un firewall °attorno° a ciascuna istanza EC2

CLI e API

Usando le API e gli strumenti a riga di comando (CLI) puoi analizzare la tua infrastruttura con uno script e produrre un inventario, grazie alla

capacità di AWS di essere °programmabile°

Controllo delle Subnet

Gestisci il Networking creando Subnet pubbliche o private, usando

Internet Gateway e NAT.

Bastion Host

Permetti l’accesso in gestione alla produzione sole da un host

“bastione” e spegnilo quando non serve.

Accesso Controllato Security Group VPC

Connessioni private al VPC

Rendi ancora più sicuro l’accesso alle risorse AWS usando VPN software o hardware e con

connessioni di rete dedicate.

Direct Connect & VPN

Page 62: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Usa i vantaggi

del Cloud

4

Page 63: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Disegnare sistemi che resistono alla

perdita di istanze

Eliminare le risorse quando non

servono

Risorse “usa e getta”

✓ ✓

Usa i vantaggi del Cloud

Page 64: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Risorse “usa e getta”

Infrastruttura flessibile Disegnare sistemi potenzialmente scalabili

da una a centinaia di istanze

Usare Auto Scaling (eventi, pianificazioni,

etc) per guidare la disponiblità di risorse

✓ ✓

Usa i vantaggi del Cloud

Page 65: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Utilizzare la durabilità del 99.999999999%

per memorizzare files in Amazon S3

Fai scalare i database con RDS ed usa

DynamoDB come piattaforma NoSQL ad

alta velocità e bassa latenza

Risorse “usa e getta”

Infrastruttura flessibile

Storage affidabile e conveniente

✓ ✓

Usa i vantaggi del Cloud

Page 66: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Risorse “usa e getta”

Infrastruttura flessibile

Storage affidabile e conveniente

Automazione e controllo

Automatizzare tutte le componenti, dalla

scalabilità al ripristino delle istanze ✓ ✓ ✓

Usa i vantaggi del Cloud

Page 67: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

1 Creare l’istanza con l’OS desiderato

2 Configurare l’ambiente

3 Installare il software

4 Creare l’AMI dalla istanza

5 Lanciare istanze completamente configurate partendo dalla AMI

Bootstrap – AMI personalizzate

AMI

Immagine istanza personalizzata

Istanze

Auto Scaling Deploy manuale

Deploy programmato

Page 68: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

ami-id

ami-launch-index

ami-manifest-path

block-device-mapping

hostname

instance-action

instance-id

Instance-type

kernel-id

local-hostname

local-ipv4

mac

network

placement

profile

public-hostname

public-ipv4

public-keys

reservation-id

http://169.254.169.254/latest/meta-data

Il servizio di Metadata contiene le informazioni vitali dell’istanza AMI

Immagine istanza standard o personalizzata

Istanze

Serivizio

Metadata

Recuperare dati utente per guidare

il bootstrapping

Bootstrap – Metadata

Page 69: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

+ dati utente Gli scripts nel campo user-data dei metadata verranno eseguiti all’avvio dell’istanza

Es:

http://169.254.169.254/latest/meta-data

#!/bin/sh

yum -y install httpd

chkconfig httpd on

/etc/init.d/httpd start

<powershell>

</powershell>

O:

Bootstrap – Metadata

Il servizio di Metadata contiene le informazioni vitali dell’istanza AMI

Immagine istanza standard o personalizzata

Istanze

Serivizio

Metadata

Recuperare dati utente per guidare

il bootstrapping

Page 70: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Installare software es: web server, app server, proxy

Scaricare dati ed pacchetti applicativi da S3

Pubblicare i metadati delle istanze ad altri sistemi es: sistemi di monitoraggio

Configurare il profilio di sicurezza per le istanze in base all’utilizzo

+ dati utente Gli scripts nel campo user-data dei metadata verranno eseguiti all’avvio dell’istanza

http://169.254.169.254/latest/meta-data

Bootstrap – Metadata

Il servizio di Metadata contiene le informazioni vitali dell’istanza AMI

Immagine istanza standard o personalizzata

Istanze

Serivizio

Metadata

Recuperare dati utente per guidare

il bootstrapping

Page 71: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

1. Utilizzare più

Availability Zone

Page 72: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

2. Utilizzare RDS con

Replica e Multi-AZ

Page 73: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

3. Usare i Gruppi di

Auto Scaling

Page 74: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

4. Usare Elastic Load

Balancing

Page 75: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

5. Usare Route53 per

gestire il DNS

Page 76: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Bilanciamento nella Region

Combinato ad Auto Scaling bilancia richieste e risorse tra diverse

Availability Zone

Bilanciamento nel VPC

Bilancia il carico tra diversi livelli applicativi nella stessa Availability

Zone

Migrazione delle istanze

Facilita la migrazione delle istanze tra ambieni di Sviluppo, Testing e

Produzione semplicente muovendole tra i vari ELB

Avvantaggiarsi con i SLA

Aumentare l’affidabilità delle applicazioni con i SLA di Route 53

sulle richieste servite

Routing “pesato”

Performare analisi A/B e roll-outs applicativi spostando porzioni di traffico su nuove infrastrutture

Controllo sui TTL e sugli

aggiornamenti

Avere assoluto controllo degli aggiornamenti DNS per

implementare le strategie di aggiornamento dei sistemi

Scalare i database senza sforzi amministrativi

Scegliere la taglia delle istanza DB e farle scalare nel tempo

Ottenere alta affidabilità con

pochi click in console

Creare configurazioni Multi-AZ e read replica. AWS si fa carico della

gestione del failover e della ricreazione di un nuovo slave in caso

di perdita del Master DB

Elastic Load Balancing Route 53 RDS

Scalare risorse dinamicamente ed avere il controllo sui costi

Creare solo le risorse di cui si necessita, scalando su/giù in modo

automatico per assecondare il carico

Auto Scaling

Usa i vantaggi del Cloud

Page 77: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Servizi o Software

5

Page 78: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Servizi o Software

Meno tempo speso per installare e configurare software

Più tempo da dedicare al vostro business

Le vostre conosceze tecnologiche Usate i Servizi AWS

Lasciate che sia AWS a gestire la complessità

+

=

Page 79: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Relational Database Service Database-as-a-Service

Non serve più installare e gestire istanze per il DB

Configurazioni scalabili e affidabili

DynamoDB DB NoSQL con bassa latenza

Prestazioni elevate e prevedibili

Architettura distribuita ed affidabile

Usate RDS per i database

Usate DynamoDB come DB NoSQL ad

alte prestazioni

Servizi o Software

Page 80: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Amazon SQS

Processing

task/processing

trigger

Processing results

Amazon SQS Servizio di code affidabile e scalabile per

la gestione dei messaggi che viaggiano

tra le istanze

Task A

Task B

(Auto-scaling)

Task C

2

3

1

Simple Workflow Coordinate in modo affidabile task e

processi fra le vostre applicazioni

Integrate risorse AWS e non

Gestite stati distribuiti all’interno di

processi complessi

Inserite nel Cloud i vostri workflow di processi con SWF

Servizio di gestione delle code affidabile,

senza software aggiuntivi

Servizi o Software

Page 81: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Cloud Search Motore di ricerca elastico basta sul

motore Amazon A9

Servizio gestito e completo di un

cmplesso set di funzionalità

Scala automaticamente

Server Documentale

Risultato

Server di

Ricerca

Un motore di ricerca in pochi minuti con CloudSearch

Processa grandi quantità di dati in

modo conveniente ed efficiente con EMR

Elastic MapReduce Cluster Hadoop Elastico

Integrato con S3 & DynamoDB

Sfrutta le potenzialità degli script Hive &

Pig per le analisi

Integrato con le istanze spot

Servizi o Software

Page 82: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Ottimizzazione

dei costi

6

Page 83: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Ottimizzazione dei costi

Scalabilità

Dispobilità

Ottimizzazione costi

Elastic Load Balancing Auto Scaling

Tipologia e dimensione istanze

Page 84: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Manualmente

Effetuate una chiamata API o usate la CLI per

lanciare/terminare istanze – Basta specificare il cambio

della capacità (+/-)

In modo pianificato

Scalate su/giù in base a data ed ora

Tramite Policy

Scalate in risposta al cambio di condizioni o in base ad “alert”

in tempo reale da voi configurati

Ribilanciamento automatico

Le istanze vengono automaticamente

lanciate/terminate per assicurare che le applicazioni siano bilanciate

fra le AZ

Auto Scaling

Page 85: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Manualmente

Send an API call or use CLI to launch/terminate instances – Only need to specify capacity

change (+/-)

In modo schedulato

Scale up/down based on date and time

Tramite Policy

Scale in response to changing conditions, based on user

configured real-time monitoring and alerts

Ribilanciamento automatico

Instances are automatically

launched/terminated to ensure the application is

balanced across multiple Azs

Auto Scaling

Scalare le istanze manualmente

Es: aggiungere 10 istanze prima di un vento di marketing

Scalare su/giù le istanze in modo regolare

Es: scalare da 0 a 2 per processare i messaggi in SQL ogni notte, oppure

raddoppiare la capacità ogni venerdì notte

Scalare in modo dinamico in base a metriche personalizzate

Es: Lunghezza coda SQS, carico medio della CPU, latenza dell’ELB

Mantenere la capacità distribuita tra più AZ

Es: Mantenere la dispobilità di istanze in caso di fallimento in una AZ

Page 86: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Le istanze Unix/Linux partono $0.02/ora

“Pay as you go” per la capacità di calcolo

Flessibili e convenienti

Paghi solo per quello che usi, nessun aniticipo,

ingaggio o contratto a lunga durata

Casi d’uso:

Applicazioni con carichi impredicibili, per piccoli periodi o picchi

Sviluppo applicativo o collaudi

Istanze On-Demand

Contratti ad 1 o 3 anni

Pagando piccoli anticipi si ricevono consistenti sconti sulla tariffa oraria

Abbattimento e predicibilità dei costi

Aiutano a garantire la dispobilità delle risorse

Casi d’uso:

Applicazioni con carichi predicibili

Applicazioni che richiedono capacità riservata come il disaster recovery

Istanze Riservate

Scommesse sulla capacità EC2 eccedente

Il prezzo Spot è basat sul rapporto

domanda/offerta di capacità ed è determinato automaticamente

Aiutano a gestire carichi di lavoro costosi e su

larga scala

Casi d’uso:

Applicazioni con flessibilità nei tempi di avvio ed arresto

Applicazioni realizzabili solo in caso di prezzi

computazionali ridotti

Istanze Spot

Tipologia e dimensione Istanze

Page 87: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

0

1000

2000

3000

4000

5000

6000

7000

Reserved

On Demand

Spot

Avvantaggiarsi di tutti i modelli

Page 88: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Iniziate con i requiti di memoria e di architettura (32bit o 64-bit) Passate in seguito a considerare il numero di virtual core più vicino al requisito applicativo

Scegliere il tipo di istanza che si adatta al proprio caso d’uso

Utilizzare dimensioni ridotte consente di avere maggiore granularità e flessibilità per scalare tra divere AZ

Scalare su più availability zone

Tipologia di istanze

Istanze che lavorano h24 7su 7– RI “heavy utilization” Istanze usate occasionalmente in auto-scaling – RI “light utilization”

Iniziate con il modello on-demand per poi ricavare il modello di

utilizzo delle istanze riservate (RI) più adatto

Page 89: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Sommario

Page 90: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Sul vostro Business

70%

Infrastruttura in “casa”

30%

Per la gestione e manutenzione delle infrastrutture

Cloud computing

Page 91: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Infrastruttura nel Cloud AWS

Sul vostro Business

Più tempo per focalizzarsi sul vostro business

Configurare gli asset nel Cloud

70%

30% 70%

Infrastruttura in “casa”

30%

Per la gestione e manutenzione delle infrastrutture

Cloud computing

Page 92: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Agilità

Page 93: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

aws.amazon.com/free

Inziate ad utilizzare AWS con il “free tier”

Page 94: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Agenda

Amazon Web Services

I vantaggi dell’Elasticità

Best Practice

Scegli il caso d’uso

Prepara l’ambiente

Pensa in modo sicuro

Usa i vantaggi del Cloud

Servizi o Software

Ottimizzazione dei costi

Page 95: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Nicola Previati – [email protected]

Mario Vetrano – [email protected]

Page 96: Viaggio attraverso il cloud - Consigli e best practices per iniziare con il cloud aws

Grazie

Danilo Poccia – Solutions Architect