Skip to main content

What is the Cloud in Cloud Computing?

In very simple words  cloud computing is an alternative to installing and maintaining your own physical computing infrastructure resources. There are different service models and different deployment models, each one meeting a different set of requirements and constraints.

 “the cloud” is not amorphous but a real and physical, but ever-changing, collection of servers
and storage units, located in data centers and tied together through fiber optic networks routing through peering points that are accessible through your Internet Service Provider at your home or office, or accessible through your cellular network provider and your smart phone.




One of the key characteristics of the Cloud is the appearance of infinite compute and storage
resources
. When you access a cloud provider, such as Amazon Web Services (AWS) / Microsoft Azure / Google Cloud, you can spin up any number of virtual machines (VMs) and tie that to as many terabytes of storage that you wish. From the Cloud provider’s perspective, they must have only one more VM available than the greatest number of VMs ordered at any one time to create the illusion of infinite compute capacity. Likewise, if there is at least one unreserved terabyte of storage in the Cloud provider’s facility, the consumer retains his illusion of infinite storage available to him  

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a
shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and
services) that can be rapidly provisioned and released with minimal management effort or service
provider interaction.

Another key characteristic of the Cloud is rapid scalability. The Netflix use case is often quoted in this context. Netflix will double its streaming capability just before the weekend by scaling up its AWS infrastructure on Friday. It will then “turn off” excess capacity on Monday to the level required for the work week when there is less demand for its streaming service.
Another example of scalability is in system testing and prototyping. Spinning up multiple test
environments, in the cloud, just before a major release and then releasing those resources at the end of the QA cycle reduces testing costs and increases software quality by allowing a more complete testing environment. Indeed, many DevOps implementations 
are based on this agility in creating multiple test environments.

Finally, converting infrastructure costs from a large capital expense, up front, to a pay-as-you-gooperational cost has enabled many startups to get off the ground while reducing the amount of cash
required to set up an initial operational infrastructure. Companies adopting a cloud computing service
trade upfront capital costs (CAPEX) to recurring operational costs (OPEX).
Instagram, at the time, were purchased by Facebook in 2012 for $1 billion. Instagram was just 13
people with over 100 servers running in AWS, so little capital outlay and few physical assets. Indeed,
Instagram had not purchased any servers or storage to run their business: it was all paid for a monthly
fee to AWS. The real asset that Instagram had accumulated was their 30 million users


The cloud model is composed of five essential characteristics, three service models, and four deployment models.”
The five essential characteristics of cloud computing:
1. on-demand self-service; most cloud services will provide administration screens where the
end user can add or remove services themselves without the intervention of a technical support
person;
2.
broad network access, usually through the Internet but also through dedicated fiber links (aka
“direct connect”);
3.
resource pooling, through virtualization and partitioning techniques;
4.
rapid elasticity, this addition or removal of computing resources can be done dynamically or in a matter of seconds or minutes, with the illusion of infinite computing resources;
5.
measured service, with a pay-as-you-go model. 



The three service models: IaaS, PaaS & SaaS, all share the same five essential characteristics of cloud 
computing:

The differences between the three service models .

1)Software as a Service (SaaS) is a specific application that is designed for end-users to do useful work, delivered over the web.

2)Platform as a Service (PaaS) is the set of tools and services designed to make coding and deploying those applications quick and efficient;

3)Infrastructure as a Service (IaaS) is the hardware and software that underlies all computer processing and storage – servers, SANs, networks, operating systems.

They all present a defined and usable service to a consumer, whether that consumer is an application user, a software developer, or an IT systems administrator 

An often-used analogy to describe the difference between Infrastructure, Platform and Software is
the highway system. 

The highway system, consisting of roads, bridges and tunnels, isinfrastructure. By itself, it produces no outcomes, but enables the other activities [IaaS]. 

The cars, trucks and buses that run on the highways are platforms. They also exist to enable the actual economic activity of transporting people and goods from point A to point B [Paas]. 

The actual transportation of people and goods corresponds to the software layer since that is where actual business activities happen [SaaS]. 

The three service models, IaaS, PaaS & SaaS, each present a different level of abstraction from the actual physical hardware and differ by what you control and what you manage. 

The four Cloud Deployment models.

1) Private Cloud. In this, the cloud infrastructure is provisioned for use by a single organization, made up of many consumers, for example business units. This is a typical scenario where a large corporation or government places IT in Shared Services organization. 
The private cloud may be hosted and managed by the organization itself, or a third party. The private
cloud infrastructure may be hosted on premise or off premise.
Since the private cloud is used by a single organization, this attenuates some of the data privacy
concerns that arise in a multi-tenant environment, especially in public clouds. 

2) Public Cloud. This cloud infrastructure is provisioned for open use by the general public. The
well-known cloud services such as Salesforce, Netsuite, Amazon Web Services, Microsoft Azure
and the like are all public clouds.
It is in this public cloud scenario that consumers of the service can leverage the biggest economies
of scale and the best utility pricing. However, they achieve this with a loss of control over:

a) Infrastructure configurations
b)Data placement
c)Service Levels and performance
d)Backups and Disaster recovery
· 
3) Community Cloud. This cloud deployment model services a community of consumers from
organizations that have shared interest (mission, security requirements, policy, etc.). 
It may be hosted and managed by a member of the community or by a third-party.
The community cloud model allows for more control than the public cloud model. This may be of
importance where data privacy is a concern.
  

4) Hybrid Cloud. A hybrid cloud is simply a combination of two or more distinct cloud
infrastructures (private, public, community) bound together to achieve data or processing portability
between the elements.
For example, an organization could use its private cloud where data privacy concerns are great, but

leverage public cloud resources when rapid elasticity and resource pooling are required.
The Benefits of the cloud computing model.
  • Achieve economies of scale;
  • Reduce CAPEX by moving to OPEX;
  • Improve access;
  • Implement agile development at low cost;
  • Leverage global workforce




Comments

Popular posts from this blog

Defination of the essential properties of operating systems

Define the essential properties of the following types of operating sys-tems:  Batch  Interactive  Time sharing  Real time  Network  Parallel  Distributed  Clustered  Handheld ANSWERS: a. Batch processing:-   Jobs with similar needs are batched together and run through the computer as a group by an operator or automatic job sequencer. Performance is increased by attempting to keep CPU and I/O devices busy at all times through buffering, off-line operation, spooling, and multi-programming. Batch is good for executing large jobs that need little interaction; it can be submitted and picked up later. b. Interactive System:-   This system is composed of many short transactions where the results of the next transaction may be unpredictable. Response time needs to be short (seconds) since the user submits and waits for the result. c. Time sharing:-   This systems uses CPU scheduling and multipro-gramming to provide economical interactive use of a system. The CPU switches rapidl

What is a Fair lock in multithreading?

  Photo by  João Jesus  from  Pexels In Java, there is a class ReentrantLock that is used for implementing Fair lock. This class accepts optional parameter fairness.  When fairness is set to true, the RenentrantLock will give access to the longest waiting thread.  The most popular use of Fair lock is in avoiding thread starvation.  Since longest waiting threads are always given priority in case of contention, no thread can starve.  The downside of Fair lock is the low throughput of the program.  Since low priority or slow threads are getting locks multiple times, it leads to slower execution of a program. The only exception to a Fair lock is tryLock() method of ReentrantLock.  This method does not honor the value of the fairness parameter.

How do clustered systems differ from multiprocessor systems? What is required for two machines belonging to a cluster to cooperate to provide a highly available service?

 How do clustered systems differ from multiprocessor systems? What is required for two machines belonging to a cluster to cooperate to provide a highly available service? Answer: Clustered systems are typically constructed by combining multiple computers into a single system to perform a computational task distributed across the cluster. Multiprocessor systems on the other hand could be a single physical entity comprising of multiple CPUs. A clustered system is less tightly coupled than a multiprocessor system. Clustered systems communicate using messages, while processors in a multiprocessor system could communicate using shared memory. In order for two machines to provide a highly available service, the state on the two machines should be replicated and should be consistently updated. When one of the machines fails, the other could then take‐over the functionality of the failed machine. Some computer systems do not provide a privileged mode of operation in hardware. Is it possible t