1. There is only one way to do cloud computingThis is not true, contrary to what some vendors might like you to believe. At this point there are at least four general types of cloud computing and more are likely to follow:
- Infrastructure as a Service (IaaS) – includes servers, networks, storage, management, and reporting. A big name here is Amazon with its EC2 offering, but more are coming up every day.
- Platform as a Service (PaaS) – addresses the needs of application development and testing by providing building blocks, enforcing consistent standards, and facilitating testing. A big name here is Google’s App Engine with more coming.
- Software as a Service (SaaS) – delivers packaged applications configured by each customer that run as a hosted service. The big names here are Google Apps and Salesforce.com although there are thousands of others and more arriving seemingly every week.
- Storage as a Service (StaaS) – similar to IaaS but focused on storage delivered as a hosted service. It includes primary, secondary, and archival storage as well as backup and disaster recovery. The big names include Amazon S3, Nirvanix, and Rackspace. Again, new players arriving monthly.
2. “Cloud” is the same as Web HostingThis is the first impression every third engineer or entrepreneur has. They think hosting a web site or exposing a XML Web Service is Cloud Computing. Cloud computing has four primary tenets:
- Self Service
|Attribute||Cloud Computing||Web Hosting|
3. Cloud is cheapCloud is not cheap; however the biggest advantage of moving to Cloud is avoiding an upfront investment on infrastructure. But just like you have to pay more when you opt for an Equated Monthly Installment (EMI) instead of a one-time payment, you end up paying more than owning or co-location of your servers. However, this cost is often offset by overall OpEx and CapEx savings if you have chosen to move the correct apps to the cloud.
4. Everything should be on the CloudThere seems to be zeal amongst some in the industry to move everything on the cloud. However one critical attribute to remember is that only when you want a high degree of special abilities like reliability, scalability and availability, you should think of Cloud. Moving non mission-critical web application to Cloud doesn’t offer any advantages. Only when you think your application is demanding heavy resources and when you need virtually unlimited computing power and storage, think of Cloud. Moving a static site or a blog to Cloud just doesn’t make sense.
5. Everything on the web is CloudNot everything on the World Wide Web is Cloud. A service has to support 4 doctrines to be qualified as Cloud. They are 1) Elasticity, 2) Pay-By-Use, 3) Self-Service and, 4) Programmability. Google Apps would qualify to be a Cloud Service (SaaS) because it supports most of the above tenets. But a simple web app or a web service just doesn’t qualify to be a Cloud service.
6. Cloud computing is ready for prime timeCloud computing vendors seem to promote this particular notion. However, according to Gartner IT Hype Cycle, cloud computing currently is at the peak of inflated expectations and just about to get a dose of reality. This is typical of exciting new technologies. As noted above, cloud computing is still immature; it will take another five years or so to be truly ready for prime time to an extent.
Before it gets there, clouds will have to overcome two barriers:
- Financial – clouds will have to become more cost-competitive with well managed enterprise IT data centers
- Technical – clouds will have to address security, reliability, and integration with other enterprise back end systems
7. If you’re running Virtual Machines (VM), you’re doing Cloud computingVirtualization – creating logical servers or storage spanning multiple physical devices is one of the requirements of cloud computing. But having VMs does not mean you have cloud computing. To reap the full benefits of virtualization, IT or its cloud providers must also provide the ability to grow or shrink capacity as needed, provide pay-as-you-go pricing, and let users easily provision new servers and storage themselves as needed.
Letting users do some of the work of ordering virtual servers (especially those preconfigured for specific tasks) is a key money-saving goal of some cloud customers. But such self-service doesn’t automatically happen just because you’re running software such as VMware Infrastructure.
8. Cloud has a steep learning curveMany in the development world believe that Cloud is the successor to Java, .NET and LAMP platforms. And while the Cloud can certainly be considered as “the platform of the platforms”, it is not a replacement or a successor to existing platforms. It is more of a change in thinking than learning something from the scratch. Cloud has deep roots in Service Oriented Architecture (SOA). So if your resource pool is familiar with SOA models, you already ahead of the game.
9.PaaS enables simple move of applications to the CloudBoth Google App Engine and Microsoft Windows Azure platform have some limitations. However Windows Azure has Native Execution Mode which would allow you to run applications in Full Trust Mode, but Google App Engine imposes quite a few restrictions that will force you to rethink your design and architecture. File I/O, sockets and multithreading will have a lot of issues. On Azure, you would have to partition your app for the Web Role and Worker Role and communication between Web Role and Worker Role would need additional design considerations. Data access will demand redesign and on how to leverage flexible entities, blobs and the standard relational databases on the Cloud.
10. Cloud will instantly make my application secureWhile it is true that the Cloud provider will harden the core infrastructure and may not be as vulnerable as plain vanilla hosting provider, you still need to implement security best practices for your application. Make sure that you are covered from SQL Injection attacks and the likes. Maintain good web application security standards. Vendors like Amazon also provide multifactor authentication and Virtual Private Cloud bringing in additional level of security layers.
11. Switching cloud vendors is easyAlthough technically there are ways of switching data between one cloud provider and another, few vendors have come up with formalized procedures or guarantees about how they will do it, which is a major concern if customers decide a given service is not right for them.
Another challenge is simply the amount of traffic the internet can handle, as evidenced by complaints from ISPs about the amount of bandwidth being consumed by so many media services. As a result, one cloud provider offering an archiving service may be forced to load storage disks onto trucks and aircraft rather than transfer data online because there is simply not enough capacity to do so. But this scenario also raises the question of whether there is sufficient bandwidth to cope at the moment with a large number of organizations accessing IT services over the internet.
12. Cloud bypasses software licensingThis is a gray area for many and a debatable point. If you choose to move to a PaaS offering like Microsoft Windows Azure Platform or Google App Engine, you might be able to save on some licensing cost that you would otherwise spend. But if you move to an IaaS offering like Amazon Web Services or GoGrid, you are still responsible and accountable to software licenses. Though the hardware and servers do not run within your organization, you are accountable for the software licensing on the Cloud. So moving to a Virtual Physical Server or a Cloud Server will not allow you to bypass software licensing in all cases. The subscription fee that you pay to the Cloud infrastructure vendor may cover some of the core licensing requirements like Operating System and the Database. With the current flow of the industry, it won’t be long when the commercial software vendor will have special licensing offers for the Cloud for businesses.
13. Cloud is openSome early adopters think that moving to Cloud will automatically make their applications more open. Unfortunately, Cloud is not immune to vendor lock-in or platform lock-in. For example, once you decide to consume the storage from a service provider, your app will be tightly coupled with the APIs and the dynamics of the storage service. It is complex to move your data from one service offering to other similar service offering. Finalizing your Cloud vendor is as crucial as deciding on the platform. Once you sign-up with a vendor, you will not have any option but to start consuming the supplementary services like auto load balancing, content delivery network (CDN), extended security and media streaming etc. This also brings about a great opportunity for the ISVs to build a “middle ware” for emulating Cloud neutrality.
14. Only the CTO/ CIO is concerned about CloudWhile the CTO/CIO is the decision maker and may take the final call on investing in the Cloud, there are a many other stakeholders who will be impacted by this move. The IT department, line-of-business managers and sometimes even the end users should be proactively engaged in the discussions to understand the implications of partially or completely moving to the Cloud. It is certainly not a silent, backend version upgrade or hardware replacement. With the right level of planning, Cloud transition can be made transparent to end users and knowledge workers of the organization. Bottom line – Every key stakeholder of the organization should have the basic understanding of Cloud Computing and what it means to their organization.
What other myths or misnomers do you see when dealing with Cloud development and Cloud application migration?