Showing posts with label Amazon. Show all posts
Showing posts with label Amazon. Show all posts

Wednesday, December 29, 2010

A quick & dirty look at web traffic trends on AWS, Azure, Force.com, GAE, and IBM Dev/Test cloud

Since the introduction of EC2 in 2005/2006, a lot has happened.  New service providers such as Google App Engine (GAE) and Force.com have emerged.  Existing hosting providers such as GoGrid & RackSpace have transformed to cloudify their service delivery model.  And, existing platform vendors such as IBM and Microsoft have raced to implement or acquire solutions to respond to this fundamental shift. 

Different types of vendors are competing for market positions.  Some are new: AbiquoNimbula, Cloud.com (formerly VMOps)…  And, some are mature: VMware, Novell/Attachmate, CA, BMC, DELL, …  [The vendor landscape is big and complex, and includes other types of vendors including systems integrators…]

As we close 2010, I thought it would be interesting to look at some usage trends of the big names in the Cloud market. 

The statistics come from Alexa.  It uses its own methods for capturing HTTP traffic, and normalizing the data.  As such, it is important to note that it does not include non-web app workload deployed on these cloud services.  In addition, it is common for enterprises to use DNS aliasing (CNAME) to map to a custom URL.  So, it is important to consider traffic to custom URLs would not be included in the following presentation.
The intent is to provide some ideas about usage and future trends, as these vendors battle it out for dominance and market share.

Please send me any comments or questions at babakh@yahoo.com.

Wish everyone a Happy New Year!

Saturday, July 31, 2010

Cloud Services & Availability SLA – Should scheduled maintenance be excluded from the measurements?

Availability SLA is an important criterion to enterprise customers when selecting a Cloud service provider.  If the service provider doesn’t offer appropriate SLAs, they often don’t even make it to the “short list”. 

As an example, Amazon’s EC2 availability SLA is 99.95%. Amazon also offers transparency by providing a website that publishes up-to-the-minute status on their services and any related issues.  In the case of AWS, Amazon makes the following exclusions:

Amazon EC2 SLA Exclusions

The Service Commitment does not apply to any unavailability, suspension or termination of Amazon EC2, or any other Amazon EC2 performance issues:

  • (i) that result from Service Suspensions described in Section 7.1 of the AWS Agreement;
  • (ii) caused by factors outside of our reasonable control, including any force majeure event or Internet access or related problems beyond the demarcation point of Amazon EC2;
  • (iii) that result from any actions or inactions of you or any third party;
  • (iv) that result from your equipment, software or other technology and/or third party equipment, software or other technology (other than third party equipment within our direct control);
  • (v) that result from failures of individual instances not attributable to Region Unavailability; or
  • (vi) arising from our suspension and termination of your right to use Amazon EC2 in accordance with the AWS Agreement (collectively, the “Amazon EC2 SLA Exclusions”).

If availability is impacted by factors other than those explicitly listed in this agreement, we may issue a Service Credit considering such factors in our sole discretion.

Here is section 7.1 from AWS agreement:

  • “…suspended for the duration of any unanticipated or unscheduled downtime or unavailability of any portion or all of the Services for any reason, including as a result of power outages, system failures or other interruptions…”
  • we shall also be entitled, without any liability to you, to suspend access to any portion or all of the Services at any time, on a Service-wide basis:
    • (a) for scheduled downtime to permit us to conduct maintenance or make modifications to any Service;
    • (b) in the event of a denial of service attack or other attack on the Service or other event that we determine, in our sole discretion, may create a risk to the applicable Service, to you or to any of our other customers if the Service were not suspended; or
    • (c) in the event that we determine that any Service is prohibited by law or we otherwise determine that it is necessary or prudent to do so for legal or regulatory reasons (collectively, “Service Suspensions”).

To the extent we are able, we will endeavor to provide you email notice of any Service Suspension in accordance with the notice provisions set forth in Section 15 below and to post updates on the AWS Websites regarding resumption of Services following any such suspension, but shall have no liability for the manner in which we may do so or if we fail to do so.

So, if there is any outage unintended or intended by Amazon, those numbers may not be included in their service availability measurements.  In fairness to Amazon, I haven’t experienced much outage or remember any notices for scheduled maintenance.   Never-the-less, if it occurs, it won’t be counted as an outage.

You can find EC2's SLA at http://aws.amazon.com/ec2-sla/.
--------------------------------
The other day, I received the following notification from GoGrid:
image
In this case, customers basically had no administration access to their running servers for 4 hours. 

GoGrid claims to offers 100% uptime in their SLA, but there are some exclusions as follows:

  1. downtime during scheduled maintenance or Emergency Maintenance
  2. outages caused by acts or omissions of Customer, including its applications, equipment, or facilities, or by any use or user of the Service authorized by Customer
  3. outages caused by hackers, sabotage, viruses, worms, or other third party wrongful actions
  4. DNS issues outside of GoGrid's control
  5. outages resulting from Internet anomalies outside of GoGrid's control
  6. outages resulting from fires, explosions, or force majeure
  7. outages to the Customer Portal
  8. failures during a "beta" period

According to item #1, scheduled maintenance is not included as part of their availability SLA.

Rackspace also claims to offer 100% availability in their SLA, but they also exclude scheduled maintenance from their availability measurement.

So, I appreciate the difference between scheduled maintenance and an unexpected outage.  However, from an availability perspective, I think scheduled maintenance should be included in the availability measurements and reporting.  Otherwise, it is misleading clients.

The Cloud service provider has options to manage for continuous availability.  That is under their control.  Regardless of scheduled vs. unscheduled service outage, the business impact may be no less even if the subscriber is aware of an outage in advance.

What is your experience with Cloud service providers?   Do they explain the SLAs clearly?  Do you think scheduled maintenance should be included or excluded?

Are you considering your application migration options carefully when moving to the Cloud?

So, you’ve heard about the Cloud. You’ve done some prototyping on AWS, Rackspace, GoGrid, Joyent, GAE, Force.com, Engine Yard,…

You show it to your boss. Bada Bing Bada Boom!

This is very timely, because the boss has just come out of a meeting with IT finance. He’s got a big problem justifying the cost of running the company’s website for $2M / year. He’s also pounded daily by business, because he has been unable to meet the availability and performance SLAs despite spending a lot on the infrastructure... So, you’ve just given him a brilliant idea. He checks with Legal, and asks you to look into moving the website to the Cloud.

As an experienced architect, you lift up the hood to take a good look inside the WebApp. You familiarize yourself with the code, dependencies, packaging, etc… After your analysis, you break down the options as follows:
Options
Pros
Cons
Option 1: Move the application as is Quick Inherits the issues that already exist with the application
The performance of the application may just marginally improve due to the application architecture & implementation
Option 2: Re-factor the application; then move Potentially fixes some of the application issues
Potentially fixes some of the application infrastructure issues
Takes more effort than option 1, and requires more time
May introduce some dependencies on the target Cloud
Will probably require learning a few new things
Option 3: Rewrite à Redesign/rewrite the application Full application refresh: New application & infrastructure architecture & design, and implementation
Removes the implementation constraints that existed in previous options thereby allowing to leverage/offer new capabilities (i.e. social computing)
May be more involved than the previous options (time, cost)

In option1, you settle on an infrastructure as a service (IaaS) provider, and just move the application as-is over. Unfortunately, the issues that had already existed with the application will be all propagated (i.e. poor image loading / bundling, deprecated code, unsupported utility jars, packaging). However, in option1, you’ll be able to reduce the infrastructure and operations costs dramatically, and improve SLAs (i.e. availability, auto-scaling) quickly without a lot of efforts.

In option2, you’d still subscribe to an IaaS. You will have the opportunity to clean up the application a little. You might even re-factor the application to use Cloud services (i.e. persistence layer). If time permits, you might even make some changes in the infrastructure in term of content caching & media delivery (i.e. CDN). With this approach, you will have an opportunity to make quick, incremental improvements to the existing application without spending too much money.

In option3, you might consider an IaaS or a PaaS. In this context, the selection is primarily dependent on the application requirements, control over the infrastructure, execution environment customization, etc

With option3, the approach may range from just rewriting the application using its existing design to complete re-implementation. In the case of just rewrite, it can be very straight forward and relatively quick (using the right frameworks, reusing existing components and graphics, etc). The disadvantage is that you’re constraint by the original design, and will not be able to introduce any enhancements or new capabilities.

With redesign/rewrite approach, you’ll need more time to design the solution, but you’ll be able to introduce new capabilities.

So, here is a diagram to summarize:
image

The Time axis is self-explanatory. It reflects effort and costs. The Value axis is an indicator of business value. That ranges from cost-effective & enhanced IT service delivery to offering new business capabilities and possibilities.

I am leaving some details out, but you get the idea.   Let me know what you think.  Tell me about your experience.

Wednesday, April 28, 2010

More on VMForce

As expected, VMware and Salesforce unveiled more details on VMForce offering yesterday:
VMForce is a service that allows developers write any Java applications using SpringSource framework (AOP-based programming model and reflective abstraction, SpringSource Tool Suite, SpringSource TC Server), and deploy to a virtual environment using vCloud.  The deployed code runs on Force.com infrastructure and virtualized and managed using vSphere.
You can read the key announcements at the following:
At first glance, the model looks very similar to SpringSource CloudFoundry offering which facilitates implementation and management of application on AWS.   There is a difference.  With CloudFoundry, VMware virtualization is not involved, as Amazon uses Xen
This is good for VMware and SpringSource.  With such moves, they are aggressively  moving to position SpringSource as a “common application stack”.  As enterprises increase the migration of their workloads to the Cloud, VMware/SpringSource can be a great enabler offering value-adds such as preventing vendor lock-in, code & skills portability, etc…
As I mentioned in my previous post, this is also good for Salesforce, because it enables them to host non-CRM related apps on their platform. 
The only question that I am struggling with is the revenue model/rev share.  Force.com pricing is clear and VMForce should help them increase subscribers. However, I am not sure how VMware will be able to make a sustainable business out of this, especially since SpringSource (open-source, cloud infrastructure, etc).   As far as I know, the CloudFoundry pricing is still unknown.  
How do you view in comparison to Azure and GAE?  Microsoft & Google own both the infrastructure and the application middleware.  It seems to me that application framework and tooling would not be the major revenue contributors. Thoughts/comments?

Tuesday, April 13, 2010

vmforce: Is Salesforce getting into IaaS?

VMware and SalesForce.com have scheduled a joint webcast on April 27th. Rumors are circulating that Salesforce is planning to offer IaaS based on VMware virtualization platform. 
If true, this would be a good move for Salesforce for the following reasons:
  • Currently with Force.com, you can build and deploy only a limited set of applications (i.e. CRM centric, business process-based/case-management types of apps).   With IaaS, it will possible to deploy all sorts of applications on their platform. 
  • Building on top of VMware virtualization stack (i.e. vSphere), Salesforce should be able to facilitate integration and management of hybrid computing environments for those enterprises that have already invested in VMware.   This would be a huge advantage over competitors such as Amazon & Azure.
  • Azure already offers hosting (Windows).  In some cases, an IaaS from Salesforce may be viable alternative to MSFT.
  • Obviously, an IaaS Cloud Service offering enables Salesforce to engage enterprise customers on multiple levels thereby increasing marketshare.
So, what about VMware?   How would this help them?
VMware wants to be the technology backbone for all IaaS providers.  This is evident in their vCloud initiatives, and investments in vCloud Express and Terremark.   Salesforce.com is a key player in Cloud computing.  Enabling Salesforce deliver an IaaS on top of their virtualization stack is a major deal for them.  If the model proves successful, it can become a big headache for Amazon, Azure, and GAE
VMware also sees itself as a platform for hybrid Cloud Computing:
At this point, this is all speculation.  We should find out more on April 27th. 
What are your thoughts about vmforce?  Do you think VMware would be able to strike a similar deal with Google, eBay or Yahoo to offer an IaaS?

Monday, July 27, 2009

IT Portfolio Management & Cloud Computing

Earlier today, I presented at iCMG’s Architecture World 09 about the impact of Cloud Computing on IT Portfolio Management.   I started the discussion with a quick review, and an overview of Cloud Computing.  The first set of slides came from my Cloud Computing overview and case study.  Then, I spoke with IT Portfolio Management and its relationship to other IT management practices and IT Governance.

I reviewed IT Portfolio Management in the context of shared services and Cloud Computing.  Here are some of the key points:

  • Cloud Computing lowers the barriers and risks for enterprises to experiment with new ideas (i.e. rapid prototyping and experimenting).  This is a huge benefit and capability for the enterprise.
  • Cloud Computing makes it much easier for enterprises to perform ongoing financial analysis (i.e. TCO).  For example, Cloud Computing billing, by itself, facilitates understanding of the costs with more precision, because its delivery model eliminates a number of the variables associated with indirect costs (which are often the main contributors to different results)…
  • With Cloud Computing, it is much faster to measure benefits due to readily available analytics…

You can find the slides here.

Sunday, February 01, 2009

Amazon’s Q4-08 report, AWS revenue, analysts, and forecasts


Despite all the catastrophic news and deteriorating economic conditions, Amazon filed another impressive Q4 earnings report last week.

For the past few months, I have been puzzled by some of the analyst estimates and predictions on Cloud Computing. For example, IDC estimates Cloud Computing market to reach $42B by 2012. According to that analysis, 2008 infrastructure as a service is valued at over $2.9B. Since Amazon is a pioneer in Cloud Computing, I decided to take a closer look at their earnings.

To understand Amazon's report, it helps to break down their business as follows:

  • Amazon Marketplace – This is Amazon's retail business where they sell their own inventory + other merchants
  • Amazon Enterprise Services (AES) – This is Amazon's consulting group that helps other retailers implement their Web channel on Amazon's sophisticated platform (i.e. Target powered by Amazon.com). There are lots of other services in this category including Fulfillment By Amazon (FBA), WebStore, etc
  • Amazon Web Services (AWS) - This is where Amazon offers a range of cloud services (infrastructure, payment, analytics, etc)

Amazon's total revenue for 2008 was over $19B with a revenue mix as follows:

  • Media – Products in this category are simple and straight forward such as books, DVDs, CDs, digital downloads, software, and video games. This was 58% of total revenue.
  • Electronics & Other General Merchandise (EGM) - More complicated products in this category from electronics & computers à shoes & jewelry à Amazon fresh (Grocery)… This was 39% of total revenue.
  • Others – AWS + AES + credit card, & advertising. This was 3% of total revenue.

For the last two years, Amazon has reported the following numbers in the Others category:

And, the total revenue for 2007 & 2008 in the US and abroad can be shown as follows:


Except for Q1 2008, Amazon has been doing quite well in Others. They have seen double digit growth for most quarters. The big question: what is the revenue contribution by AWS?

Here are some observations/assumptions to guesstimate AWS:

  • It has been quite a while since there were any announcements about a major retailer signing up with Amazon. On Amazon's website, there are only 4 customers showcased. So, AES is probably not a major growth contributor.
  • Advertising revenue could be a big factor especially as traffic and sales volume increase on Amazon.com.
  • Amazon has been reporting exponential growth in S3 objects, number of developers, # images and new partnerships (i.e. Microsoft), etc, so AWS can be major contributor.

So, if we assumed AES & credit card to make up 20% of Others, and AWS & advertising to be each around 40%, that would make Amazon's total 2008 AWS revenue around $210M. (Just based on a set of assumptions!)

Unfortunately, there is no uniform definition around Cloud Computing yet and there are many different types of vendors that offer "cloud solutions". So, analysts projections can vary greatly.

In terms of AWS and its revenue contribution to Amazon, many believe that it has the potential to exceed Amazon's retail business in not too distant of a future.

It will be interesting to see how well AWS will do and what its contribution be by 2012, especially as more enterprise vendors like IBM, MSFT, SUN, HP intensify their focus on Cloud Computing...

Thursday, December 18, 2008

AWS - An awsome example of operational excellence

I have been very lucky in my career. I have learned a lot from colleagues and mentors who have coached me or influenced my thinking. I have also had the opportunity and privilege to work with awesome customers who have challenged my approach and pushed me forward in positive ways. It has been a great journey and I think it is fair to say that I have seen a good cross-section of different organizations manage IT challenges.

As I look back at many of my projects & customer engagements, I realize that underneath all the creative project codenames and new technology buzzwords, at the heart of the issues is operational excellence. It manifests itself in terms of sustained competitiveness, new market opportunities, agility, customer-centricity… and we apply different methods or techniques to help us get there, but operational excellence fundamentally remains the main driver for all the investments.

That brings me to Amazon. It had been quite a while since my last visit to Amazon Web Services (AWS), so I thought it was time to get current with what’s changed and new.

I was delighted to see a new breed of admin interface to EC2 (http://sourceforge.net/projects/elasticfox/) and S3 (BucketExplorer, S3Fox). They make it super easy to manage Amazon Machine Images (AMIs) and files.

My Linux & Windows images booted in under 4 minutes (I picked the smallest servers) and I attached a new Elastic Block Storage (EBS) to store my application files in seconds. I was very impressed by the level of granularity and real-time usage report:

AWS exemplifies IT operational excellence in the following areas: Asset Management, Change Management, Provisioning, Service Level Management… Furthermore, they provide metrics and a level of transparency that is unprecedented.

In my 20 years of experience including 12 years of daily customer-facing roles, I haven’t seen any organization with such consistent & stable process maturity & execution.