SlideShare a Scribd company logo
  Emanuele Barrano – ebarrano@imolinfo.it
                                                                        Filippo Bosi – fbosi@imolinfo.it
                                                         Vincenzo Laudizio – vincenzo.laudizio@deri.org

Seminari	
  ICT	
  corso	
  ReB	
  di	
  Calcolatori	
  –	
  Universitá	
  di	
  Bologna	
  -­‐	
  	
  25	
  Maggio	
  2012	
  

CLOUD	
  COMPUTING	
  E	
  ARCHITETTURE	
  SOFTWARE:	
  
QUALI	
  IMPATTI	
  SULLO	
  SVILUPPO	
  DELLE	
  APPLICAZIONI?	
  
Agenda	
  

›  Cloud	
  Overview	
  
›  Approcci	
  del	
  Cloud	
  Compu2ng	
  
›  Conseguenze	
  dell’u2lizzo	
  di	
  Pia:aforme	
  
   Cloud	
  (PaaS)	
  sullo	
  sviluppo	
  di	
  
   applicazioni	
  
›  Demo	
  –	
  Sessione	
  pra2ca	
  
›  Conclusioni	
  



                                                  Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                          2
        Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Cloud	
  CompuBng:	
  ConceW	
  e	
  Parole	
  Chiave	
  

ConceK 	
                     	
                	
                        	
                        	
  	
  	
  	
  	
  	
  	
  	
  	
  Parole	
  Chiave	
  

›    disponibilità	
  di	
  risorse	
  IT	
  “on	
  demand”	
                                                               ›        On	
  demand	
  
›    affidabilitá	
  delle	
  risorse	
  su	
  richiesta	
                                                                    ›        Reliability	
  
›    virtualizzazione	
  di	
  componen2	
  IT	
                                                                            ›        Virtualiza2on	
  
›    allocazione	
  “veloce”	
  di	
  risorse	
  
                            F	
                                                                                             ›        Provisioning	
  
›    archite:ure	
  	
  orientate	
  all’alta	
  scalabilitá	
                                                              ›        Scalability	
  




                                                                               Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                       3
                                     Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Cosa	
  è	
  il	
  	
  Cloud	
  CompuBng?	
  


›    Dal	
  punto	
  di	
  vista	
  dello	
  sviluppo	
  soPware,	
  il	
  Cloud	
  Compu2ng	
  
     é	
  un’infrastru:ura	
  di	
  sviluppo	
  e	
  di	
  esecuzione	
  che	
  offre	
  

      ›    una	
  interfaccia	
  utente	
  che	
  nasconde	
  le	
  complessità	
  di	
  ges2one	
  a	
  basso	
  
           livello	
  dell’infrastru:ura	
  
      ›    riduzione	
  dei	
  cos2	
  di	
  amministrazione	
  e	
  dei	
  rela2vi	
  skill	
  necessari	
  
      ›    un	
  insieme	
  di	
  servizi	
  orienta2	
  all’amministrazione	
  dell’infrastru:ura	
  
           stessa	
  
      ›    alta	
  scalabilità,	
  preconfigurata	
  




                                                                                   Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                           4
                                         Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Cloud	
  CompuBng	
  ConBnuum	
  


›    Il	
  Cloud	
  può	
  essere	
  visto	
  come	
  un	
  con2nuum	
  di	
  servizi	
  su	
  
     differen2	
  livelli,	
  dall’infrastru:ura	
  al	
  soPware	
  

                                                 ›         Infrastructure:	
  fornitura	
  di	
  hardware	
  
                                                           su	
  cui	
  generalmente	
  si	
  ha	
  controllo	
  
                                                           sul	
  Sistema	
  Opera2vo	
  
                                                 ›         PlaXorm:	
  ambien2	
  di	
  più	
  alto	
  livello	
  
                                                           per	
  i	
  quali	
  gli	
  sviluppatori	
  realizzano	
  
                                                           applicazioni	
  custom	
  
                                                 ›         SoPware:	
  soPware	
  specializzato	
  reso	
  
                                                           disponibile	
  a:raverso	
  internet	
  




                                                                               Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                       5
                                     Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Un	
  esempio	
  di	
  IaaS	
  –	
  Amazon	
  EC2	
  (I)	
  


›    Specifiche	
  tecniche	
  
      ›    AMI	
  (Amazon	
  Machine	
  Image)	
  
            ›  Immagini	
  di	
  macchine	
  virtuali	
  preconfigurate	
  e	
  ready-­‐to-­‐go	
  
      ›    Amazon	
  S3	
  (Simple	
  Storage	
  Service)	
  
            ›  Infrastru:ura	
  di	
  storage	
  proprietaria	
  di	
  Amazon	
  che	
  funge	
  da	
  
               repository	
  per	
  lo	
  storage	
  delle	
  AMIs	
  
      ›    Amazon	
  EC2	
  (Elas2c	
  Cloud	
  Compu2ng)	
  
            ›  Applicazione	
  Web	
  che	
  perme:e	
  l’amministrazione	
  delle	
  macchine	
  
               virtuali	
  offerte	
  all’utente	
  finale	
  
›    Schema	
  “Pay	
  per	
  Use”	
  basato	
  su	
  
      ›    SLA	
  
      ›    Traffico	
  da2	
  
      ›    Consumo	
  di	
  CPU	
  
      ›    Spazio	
  di	
  Storage	
  u2lizzato	
  


                                                                                    Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                            6
                                          Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
IaaS	
  –	
  Amazon	
  EC2	
  (II)	
  


›    Passi	
  necessari	
  per	
  
     l’u2lizzo	
  
      ›    Un	
  account	
  Amazon	
  
           EC2	
  
      ›    Connessione	
  internet	
  
           e	
  un	
  browser	
  
      ›    Startup	
  dell’AMI	
  
      ›    Amministrazione	
  da	
  
           interfaccia	
  utente	
  
           amazon	
  




                                                                               Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                       7
                                     Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
IaaS	
  –	
  Amazon	
  EC2	
  (III)	
  


›    Cara:eris2che	
  di	
  ges2one	
  
      ›    Capacità	
  di	
  auto-­‐configurazione	
  dell’infrastru:ura	
  hardware	
  in	
  termini	
  
           di	
  
             ›  CPU	
  
             ›  RAM	
  
             ›  Storage	
  
             ›  Network	
  firewall	
  
      ›    Shell	
  remota	
  SSH	
  
      ›    Disponibilità	
  di	
  template	
  di	
  immagini	
  di	
  macchina	
  (Amazon	
  AMI)	
  con	
  
           un	
  approccio	
  di	
  condivisione	
  di	
  2po	
  “Community”	
  
      ›    Disponibilità	
  –	
  nell’ambiente	
  –	
  di	
  una	
  serie	
  di	
  macchine	
  preconfigurate	
  
           da	
  Amazon	
  stessa	
  
      ›    Monitoraggio	
  delle	
  risorse	
  in	
  real-­‐2me	
  




                                                                                   Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                           8
                                         Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
PaaS	
  –	
  Google	
  App	
  Engine	
  


›    h:p://code.google.com/appengine	
  
›    Google	
  App	
  Engine	
  perme:e	
  di	
  costruire	
  e	
  far	
  girare	
  
     applicazioni	
  web,	
  sullo	
  stesso	
  sistema	
  che	
  Google	
  u2lizza	
  per	
  
     le	
  proprie	
  applicazioni	
  
›    Sviluppo	
  rapido	
  
›    Messa	
  in	
  produzione	
  rapida	
  
›    Amministrazione	
  semplificata	
  
›    Non	
  ci	
  si	
  deve	
  preoccupare	
  dell’hardware,	
  dell’installazioni	
  di	
  
     patch	
  nel	
  sistema	
  opera2vo	
  o	
  nel	
  middleware,	
  né	
  dei	
  backup	
  
›    Python,	
  Java,	
  Go	
  (h:p://golang.org)	
  
›    Data	
  Store	
  di	
  2po	
  NoSQL	
  (“BigTable”)	
  
›    Scalabilità	
  automa2ca	
  delle	
  risorse	
  
›    Orientato	
  all’esecuzione	
  di	
  algoritmi	
  specializza2,	
  quali	
  ad	
  
     esempio	
  il	
  Map-­‐Reduce	
  
                                                                             Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                     9
                                   Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
PaaS	
  –	
  CloudBees	
  


›    h:p://www.cloudbees.com	
  
›    La	
  pia:aforma	
  CloudBees	
  offre	
  la	
  possibilità	
  di	
  effe:uare	
  
     build,	
  test	
  ed	
  esecuzione	
  di	
  applica2vi	
  Java	
  EE	
  
›    Offre	
  
      ›    Una	
  pia:aforma	
  di	
  sviluppo	
  
             ›  Maven	
  repository	
  
             ›  sistema	
  di	
  versionamento	
  dei	
  sorgen2:	
  SVN	
  Git	
  
             ›  sistema	
  di	
  Con2nuous	
  Integra2on	
  preconfigurato	
  
      ›    Una	
  pia:aforma	
  di	
  esecuzione	
  di	
  applicazioni	
  J2EE	
  e	
  Spring	
  
             ›  load	
  balancing	
  
             ›  scalabilità	
  
             ›  alta	
  affidabilità	
  

                                                                                   Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                           10
                                         Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
PaaS	
  –	
  RedHat	
  OpenShiT	
  


›    h:p://openshiP.redhat.com	
  
›    La	
  pia:aforma	
  OpenShiP	
  offre	
  supporto	
  di	
  sviluppo	
  ed	
  esecuzione	
  mul2-­‐
     linguaggio	
  e	
  mul2-­‐framework,	
  ed	
  è	
  un	
  PaaS	
  basato	
  principalmente	
  sull’offerta	
  
     di	
  pia:aforme	
  soPware	
  di	
  RedHat.	
  

      ›    Costruito	
  su	
  RHEL	
  (RedHat	
  Enterprise	
  Linux)	
  
      ›    Selezione	
  di	
  linguaggi,	
  framework	
  e	
  middleware	
  
             ›  Approccio	
  “cartdrige”,	
  che	
  perme:e	
  allo	
  sviluppatore	
  di	
  selezionare	
  i	
  componen2	
  che	
  interessano	
  
      ›    Java,	
  Ruby,	
  PHP,	
  Python,	
  node.js	
  
      ›    MongoDB,	
  JBoss,	
  Jenkins…	
  
      ›    Ruby	
  on	
  Rails,	
  Drupal,	
  Wordpress,	
  MySQL	
  
›    Questa	
  pia:aforma	
  è	
  un	
  esempio	
  di	
  come	
  nell’arco	
  di	
  6	
  mesi	
  
     un’offerta	
  PaaS	
  possa	
  cambiare	
  radicalmente	
  
      ›    Es.	
  fino	
  a	
  qualche	
  mese	
  fa	
  c’erano	
  3	
  offerte	
  commerciali	
  e	
  era	
  disponibile	
  
           SOLO	
  un’interfaccia	
  web	
  
      ›    Oggi	
  interfaccia	
  a	
  linea	
  di	
  comando,	
  disponibilitá	
  di	
  una	
  versione	
  open	
  
           source	
  e	
  nessuna	
  offerta	
  specializzata,	
  il	
  tu:o	
  fuori	
  dal	
  controllo	
  degli	
  
           sviluppatori	
  

                                                                                                   Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                                           11
                                                         Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
ImpaW	
  del	
  Cloud	
  CompuBng	
  sullo	
  sviluppo	
  di	
  Applicazioni	
  



›    Gli	
  impaK	
  sono	
  diversi,	
  a	
  seconda	
  del	
  livello	
  di	
  servizi	
  Cloud	
  che	
  si	
  
     u2lizza	
  
     ›    Sviluppo	
  su	
  IaaS	
  
           ›    +	
  Il	
  programmatore	
  ha	
  a	
  disposizione	
  un’infrastru:ura	
  virtualizzata	
  pronta	
  
                all’uso.	
  
           ›    +	
  Immagini	
  preconfigurate	
  funzionan2	
  su	
  hardware	
  virtualizzato	
  
           ›    +	
  Possibilitá	
  di	
  o:enere	
  configurazioni	
  avanzate	
  a:raverso	
  una	
  semplice	
  
                interfaccia	
  utente	
  
           ›    -­‐	
  Necessità	
  di	
  ges2re	
  i	
  componen2	
  infrastru:urali	
  (ad	
  es.	
  aggiornamen2	
  del	
  
                Sistema	
  Opera2vo,	
  applicazione	
  di	
  patch	
  di	
  sicurezza,	
  ecc.)	
  	
  e	
  del	
  middleware	
  
                (ad	
  es.	
  il	
  web	
  server,	
  gli	
  applica2on	
  server,	
  ecc.)	
  
     ›    Sviluppo	
  su	
  PaaS	
  
           ›    +	
  Il	
  programmatore	
  può	
  sfru:are	
  tuK	
  i	
  vantaggi	
  di	
  una	
  pia:aforma	
  che	
  
                nasconde	
  ogni	
  de:agli	
  dell’infrastru:ura	
  virtuale	
  
           ›    -­‐	
  Vi	
  sono	
  maggiori	
  limitazioni	
  imposte	
  dalla	
  definizione	
  stessa	
  della	
  pia:aforma	
  
                da	
  parte	
  del	
  provider	
  (sia	
  inizialmente,	
  sia	
  in	
  corso	
  d’opera,	
  ad	
  es.	
  evoluzioni	
  
                della	
  pia:aforma)	
  
     ›    Sviluppo	
  su	
  SaaS	
  
           ›    Normalmente	
  sono	
  applicazioni	
  giá	
  pronte	
  all’uso:	
  non	
  c’é	
  necessitá	
  di	
  
                sviluppo	
  (questo	
  significa	
  che	
  gli	
  sviluppatori	
  non	
  avranno	
  alcun	
  impa:o	
  )	
  


                                                                                        Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                                12
                                              Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Sviluppo	
  su	
  IaaS	
  (I)	
  


›    Può	
  essere	
  definita	
  come	
  “virtualizzazione	
  avanzata”	
  
›    Controllo	
  sul	
  soPware	
  e	
  sull’infrastru:ura	
  hardware	
  (virtuale)	
  
›    Possibilità	
  completa	
  di	
  autoconfigurazione	
  dello	
  stack	
  
     soPware	
  sull’infrastru:ura	
  cloud	
  
      ›    +	
  Disponibilità	
  di	
  template	
  precostrui2,	
  possibilità	
  di	
  effe:uare	
  tuning	
  
           e	
  customizzare	
  i	
  template	
  (ad	
  es.	
  parto	
  da	
  uno	
  stack	
  standard	
  LAMP,	
  o	
  
           uno	
  standard	
  stack	
  J2EE	
  e	
  poi	
  opero	
  modifiche	
  in	
  piena	
  libertà)	
  
      ›    -­‐	
  Vi	
  è	
  necessità	
  di	
  mantenere	
  nel	
  tempo	
  la	
  configurazione	
  
           dell’infrastru:ura	
  (ad	
  es.	
  patch	
  di	
  sicurezza,	
  aggiornamen2	
  del	
  sistema	
  
           opera2vo,	
  aggiornamen2	
  del	
  middleware)	
  
›  Sostanzialmente,	
  al	
  provider	
  IaaS	
  è	
  affidata	
  la	
  “sola”	
  
     ges2one	
  dell’hardware	
  fisico	
  e	
  dell’infrastru:ura	
  di	
  
     virtualizzazione.	
  


                                                                                     Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                             13
                                           Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Sviluppo	
  su	
  IaaS	
  (II)	
  


›    -­‐	
  L’indipendenza	
  dall’hardware	
  implica	
  alcuni	
  cos2	
  
                ›  ad	
  es.	
  performance	
  delle	
  virtual	
  machine	
  rispe:o	
  all’u2lizzo	
  dire:o	
  
                 dell’hardware	
  fisico	
  (20%	
  di	
  overhead,	
  approssima2vamente)	
  
›    +	
  Di	
  contro,	
  la	
  virtualizzazione	
  perme:e	
  di	
  o:enere	
  una	
  
     scalabilità	
  molto	
  flessibile.	
  Si	
  può	
  fare	
  upgrade	
  della	
  potenza	
  
     di	
  computazione,	
  a	
  seconda	
  delle	
  esigenze	
  dell’applicazione.	
  
›    -­‐	
  Il	
  programmatore	
  deve	
  avere,	
  tra	
  le	
  proprie	
  conoscenze,	
  la	
  
     capacità	
  di	
  ges2re	
  ad	
  un	
  certo	
  livello	
  il	
  sistema	
  opera2vo,	
  il	
  
     middleware	
  e	
  in	
  generale	
  l’ambiente	
  di	
  esecuzione	
  dei	
  propri	
  
     programmi	
  




                                                                                      Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                              14
                                            Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Sviluppo	
  su	
  PaaS	
  (I)	
  


›    E’	
  un	
  servizio	
  Cloud	
  che	
  offre	
  
      ›  Pia:aforme	
  soPware	
  general-­‐purpose	
  complete	
  
              ›  J2EE	
  
              ›  MicrosoP	
  .Net	
  
              ›  LAMP	
  Stack	
  
›    L’infrastru:ura	
  (Virtuale?)	
  é	
  completamente	
  nascosta	
  allo	
  
     sviluppatore	
  
      ›  …ecce:o	
  la	
  possibilità	
  di	
  monitorare	
  le	
  performance	
  e…	
  
            l’addebito	
  dei	
  cos2	
  	
  (basato	
  solitamente	
  sull’u2lizzo	
  di	
  
            risorse	
  infrastru:urali)	
  




                                                                             Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                     15
                                   Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Sviluppo	
  su	
  PaaS	
  (II)	
  


›    Il	
  programmatore	
  non	
  si	
  deve	
  più	
  (pre)occupare	
  
      ›    dell’infrastru:ura	
  che	
  supporta	
  gli	
  ambien2	
  di	
  sviluppo	
  e	
  di	
  esecuzione	
  
      ›    della	
  configurazione	
  di	
  
             ›  Hardware	
  
             ›  soPware	
  (lo	
  stack	
  soPware	
  viene	
  aggiornato	
  automa2camente	
  dal	
  
                fornitore	
  della	
  pia:aforma)	
  
›    Il	
  programmatore	
  si	
  può	
  concentrare	
  sulle	
  sole	
  aKvità	
  di	
  
     sviluppo	
  sulla	
  pia:aforma	
  offerta	
  dal	
  provider	
  
›    “Scompaiono”	
  conceK	
  di	
  base	
  dei	
  sistemi	
  soPware	
  
      ›  Sistema	
  opera2vo	
  
      ›  File	
  System	
  
      ›  Applica2on	
  Server	
  
      ›  …	
  


                                                                                   Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                           16
                                         Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Cloud	
  in	
  azione…	
  


DEMO	
  
  › 	
  Creazione	
  ed	
  u2lizzo	
  di	
  un’infrastru:ura	
  IaaS	
  su	
  
  Amazon	
  EC2	
  
  › 	
  Creazione	
  ed	
  esecuzione	
  di	
  una	
  web	
  applica2on	
  su	
  
  OpenShiP	
  (PaaS)	
  
  › 	
  Creazione	
  ed	
  esecuzione	
  di	
  una	
  web	
  applica2on	
  su	
  
  CloudBees	
  

  › 	
  …collabora2vamente	
  	
  	
  



                                                                       Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                               17
                             Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
Conclusioni	
  


›    Evoluzione	
  dell’offerta	
  di	
  servizi	
  Cloud	
  
      ›    IaaS	
  
              ›  Da	
  un	
  ambiente	
  standard	
  di	
  sviluppo	
  e	
  deploy	
  di	
  applicazioni,	
  il	
  
                  programmatore	
  trae	
  beneficio	
  di	
  virtualizzazione	
  avanzata/meccanismi	
  di	
  
                  templa2ng/interfaccia	
  di	
  management	
  
      ›    PaaS	
  
              ›  Il	
  programmatore	
  trae	
  beneficio	
  da	
  una	
  pia:aforma	
  completamente	
  
                  virtualizzata	
  	
  
      ›    Gli	
  IaaS	
  sono	
  per	
  i	
  system	
  manager,	
  ciò	
  che	
  i	
  PaaS	
  sono	
  per	
  i	
  
           programmatori/architeK	
  

›    I	
  PaaS	
  sono	
  la	
  “vera”	
  rivoluzione	
  per	
  gli	
  sviluppatori	
  (gli	
  IaaS	
  sono	
  
     semplicemente	
  un	
  passo	
  evolu2vo	
  della	
  virtualizzazione)	
  
      ›    Un	
  programmatore	
  non	
  dovrà	
  più	
  occuparsi	
  dei	
  de:agli	
  infrastru:urali	
  per	
  
           il	
  funzionamento	
  della	
  pia:aforma	
  (e,	
  di	
  conseguenza,	
  della	
  propria	
  
           applicazione)	
  
      ›    Un	
  programmatore	
  si	
  dovrà	
  preoccupare	
  solo	
  di	
  un’aKvità:	
  lo	
  sviluppo	
  
           applica2vo	
  

                                                                                           Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                                   18
                                                 Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
DOMANDE?	
  




                                                         Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                 19
               Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
RiferimenB	
  


›  Lista	
  di	
  Cloud	
  PaaS	
  provider	
  per	
  java	
  
     ›    h:p://gevaperry.typepad.com/main/2011/10/java-­‐paas.html	
  
     ›  Heroku	
  (pia:aforma	
  PaaS	
  di	
  SalesForce)	
  
                ›    h:p://www.heroku.com/	
  (Salesforce)	
  

›  Wikipedia	
  
     ›  h:p://en.wikipedia.org/wiki/PlaXorm_as_a_service	
  




                                                                                  Cloud	
  CompuBng	
  e	
  ArchiteSure	
  SoTware	
  
                                                                                                                                                          20
                                        Seminari	
  di	
  ReB	
  di	
  Calcolatori	
  –	
  	
  Universitá	
  di	
  Bologna,	
  25	
  Maggio	
  2012	
  
    More	
  than	
  20	
  years	
  of	
  experience	
  on	
  Enterprise	
  IT	
  
    Consul2ng	
  and	
  Skill	
  Transfer	
  on	
  Architecture,	
  IntegraBon	
  and	
  Process	
  	
  
    OMG	
  Influence	
  Member,	
  JSR	
  312	
  Expert	
  Group,	
  CSI,	
  WWISA,	
  OpenESB	
  Key	
  
     Partner,	
  NetBeans	
  Strategic	
  Partner	
  
    h:p://www.imolinfo.it/index_en.php	
  



  SemanBc	
  Web	
  company,	
  now!	
  
  Applied	
  research,	
  training,	
  projects	
  
  h:p://www.sensiblelogic.it	
  



    The	
  online	
  italian	
  community	
  dedicated	
  to	
  Java	
  
    10	
  years	
  of	
  ar2cles,	
  publica2ons,	
  books,	
  events,	
  training	
  
    From	
  programmers	
  to	
  architect	
  
    More	
  than	
  1.000.000	
  read	
  pages	
  per	
  month	
  
    h:p://www.mokabyte.it	
  

                                                                                                     21

More Related Content

Similar to 20120525 seminario uni bo reti calcolatori - imola informatica - cloud computing and software development

2011.06.30 scenari applicativi per il cloud computing
2011.06.30   scenari applicativi per il cloud computing2011.06.30   scenari applicativi per il cloud computing
2011.06.30 scenari applicativi per il cloud computing
Marco Parenzan
 
Tesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computingTesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computing
francesco pesare
 
Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...
Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...
Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...
Enrico Franceschini
 
Osd 2016 Middleware Track
Osd 2016 Middleware TrackOsd 2016 Middleware Track
Osd 2016 Middleware Track
Ugo Landini
 
Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...
Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...
Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...
Marco Parenzan
 
Tesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - VaianoTesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - Vaiano
Marco Vaiano
 
Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20
Romualdo Gobbo
 
Cloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazioneCloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazione
Mario Gentili
 
Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?
Andrea Carratta
 
AWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan DavideAWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan DavideDavide Trevisan
 
Architetture a Microservizi con Docker Container
Architetture a Microservizi con Docker ContainerArchitetture a Microservizi con Docker Container
Architetture a Microservizi con Docker Container
Roberto Messora
 
Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e KubernetesWorkshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
blexin
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
Daniele Mondello
 
Market Oriented Clouds: the local perspective
Market Oriented Clouds: the local perspective Market Oriented Clouds: the local perspective
Market Oriented Clouds: the local perspective
TOP-IX Consortium
 
Virtualizzazione&Cloud Computing
Virtualizzazione&Cloud ComputingVirtualizzazione&Cloud Computing
Virtualizzazione&Cloud Computing
VMEngine
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Alberto Costantin
 
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischiScenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Flavia Marzano
 
Smau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architetturaSmau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architetturaSMAU
 
Docker vs Virtualizzazioni
Docker vs VirtualizzazioniDocker vs Virtualizzazioni
Docker vs Virtualizzazioni
Giuliano Latini
 

Similar to 20120525 seminario uni bo reti calcolatori - imola informatica - cloud computing and software development (20)

Cloud in Action_6 giugno 2014
Cloud in Action_6 giugno 2014Cloud in Action_6 giugno 2014
Cloud in Action_6 giugno 2014
 
2011.06.30 scenari applicativi per il cloud computing
2011.06.30   scenari applicativi per il cloud computing2011.06.30   scenari applicativi per il cloud computing
2011.06.30 scenari applicativi per il cloud computing
 
Tesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computingTesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computing
 
Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...
Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...
Utilizzo del Software OpenStack per la realizzazione di piattaforme "Cloud" -...
 
Osd 2016 Middleware Track
Osd 2016 Middleware TrackOsd 2016 Middleware Track
Osd 2016 Middleware Track
 
Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...
Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...
Introduction to Cloud Computing and Microsoft Azure - Edition D-Day 2014 Go-o...
 
Tesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - VaianoTesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - Vaiano
 
Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20
 
Cloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazioneCloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazione
 
Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?
 
AWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan DavideAWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan Davide
 
Architetture a Microservizi con Docker Container
Architetture a Microservizi con Docker ContainerArchitetture a Microservizi con Docker Container
Architetture a Microservizi con Docker Container
 
Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e KubernetesWorkshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
 
Market Oriented Clouds: the local perspective
Market Oriented Clouds: the local perspective Market Oriented Clouds: the local perspective
Market Oriented Clouds: the local perspective
 
Virtualizzazione&Cloud Computing
Virtualizzazione&Cloud ComputingVirtualizzazione&Cloud Computing
Virtualizzazione&Cloud Computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischiScenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
 
Smau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architetturaSmau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architettura
 
Docker vs Virtualizzazioni
Docker vs VirtualizzazioniDocker vs Virtualizzazioni
Docker vs Virtualizzazioni
 

20120525 seminario uni bo reti calcolatori - imola informatica - cloud computing and software development

  • 1.   Emanuele Barrano – ebarrano@imolinfo.it   Filippo Bosi – fbosi@imolinfo.it   Vincenzo Laudizio – vincenzo.laudizio@deri.org Seminari  ICT  corso  ReB  di  Calcolatori  –  Universitá  di  Bologna  -­‐    25  Maggio  2012   CLOUD  COMPUTING  E  ARCHITETTURE  SOFTWARE:   QUALI  IMPATTI  SULLO  SVILUPPO  DELLE  APPLICAZIONI?  
  • 2. Agenda   ›  Cloud  Overview   ›  Approcci  del  Cloud  Compu2ng   ›  Conseguenze  dell’u2lizzo  di  Pia:aforme   Cloud  (PaaS)  sullo  sviluppo  di   applicazioni   ›  Demo  –  Sessione  pra2ca   ›  Conclusioni   Cloud  CompuBng  e  ArchiteSure  SoTware   2 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 3. Cloud  CompuBng:  ConceW  e  Parole  Chiave   ConceK                          Parole  Chiave   ›  disponibilità  di  risorse  IT  “on  demand”   ›  On  demand   ›  affidabilitá  delle  risorse  su  richiesta   ›  Reliability   ›  virtualizzazione  di  componen2  IT   ›  Virtualiza2on   ›  allocazione  “veloce”  di  risorse   F   ›  Provisioning   ›  archite:ure    orientate  all’alta  scalabilitá   ›  Scalability   Cloud  CompuBng  e  ArchiteSure  SoTware   3 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 4. Cosa  è  il    Cloud  CompuBng?   ›  Dal  punto  di  vista  dello  sviluppo  soPware,  il  Cloud  Compu2ng   é  un’infrastru:ura  di  sviluppo  e  di  esecuzione  che  offre   ›  una  interfaccia  utente  che  nasconde  le  complessità  di  ges2one  a  basso   livello  dell’infrastru:ura   ›  riduzione  dei  cos2  di  amministrazione  e  dei  rela2vi  skill  necessari   ›  un  insieme  di  servizi  orienta2  all’amministrazione  dell’infrastru:ura   stessa   ›  alta  scalabilità,  preconfigurata   Cloud  CompuBng  e  ArchiteSure  SoTware   4 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 5. Cloud  CompuBng  ConBnuum   ›  Il  Cloud  può  essere  visto  come  un  con2nuum  di  servizi  su   differen2  livelli,  dall’infrastru:ura  al  soPware   ›  Infrastructure:  fornitura  di  hardware   su  cui  generalmente  si  ha  controllo   sul  Sistema  Opera2vo   ›  PlaXorm:  ambien2  di  più  alto  livello   per  i  quali  gli  sviluppatori  realizzano   applicazioni  custom   ›  SoPware:  soPware  specializzato  reso   disponibile  a:raverso  internet   Cloud  CompuBng  e  ArchiteSure  SoTware   5 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 6. Un  esempio  di  IaaS  –  Amazon  EC2  (I)   ›  Specifiche  tecniche   ›  AMI  (Amazon  Machine  Image)   ›  Immagini  di  macchine  virtuali  preconfigurate  e  ready-­‐to-­‐go   ›  Amazon  S3  (Simple  Storage  Service)   ›  Infrastru:ura  di  storage  proprietaria  di  Amazon  che  funge  da   repository  per  lo  storage  delle  AMIs   ›  Amazon  EC2  (Elas2c  Cloud  Compu2ng)   ›  Applicazione  Web  che  perme:e  l’amministrazione  delle  macchine   virtuali  offerte  all’utente  finale   ›  Schema  “Pay  per  Use”  basato  su   ›  SLA   ›  Traffico  da2   ›  Consumo  di  CPU   ›  Spazio  di  Storage  u2lizzato   Cloud  CompuBng  e  ArchiteSure  SoTware   6 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 7. IaaS  –  Amazon  EC2  (II)   ›  Passi  necessari  per   l’u2lizzo   ›  Un  account  Amazon   EC2   ›  Connessione  internet   e  un  browser   ›  Startup  dell’AMI   ›  Amministrazione  da   interfaccia  utente   amazon   Cloud  CompuBng  e  ArchiteSure  SoTware   7 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 8. IaaS  –  Amazon  EC2  (III)   ›  Cara:eris2che  di  ges2one   ›  Capacità  di  auto-­‐configurazione  dell’infrastru:ura  hardware  in  termini   di   ›  CPU   ›  RAM   ›  Storage   ›  Network  firewall   ›  Shell  remota  SSH   ›  Disponibilità  di  template  di  immagini  di  macchina  (Amazon  AMI)  con   un  approccio  di  condivisione  di  2po  “Community”   ›  Disponibilità  –  nell’ambiente  –  di  una  serie  di  macchine  preconfigurate   da  Amazon  stessa   ›  Monitoraggio  delle  risorse  in  real-­‐2me   Cloud  CompuBng  e  ArchiteSure  SoTware   8 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 9. PaaS  –  Google  App  Engine   ›  h:p://code.google.com/appengine   ›  Google  App  Engine  perme:e  di  costruire  e  far  girare   applicazioni  web,  sullo  stesso  sistema  che  Google  u2lizza  per   le  proprie  applicazioni   ›  Sviluppo  rapido   ›  Messa  in  produzione  rapida   ›  Amministrazione  semplificata   ›  Non  ci  si  deve  preoccupare  dell’hardware,  dell’installazioni  di   patch  nel  sistema  opera2vo  o  nel  middleware,  né  dei  backup   ›  Python,  Java,  Go  (h:p://golang.org)   ›  Data  Store  di  2po  NoSQL  (“BigTable”)   ›  Scalabilità  automa2ca  delle  risorse   ›  Orientato  all’esecuzione  di  algoritmi  specializza2,  quali  ad   esempio  il  Map-­‐Reduce   Cloud  CompuBng  e  ArchiteSure  SoTware   9 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 10. PaaS  –  CloudBees   ›  h:p://www.cloudbees.com   ›  La  pia:aforma  CloudBees  offre  la  possibilità  di  effe:uare   build,  test  ed  esecuzione  di  applica2vi  Java  EE   ›  Offre   ›  Una  pia:aforma  di  sviluppo   ›  Maven  repository   ›  sistema  di  versionamento  dei  sorgen2:  SVN  Git   ›  sistema  di  Con2nuous  Integra2on  preconfigurato   ›  Una  pia:aforma  di  esecuzione  di  applicazioni  J2EE  e  Spring   ›  load  balancing   ›  scalabilità   ›  alta  affidabilità   Cloud  CompuBng  e  ArchiteSure  SoTware   10 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 11. PaaS  –  RedHat  OpenShiT   ›  h:p://openshiP.redhat.com   ›  La  pia:aforma  OpenShiP  offre  supporto  di  sviluppo  ed  esecuzione  mul2-­‐ linguaggio  e  mul2-­‐framework,  ed  è  un  PaaS  basato  principalmente  sull’offerta   di  pia:aforme  soPware  di  RedHat.   ›  Costruito  su  RHEL  (RedHat  Enterprise  Linux)   ›  Selezione  di  linguaggi,  framework  e  middleware   ›  Approccio  “cartdrige”,  che  perme:e  allo  sviluppatore  di  selezionare  i  componen2  che  interessano   ›  Java,  Ruby,  PHP,  Python,  node.js   ›  MongoDB,  JBoss,  Jenkins…   ›  Ruby  on  Rails,  Drupal,  Wordpress,  MySQL   ›  Questa  pia:aforma  è  un  esempio  di  come  nell’arco  di  6  mesi   un’offerta  PaaS  possa  cambiare  radicalmente   ›  Es.  fino  a  qualche  mese  fa  c’erano  3  offerte  commerciali  e  era  disponibile   SOLO  un’interfaccia  web   ›  Oggi  interfaccia  a  linea  di  comando,  disponibilitá  di  una  versione  open   source  e  nessuna  offerta  specializzata,  il  tu:o  fuori  dal  controllo  degli   sviluppatori   Cloud  CompuBng  e  ArchiteSure  SoTware   11 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 12. ImpaW  del  Cloud  CompuBng  sullo  sviluppo  di  Applicazioni   ›  Gli  impaK  sono  diversi,  a  seconda  del  livello  di  servizi  Cloud  che  si   u2lizza   ›  Sviluppo  su  IaaS   ›  +  Il  programmatore  ha  a  disposizione  un’infrastru:ura  virtualizzata  pronta   all’uso.   ›  +  Immagini  preconfigurate  funzionan2  su  hardware  virtualizzato   ›  +  Possibilitá  di  o:enere  configurazioni  avanzate  a:raverso  una  semplice   interfaccia  utente   ›  -­‐  Necessità  di  ges2re  i  componen2  infrastru:urali  (ad  es.  aggiornamen2  del   Sistema  Opera2vo,  applicazione  di  patch  di  sicurezza,  ecc.)    e  del  middleware   (ad  es.  il  web  server,  gli  applica2on  server,  ecc.)   ›  Sviluppo  su  PaaS   ›  +  Il  programmatore  può  sfru:are  tuK  i  vantaggi  di  una  pia:aforma  che   nasconde  ogni  de:agli  dell’infrastru:ura  virtuale   ›  -­‐  Vi  sono  maggiori  limitazioni  imposte  dalla  definizione  stessa  della  pia:aforma   da  parte  del  provider  (sia  inizialmente,  sia  in  corso  d’opera,  ad  es.  evoluzioni   della  pia:aforma)   ›  Sviluppo  su  SaaS   ›  Normalmente  sono  applicazioni  giá  pronte  all’uso:  non  c’é  necessitá  di   sviluppo  (questo  significa  che  gli  sviluppatori  non  avranno  alcun  impa:o  )   Cloud  CompuBng  e  ArchiteSure  SoTware   12 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 13. Sviluppo  su  IaaS  (I)   ›  Può  essere  definita  come  “virtualizzazione  avanzata”   ›  Controllo  sul  soPware  e  sull’infrastru:ura  hardware  (virtuale)   ›  Possibilità  completa  di  autoconfigurazione  dello  stack   soPware  sull’infrastru:ura  cloud   ›  +  Disponibilità  di  template  precostrui2,  possibilità  di  effe:uare  tuning   e  customizzare  i  template  (ad  es.  parto  da  uno  stack  standard  LAMP,  o   uno  standard  stack  J2EE  e  poi  opero  modifiche  in  piena  libertà)   ›  -­‐  Vi  è  necessità  di  mantenere  nel  tempo  la  configurazione   dell’infrastru:ura  (ad  es.  patch  di  sicurezza,  aggiornamen2  del  sistema   opera2vo,  aggiornamen2  del  middleware)   ›  Sostanzialmente,  al  provider  IaaS  è  affidata  la  “sola”   ges2one  dell’hardware  fisico  e  dell’infrastru:ura  di   virtualizzazione.   Cloud  CompuBng  e  ArchiteSure  SoTware   13 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 14. Sviluppo  su  IaaS  (II)   ›  -­‐  L’indipendenza  dall’hardware  implica  alcuni  cos2   ›  ad  es.  performance  delle  virtual  machine  rispe:o  all’u2lizzo  dire:o   dell’hardware  fisico  (20%  di  overhead,  approssima2vamente)   ›  +  Di  contro,  la  virtualizzazione  perme:e  di  o:enere  una   scalabilità  molto  flessibile.  Si  può  fare  upgrade  della  potenza   di  computazione,  a  seconda  delle  esigenze  dell’applicazione.   ›  -­‐  Il  programmatore  deve  avere,  tra  le  proprie  conoscenze,  la   capacità  di  ges2re  ad  un  certo  livello  il  sistema  opera2vo,  il   middleware  e  in  generale  l’ambiente  di  esecuzione  dei  propri   programmi   Cloud  CompuBng  e  ArchiteSure  SoTware   14 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 15. Sviluppo  su  PaaS  (I)   ›  E’  un  servizio  Cloud  che  offre   ›  Pia:aforme  soPware  general-­‐purpose  complete   ›  J2EE   ›  MicrosoP  .Net   ›  LAMP  Stack   ›  L’infrastru:ura  (Virtuale?)  é  completamente  nascosta  allo   sviluppatore   ›  …ecce:o  la  possibilità  di  monitorare  le  performance  e…   l’addebito  dei  cos2    (basato  solitamente  sull’u2lizzo  di   risorse  infrastru:urali)   Cloud  CompuBng  e  ArchiteSure  SoTware   15 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 16. Sviluppo  su  PaaS  (II)   ›  Il  programmatore  non  si  deve  più  (pre)occupare   ›  dell’infrastru:ura  che  supporta  gli  ambien2  di  sviluppo  e  di  esecuzione   ›  della  configurazione  di   ›  Hardware   ›  soPware  (lo  stack  soPware  viene  aggiornato  automa2camente  dal   fornitore  della  pia:aforma)   ›  Il  programmatore  si  può  concentrare  sulle  sole  aKvità  di   sviluppo  sulla  pia:aforma  offerta  dal  provider   ›  “Scompaiono”  conceK  di  base  dei  sistemi  soPware   ›  Sistema  opera2vo   ›  File  System   ›  Applica2on  Server   ›  …   Cloud  CompuBng  e  ArchiteSure  SoTware   16 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 17. Cloud  in  azione…   DEMO   ›   Creazione  ed  u2lizzo  di  un’infrastru:ura  IaaS  su   Amazon  EC2   ›   Creazione  ed  esecuzione  di  una  web  applica2on  su   OpenShiP  (PaaS)   ›   Creazione  ed  esecuzione  di  una  web  applica2on  su   CloudBees   ›   …collabora2vamente       Cloud  CompuBng  e  ArchiteSure  SoTware   17 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 18. Conclusioni   ›  Evoluzione  dell’offerta  di  servizi  Cloud   ›  IaaS   ›  Da  un  ambiente  standard  di  sviluppo  e  deploy  di  applicazioni,  il   programmatore  trae  beneficio  di  virtualizzazione  avanzata/meccanismi  di   templa2ng/interfaccia  di  management   ›  PaaS   ›  Il  programmatore  trae  beneficio  da  una  pia:aforma  completamente   virtualizzata     ›  Gli  IaaS  sono  per  i  system  manager,  ciò  che  i  PaaS  sono  per  i   programmatori/architeK   ›  I  PaaS  sono  la  “vera”  rivoluzione  per  gli  sviluppatori  (gli  IaaS  sono   semplicemente  un  passo  evolu2vo  della  virtualizzazione)   ›  Un  programmatore  non  dovrà  più  occuparsi  dei  de:agli  infrastru:urali  per   il  funzionamento  della  pia:aforma  (e,  di  conseguenza,  della  propria   applicazione)   ›  Un  programmatore  si  dovrà  preoccupare  solo  di  un’aKvità:  lo  sviluppo   applica2vo   Cloud  CompuBng  e  ArchiteSure  SoTware   18 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 19. DOMANDE?   Cloud  CompuBng  e  ArchiteSure  SoTware   19 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 20. RiferimenB   ›  Lista  di  Cloud  PaaS  provider  per  java   ›  h:p://gevaperry.typepad.com/main/2011/10/java-­‐paas.html   ›  Heroku  (pia:aforma  PaaS  di  SalesForce)   ›  h:p://www.heroku.com/  (Salesforce)   ›  Wikipedia   ›  h:p://en.wikipedia.org/wiki/PlaXorm_as_a_service   Cloud  CompuBng  e  ArchiteSure  SoTware   20 Seminari  di  ReB  di  Calcolatori  –    Universitá  di  Bologna,  25  Maggio  2012  
  • 21.   More  than  20  years  of  experience  on  Enterprise  IT     Consul2ng  and  Skill  Transfer  on  Architecture,  IntegraBon  and  Process       OMG  Influence  Member,  JSR  312  Expert  Group,  CSI,  WWISA,  OpenESB  Key   Partner,  NetBeans  Strategic  Partner     h:p://www.imolinfo.it/index_en.php     SemanBc  Web  company,  now!     Applied  research,  training,  projects     h:p://www.sensiblelogic.it     The  online  italian  community  dedicated  to  Java     10  years  of  ar2cles,  publica2ons,  books,  events,  training     From  programmers  to  architect     More  than  1.000.000  read  pages  per  month     h:p://www.mokabyte.it   21