John M Willis has done a great job introducing how enterprises can make use of cloud computing. Enjoy! 🙂
Terry Slattery has some suggestions as to how you can use Amazon’s cloud computing offerings in implementing network management
The big selling point with cloud computing is that computing capacity grows and shrinks depending upon the load being put upon it. You typically only pay for CPU (by the hour) and storage (by the month) you actually use.
If your website enjoys a sudden surge in traffic, by appearing on the front page of slashdot for instance, then extra servers will be provisioned automatically. Once the peak load passes and more normal traffic levels return, the extra servers are automatically de-provisioned.
How will cloud computing impact upon network management?
Service oriented monitoring
Cloud computing makes network and server infrastructure invisible. A large part of existing network management is involved with making sure that the network and server infrastructure is working properly.
The focus of network management in a cloud environment shifts away from managing infrastructure to managing service availability & performance.
One of the big sells of cloud computing is not only outsourcing the provision of a scalable, enterprise grade network, but also the necessity to manage it as well.
Root cause analysis will effectively come down to ringing your cloud vendor’s tech support team. Instead of your painstakingly planned network management system tracing the root cause of your outages, you’ll be relying upon your cloud vendor’s painstakingly planned network management system instead.
Standard cloud instrumentation
Your cloud vendor provides detailed usage statistics of your cloud through the cloud vendors management portal. In order to use this information in your own network management system you need it to be available in a format that can be read from your network management software.
Many network management systems have fine extensibility mechanisms so that you could wire up your network management system to use your vendor’s instrumentation.
A better solution would be for a standard to emerge that all cloud vendors implement. Not very likely given the diverse offerings in the cloud computing market. Amazon EC2 has little in common with Google Apps for instance.
The more likely scenario is that a winner will emerge eventually and that will become the de facto standard. Looks like Amazon at the moment, but I wouldn’t underestimate either Google or Microsoft. Microsoft in particular have a good deal to lose if they don’t allow Microsoft centric web developers take seemless advantage of cloud computing.
One of the major issues with compute clouds is the process of configuration management of the software image to be deployed. If the software running in the cloud has a bug, then I need to be able to revert to a previous image or upload a new one quickly.
In addition, controlling when new software is deployed is likely to be very important. I’m sure you don’t relish waiting around for an off peak time period to upload new software, it would be useful to have your network management system to do it for you.
Whilst configuration management is a function of network management, few tools outside of the big 4 are able to do it.
Managing the cloud in the cloud
The obvious place is to put your service oriented monitoring in the cloud right alongside your application. Whilst such an approach will work most of the time, what happens when your cloud vendor’s network dies? All of the major cloud vendors have had network outages so it isn’t a theoretical risk.
An alternative to deploying your own monitoring solution could be to use one of the many vendors promoting SaaS based online monitoring solutions. Whilst that is probably going to be a more robust solution, it may be difficult to know precisely how the vendor has deployed their solution. What if the vendor is using the same cloud computing vendor that you have chosen? Then it won’t be any better than deploying your own monitoring solution in the cloud.
One of the side effects of managing in a cloud world is that vendors will need to be more open about their infrastructure arrangements. If your management vendor is using a cloud then they need to be open about it. Otherwise, when the 800 pound gorilla of the cloud computing space inevitably develops, there may be a danger that both management and managed services use exactly the same infrastructure.
Clouds are made of data centres, right?
Compute clouds are going to be housed in data centres, big ones too and lots of them. That’s good news for the enterprise network management vendors because those data centres are going to need managing.
People running small & medium sized data centres are likely to be the people most attracted to cloud computing. Therefore, there is likely to be a consolidation away from the small and medium data centres to large data centres. The only people who’ll be able to justify the cost of running a small or medium data centre are those with specialist requirements that cannot easily be accommodated using a cloud based solution.
It is hard to see the transition as anything other than party time for enterprise vendors. Open source enterprise vendors will be in a very good position to win new customers. The transition to cloud computing is a once in a lifetime disruption causing a lot of cloud vendors to look for new, more flexible tools to help them manage their new, ultra-flexible infrastructure. In addition, the new cloud vendors are utilising open source software extensively in building their offerings, so they will be more amenable to open source based network management solutions.
Cloud computing is very much in its infancy. Clouds in their current form are likely to appeal to companies who would otherwise have opted for shared or virtual machine hosting in the case of Google Apps or one or more dedicated servers in the case of Amazon EC2. In either case, neither would be in the market for network management systems.
The next wave, when the early adopters have ironed out the problems, will be from companies replacing small or medium sized data centres with a compute cloud. These companies will still require a management system, but one tuned to managing in a cloud environment not a data centre environment. They’ll need to monitor the services they are providing and manage their interaction with the cloud.
On the other hand, the cloud computing vendors themselves will require full blown enterprise grade network management systems. A great opportunity is being presented to the more nimble vendors, able to quickly fine tune their products to the particular requirements of the cloud vendors. The open source, enterprise oriented network management vendors will find their offerings chime well with the cloud vendors. The cloud vendors are already heavy open source software users.
Just where the heck are Microsoft on the cloud computing thing? Ten years ago they wouldn’t have given their competitors years head start in a market without a response.
Microsoft’s really are going to be IBM. Are they going to be the 60s IBM or the 80s IBM. At the moment it’s looking like 80s IBM.
You would have thought that, of anybody out there, Microsoft would be in as good a position as anyone.
They’ve got the .NET framework, web server, database, server OS, programmer eye balls, virtualisation software, development tools all they need to do is package it up and dump it under their live brand and bob’s your uncle.
Weird how they are having rings run around them by a book seller. 🙂
Google is the new Microsoft.
Microsoft used to announce mediocre products and people went potty for it. Because Microsoft’s manifest destiny was to dominate the desktop market, it was news when they announced something that took them a little further along that path.
Now Google elicit exactly the same response for exactly the same reason.
If anybody else announced App Engine the obvious limitations of their offering would be leapt upon by commentators and roundly criticised. But, it’s Google. They are fulfilling their manifest destiny to become the Microsoft of the internet, so their foray into cloud computing is news.
Still, won’t have done Python any harm.
The most interesting thing about technology change are the odd juxtapositions it throws up. If you’d asked me a few years ago who would be the leader in cloud computing, I wouldn’t have predicted that it would be Amazon.
Sure Amazon know how to run very large websites. How did they go from e-commerce pioneer to cloud computing? It’s kinda like your local supermarket deciding that they’d like to build ships.
The odd thing is: where is Microsoft? You would have thought they would be very keen to get the developer eye balls currently heading towards Amazon.
I’m sure Microsoft could build an infrastructure around the .NET runtime, virtualise it and rent it to people on a scalable infrastructure.
Microsoft are the obvious company to deliver the cloud computing service. They have a large developer following, have a mature tool set, languages and libraries developers are already familiar with.
The main problem with Amazon’s offering is that, for Microsoft developers, you have to start from scratch. You’ve got to learn a whole raft of new technologies and languages. If you’ve no alternative then that’s what you do. But, if Microsoft can deliver cloud computing using tools you already know, then they are in the driving seat.
One thing is certain: creating scalable websites just got a whole lot easier and cheaper.
Update June 2013: Microsoft have indeed built a scalable .NET based PaaS offering leveraging their developer toolset, called Windows Azure. It is maturing very nicely.
We currently rent a single Sun box, running Linux oddly enough, in a data centre to run all of our websites and email. One of the down sides with renting a machine is the limited capacity of storage, CPU and bandwidth. If you go the Amazon way then capacity becomes elastic. You can increase it when you need to and reduce when necessary.
The upside of renting is that your costs are known beforehand.
Would we consider moving over to a service like Amazon? Yes, but with a few reservations:
- Data security — we need to be PCI DSS compliant because we handle online payments. We must ensure that card holder data cannot be compromised;
- Budget limits — how can we make sure that we don’t run up ridiculous bills either through programming error or a breach in security;
- Support — who are we going to call when things go wrong?
- Denial of Service — will the cloud come with DoS mitigation services and insurance?
- Firewall — you better be sure you’re going to need a firewall. PCI DSS mandates a firewall, but you need to make sure that access to your ports are limited. That’s best done off server.
We really are at the beginning of the virtual computing and cloud computing revolutions. I expect the IT world will look very different when both have run their respective courses. Though, of course, both virtual and cloud computing are very much bound together.
One side effect of concentrating more and more computing into central hubs is the head count reduction that will likely follow. If your data centre disappears or reduces in size why employ so many people to manage it?
What is likely to happen is that a layer of service providers will be created to allay a lot of the above concerns, especially the support issue. Amazon probably won’t be interested in problems with my particular virtual image, but a service provider who built the virtual image in the first place will be.
Virtual computing will provide challenges to software licenses. Any software that is licensed per CPU is going to be very expensive to run inside a virtual image that can be executed on very large computers and indeed many computers at the same time.