IT shops have gotten to the point where they have a good handle on managing servers, networks, and storage. Headway is being made toward managing their virtual equivalents. Now, we have to add cloud computing to the mix. Cloud management may be the next great pain in the neck for IT shops. At the moment, not enough folks are seriously deploying in the cloud for it to be a crisis. That will change as more IT professionals accept cloud computing as something they can use to manage that tricky balance between cost and performance.
There are two paths we can go down (but in the long run) there’s still time to screw things up1. First, if cloud systems management is too difficult and the tools too primitive for too long, deployment to the cloud will be much slower and might even reverse. If, however, the benefits of the cloud are enough that deployment continues apace, sysadmins and programmers alike will find themselves wishing for someone to put them out of their misery. The sheer lack of tools will drive them to drink.
Cloud management is unlike other systems administration. Usually big chunks of an application, such as a service, are deployed to servers. With clouds, little bits of application, including individual and transient objects can be anywhere. Worse yet, individual objects might be parceled out to different clouds depending on their resource or security needs. It is possible to have different objects instantiated on different cloud services, public and private, which in turn execute them on different physical resources. Distribution on this scale can be very tough to deal with on conventional systems. No one is really sure how that will play out in a cloud.
The other big difference between clouds and other infrastructure, at least public clouds, is that you don’t necessarily have much visibility into the infrastructure. Managing applications that are not only distributed in a cloud but hidden behind a vendor’s veil of secrecy is like driving in a blinding snow storm. I don’t recommend it. There’s too much trust in the unseen and unknown.
How do you manage this type of environment? One approach is to build monitoring into the individual application objects. Daesin, an open source cloud API written for Java, allows this. Problem is that you have to build monitoring into your application objects and may be language dependant.
Standards will make a difference. The DMTF just announced an initiative for cloud monitoring called the Open Cloud Standards. DMTF management standards have spurred vendors to develop management products in the past. Open cloud interfaces such as Open Stack will also help since it will provide an open and standard platform for accessing clouds. These type of standards make it easier to develop software to manage cloud services. Right now, folks who develop cloud infrastructure software such as TwinStrata have to interact with nearly a dozen APIs from many different vendors. It’s basically a Tower of Babel which makes software development much more difficult. Development will become easier when there is a single or limited number of APIs to deal with. When development is easier more tools will become available.
So, if you truly be believe that clouds are the next big thing, the next SAN/NAS or the next J2EE or .Net, then you need to start worrying about how to manage them. Now.
1. My apologies to Led Zeppelin. Stairway to Heaven does not deserve that kind of abuse.
No comments:
Post a Comment