Supporting undoability in systems operations

  • Authors:
  • Ingo Weber;Hiroshi Wada;Alan Fekete;Anna Liu;Len Bass

  • Affiliations:
  • NICTA, Sydney and School of Computer Science and Engineering, University of New South Wales;NICTA, Sydney and School of Computer Science and Engineering, University of New South Wales;NICTA, Sydney and School of Information Technologies, University of Sydney;NICTA, Sydney and School of Computer Science and Engineering, University of New South Wales;NICTA, Sydney and School of Computer Science and Engineering, University of New South Wales

  • Venue:
  • LISA'13 Proceedings of the 27th international conference on Large Installation System Administration
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

When managing cloud resources, many administrators operate without a safety net. For instance, inadvertently deleting a virtual disk results in the complete loss of the contained data. The facility to undo a collection of changes, reverting to a previous acceptable state, is widely recognized as valuable support for dependability. In this paper, we consider the particular needs of the system administrators managing API-controlled resources, such as cloud resources on the IaaS level. In particular, we propose an approach which is based on an abstract model of the effects of each available operation. Using this model, we check to which degree each operation is undoable. A positive outcome of this check means a formal guarantee that any sequence of calls to such operations can be undone. A negative outcome contains information on the properties preventing undoability, e.g., which operations are not undoable and why. At runtime we can then warn the user intending to use an irreversible operation; if undo is possible and desired, we apply an AI planning technique to automatically create a workflow that takes the system back to the desired earlier state. We demonstrate the feasibility and applicability of the approach with a prototypical implementation and a number of experiments.