International Conference on Formal Engineering Methods

Formal Methods and Software Engineering pp 33-49 | Cite as

Formalization and Verification of Declarative Cloud Orchestration

  • Hiroyuki Yoshida
  • Kazuhiro Ogata
  • Kokichi Futatsugi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9407)

Abstract

Automation of cloud system operations, for example, which set up, monitor, and back up such systems, is called Cloud Orchestration. A standard specification language, TOSCA (Topology and Orchestration Specification for Cloud Applications), has been proposed to define topologies of cloud applications. A topology is a static structure of resources, such as VMs and software components, and a TOSCA conforming tool is expected to automate system operations based on the topologies. The current TOSCA standard, however, does not yet explicitly provide any way to formally define behavior of a topology (how to automate a topology). This paper proposes how to specify behavior of TOSCA topologies as state transition systems and to verify that orchestrated operations always successfully complete by proving the transition systems enjoys leads-to (a class of liveness) properties. We report on a case study in which we have specified and verified a setup operation to demonstrate the feasibility and usefulness of the proposed solution.

References

  1. 1.
    Amazon Web Services: AWS CloudFormation: Configuration Management & Cloud Orchestration. http://aws.amazon.com/cloudformation/. Accessed 03 April 2015
  2. 2.
    Ansible: Ansible is Simple IT Automation. http://www.ansible.com/home/. Accessed 03 April 2015
  3. 3.
  4. 4.
    Chef Software: IT automation for speed and awesomeness. https://www.chef.io/chef/. Accessed 03 April 2015
  5. 5.
    Etchevers, X., Coupaye, T., Boyer, F., Palma, N.D.: Self-configuration of distributed applications in the cloud. In: IEEE CLOUD, pp. 668–675 (2011)Google Scholar
  6. 6.
    Futatsugi, K.: Generate & check method for verifying transition systems in CafeOBJ. In: De Nicola, R., Hennicker, R. (eds.) Software, Services, and Systems. LNCS, vol. 8950, pp. 171–192. Springer, Heidelberg (2015)CrossRefGoogle Scholar
  7. 7.
    OASIS: TOSCA - Topology and Orchestration Specification for Cloud Applications Version 1.0. http://docs.oasis-open.org/tosca/TOSCA/v1.0/os/TOSCA-v1.0-os.pdf. Accessed 03 April 2015
  8. 8.
  9. 9.
  10. 10.
    OpenStack.org: Heat - OpenStack Orchestration. https://wiki.openstack.org/wiki/Heat/. Accessed 03 April 2015
  11. 11.
    Puppet Labs: IT Automation Software for System Administrators. https://puppetlabs.com/. Accessed 03 April 2015
  12. 12.
    Salaün, G., Boyer, F., Coupaye, T., Palma, N.D., Etchevers, X., Gruber, O.: An experience report on the verification of autonomic protocols in the cloud. ISSE 9(2), 105–117 (2013)Google Scholar
  13. 13.
    Salaün, G., Etchevers, X., De Palma, N., Boyer, F., Coupaye, T.: Verification of a self-configuration protocol for distributed applications in the cloud. In: Cámara, J., de Lemos, R., Ghezzi, C., Lopes, A. (eds.) Assurances for Self-Adaptive Systems. LNCS, vol. 7740, pp. 60–79. Springer, Heidelberg (2013) CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Hiroyuki Yoshida
    • 1
  • Kazuhiro Ogata
    • 1
    • 2
  • Kokichi Futatsugi
    • 2
  1. 1.School of Information ScienceTokyoJapan
  2. 2.Research Center for Software Verification (RCSV)Japan Advanced Institute of Science and Technology (JAIST)NomiJapan

Personalised recommendations