Autonomia: an autonomic computing environment

The proliferation of Internet technologies, services and devices, have made the current networked system designs, and management tools incapable of designing reliable, secure networked systems and services. In fact, we have reached a level of complexity, heterogeneity, and a rapid change rate that our information infrastructure is becoming unmanageable and insecure. This had led researchers to consider alternative designs and management techniques that are based on strategies used by biological systems to deal with complexity, heterogeneity and uncertainty. The approach is referred to as autonomic computing. An autonomic computing system is the system that has the capabilities of being self-defining, self-healing, self-configuring, self-optimizing, etc. We present our approach to implement an autonomic computing infrastructure, Autonomia that provides dynamically programmable control and management services to support the development and deployment of smart (intelligent) applications. The Autonomia environment provides the application developers with all the tools required to specify the appropriate control and management schemes to maintain any quality of service requirement or application attribute/functionality (e.g., performance, fault, security, etc.) and the core autonomic middleware services to maintain the autonomic requirements of a wide range of network applications and services. We have successfully implemented a proof-of-concept prototype system that can support the self-configuring, self-deploying and self-healing of any networked application.

[1]  Peter R. Cappello,et al.  Javelin: Parallel computing on the internet , 1999, Future Gener. Comput. Syst..

[2]  Mitsuhisa Sato,et al.  Ninflet: a migratable parallel objects framework using Java , 1998, Concurr. Pract. Exp..

[3]  David A. Patterson,et al.  Embracing Failure: A Case for Recovery-Oriented Computing (ROC) , 2001 .

[4]  Salim Hariri,et al.  Design and analysis of a proactive application management system (PAMS) , 2000, NOMS 2000. 2000 IEEE/IFIP Network Operations and Management Symposium 'The Networked Planet: Management Beyond 2000' (Cat. No.00CB37074).

[5]  George Candea,et al.  Recovery-oriented computing: building multitier dependability , 2004, Computer.

[6]  Holger Karl,et al.  An infrastructure for network computing with Java applets , 1998, Concurr. Pract. Exp..

[7]  Zvi M. Kedem,et al.  Charlotte: Metacomputing on the Web , 1999, Future Gener. Comput. Syst..

[8]  Noah Treuhaft,et al.  Recovery Oriented Computing (ROC): Motivation, Definition, Techniques, and Case Studies , 2002 .

[9]  Salim Hariri,et al.  Catalina: A Smart Application Control and Management Environement , 2000 .

[10]  Scott R. Kohn,et al.  Toward a Common Component Architecture for High-Performance Scientific Computing , 1999, HPDC.

[11]  Paul Roe,et al.  Optimising heterogeneous task migration in the Gardens virtual cluster computer , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

[12]  Satoshi Hirano,et al.  Bayanihan: building and studying web-based volunteer computing systems using Java , 1999, Future Gener. Comput. Syst..

[13]  John Darlington,et al.  Optimisation of component-based applications within a grid environment , 2001, SC '01.

[14]  Flaviu Cristian,et al.  Understanding fault-tolerant distributed systems , 1991, CACM.

[15]  Adam J. Ferrari,et al.  Process Introspection: A Checkpoint Mechanism for High Performance Heterogeneous Distributed Systems , 1996 .

[16]  RICHARD KOO,et al.  Checkpointing and Rollback-Recovery for Distributed Systems , 1986, IEEE Transactions on Software Engineering.

[17]  Michael O. Neary,et al.  Javelin 2.0: Java-Based Parallel Computing on the Internet , 2000, Euro-Par.

[18]  Lee C. Potter,et al.  Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[19]  Kenneth A. Hawick,et al.  Dynamic cluster configuration and management using JavaSpaces , 2001, Proceedings 42nd IEEE Symposium on Foundations of Computer Science.

[20]  Salim Hariri,et al.  The design and evaluation of a virtual distributed computing environment , 2004, Cluster Computing.

[21]  Gail E. Kaiser,et al.  An Approach to Autonomizing Legacy Systems , 2002 .