Search
Lori MacVittie - Two Different Socks
You are here: DevCentral > Weblogs

posted on Monday, January 26, 2009 3:40 AM

Open APIs are a matter of much discussion these days in the realm of cloud computing. Just take a peek at the discussion that occurred via Twitter during Cloud Connect. Many folks were not shy in putting forth the notion that cloud portability and interoperability can only be achieved through accepted "cloud" standards. Integration standards, for the cloud, if you will.

The fear is that any emerging standards will focus only the portability of the application or virtual container environment. They are likely to ignore the fact that no application is an island, and that the application delivery infrastructure (load balancing, acceleration, optimization, security) should be included in interoperability standards because the policies surrounding these application networking functions are application specific. If they aren't, then you are (or your provider is) doing it wrong.

It seems a simple thing to define an open API through which clouds can be integrated, using it to move virtualized applications from one data center to another. But if you moved only the application, what happens to the access policies? The acceleration policies? The security policies? The load balancing policies? The storage policies? What happens to all the rest of the components necessary to deliver that application in a way that ensures it is reliable, available, secure, and fast?

The monitoring and management of load balanced applications in an elastic environment are critical to ensuring the availability and reliability of that application. But without a way to exchange that information, to exchange the policies between clouds, that meta-application data is lost and needs to be recreated.

The optimization and acceleration policies, too, are integral to not only the well-being of the application but to your budget, as well. Optimizations such as TCP multiplexing reduce the load on application servers and make them more efficient, meaning you can serve more customers using less compute resources. If those optimizations are lost in the transfer from one cloud environment to another, that application may suddenly require more resources, which in the cloud computing vernacular translates to "mo money for the provider". The loss of such meta-application data can increase the price of running an application in the cloud, offsetting the reduction in operational costs oft cited as a reason to move to the cloud.

Now just wait a minute, you say. Cloud is all about abstracting the infrastructure in such a way that users don't need to concern themselves with all those details. We shouldn't need to care about that.

No, you shouldn't. And that's the point. If cloud interoperability efforts ignore the (necessarily) close relationship between application delivery policies and applications you will have to care about it, because you'll need to reconfigure and redeploy those policies when you move from one cloud environment to the next.

As long as application delivery infrastructure providers adhere to a standards-based API through which such standard delivery policies can be automatically redeployed, and we remember to include that infrastructure as part of the definition of an "application" when moving from one environment to another, the promise of the benefits of infrastructure abstraction through cloud computing can come to fruition.

 

Follow me on Twitter View Lori's profile on SlideShare friendfeedicon_facebook AddThis Feed Button Bookmark and Share

Reblog this post [with Zemanta]


Feedback

1/27/2009 3:17 AM
Gravatar I totally concur with the above. We are talking to many existing F5 customers who want to migrate their ADC functionality to a virtual or cloud deployment. Taking all the advantages that software has, and leaving the (legacy) hardware behind.

A shared format as described above would also enable this.

I do have my doubts. This could possibly be somewhat harder to implement than we might think.

A way to translate iRules to Zeus' TrafficScript would be quite a hurdle, as an example. However, maybe we should get our respective dev teams working on it now?

;-)
FrintonBoy
1/27/2009 3:35 AM
Gravatar You raise a great point that some configuration is very specific to implementation. There's common objects (virtual servers, IP addresses, pools|farms|clusters, etc..) but there are some aspects to every implementation that are very specific and don't have a direct mapping. That will eventually cause some problems - it's like trying to map "C" to "JavaScript" or in this case, "PHP" to "TCL" ;-)

It may be that we can get the core down to make the transition easier, but like any customized solution (think PeopleSoft) it is the customizations through code that are lost when moving from one platform to another. It's part of the decision making process - is it worth the time and effort required to migrate from one platform to another given the customizations made?

Even so, if we can make 95% of the process an automatic, interoperable one, that would be more viable than it is today.

Interop is also about moving from one cloud to another, so being able to move the entire configuration/environment from one place to another is a good start. Just being able to move a ZXTM or BIG-IP configuration with the applications they are delivering from one cloud provider to another would be a huge step forward. Baby steps ;-)
Lori MacVittie
1/27/2009 3:58 AM
Gravatar You are right about the baby steps, and if we simply concentrate on moving from one cloud provider to another (or even delivering cross cloud functionality), then the task is simpler.

As far as I can make out few of the providers that use F5 in their cloud infrastructure, are exposing all the advanced functionality anyway (I guess it is difficult to share this for many users on one device).

Therefore the data required to be translated/shared would be at the easier end of the scale, and more "do-able" because of this.

At that level, the concepts and basic configuration elements are not too far apart. Both Big-IP and ZXTM have standard SOAP based APIs already, all (all?) that would be required is the bit of "stuff" to sit in the middle speaking both "ADC dialects".

A project for someone!

FrintonBoy

Let Me Know What You Think


Please use the form below if you have any comments, questions, or suggestions.

Title:
 
Name:
 
Email: (so we can show your gravatar)
Website:
Comment: Allowed tags: blockquote, a, strong, em, p, u, strike, super, sub, code
 
Please add 4 and 8 and type the answer here:

Blog Stats

Posts:979
Comments:1685
Stories:0
Trackbacks:583
  

Image Galleries

  

Application Delivery

  

Cloud Computing

  

Random

  

Security

  

Chat Catcher

82,243 Members in 102 Countries and Growing!

Join DevCentral Today!

About DevCentral

DevCentral has been a successful, thriving community for many years. We have always strived to bring you the best technical documentation, discussion forums, blogs, media and much more that we can.

So dive in, get familiar with DevCentral. We hope you like it, we hope it makes your job easier, and lets you get that much more power out of the community. To learn more, make sure to check out the Getting Started section. And if you have any problems, or think something could be easier to use, drop us a line to let us know.

Got It !

We've received your comment and transmitted it directly to DevCentral HQ.

Thanks for taking time to let us know what's on your mind. At DevCentral | Community Matters!

Get In Touch With Us

Have questions, suggestions or just want to get something off your chest?

Use our handy form below to Direct Connect with DevCentral Mission Control.

Send Us Feedback       or