Cloud Computing Platform as a Service (PaaS)

Platform-as-a-Service offers the runtime environment for applications. It also offers development and deployment tools required to develop applications. PaaS has a feature of point-and-click tools that enables non-developers to create web applications.
App Engine of Google and Force.com are examples of PaaS offering vendors. Developer may log on to these websites and use the built-in API to create web-based applications.
But the disadvantage of using PaaS is that, the developer locks-in with a particular vendor. For example, an application written in Python against API of Google, and using App Engine of Google is likely to work only in that environment.
The following diagram shows how PaaS offers an API and development tools to the developers and how it helps the end user to access business applications.
Cloud Computing PaaS

Benefits

Following are the benefits of PaaS model:
Cloud Computing PaaS Benefits

Lower administrative overhead

Customer need not bother about the administration because it is the responsibility of cloud provider.

Lower total cost of ownership

Customer need not purchase expensive hardware, servers, power, and data storage.

Scalable solutions

It is very easy to scale the resources up or down automatically, based on their demand.

More current system software

It is the responsibility of the cloud provider to maintain software versions and patch installations.

Issues

Like SaaS, PaaS also places significant burdens on customer's browsers to maintain reliable and secure connections to the provider’s systems. Therefore, PaaS shares many of the issues of SaaS. However, there are some specific issues associated with PaaS as shown in the following diagram:
Cloud Computing PaaS Issues

Lack of portability between PaaS clouds

Although standard languages are used, yet the implementations of platform services may vary. For example, file, queue, or hash table interfaces of one platform may differ from another, making it difficult to transfer the workloads from one platform to another.

Event based processor scheduling

The PaaS applications are event-oriented which poses resource constraints on applications, i.e., they have to answer a request in a given interval of time.

Security engineering of PaaS applications

Since PaaS applications are dependent on network, they must explicitly use cryptography and manage security exposures.

Characteristics

Here are the characteristics of PaaS service model:
  • PaaS offers browser based development environment. It allows the developer to create database and edit the application code either via Application Programming Interface or point-and-click tools.
  • PaaS provides built-in security, scalability, and web service interfaces.
  • PaaS provides built-in tools for defining workflow, approval processes, and business rules.
  • It is easy to integrate PaaS with other applications on the same platform.
  • PaaS also provides web services interfaces that allow us to connect the applications outside the platform.

PaaS Types

Based on the functions, PaaS can be classified into four types as shown in the following diagram:
Cloud Computing PaaS Types

Stand-alone development environments

The stand-alone PaaS works as an independent entity for a specific function. It does not include licensing or technical dependencies on specific SaaS applications.

Application delivery-only environments

The application delivery PaaS includes on-demand scaling and application security.

Open platform as a service

Open PaaS offers an open source software that helps a PaaS provider to run applications.

Add-on development facilities

The add-on PaaS allows to customize the existing SaaS platform.


>>>>> taken from the site tutorialspoint.com thank you for having helped me

Cloud Computing Infrastructure as a Service (IaaS)

Infrastructure-as-a-Service provides access to fundamental resources such as physical machines, virtual machines, virtual storage, etc. Apart from these resources, the IaaS also offers:
  • Virtual machine disk storage
  • Virtual local area network (VLANs)
  • Load balancers
  • IP addresses
  • Software bundles
All of the above resources are made available to end user via server virtualization. Moreover, these resources are accessed by the customers as if they own them.
Cloud Computing IaaS

Benefits

IaaS allows the cloud provider to freely locate the infrastructure over the Internet in a cost-effective manner. Some of the key benefits of IaaS are listed below:
  • Full control of the computing resources through administrative access to VMs.
  • Flexible and efficient renting of computer hardware.
  • Portability, interoperability with legacy applications.

Full control over computing resources through administrative access to VMs

IaaS allows the customer to access computing resources through administrative access to virtual machines in the following manner:
  • Customer issues administrative command to cloud provider to run the virtual machine or to save data on cloud server.
  • Customer issues administrative command to virtual machines they owned to start web server or to install new applications.

Flexible and efficient renting of computer hardware

IaaS resources such as virtual machines, storage devices, bandwidth, IP addresses, monitoring services, firewalls, etc. are made available to the customers on rent. The payment is based upon the amount of time the customer retains a resource. Also with administrative access to virtual machines, the customer can run any software, even a custom operating system.

Portability, interoperability with legacy applications

It is possible to maintain legacy between applications and workloads between IaaS clouds. For example, network applications such as web server or e-mail server that normally runs on customer-owned server hardware can also run from VMs in IaaS cloud.

Issues

IaaS shares issues with PaaS and SaaS, such as Network dependence and browser based risks. It also has some specific issues, which are mentioned in the following diagram:
Cloud Computing IaaS Issues

Compatibility with legacy security vulnerabilities

Because IaaS offers the customer to run legacy software in provider's infrastructure, it exposes customers to all of the security vulnerabilities of such legacy software.

Virtual Machine sprawl

The VM can become out-of-date with respect to security updates because IaaS allows the customer to operate the virtual machines in running, suspended and off state. However, the provider can automatically update such VMs, but this mechanism is hard and complex.

Robustness of VM-level isolation

IaaS offers an isolated environment to individual customers through hypervisor. Hypervisor is a software layer that includes hardware support for virtualization to split a physical computer into multiple virtual machines.

Data erase practices

The customer uses virtual machines that in turn use the common disk resources provided by the cloud provider. When the customer releases the resource, the cloud provider must ensure that next customer to rent the resource does not observe data residue from previous customer.

Characteristics

Here are the characteristics of IaaS service model:
  • Virtual machines with pre-installed software.
  • Virtual machines with pre-installed operating systems such as Windows, Linux, and Solaris.
  • On-demand availability of resources.
  • Allows to store copies of particular data at different locations.
  • The computing resources can be easily scaled up and down.


>>>> taken from the web tutorialspoint.com thank you because it helped me in terms of learning

Community Cloud Model

Community Cloud allows system and services to be accessible by group of organizations. It shares the infrastructure between several organizations from a specific community. It may be managed internally by organizations or by the third-party. The Community Cloud Model is shown in the diagram below.
Community Cloud Model

Benefits

There are many benefits of deploying cloud as community cloud model.
Community Cloud Model Benefits

Cost Effective

Community cloud offers same advantages as that of private cloud at low cost.

Sharing Among Organizations

Community cloud provides an infrastructure to share cloud resources and capabilities among several organizations.

Security

The community cloud is comparatively more secure than the public cloud but less secured than the private cloud.

Issues

  • Since all data is located at one place, one must be careful in storing data in community cloud because it might be accessible to others.
  • It is also challenging to allocate responsibilities of governance, security and cost among organizations.

>>>> 

taken from the web tutorialspoint.com thank you for teaching us a lot of help

Hybrid Cloud Model

Hybrid Cloud is a mixture of public and private cloud. Non-critical activities are performed using public cloud while the critical activities are performed using private cloud. The Hybrid Cloud Model is shown in the diagram below.
Hybrid Cloud Model

Benefits

There are many benefits of deploying cloud as hybrid cloud model. The following diagram shows some of those benefits:
Hybrid Cloud Model Benefits

Scalability

It offers features of both, the public cloud scalability and the private cloud scalability.

Flexibility

It offers secure resources and scalable public resources.

Cost Efficiency

Public clouds are more cost effective than private ones. Therefore, hybrid clouds can be cost saving.

Security

The private cloud in hybrid cloud ensures higher degree of security.

Disadvantages

Networking Issues

Networking becomes complex due to presence of private and public cloud.

Security Compliance

It is necessary to ensure that cloud services are compliant with security policies of the organization.

Infrastructure Dependency

The hybrid cloud model is dependent on internal IT infrastructure, therefore it is necessary to ensure redundancy across data centers.


>>>>> has been taken from the web tutorialspoint.com thanks

Private Cloud Model

Private Cloud allows systems and services to be accessible within an organization. The Private Cloud is operated only within a single organization. However, it may be managed internally by the organization itself or by third-party. The private cloud model is shown in the diagram below.
Private Cloud Model

Benefits

There are many benefits of deploying cloud as private cloud model. The following diagram shows some of those benefits:
Private Cloud Model Benefits

High Security and Privacy

Private cloud operations are not available to general public and resources are shared from distinct pool of resources. Therefore, it ensures high security and privacy.

More Control

The private cloud has more control on its resources and hardware than public cloud because it is accessed only within an organization.

Cost and Energy Efficiency

The private cloud resources are not as cost effective as resources in public clouds but they offer more efficiency than public cloud resources.

Disadvantages

Here are the disadvantages of using private cloud model:

Restricted Area of Operation

The private cloud is only accessible locally and is very difficult to deploy globally.

High Priced

Purchasing new hardware in order to fulfill the demand is a costly transaction.

Limited Scalability

The private cloud can be scaled only within capacity of internal hosted resources.

Additional Skills

In order to maintain cloud deployment, organization requires skilled expertise.

>>>>> taken from the web tutorialspoint.com thank you so help me

Public Cloud Model

Public Cloud allows systems and services to be easily accessible to general public. The IT giants such as Google, Amazon and Microsoft offer cloud services via Internet. The Public Cloud Model is shown in the diagram below.
Public Cloud Model

Benefits

There are many benefits of deploying cloud as public cloud model. The following diagram shows some of those benefits:
Public Cloud Model Benefits

Cost Effective

Since public cloud shares same resources with large number of customers it turns out inexpensive.

Reliability

The public cloud employs large number of resources from different locations. If any of the resources fails, public cloud can employ another one.

Flexibility

The public cloud can smoothly integrate with private cloud, which gives customers a flexible approach.

Location Independence

Public cloud services are delivered through Internet, ensuring location independence.

Utility Style Costing

Public cloud is also based on pay-per-use model and resources are accessible whenever customer needs them.

High Scalability

Cloud resources are made available on demand from a pool of resources, i.e., they can be scaled up or down according the requirement.

Disadvantages

Here are some disadvantages of public cloud model:

Low Security

In public cloud model, data is hosted off-site and resources are shared publicly, therefore does not ensure higher level of security.

Less Customizable

It is comparatively less customizable than private cloud.


taken from a hopefully growing thanks tutorialspoint.com

Cloud Computing Infrastructure

Cloud infrastructure consists of servers, storage devices, network, cloud management software, deployment software, and platform virtualization.
Cloud Computing Infrastructure Components

Hypervisor

Hypervisor is a firmware or low-level program that acts as a Virtual Machine Manager. It allows to share the single physical instance of cloud resources between several tenants.

Management Software

It helps to maintain and configure the infrastructure.

Deployment Software

It helps to deploy and integrate the application on the cloud.

Network

It is the key component of cloud infrastructure. It allows to connect cloud services over the Internet. It is also possible to deliver network as a utility over the Internet, which means, the customer can customize the network route and protocol.

Server

The server helps to compute the resource sharing and offers other services such as resource allocation and de-allocation, monitoring the resources, providing security etc.

Storage

Cloud keeps multiple replicas of storage. If one of the storage resources fails, then it can be extracted from another one, which makes cloud computing more reliable.

Infrastructural Constraints

Fundamental constraints that cloud infrastructure should implement are shown in the following diagram:
Cloud Computing Infrastructure Constraints

Transparency

Virtualization is the key to share resources in cloud environment. But it is not possible to satisfy the demand with single resource or server. Therefore, there must be transparency in resources, load balancing and application, so that we can scale them on demand.

Scalability

Scaling up an application delivery solution is not that easy as scaling up an application because it involves configuration overhead or even re-architecting the network. So, application delivery solution is need to be scalable which will require the virtual infrastructure such that resource can be provisioned and de-provisioned easily.

Intelligent Monitoring

To achieve transparency and scalability, application solution delivery will need to be capable of intelligent monitoring.

Security

The mega data center in the cloud should be securely architected. Also the control node, an entry point in mega data center, also needs to be secure.


taken from the web tutorialspoint.com may be useful

Cloud Computing Architecture

Cloud Computing architecture comprises of many cloud components, which are loosely coupled. We can broadly divide the cloud architecture into two parts:
  • Front End
  • Back End
Each of the ends is connected through a network, usually Internet. The following diagram shows the graphical view of cloud computing architecture:
Cloud Computing Architecture

Front End

The front end refers to the client part of cloud computing system. It consists of interfaces and applications that are required to access the cloud computing platforms, Example - Web Browser.

Back End

The back End refers to the cloud itself. It consists of all the resources required to provide cloud computing services. It comprises of huge data storage, virtual machines, security mechanism, services, deployment models, servers, etc.

Note

  • It is the responsibility of the back end to provide built-in security mechanism, traffic control and protocols.
  • The server employs certain protocols known as middleware, which help the connected devices to communicate with each other.

taken from the web tutorialspoint.com

Cloud Computing Planning

Before deploying applications to cloud, it is necessary to consider your business requirements. Following are the issues one must consider:
  • Data Security and Privacy Requirement
  • Budget Requirements
  • Type of cloud - public, private or hybrid
  • Data backup requirements
  • Training requirements
  • Dashboard and reporting requirements
  • Client access requirements
  • Data export requirements
To meet all of these requirements, it is necessary to have well-compiled planning. In this tutorial, we will discuss the various planning phases that must be practised by an enterprise before migrating the entire business to cloud. Each of these planning phases are described in the following diagram:
Cloud Computing Planning

Strategy Phase

In this phase, we analyze the strategy problems that customer might face. There are two steps to perform this analysis:
  • Cloud Computing Value Proposition
  • Cloud Computing Strategy Planning

Cloud Computing Value Proposition

In this, we analyze the factors influencing the customers when applying cloud computing mode and target the key problems they wish to solve. These key factors are:
  • IT management simplification
  • operation and maintenance cost reduction
  • business mode innovation
  • low cost outsourcing hosting
  • high service quality outsourcing hosting.
All of the above analysis helps in decision making for future development.

Cloud Computing Strategy Planning

The strategy establishment is based on the analysis result of the above step. In this step, a strategy document is prepared according to the conditions a customer might face when applying cloud computing mode.

Planning Phase

This step performs analysis of problems and risks in the cloud application to ensure the customers that the cloud computing is successfully meeting their business goals. This phase involves the following planning steps:
  • Business Architecture Development
  • IT Architecture development
  • Requirements on Quality of Service Development
  • Transformation Plan development

Business Architecture Development

In this step, we recognize the risks that might be caused by cloud computing application from a business perspective.

IT Architecture Development

In this step, we identify the applications that support the business processes and the technologies required to support enterprise applications and data systems.

Requirements on Quality of Service Development

Quality of service refers to the non-functional requirements such as reliability, security, disaster recovery, etc. The success of applying cloud computing mode depends on these non-functional factors.

Transformation Plan Development

In this step, we formulate all kinds of plans that are required to transform current business to cloud computing modes.

Deployment Phase

This phase focuses on both of the above two phases. It involves the following two steps:
  • Selecting Cloud Computing Provider
  • Maintenance and Technical Service

Selecting Cloud Computing Provider

This step includes selecting a cloud provider on basis of Service Level Agreement (SLA), which defines the level of service the provider will meet.

Maintenance and Technical Service

Maintenance and Technical services are provided by the cloud provider. They need to ensure the quality of services.