User:Tom/Clouds - An Introduction: Difference between revisions

From RoggeWiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 18: Line 18:


*'''Platform-as-a-Service (PaaS)''': PaaS is the cloud offering of a middleware/software server platform. Access to a virtualized software development and deployment infrastructure allows developers to write and deploy code into a cloud-based infrastructure faster and more effectively. PaaS virtualization granularity is at the level of individual software applications pon a scalable virtualized infrastructure.
*'''Platform-as-a-Service (PaaS)''': PaaS is the cloud offering of a middleware/software server platform. Access to a virtualized software development and deployment infrastructure allows developers to write and deploy code into a cloud-based infrastructure faster and more effectively. PaaS virtualization granularity is at the level of individual software applications pon a scalable virtualized infrastructure.
*'''Software-as-a-Service (SaaS)''': SaaS is the offering of an application as a network/web-enabled clou offering. This provides end-users with access to a virtual software application used by many users, each with their own data space. SaaS virtualization granularity is at the level of users and organizations, and user data within the scope of a single application and organization.
===Benefits of Cloud===
Cloud technologies have brought benefits at each level - computing infrastructure management, application development, and end users.


Cloud Native:
Cloud Native:

Latest revision as of 13:15, 23 September 2011

The Cloud Revolution

A revolution in computing has occurred over the last decade (2000-2010). Maturing technologies for virtualizing software systems and runtimes have severed the historical dependcy between software applications and operating systems from the physical compute resources that run them, introducing high levels of flexibility, efficiency, and scalability to computing infrastructure.

Flexibility is improved as incremental hardware acquisition, deployment, setup and installation has become a "virtual" process instead of a laborious physical process. With a virtualized infrastructure in place, a new virtual machine can be provisioned simply and instantly. Just as importantly it can be de-provisioned or switched to a new operating system or application purpose with similar ease.

Efficiency is enhanced as hardware resources and computing power are no longer quantized to physical hardware - in which isolated computers rn largely idle - but can be allocated at a more granular level for maximum utilization. A single blade server may now run more than a single virtual machine - reducing the unused compute power by alllocating it to other applications.

Along with the spread of virtualization technologies, the internet has introduced new concerns about application scalability. Just as virtualization allows a single physical compute resource to run multiple applications, as applications scale up to high volumes, an application may outgrow the capacity of a single physical resource and additional resources must be brought to bear. Technologies have emerged that coordinate a "cluster" of physical resources to act in concert as a single application.

The ability to scale applications across a large set of compute resources has enbled domaiin experts to provide a single application to many users. Rather hat distributing software to each user's physical machine, the software application is made available as an online "service". Although these applications have been around as long as the Internet, the migration of traditional software applications to the Internet has given rise to the specialized term "Software-as-a-Service".

Many Kinds of Cloud

Each of these technologies - virtualization, scalability, and Software-as-a-Service - is encompassed by the term "cloud". Applications running "in the cloud" are virtualized and available as services. A user is unaware - and generally uncaring - about the physical compute resource the application and the user's data are stored on. Thus the application and data reside "out there somewhere" hidden in the mists of the virtualization infrastructure. Cloud technologies are commonly differential into three levels:

  • Infrastructure-as-a-Service (IaaS): Iaas is effectively the cloud offering of a virtualized, utility hardware platform. Access to a virtualized hardware/operating system platform allows the user to quickly provision virtual machines and operating systems upon which to deploy software applications. IaaS virtualization granularity is at the level of virtual machines upon a bank of physical hardware.
  • Platform-as-a-Service (PaaS): PaaS is the cloud offering of a middleware/software server platform. Access to a virtualized software development and deployment infrastructure allows developers to write and deploy code into a cloud-based infrastructure faster and more effectively. PaaS virtualization granularity is at the level of individual software applications pon a scalable virtualized infrastructure.
  • Software-as-a-Service (SaaS): SaaS is the offering of an application as a network/web-enabled clou offering. This provides end-users with access to a virtual software application used by many users, each with their own data space. SaaS virtualization granularity is at the level of users and organizations, and user data within the scope of a single application and organization.

Benefits of Cloud

Cloud technologies have brought benefits at each level - computing infrastructure management, application development, and end users.


Cloud Native:



PaaS Platform as a Service SaaS Software as a Service