SCENARI APPLICATIVIPER IL CLOUD COMPUTINGMarco ParenzanSoftware Architect, 1nn0va
Agenda(Re)Introduzione al Cloud ComputingCaratteristiche EssenzialiModelli di ImplementazioneTecnologie AbilitantiScenari applicativiConclusioni
SCENARI APPLICATIVIPER IL CLOUD COMPUTING(Re)Introduzione al Cloud Computing
On-Premise“On-Premise” significa “in casa”Risorse, hardware e software, sono “proprie”È la situazione originale con cui si comparano le scelte del CloudComputing
Definizione di CloudComputingIl Cloud Computing è un modelloabilitantel’accesso, conveniente e surichiesta, ad un insiemedirisorsedicalcolo (es. reti, servers, archiviazione, applicazioni e servizi) chepossonoessereapprovigionate (“provisioned”) rapidamente,  in manierasemplice.Rif. http://www.nist.gov/itl/cloud/Cos’è il Cloud ComputingIn apparenza è «minestra riscaldata»È la prima vera strategia di marketing per «vendere» la capacità di calcolo di InternetÈ legata all’evoluzione dei Data CenterUtility Computing: pay-as-you-go computingIllusionedirisorse infiniteNessuncostodiavvioFatturazionegranulare (costiorari)
I Player del CloudComputingÈ un percorso obbligato per i grandi di Internet per sostenere i costi dei nuovi Data CenterExperience with very large datacentersUnprecedented economies of scale
Tecnologie abilitantiReti (WAN) velociComputer potentiedeconomiciVirtualizzazioneefficienteStandard softwarePagamento a consumo
Economia dei Cloud Providers5-7x economies of scale [Hamilton 2008]Extra benefitsAmazon: utilize off-peak capacityMicrosoft: sell .NET toolsGoogle: reuse existing infrastructure
http://www.youtube.com/watch?v=PPnoKb9fTkA&feature=player_embeddedQuestionario
Questionario n°1Sapete quale è il costo operativo dell’IT nella vostra azienda? Per costo operativo intendiamo il totale dell’impegno di persone nel far vivere il reparto IT (installare un service pack, stampante che non stampa, elettricità per i server...)SìNo
SCENARI APPLICATIVIPER IL CLOUD COMPUTINGCaratteristiche Essenziali
Caratteristiche EssenzialiElasticitàScalabilitàOn-demand self-serviceBroad network accessResource poolingMeasured Service
ScalabilitàDa WikipediaIl termine scalabilità, nelle telecomunicazioni, nell'ingegneria del software, in informatica, e in altre discipline, si riferisce, in termini generali, alla capacità di un sistema di "crescere" o "decrescere" (aumentare o diminuire di scala) in funzione delle necessità e delle disponibilità. Un sistema che gode di questa proprietà viene detto scalabile.
ElasticitàElasticity is defined as the ability to scale resources both up and down as needed. To the consumer, the cloud appears to be infinite, and the consumer can purchase as much or as little computing power as they need. This is one of the essential characteristics of cloud computing in the NIST definition.
CapacityElasticitàAdattarel’acquisizionedellerisorse in funzionedelladomandaResourcesResourcesCapacityDemandDemandTimeTimeStatic data centerData center in the cloudUnused resources
On-demand self serviceUn utilizzatorediservizi “cloud” puòutilizzare I servizistessi in autonomia, senzaalcunainterazione con il cloud provider
Accesso alla rete pervasivoLe risorse “cloud” sonoaccessibiliattraverso Internet, senzaalcunalimitazione, attraversoprotocolli standard, da client leggeri (“thin”) o piùstrutturati (“thick”)
Resource poolingUn fornitoredi “cloud” applicailmodello “multi-tenant” (multi-”affittuario”).Le risorsesonodisponibilit a tutti I clientiLe risorsesonoassegnaree riassegnate a secondadelladomanda.Il cliente non ha genericamente la percezione dove sia effettivamente disponibile la risorsa
Servizio misuratoTuttigliaspettidi un servizio cloud (CPU, memoria, storage, I/O) sonomonitoratida un cloud provider.È fondamentale per FatturazioneControllodegliaccessiOttimizzazionedellerisorsePianificazionedellecapacità
SCENARI APPLICATIVIPER IL CLOUD COMPUTINGModelli di Implementazione
Modelli di implementazioneCisonoquattromodellidiimplementazionePublic CloudPrivate CloudCommunity CloudHybrid Cloud
Public CloudUna Cloud è pubblica se è accessibileattraverso ISP terziPubblico  non significa “free”Pubblico non significache I datidi un utentesonopubblicamentevisibiliI principi del cloud (a partiredalladisponibilità) sonodisponibili
Private CloudUna Cloud è privataquandoÈ “cloud” (elasticità, pooling dellerisorse, ecc..)Gestitaall’internodiunaorganizzazioneNessunarestrizionedibandadireteSicurezza “LAN” invecedi Internet
Community CloudUna Community Cloud è controllatada un gruppodiorganizzazioni, invececheda un singolo. CondividonostessomeccanismodisicurezzaAccessoaidatiApplicazioni del Cloud
Hybrid CloudÈ unacombinazionediuna public e diuna private cloudTipicamente è la sceltadiun’aziendadipubblicarenella public cloud informazioni non criticheall’azienda.Probabilmente è ilmodellodiriferimentocheun’aziendadovrebbescegliereQuestionario
Questionario n°2Avete dati che condividete in quantità, regolarmente, con i parter (clienti, fornitori, utenti) dell’azienda? FattureBolleOrdiniSituazioni OrdiniDisegni di ProgettoAltro
SCENARI APPLICATIVIPER IL CLOUD COMPUTINGSfide legate al CloudComputing
Sfide per l’adozioneDi tante, in evidenza una tematica solaQuali sono le sfide da affrontare per l’adozione del cloud?
SCENARI APPLICATIVI PER IL CLOUD COMPUTINGModelli di Servizio
Modelli di ServizioINFRASTRUCTUREPLATFORMSOFTWAREAS A SERVICEAS A SERVICEAS A SERVICETre modelli di servizioInfrastructure as a Service (IaaS)Platform as a Service (PaaS)Software as a Service (SaaS)
IaaSInfrastructure as a ServiceÈ l’evoluzione del «vecchio» housingÈ l’applicazione delle macchine virtualiIl protagonista principale è Amazon con EC2Elastic Cloud ComputingAnche Windows Azure ha questo con la VM Role
PaaSPlatform as a ServiceNe riparliamo dopo…
SaaSSoftware as a ServiceÈ l’integrazione nella filosofia «cloud» delle applicazioni che normalmente utilizziamo, dalla posta elettronica, ai documentiSono le infrastrutture di queste applicazioni che hanno creato i Data CenterIl modello di business tipico è:Si comincia gratisSi aggiungono funzioni a pagamento
Costi NascostiAcquisizione Hardware e SoftwareCespitiInstallazioneConfigurazioneAmministrazionePatchFailureGuasti
DistribuzionedelleResponsabilitàOn-PremisesInfrastructure(as a Service)Software(as a Service)Platform(as a Service)You manageApplicationsApplicationsApplicationsApplicationsYou manageDataDataDataDataYou manageRuntimeRuntimeRuntimeRuntimeMiddlewareMiddlewareMiddlewareMiddlewareOther ManagesOther ManagesO/SO/SO/SO/SVirtualizationVirtualizationVirtualizationVirtualizationOtherManagesServersServersServersServersStorageStorageStorageStorageNetworkingNetworkingNetworkingNetworking
Esempi di SaaS
«Abitudini»...Siamo abituati ad utilizzare su Internet:Posta Elettronica (free)GoogleFacebookLinked InPossiamo fare MOLTO di più...
Un’azienda vuole realizzare un sito Web.Per questo obiettivo, stabilisce un insieme di partner che devono collaborare insieme.Dovranno essere gestiti i documenti di progetto, l’intera schedulazione e comunicazione, condivisi il codice sorgente di sviluppo, definito l’hosting per il sito.Demo: IaaS e SaaS
Gestione di Progetti
Gestione Progetti Software
Gestione Documenti
Gestione Comunicazione
Archivio Codice Sorgente
Elastic Hosting
Per-use Billing
Marketing su Facebook
SCENARI APPLICATIVI PER IL CLOUD COMPUTINGScenari di ApplicazioneQuestionario
Questionario n°3In azienda, avete:Sito web istituzionalepresso providerSito web istituzionale in casaSito web interattivo presso providerSito web interattivo in casa
PaaSPlatform as a ServiceÈ l’evoluzione del «vecchio» hostingOrientato allo sviluppo di applicazioni «on the cloud»Fornisce funzionalità utili al modello cloudI protagonistiGoogle con AppEngineWindows con AzureAmazon Web Services (Simple Storage Services)
Un modellodiriferimentoI componentitipici di unaapplicazione Cloud sono:Front end: load-balanced stateless web serversMiddle worker tier: order processing, encodingBackend storage: SQL tables, files, blobsMultiple instances per scalabilità e disponibilitàFront-EndHTTP/HTTPSStorage,DB relazionaleFrontEndMiddle TierLoad BalancerCloud Application
ScenariapplicativiApplicazionechenecessità di altadisponibilitàEsempio: A SaaS applicationApplicazionechenecessita di altascalabilitàEsempio: unaapplicazione Web 2.0Applicazione con carico molto variabileEsempio: unaapplicazionechepermette di fare registrazioneApplicazioni con duratabreve o non pianificabileUnaapplicazionecreata per unacampagna di marketing
Scenariapplicativi (2)ApplicazionechefacalcoloparalleloEsempio: applicazioni per modellifinanziari o scientificiApplicazionichedevonoscalarerapidamenteEsempio: Start-upsApplicazioniche non siintegranonellagestioneordinaria del datacenterEsempio: applicazionichedevonoessereinstallatevelocementeApplicazionichebeneficiano di spazioEsempio: unaapplicazionechememorizzadati
Un esempio “ludico”Zynga è famoso per Farmville, ilgiocosuFacebookZyngalanciatutti I nuovigiochi Amazon EC2 (attualmente 12000 istanze)Se un gioco ha successo, vieneportato in casa in una cloud privata, chiamata Z Cloud
Un’azienda vuole creare una applicazione per pubblicare fatture per i propri clienti.L’azienda ha un ciclo di fatturazione mensile, ha migliaia di utenti (>50000).Questi ultimi accedono perlopiù (90%) nei due giorni successivi alla pubblicazione.Demo: PaaS
Calcolo dei CostiNovità: dal 1° luglio 2011 i costi in-bound di una applicazione Windows Azure saranno azzerati!
SCENARI APPLICATIVI PER IL CLOUD COMPUTINGConclusioni
ConclusioniIl Cloud Computing è una opportunitàPermette di abbattere i costi infrastrutturali (a cespite)Tutto orientato a costi operativi (di gestione)Non è la panacea di tutti i maliNon è detto che SI DEBBA passare al Cloud
Conclusioni SaaSPermette l’accesso a strumenti che avrebbero costi di acquisizione molto altiTutti hanno una modalità free per provareSostanzialmente limitato in numero di utenti, di durata e di numero di oggettiCompleto nelle funzionalitàAlcuni punti di discussioneLa connettività è sempre più di migliore qualità (ma in effetti c’è ancora molto da fare)Il mobile è sempre più diffusoI gruppi di lavoro sono sempre più eterogenei
Conclusioni IaaSAccesso ad architetture complesseScaling delle applicazioniTutto a costi operativi e non di acquisizioneMinimizzare i costi amministrativiDistribuzione delle funzioniOn-Premise: gestione della lan Aziendale (dominio Windows)File sharingERP (probabile)Contabilità (forse)On Cloud: tutti gli altri servizi (non più DMZ)WebE-MailPortali collaborativi
Conclusioni PaaSNuove opportunità nello sviluppo di soluzioni customAccesso ad architetture complesseScaling (out) delle applicazioniTutto a costi operativi e non di acquisizioneAlta disponibilitàStessi strumenti software
Links e Q&Ahttp://blog.codeisvalue.com/marco.parenzan@libero.ithttp://www.codeisvalue.com/http://www.slideshare.com/marco.parenzanmarco.parenzanmarco_parenzanhttp://www.innovazionefvg.net/
2011.06.30   scenari applicativi per il cloud computing

2011.06.30 scenari applicativi per il cloud computing

  • 1.
    SCENARI APPLICATIVIPER ILCLOUD COMPUTINGMarco ParenzanSoftware Architect, 1nn0va
  • 2.
    Agenda(Re)Introduzione al CloudComputingCaratteristiche EssenzialiModelli di ImplementazioneTecnologie AbilitantiScenari applicativiConclusioni
  • 3.
    SCENARI APPLICATIVIPER ILCLOUD COMPUTING(Re)Introduzione al Cloud Computing
  • 4.
    On-Premise“On-Premise” significa “incasa”Risorse, hardware e software, sono “proprie”È la situazione originale con cui si comparano le scelte del CloudComputing
  • 5.
    Definizione di CloudComputingIlCloud Computing è un modelloabilitantel’accesso, conveniente e surichiesta, ad un insiemedirisorsedicalcolo (es. reti, servers, archiviazione, applicazioni e servizi) chepossonoessereapprovigionate (“provisioned”) rapidamente, in manierasemplice.Rif. http://www.nist.gov/itl/cloud/Cos’è il Cloud ComputingIn apparenza è «minestra riscaldata»È la prima vera strategia di marketing per «vendere» la capacità di calcolo di InternetÈ legata all’evoluzione dei Data CenterUtility Computing: pay-as-you-go computingIllusionedirisorse infiniteNessuncostodiavvioFatturazionegranulare (costiorari)
  • 6.
    I Player delCloudComputingÈ un percorso obbligato per i grandi di Internet per sostenere i costi dei nuovi Data CenterExperience with very large datacentersUnprecedented economies of scale
  • 10.
    Tecnologie abilitantiReti (WAN)velociComputer potentiedeconomiciVirtualizzazioneefficienteStandard softwarePagamento a consumo
  • 11.
    Economia dei CloudProviders5-7x economies of scale [Hamilton 2008]Extra benefitsAmazon: utilize off-peak capacityMicrosoft: sell .NET toolsGoogle: reuse existing infrastructure
  • 12.
  • 13.
    Questionario n°1Sapete qualeè il costo operativo dell’IT nella vostra azienda? Per costo operativo intendiamo il totale dell’impegno di persone nel far vivere il reparto IT (installare un service pack, stampante che non stampa, elettricità per i server...)SìNo
  • 15.
    SCENARI APPLICATIVIPER ILCLOUD COMPUTINGCaratteristiche Essenziali
  • 16.
  • 17.
    ScalabilitàDa WikipediaIl terminescalabilità, nelle telecomunicazioni, nell'ingegneria del software, in informatica, e in altre discipline, si riferisce, in termini generali, alla capacità di un sistema di "crescere" o "decrescere" (aumentare o diminuire di scala) in funzione delle necessità e delle disponibilità. Un sistema che gode di questa proprietà viene detto scalabile.
  • 18.
    ElasticitàElasticity is definedas the ability to scale resources both up and down as needed. To the consumer, the cloud appears to be infinite, and the consumer can purchase as much or as little computing power as they need. This is one of the essential characteristics of cloud computing in the NIST definition.
  • 19.
  • 20.
    On-demand self serviceUnutilizzatorediservizi “cloud” puòutilizzare I servizistessi in autonomia, senzaalcunainterazione con il cloud provider
  • 21.
    Accesso alla retepervasivoLe risorse “cloud” sonoaccessibiliattraverso Internet, senzaalcunalimitazione, attraversoprotocolli standard, da client leggeri (“thin”) o piùstrutturati (“thick”)
  • 22.
    Resource poolingUn fornitoredi“cloud” applicailmodello “multi-tenant” (multi-”affittuario”).Le risorsesonodisponibilit a tutti I clientiLe risorsesonoassegnaree riassegnate a secondadelladomanda.Il cliente non ha genericamente la percezione dove sia effettivamente disponibile la risorsa
  • 23.
    Servizio misuratoTuttigliaspettidi unservizio cloud (CPU, memoria, storage, I/O) sonomonitoratida un cloud provider.È fondamentale per FatturazioneControllodegliaccessiOttimizzazionedellerisorsePianificazionedellecapacità
  • 24.
    SCENARI APPLICATIVIPER ILCLOUD COMPUTINGModelli di Implementazione
  • 25.
  • 26.
    Public CloudUna Cloudè pubblica se è accessibileattraverso ISP terziPubblico non significa “free”Pubblico non significache I datidi un utentesonopubblicamentevisibiliI principi del cloud (a partiredalladisponibilità) sonodisponibili
  • 27.
    Private CloudUna Cloudè privataquandoÈ “cloud” (elasticità, pooling dellerisorse, ecc..)Gestitaall’internodiunaorganizzazioneNessunarestrizionedibandadireteSicurezza “LAN” invecedi Internet
  • 28.
    Community CloudUna CommunityCloud è controllatada un gruppodiorganizzazioni, invececheda un singolo. CondividonostessomeccanismodisicurezzaAccessoaidatiApplicazioni del Cloud
  • 29.
    Hybrid CloudÈ unacombinazionediunapublic e diuna private cloudTipicamente è la sceltadiun’aziendadipubblicarenella public cloud informazioni non criticheall’azienda.Probabilmente è ilmodellodiriferimentocheun’aziendadovrebbescegliereQuestionario
  • 30.
    Questionario n°2Avete datiche condividete in quantità, regolarmente, con i parter (clienti, fornitori, utenti) dell’azienda? FattureBolleOrdiniSituazioni OrdiniDisegni di ProgettoAltro
  • 31.
    SCENARI APPLICATIVIPER ILCLOUD COMPUTINGSfide legate al CloudComputing
  • 32.
    Sfide per l’adozioneDitante, in evidenza una tematica solaQuali sono le sfide da affrontare per l’adozione del cloud?
  • 33.
    SCENARI APPLICATIVI PERIL CLOUD COMPUTINGModelli di Servizio
  • 34.
    Modelli di ServizioINFRASTRUCTUREPLATFORMSOFTWAREASA SERVICEAS A SERVICEAS A SERVICETre modelli di servizioInfrastructure as a Service (IaaS)Platform as a Service (PaaS)Software as a Service (SaaS)
  • 35.
    IaaSInfrastructure as aServiceÈ l’evoluzione del «vecchio» housingÈ l’applicazione delle macchine virtualiIl protagonista principale è Amazon con EC2Elastic Cloud ComputingAnche Windows Azure ha questo con la VM Role
  • 36.
    PaaSPlatform as aServiceNe riparliamo dopo…
  • 37.
    SaaSSoftware as aServiceÈ l’integrazione nella filosofia «cloud» delle applicazioni che normalmente utilizziamo, dalla posta elettronica, ai documentiSono le infrastrutture di queste applicazioni che hanno creato i Data CenterIl modello di business tipico è:Si comincia gratisSi aggiungono funzioni a pagamento
  • 38.
    Costi NascostiAcquisizione Hardwaree SoftwareCespitiInstallazioneConfigurazioneAmministrazionePatchFailureGuasti
  • 39.
    DistribuzionedelleResponsabilitàOn-PremisesInfrastructure(as a Service)Software(asa Service)Platform(as a Service)You manageApplicationsApplicationsApplicationsApplicationsYou manageDataDataDataDataYou manageRuntimeRuntimeRuntimeRuntimeMiddlewareMiddlewareMiddlewareMiddlewareOther ManagesOther ManagesO/SO/SO/SO/SVirtualizationVirtualizationVirtualizationVirtualizationOtherManagesServersServersServersServersStorageStorageStorageStorageNetworkingNetworkingNetworkingNetworking
  • 40.
  • 41.
    «Abitudini»...Siamo abituati adutilizzare su Internet:Posta Elettronica (free)GoogleFacebookLinked InPossiamo fare MOLTO di più...
  • 42.
    Un’azienda vuole realizzareun sito Web.Per questo obiettivo, stabilisce un insieme di partner che devono collaborare insieme.Dovranno essere gestiti i documenti di progetto, l’intera schedulazione e comunicazione, condivisi il codice sorgente di sviluppo, definito l’hosting per il sito.Demo: IaaS e SaaS
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
    SCENARI APPLICATIVI PERIL CLOUD COMPUTINGScenari di ApplicazioneQuestionario
  • 52.
    Questionario n°3In azienda,avete:Sito web istituzionalepresso providerSito web istituzionale in casaSito web interattivo presso providerSito web interattivo in casa
  • 53.
    PaaSPlatform as aServiceÈ l’evoluzione del «vecchio» hostingOrientato allo sviluppo di applicazioni «on the cloud»Fornisce funzionalità utili al modello cloudI protagonistiGoogle con AppEngineWindows con AzureAmazon Web Services (Simple Storage Services)
  • 54.
    Un modellodiriferimentoI componentitipicidi unaapplicazione Cloud sono:Front end: load-balanced stateless web serversMiddle worker tier: order processing, encodingBackend storage: SQL tables, files, blobsMultiple instances per scalabilità e disponibilitàFront-EndHTTP/HTTPSStorage,DB relazionaleFrontEndMiddle TierLoad BalancerCloud Application
  • 55.
    ScenariapplicativiApplicazionechenecessità di altadisponibilitàEsempio:A SaaS applicationApplicazionechenecessita di altascalabilitàEsempio: unaapplicazione Web 2.0Applicazione con carico molto variabileEsempio: unaapplicazionechepermette di fare registrazioneApplicazioni con duratabreve o non pianificabileUnaapplicazionecreata per unacampagna di marketing
  • 56.
    Scenariapplicativi (2)ApplicazionechefacalcoloparalleloEsempio: applicazioniper modellifinanziari o scientificiApplicazionichedevonoscalarerapidamenteEsempio: Start-upsApplicazioniche non siintegranonellagestioneordinaria del datacenterEsempio: applicazionichedevonoessereinstallatevelocementeApplicazionichebeneficiano di spazioEsempio: unaapplicazionechememorizzadati
  • 57.
    Un esempio “ludico”Zyngaè famoso per Farmville, ilgiocosuFacebookZyngalanciatutti I nuovigiochi Amazon EC2 (attualmente 12000 istanze)Se un gioco ha successo, vieneportato in casa in una cloud privata, chiamata Z Cloud
  • 58.
    Un’azienda vuole creareuna applicazione per pubblicare fatture per i propri clienti.L’azienda ha un ciclo di fatturazione mensile, ha migliaia di utenti (>50000).Questi ultimi accedono perlopiù (90%) nei due giorni successivi alla pubblicazione.Demo: PaaS
  • 59.
    Calcolo dei CostiNovità:dal 1° luglio 2011 i costi in-bound di una applicazione Windows Azure saranno azzerati!
  • 60.
    SCENARI APPLICATIVI PERIL CLOUD COMPUTINGConclusioni
  • 61.
    ConclusioniIl Cloud Computingè una opportunitàPermette di abbattere i costi infrastrutturali (a cespite)Tutto orientato a costi operativi (di gestione)Non è la panacea di tutti i maliNon è detto che SI DEBBA passare al Cloud
  • 62.
    Conclusioni SaaSPermette l’accessoa strumenti che avrebbero costi di acquisizione molto altiTutti hanno una modalità free per provareSostanzialmente limitato in numero di utenti, di durata e di numero di oggettiCompleto nelle funzionalitàAlcuni punti di discussioneLa connettività è sempre più di migliore qualità (ma in effetti c’è ancora molto da fare)Il mobile è sempre più diffusoI gruppi di lavoro sono sempre più eterogenei
  • 63.
    Conclusioni IaaSAccesso adarchitetture complesseScaling delle applicazioniTutto a costi operativi e non di acquisizioneMinimizzare i costi amministrativiDistribuzione delle funzioniOn-Premise: gestione della lan Aziendale (dominio Windows)File sharingERP (probabile)Contabilità (forse)On Cloud: tutti gli altri servizi (non più DMZ)WebE-MailPortali collaborativi
  • 64.
    Conclusioni PaaSNuove opportunitànello sviluppo di soluzioni customAccesso ad architetture complesseScaling (out) delle applicazioniTutto a costi operativi e non di acquisizioneAlta disponibilitàStessi strumenti software
  • 65.