Monday 17 May 2010

8 Tips to Getting Started in Cloud Computing

In the old days, infrastructure meant buying $5,000 servers, putting them into high-security, cooled rooms, and hiring IT folks to make them all work.

And then doing this all over again so that you’d have redundancy. Those days are gone—in fact, if you tell investors that you need money for IT infrastructure, they’re going to question your intelligence.

Cloud computing is what has changed the game. It provides small businesses with the ability to deploy websites and applications quickly, to pay only for what you use, and leave all the management issues to someone else. It makes for a leaner business that can react faster to challenges and opportunities.

But cloud computing also requires understanding a whole new technology and computing philosophy. I was lucky when we put my company’s website, Alltop.com, “into the cloud” because our service provider, Rackspace, hosts hundreds of companies and our developers at Electric Pulp have done this many times. The gang at Rackspace and I have come up with a list of ten tips to help you get started in cloud computing:

1. Know the different options available to you. “Cloud computing” simply means that you pay only for what you use—like electricity, but it can be found many forms. A platform-as-a-service (PaaS for short) works well for front-end applications and websites. It takes care of a lot of the infrastructure you need to get started. An infrastructure as a service (IaaS for short) gives you access to a command line and allows you the flexibility to customize your load balancing, autoscaling, security and failover settings, but requires advanced technical knowledge in system administration.

If you don’t have someone comfortable programming in a terminal, an IaaS is not for you. Infrastructures-as-a-service require some system administration experience. If you don’t have someone with this type of expertise, either find a competent systems administrator or consider a platform-as-a-service instead. A PaaS provider should be able to handle basic but necessary tasks such as load balancing and security.

2. Understand that scaling is a skill, not a default. Cloud computing gives you a lot of flexibility to scale at a lower cost. However, no cloud provider offers “infinite scalability” out of the box though. The world’s most popular websites and applications have professionals working full-time to ensure uptime and speed when they are needed most. Be sure to factor this into your long-term IT costs.

3. Implement a disaster plan. The cloud is not fool proof, but there are ways to protect yourself should it go down. A multi-tenant cloud will go down on occasion. If uptime is crucial to your business, be sure you have a disaster recovery plan, geographic failover, and redundancy set in place.

4. Don’t be naïve. Cloud computing will not make up for a poorly written application or database structure. A hosting provider gets the blame for a lot of performance issues. If a database is not set up properly, or code is not optimized, there is nothing a hosting provider can do to make up for this. When it comes to developers, remember that you often get what you pay for. Be sure to check their resumes and portfolio for other work.

5. Budget for your specific use-case. Calculating your budget is not as simple as reading a provider’s website. Cloud computing treats hosting as a utility. Like other utilities such as electricity, your bill will vary each month with usage. If you see a surge in traffic or users, use more space, or process more information, expect to pay more at the end of the month.

6. Choose a cloud provider on your needs, not its popularity. Do you need something that is highly elastic in a short period of time? Are you going to need support and additional services? High availability? Integration with third party software? Different cloud providers excel at different things. Consider your individual needs, do your homework, and ask cloud providers questions about their availability, speed, security, and integration before you sign up.

7. Remember: some applications are not good fits for cloud. Cloud computing is great for anything you’d need to deploy quickly and at a low cost. However, just like multi-tenant buildings are not good for every business, a multi-tenant cloud is not good for every application. If you have high security or bandwidth needs, you will need to pursue dedicated gear.

For security reasons, any application that requires PCI or HIPPA compliance is not a good fit for cloud computing. A multi-tenant cloud may also not be able to handle extreme performance loads often seen by more resource intensive applications. Evaluate your specific needs and don’t rule out dedicated or hybrid hosting (a combination of cloud and dedicated hosting) if it looks like the right fit.

8. Think outside of the box. When hosting becomes a commodity, it opens your business up to new and exciting things. You can deploy applications or sites on the fly. Consider media rich or real-time elements to your application or website. Set up a server just to comb through customer information or other data your company collects. These possibilities were not as accessible to the masses before cloud computing, so don’t be afraid to try new things and expand how your business operates.

Full Source: Guy Kawasaki at OpenForum

Join Us: http://bit.ly/joincloud

1 comment:

AMDE said...

Great post & very practical. To expand on a couple of the point that I found very helpful & highly recommend:
#5 - Price/TCO: Costs are critical to calculate if you are REALLY saving what you project you will. Although there a many other factors to consider if going to the Cloud is the right answer [like Scott's article discusses] - regardless - here is a tool I've found to help with Total Cost Ownership of going to the Cloud:
http://www.microsoft.com/windowsazure/tco/

#6 & #7: Choosing a provider & not always a fit:
I found a great video on this topic which gives a framework of questions to evaluate if you should go to the Cloud and how to assess whether to have a public cloud, a private cloud or a hybrid solution [regardless of who is providing the cloud i.e. Amazon, SalesForce, Windows Azure, etc]

“Bridging the Gap from On-Premises to the Cloud” by Yousef Khalidi:
http://microsoftpdc.com/Sessions/SVC20