o pen p roblems in
play

O PEN P ROBLEMS IN C ONCURRENCY T HEORY Languages and Models for - PowerPoint PPT Presentation

O PEN P ROBLEMS IN C ONCURRENCY T HEORY Languages and Models for Automatic Deployment of Cloud Applications Gianluigi Zavattaro University of Bologna - Italy FoCUS research team INRIA - France Based on joint work with: Roberto Di Cosmo and


  1. O PEN P ROBLEMS IN C ONCURRENCY T HEORY Languages and Models for Automatic Deployment of Cloud Applications Gianluigi Zavattaro University of Bologna - Italy FoCUS research team INRIA - France Based on joint work with: Roberto Di Cosmo and Stefano Zacchiroli PPS/Paris Diderot Tudor A. Lascu and Jacopo Mauro Univ. of Bologna

  2. N OVEL O PPORTUNITIES O PEN P ROBLEMS IN FOR C ONCURRENCY T HEORY Languages and Models for Automatic Deployment of Cloud Applications Gianluigi Zavattaro University of Bologna - Italy FoCUS research team INRIA - France Based on joint work with: Roberto Di Cosmo and Stefano Zacchiroli PPS/Paris Diderot Tudor A. Lascu and Jacopo Mauro Univ. of Bologna

  3. Aeolus: Mastering the cloud complexity u Models, languages and tools for the administration of cloud applications n Cloud computing offers the possibility to build sophisticated software systems on virtualized infrastructures at a fraction of the cost necessary just few years ago… n …but the administration of such software systems is a serious challenge , especially if one wants to take advantage of all the cloud potentialities Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  4. New models and languages: an industrial need u Several industrial initiatives pursue the definition of high-level languages for the management of applications deployed on virtualized infrastructures Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  5. New models and languages: an industrial need u Cloud Foundry (launched by VMware) provides a PaaS with high-level primitives for service creation and binding $ cf create-service What kind?> 1 Name?> cleardb-e2006 Creating service cleardb-e2006... OK $ cf bind-service 1: myapp Which application?> 1 1: cleardb-e2006 Which service?> 1 Binding cleardb-e2006 to myapp... OK

  6. New models and languages: an industrial need u Juju (an Ubuntu initiative) provides similar primitives n service replication and scaling supported n includes GUI for application management Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  7. New models and languages: an industrial need

  8. New models and languages: an industrial need u Declarative language: three kinds of resources service { 'sshd': package ensure => running, { 'openssh-server': enable => true, ensure => installed,} hasstatus => true, file hasrestart => true,} { '/etc/ssh/sshd_config': source => 'puppet:///modules/sshd/sshd_config', owner => 'root', group => 'root', mode => '640', notify => Service['sshd'], require => Package['openssh-server'],}

  9. New models and languages: an industrial need u Declarative language: three kinds of resources service { 'sshd': package ensure => running, { 'openssh-server': enable => true, ensure => installed,} hasstatus => true, file hasrestart => true,} { '/etc/ssh/sshd_config': source => 'puppet:///modules/sshd/sshd_config', owner => 'root', group => 'root', mode => '640', notify => Service['sshd'], require => Package['openssh-server'],}

  10. New models and languages: an industrial need u Declarative language: three kinds of resources service { 'sshd': package ensure => running, { 'openssh-server': enable => true, ensure => installed,} hasstatus => true, file hasrestart => true,} { '/etc/ssh/sshd_config': source => 'puppet:///modules/sshd/sshd_config', owner => 'root', group => 'root', mode => '640', notify => Service['sshd'], require => Package['openssh-server'],}

  11. New models and languages: an industrial need u In all these approaches a lot of human intervention is needed for n Service selection n Deciding the service bindings (see next slide) Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  12. Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  13. New models and languages: an industrial need u In all these approaches a lot of human intervention is needed for n Service selection n Deciding the service bindings (see next slide) u The challenge: n automatize as much as possible the management of such applications Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  14. Structure of the talk u The Aeolus starting point u Formalizing the “ deployment ” problem u Solving the “ deployment ” problem n Ackermann-hard in the general case n PolyTime without conflicts u Open issues and related work Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  15. Structure of the talk u The Aeolus starting point u Formalizing the “ deployment ” problem u Solving the “ deployment ” problem n Ackermann-hard in the general case n PolyTime without conflicts u Open issues and related work Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  16. Automatic management of package-based software systems u Developed rather sophisticated tools for FOSS (free and open-source software) Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  17. The dependency/conflict model u Tools are based on the dependency/conflict model Package : apache2 Version : 2.4.1 -2 Maintainer : Debian Apache Maintainers <debian -apache@...> Depends : lsb -base , procps , perl , mime -support , apache2 -bin (= 2.4.1 -2) apache2 -data (= 2.4.1 -2) Conflicts : apache2 .2- common Provides : httpd Description : Apache HTTP Server Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  18. Package configuration as a SAT problem u One boolean variable for each package n TRUE – installed n FALSE – not installed u Conflicts/dependencies can be formalized as boolean formulae u Finding a correct configuration is mapped to a satisfaction problem Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  19. Package configuration as a SAT problem u One boolean variable for each package n TRUE – installed n FALSE – not installed Advanced configuration tools u Conflicts/dependencies can be exploit state-of-the-art SAT solvers formalized as boolean formulae u Finding a correct configuration is mapped to a satisfaction problem Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  20. Structure of the talk u The Aeolus starting point u Formalizing the “ deployment ” problem u Solving the “ deployment ” problem n Ackermann-hard in the general case n PolyTime without conflicts u Open issues and related work Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  21. The Aeolus component model u A component has provide and require ports Require Provide ports ports Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  22. The Aeolus component model u A component has provide and require ports u A component has an internal state machine Require Provide ports ports Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  23. The Aeolus component model u A component has provide and require ports u A component has an internal state machine u Ports are active or inactive according to the current internal state Require Provide ports ports Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  24. Packages in the Aeolus model u The packages example Package : wordpress Version : 3.0.5+ dfsg -0+ squeeze1 Depends : httpd, mysql -client , php5 , php5 -mysql , libphp - phpmailer (>= 1.73 -4) , Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  25. Packages in the Aeolus model u Binding between two components Package : wordpress Version : 3.0.5+ dfsg -0+ squeeze1 Depends : httpd, mysql -client , php5 , php5 -mysql , libphp - phpmailer (>= 1.73 -4) , Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  26. Services in the Aeolus model u At the service level, also a running state becomes relevant: n wordpress need to know the network address of a running MySQL instance Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

  27. Conflicts in the Aeolus model u Conflicts are expressed as special ports n The apache web server is in conflict with the lighttpd web server Automatic Deployment of Cloud Applications OPCT - Bertinoro - 20.6.2014

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend