Showing posts with label IaaS. Show all posts
Showing posts with label IaaS. Show all posts

Saturday, November 8, 2014

Cloud Computing: Strata

Ph. D. Julio Fernandez Vilas
¿Any comments? jfvilas@gmail.com

There is no standard definition of what "Cloud Computing" is, and two reasons are responsible for this lack:
  1. There are different implementation models (infrastructure, application, software ...), so there is no precise definition.
  2. b) There are very multifarious offerings providers, so that a strict definition would not include all offerings.

But if I had to define what Cloud Computing is, I would choose the definition included in Wikipedia (read the interesting Wikipedia entry here):
"Cloud computing Relies on sharing of resources and coherence to Achieve Economies of scale, similar to a utility (like the electricity grid) over a network. At the foundation of cloud computing is the concept of Broader Converged Infrastructure and shared services. " The figure below is a good graphic illustration of generic architecture of cloud computing, where we can observe 3 clearly defined levels:


Here we can see the main "three flavors" of cloud computing offerings, infrastructure as a service (IaaS) platform as a service (PaaS) and application (it stands for "application software") as a service (SaaS). In the market and specialized press we can find other types of cloud offerings, focused on specific areas of technology, Security as a Service (SECaaS), Storage as a Service (STaaS), etc., but ultimately, any offering cloud will be framed in any of the three categories we've mentioned:

  1. Infrastructure (IaaS) refers to the possibility of consuming infrastructure services in the cloud, such as computing power, storage, connectivity, etc. At this level, management done by the customer (subscriber) is performed at virtual machine level or storage unit (LUN) level, for example, while the provider of infrastructure services (provider) is responsible for "only" managing the hardware (plus all related concepts to the cloud, such as scalability, high availability, etc.).
  2. Platform (PaaS). When a client wants to get rid of costs and tasks associated with the management of the infrastructure (machine maintenance, procurement of space, bandwidth allocation, etc.), he has the option of using services in a “platformed” mode, where the level of management that must been made by the subscriber is much lower than the one a provider to does. In this model, the client focuses on the development of applications, in fact the real solutions to their business problems. As an example, in Azure platform, it is possible to develop a .net web application and deploy a packetized version to a cloud server without installing anything. Here is Microsoft itself who is responsible for configuring and managing machines and application servers, clients only have to worry about generating deployable software packages on the platform. At this level of the cloud computing stack is where you would frame the old ASP's (application service providers).
  3. Software / Application (SaaS). At the highest level of services providing in the cloud we find Software as a Service. It is easier to understand, since it is the stratus that we find closest to the business needs, and therefore farthest from the technical stuff. It can be easily understood with these examples: Office 365 or Gmail.

Thursday, October 23, 2014

Cloud Application Layer Part III - Up & Down

Ph. D. Julio Fernandez Vilas
¿Any comments? jfvilas@gmail.com

Let's recall now the concepts of public cloud and private cloud, which are easily understandable if we really understand the relationship between the Internet (public) and (private) Intranet. When a company uses the public cloud, and then publishes services internally in the organization using the same technologies, i.e., in a private cloud, the company is acting as both a client consuming cloud services and a provider that offers services to its own iT services.

This is important when assessing the costs, as it will allow the consumption billed individually, affecting a business unit costs associated with the services they use.

Moreover, we must consider that the company is a living entity, constantly changing, and the fact of offering services from a cloud, whether private or public, is a key factor in making changes to services. That is, we endow the company a considerable amount of flexibility, since domestic service consumers do not know whether such services are being offered from inside or outside the organization.

In a last step in the adoption process of cloud technologies it is very important to have bothered to make a good design of services consumed in the form of a private cloud. If the design is good, the migration to a cloud service can be done easily. It is important to focus on a key concept for this migration to the cloud be done easily: STANDARDIZATION.

We need to design our private cloud services so that they are compatible with the public cloud. When we talk about compatibility or standardization, it is important to have a clear understanding of the layer of cloud technology we are focusing. For example, if we are thinking about IaaS, we have to make sure we use only x86 architectures, we are restricted to Windows and Linux, standard virtualization technologies, iSCSI, etc.

If you are thinking in SaaS (cloud email, for example), which is standardized is functionality. That is, we can migrate our on-premises platform (Exchange, Lotus, etc.) to an email platform in the cloud (Gmail, Outlook.com, etc. ..), provided that it assures me that the functionality that I will get on the new platform is at least the same as I have on the current platform. We should note that in the SaaS projects we will always find a CAPEX amount in the project corresponding to migration.

And all this in terms of going up to the cloud. And what about going down from the cloud? If we have taken into account everything said so far, the download process (or even transfer to another provider) is exactly the same. Remember that we are talking about going up to cloud from a starting point that assumes we are already working on private cloud.

Wednesday, October 14, 2009

Cloud Computing Definition #2

Ph. D. Julio Fernandez Vilas
¿Any comments? jfvilas@gmail.com

If we think that “cloud servicing” is not a kind of cloud computing, what should be considered cloud computing? There are still 2 parts of our cloud computing stack: applications and cloud infrastructure. Let’s talk about cloud infrastructure, a.k.a. IaaS (Infrastructure as a Service). EMC (the storage giant famous by its Symmetrix boxes) bought VMWare several years ago. As it occurred with no other companies bought by EMC, VMWare has not been included into the EMC Corp., and it has been kept as a separate company instead. It’s just a bit of history.

EMC sees IaaS as a “double-cloud infrastructure” built by the private cloud and the public cloud. What EMC thinks about “clouding the infrastructure” is closely related to what its award winning ESX is designed for. According to EMC view, companies using virtualization infrastructure (I think EMC’s theories are right for ESX or even for Xen) should enter in a “virtualize-everything” mode. This way, the virtualized infrastructure can hold all the infrastructure needs of the company.

The infrastructure can grow or decrease according to business needs. The benefits of virtualization are clear: changing the capabilities of the infrastructure is as easy as adding a new server to the virtualized farm. Companies will be positioning this year and next one in this “virtualized datacenter stage”. In fact, the private or internal cloud is an evolution of the virtualization of the whole datacenter.


How can datacenters prepare for the IaaS? I´ll point out just three guidelines:
  1. Create (or expand) a virtual infrastructure to support the running business services.
  2. Prepare your systems to be run in the cloud, that is:
    1. Reduce the number of different cluster you manage.
    2. Create the fewest number of different clusters that support your business.
    3. Expand your cluster(s) with all the nodes you need.
    4. Deploy all the software you use to run your business to all the nodes.
    5. Use a load balancer to specialize the workload of each node or group of nodes.
  3. Manage your virtual infrastructure.
Nowadays I don’t see an easy way to move (i.e., LiveMigration, VMotion or whatever) an OS image running in your private cloud to the public cloud (is there any public reliable ESX service?).

What would you do with your storage?
  • Suppose you use FC: you should have a very clear extended SAN that crosses your private SAN boundaries (maybe with FC-IP) and expands to a hypothetic public SAN service, so when you move your OS images to the public cloud, FC access should be provided to the nodes of the ESX farm.
  • Suppose you use iSCSI: you show work with communications staff in order to create alternative routes to your storage when you move OS images to the public cloud.
  • You may use CNA's: you have a problem.
There are several beta experiences related with the VMware ecosystem: bluelock, hosting.com, Logica, melbourneIT… It is very important to note that they are all beta services. So, going back to our main discussion, can virtualization be considered cloud computing? We can say, without a doubt that virtualization is the base for IaaS. But I prefer to restrict the term cloud computing to other things more closely related to what computing means.

Finally, in Cloud Computing Definition #2 we exclude virtualization as a main objective and we think of it as a booster of IaaS. In future articles we will talk about XaaS (Everything as a Service) ans its relation with cloud computing.