Cloud Foundry: Design and Architecture
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Ian Roughley on Jun 21, 2011
ZeroTurnaround's LiveRebel 1.0 aims to alleviate downtime and lost sessions in server deployment automation. According to Jevgeni Kabanov, CTO of ZeroTurnaround, "most application updates are in the off hours with downtime. Those who do try the one-server-at-a-time thing aren't terribly happy. There is very little tooling support and the process is largely manual and partially scripted. InfoQ had an opportunity to speak with Zero Turnaround.
InfoQ: Can you provide any details on the complexity/size of customer deployments currently using LiveRebel?
Since we are talking about beta deployments, they are mostly smaller deployments, though some 100+ server production deployments are coming in the near future.
InfoQ: Is the focus on single node applications (WAR, EAR, JAR) or can liverebel handle more complex multi-node deployments?
We can handle all kinds of deployments, including clusters of unlimited size and even elastic cloud deployments.
InfoQ: Under what cases would LiveRebel be preferred over a more traditional methods available (i.e. upgrading a single server in a cluster at a time)?
Here are the conceptual reasons:
- Restarting servers one at a time takes a long time and for small changes gets expensive
- In case of any state structure changes in the application, session migration fails. Session drain can take forever if the app is actively used.
- In case of any change in database structure or remote APIs, the old and new version of the application may not be compatible and in that case cannot be ran in parallel.
InfoQ: What users can look forward to in the next release
LiveRebel 1.0 is very minimalistic. In the near future we will add:In the long term we plan to address multiple critical deficiencies that we see in the current application life-cycle management offerings.
- a Hudson/Jenkins plugin,
- automatic and manual handling of state changes (e.g. an added field),
- database update integration as well as integration with some app lifecycle management products.
Features in the release include:
However, there are some limitations. Although LiveRebel handles all changes to resources, it does not support:
Additionally, because LiveRebel cannot create new state, the following types of changes may have undesired side effects:
A recent survey that ZeroTurnaround conducted, confirmed the need for LiveRebel. It pointed out that server deployment automation is the exception rather than the rule (especially for 2-50 server range that made up the majority of the respondents) and that downtime and loss sessions is an acceptable practice, something that ZeroTurnaround wants to change : "Migrating user, application and database state in an environment
rich with fragile dependencies is the everyday reality of updating the java applications, which we want to change to the better."
Introducing SQLFire: a memory-optimized, high performance SQL database
The WebSphere Liberty Profile for Developers: An Introduction
RDBMS to NoSQL: Managing the Transition
VMware vFabric SQLFire - Test drive the data management system with memory speed, horizontal scalability and a familiar SQL interface
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
Andrew Watson talks about the work of the OMG, where CORBA is alive and well (hint: in your car), UML and UML Profiles vs. custom Modeling languages, DDS and other middleware, and much more.
Sohil Shah discusses creating iPhone and Android enterprise mobile applications based on cloud services using the open source platform OpenMobster.
Paul Sanford presents the transformations supported by data throughout its life cycle, and how that can be better done with Splunk, an engine for monitoring and analyzing machine-generated data.
A common “best practice” for unit tests is to only write a one assertion in each test. I intend to question this advice by showing that multiple assertions per test are both necessary and beneficial.
John Rauser presents the architectural and technological evolution of Amazon retail websites starting with 1994 and ending with adopting Amazon Web Services.
Michael Stal discusses system architecture quality, how to avoid architectural erosion, how to deal with refactoring, and design principles for architecture evolution.
Every developer has had to integrate with another system, API or component. Tis article provides strategies to handle the change and for he separating system boundaries.
No comments
Watch Thread Reply