Note: Plush is no longer actively maintained. It is left here for reference purposes. Use at your own risk!

Welcome to the homepage of Plush (PlanetLab User Shell)! The goal of the Plush project is to provide an extensible execution management system for large-scale distributed systems, including PlanetLab. Users describe their experiments or computation in an XML document, and Plush uses this document to locate, contact, and prepare the remote resources. Plush also runs the job, handles the clean-up, and performs several other functions related to distributed application management.

Plush aims to simplify the develop-deploy-debug cycle that researchers go through when developing large-scale distributed applications. Plush achieves this goal through a simple terminal interface where users can deploy, run, monitor, and debug their distributed applications running on hundreds of remote machines through basic terminal commands.

To read more about Plush, see the About Plush page. To try it out for yourself, see the Using Plush documents. If you have been poking around the source and have some questions, the first place to start is at the Developer Documentation.

UPDATE: Plush now has a GUI for visualing applications while they run on PlanetLab. You can also build your applications directly using the GUI, rather than creating an XML file by hand. The GUI, called Nebula, interacts with Plush through a simple XML-RPC interface. To check out more information about using the GUI, visit the Nebula page.

Plush Status and Distribution


The Plush source is available via anonymous CVS. See the Using Plush page for details.

Plush has been superseded by Gush. Although we will continue to support Plush users and fix critical bugs, new features will be added to Gush only.


Feel free to send your questions and comments via email to Jeannie. She will do her best to respond in a timely fashion.



Links, Acknowledgments, and Related Work