Archive

Posts Tagged ‘Cloud Computing’

Vertical vs Horizontal APIs

April 25th, 2011 No comments

Many APIs have emerged since the inception of computer software. Its root can be traced back to the layered software architecture in which high layer calls to low layer. The low layer is not necessarily called APIs, but the other way is mostly true.

Initial APIs were inside a single or multiple vertical call stacks that share same memory space. As a result, you have good performance and ease of use. After that, inter-process communication (IPC) emerged and allowed API services to run in a different process for better

Mark Your Calendar For Our First Community Event

April 13th, 2011 7 comments

After I touted the idea to have a meetup last week, I got quite positive feedbacks from the community. More importantly, I secured sponsorship from my employer VMware so that we can have the event at VMware headquarter. Due to a little time conflict, we will have it on May 18, instead of May 25 as I planned before. It’s still a Wednesday and food/drinks will be served with no charge.

This event was designed for professionals like developers, system administrators. Even if you are not but interested in virtualization and cloud computing in general, you are still very welcome to join us.

The first 100 registers for onsite will have chance to win

Virtual Machine Roaming in the Cloud

March 28th, 2011 No comments

If you have a mobile phone and travel to other areas or countries, you can still use it to make and receive a call. Your phone number does not change. This is called roaming in the wireless telecommunications.

In the cloud environment, your virtual machine can “travel” around as well, maybe from one datacenter to another, from your enterprise to one of your service providers or the other way around, or from one service provider to another.

It’s relatively easy for a virtual machine

Franchising Business Model for Cloud Computing

February 28th, 2011 No comments

In a previous post, I said that cloud service business model is very much like that of office renting business. Just as big companies want to own their major offices, they want to own their major datacenters as well. That explains why private cloud will not only be there forever but also represent a major chuck of overall market in the future.

Cloud Commoditization

Let’s get back to the cloud service business, or so called public cloud. When the cloud technology getting mature, the cloud related services will increasingly become commoditized. This is especially true

Big Bang: The Story of How A Cloud Is Created

February 15th, 2011 No comments

I believe most of us learned at school the theory of big bang which tries to explain the formation of the universe. “According to the Big Bang model, the universe, originally in an extremely hot and dense state that expanded rapidly, has since cooled by expanding to the present diluted state, and continues to expand today.” (source: Wikipedia).

Now how does the theory relate to the cloud computing? More than you can think of. You can use the same theory to create (not just explain) a new cloud. Just like the universe, a cloud is created from almost nothing to a fully running infrastructure over time. Think about most enterprises which do not yet have a cloud today, they will need a big bang to create an enterprise cloud.

Basic Elements of a Cloud

It’s important to understand what you want before taking any action. To operate a cloud,

Cloud Architecture Patterns: VM Template

January 24th, 2011 No comments

Intent

Standardize new virtual machine provisioning with templates

Category:

Creational pattern

Problem

It’s been a pain to create new virtual machines with the right software installed and configured properly. You can always use tools like KickStart to automatically install the operating system and then install other software as needed. But configuring such an environment is not trivial, and it takes a long time from start to finish.

With the rise of virtualization, more virtual machines are provisioned (and decommissioned) than ever before. Installing each new virtual machine from scratch is not the ideal solution.

Solution

Quickest Way to Support SaaS Cloud for ISVs

January 10th, 2011 2 comments

One challenge almost every ISV faces today is how to quickly get “cloudy” with least investment. From business side, SaaS is a new model for most ISVs, meaning it’s still hard to project revenue. Even worse, the SaaS service may cut into the license revenue of existing product. Technically, it may require a full re-design and re-implementation of product  for maximum multi-tenancy. Putting together, it’s a big challenge for decision makers.

But it doesn’t have to be difficult with a right strategy. This post explains how to support SaaS without re-designing existing applications, which means a big saving for the ISVs.

Cloud Architecture Patterns: Cloud Broker

January 3rd, 2011 No comments

Intent

Provide a single point of contact and management for multiple cloud service providers and maximize the benefits of leveraging multiple external clouds.

Category

Structural

Motivation

When you are buying and selling stocks or other securities, you hire a broker to execute the trade on your behalf. One reason for that is convenience. You don’t need to take care of the details of placing orders and working with multiple stock exchanges, and whatever else is required to trade securities.

How about working with multiple cloud service providers? For sure, you can go online to any cloud provider as long as you have your credit card ready. But is the service provider the best fit for your requirements? Do you have a backup plan if you are not satisfied with your service provider? Can you easily switch among your service providers to minimize cost or maximize flexibility? If you are not sure, you may then need something like a cloud broker.

Solution

Top 5 Predictions on Cloud Computing for 2011

December 29th, 2010 No comments

While 2011 is coming soon, many technologists and medias are busy with predictions for 2011. I got an email from the chief of Cloud Computing Journal Jeremy Geelan (@jg21) for my predictions. Here are my thoughts on the cloud computing for 2011 and beyond:

  1. The focus of cloud computing will gradually shift from IaaS to PaaS which becomes key differentiator in competition. Developer enablement becomes more important than ever in ecosystem evangelism, full software lifecycle integration, IDE support, API and framework, and etc.
  2. Many more mergers and acquisitions (M&As) will take place in cloud space for companies to build stronger cloud portfolio. For big players, it should include dual vertically complete stacks both as services and products. Whoever gets there first will gain enormous advantages over its competitors.

Cloud Architecture Patterns: Service VM

December 20th, 2010 No comments

Intent

Provide an easy way to provision new infrastructure and application services for a computing cloud

Category

Behavioral

Problem

To run a large-scale computing infrastructure, you will need many different types of services, including compute, storage, and networking, among others. After virtualization has successfully detached compute from the physical hardware, it’s very easy to provision and scale compute. But compute requires storage and networking which are lagging behind. To maximize the benefits of virtualization and cloud computing, it’s natural to push the storage and networking in the same direction.

Looking beyond the infrastructure to consider applications, we need various types of services such as database, directory, messaging, and more. I’ve covered the App VM pattern that allows using IaaS for PaaS in a previous blog. While you can pack some of these services into an application VM, the problem is that it scales well but does not follow the aspectual centralization pattern.

Solution

Cloud Architecture Patterns: VM Pipeline

December 13th, 2010 No comments

Intent

Provide a configurable structure for modularized information processing

Category

Structural

Problem

Complicated data processing involves many distinctive and repetitive steps. Each of these steps can be mapped to a software module that is independently developed and assembled for particular cases of data processing.

Given the elastic nature of cloud computing, it’s a perfect platform for data processing. We need a solution that is flexible in two ways:

1.     Modularized components for data processing;

2.     Configurable so that different modules can be re-used easily in various cases.

Solution

Cloud Architecture Patterns: App VM

November 29th, 2010 No comments

Intent

Provide packaged software stack as Platform-as-a-Service (PaaS) platform for running applications

Category

Behavioral

As Known As

PaaS VM

Motivation

We all know the three different types of cloud services from Infrastructure-as-a-Service (IaaS), PaaS, to Software-as-a-Service (SaaS). If you want to leverage PaaS, you have to choose one of the PaaS service providers like Google or Microsoft. Leveraging an external PaaS has its own benefits.

What if you want to keep your applications running in-house but still enjoy the benefits of PaaS? Today you don’t have much choice. Google, for example, does not sell its App Engine as a product that you can install and run on premise. You have to run it on the Google cloud.

Solution

What You Can Learn from IBM Research on Designing Private Cloud

November 16th, 2010 No comments

IBM Researcher Kyung Ryu presented a private cloud RC2 at LISA 2010 conference. As a typical IBM project, the presentation has 20+ co-authors. The following is based on my notes taken from the session, therefore may contain my misunderstandings.

Having an internal cloud is not a big deal these days. You can find several products from the market. What is truly unique and challenging for RC2 is that it supports very different virtualization platforms from X86 based hypervisors on X-series servers, to IBM PowerVM on P-series, to the mainframe based native virtualization on Z-series. Therefore RC2 is really a hybrid private cloud.

The talk focused on system architecture with several diagrams. I cannot reproduce these diagrams but would list the key components of the system:

Cloud Architecture Patterns: Façade VM

November 15th, 2010 No comments

Intent

Provide a single point of contact for a large-scale system consisting of many virtual machines so that they are viewed as one giant VM from outside

Category

Structural

As Known As

Giant VM

Motivation

When a system becomes big, you need multiple VMs to support the workload. For ease of use reasons, external users don’t want to manage multiple connections to each of the virtual machines. Who wants to remember a list of IP or DNS names for a service? Also, you just cannot expect your users to pick up the least-busy VMs for balanced workloads across your cluster of VMs. And to scale your application when your overall workload increases, you want a seamless way adding new capacities without notifying others.

Finally, if you offer a public service, you don’t want to allocate a public IP address for each of your VMs. These days, public IPs are scarce resources and may cost you money.

LISA 2010 Conference

November 14th, 2010 No comments

Later last week I attended 24th LISA conference by USENIX at San Jose Convention Center. The name LISA stands for Large Installation System Administration. It’s a great conference focusing on technology, training, and professional development for system administrators.

I am not a system administrator, but wanted to know more about system administration in general because of devops movement. So I attended many technical sessions covering from storage, networking, release engineering, cloud computing, social network website management, to career development as a system admin. I will blog some of these sessions I attended based on my notes.

Cloud Architecture Patterns: Stateless VM

November 8th, 2010 No comments

Intent

Ensure a virtual machine does not carry a permanent state so that it can be easily provisioned, migrated, and managed in the cloud.

Also Known As

Disposable VM

Category

Behavioral

Motivation

Virtualization is the cornerstone for cloud computing, especially at the infrastructure level. With many virtual machines created, managing them becomes a big challenge.

Among these challenges are system provisioning, backup, archiving, and patching different virtual machines. These administrative tasks take lots of CAPEX and OPEX.

We need a better way to architect applications for the cloud.

Solution

Making a VM stateless solves a lot of problems. For one thing, you force applications to save data outside of the virtual machine. No longer do you need to back up the virtual machine – only the data. It also makes the system provisioning easier without differentiating the different instances. When the stateless VMs crash for whatever reasons, you don’t lose much. Just add a new virtual machine and voila!

Cloud Architecture Patterns: Aspectual Centralization

November 7th, 2010 No comments

Intent

Separate concerns in large scales computing by leveraging different types of services in the cloud

Category

Behavioral

Motivation

The history of computing reveals different eras starting from mainframe to client/server to Web computing. With mainframes, computing is contained within the boundary of a mainframe. With client/server and web computing we see the separation of the presentation from the data. With all these computing models, the data is owned and maintained by different applications. The IT staffs who run and maintain the applications are responsible for backing up and maintaining data.

With the rise of cloud computing, I see a new trend that will fundamentally change the game and push productivity to all new levels. I call this “Aspectual Centralization” (AC). This is as important to cloud architecture as Model-View-Controller (MVC) is to software architecture.

Solution

With AC, different aspects of an application are extracted out and delegated to centralized services: data services, messaging services, logging services, and so on.

Top 3 Trends Every IT Professional Should Care About

November 6th, 2010 No comments

IBM DeveloperWorks recently published the result of a survey of 2000 IT professionals excluding IBM employees. The key findings are:

  1. Cloud Computing to overtake on-premise computing. For the question, “how do you rate the potential for cloud computing to overtake on-premise computing as the primary way organizations acquire IT by 2015?” 30.4% said likely, 21.6% most likely, and 13.6% definitely.
  2. Mobile application development to dominate. 55% of respondents see app development on mobile grows than other platforms in 5 years.
  3. IT professionals need, but often lack, industry-specific knowledge. 28.3% thought moderately important, 45.6% very important, and 15.9% extremely important. This is not an IT trend per se, but represents the demands for IT professionals.

The first two findings are mentioned and somewhat confirmed by another survey by Forrest and Dr. Dobbs, which is more developer oriented:

Cloud Computing Expo 2010 Silicon Valley

November 3rd, 2010 No comments

The Cloud Computing Expo takes place in the Santa Clara Convention Center from this Monday to Thursday. This twice-a-year event attracted thousands of attendees. Thanks to the invitation from Jeremy Geelan, I went to conference checking out several sessions and the exhibitions.

I found many familiar companies in the exhibition, from Oracle, Microsoft, VMware, and many other companies. Unlike VMworld, I don’t find many IHVs in the show. The ISVs demoed their products with strong focuses on Cloud. Microsoft for example demoed its Windows Azure family of services; VMware demoed its vCloud Director. I even found IBM booth which was much smaller than I expected. It turned out to be its recently acquired CastIron part.

Here are several companies I found interesting technologies from my trip:

Code2Cloud Reborn With a Greater Purpose

November 2nd, 2010 No comments

If you attended last year’s VMworld keynote by Steve Herrod or watched the online broadcasting, you may still recall the code2cloud.com website (see the top banner here). That was a very simple Web application meant for the keynote attendees to submit names and email addresses to win a chance to go to the backstage with the Foreigner band. The website was hosted at Terramark vCloud and continued to run for about one month afterward.