Overview of Cloud Service Models

Overview of Cloud Service Models

The three service models employed by cloud service providers are Infrastructure as a service, Platform as a service and Software as a service. I will be discussing these models based on information gathered from my coursera classes.

Let's take a look at their characteristics, and discuss them below.

A. IaaS

IaaS is a set of compute networking and storage resources that have been virtualized by a vendor so that a user can access and configure them any way they want.

In implementation, the persona or user for IaaS is a system admin or IT admin.

With IaaS, the cloud provider manages the physical resources, data centers, cooling, power, network and security, as well as computing resources that include servers and storage.

Here the cloud provider hosts the infrastructure components traditionally present in an on-premises data center as well as the virtualization or hypervisor layer. Customers can create or provision virtual machines (or VMs) in their choice of Region and Zone available from the Cloud Provider. These VMs always come with the customer’s choice of operating system pre-installed. The customers can then deploy middleware, install applications, and run workloads on these VMs, and create storage for their workloads and backups. Cloud providers often provide customers the ability to track and monitor the performance and usage of their cloud services and manage disaster recovery.

Key components of IaaS cloud infrastructure

  1. Physical data centers:

IaaS providers manage large data centers that contain the physical machines required to power the various layers of abstraction on top of them. In most IaaS models, end users do not interact directly with the physical infrastructure but experience it as a service provided to them.

2. Compute:

IaaS providers manage the hypervisors and end-users programmatically provision virtual instances with desired amounts of compute, memory, and storage resources. Cloud compute typically comes with supporting services like auto scaling and load balancing that provide scalability and high performance.

3. Network:

Users get access to networking resources on the cloud through virtualization or programmatically, through APIs.

4. Storage:

There are three types of cloud data storage which are object, file, and block storage.

Use Cases of IaaS

IaaS supports a wide array of use cases. We’ll look at some of them here.

1. Organizations use Iaas services to enable their teams to set up test and development environments faster, thereby helping create new applications more quickly.

2. By abstracting the low-level components, IaaS is helping developers focus more on business logic than infrastructure management. Business continuity and disaster recovery require a huge provision of technology and also staff investments. IaaS is helping organizations reduce this cost and make applications and data accessible as usual during a disaster or outage.

3. Organizations are using IaaS to deploy their web applications faster and also scale infrastructure up and down as demand fluctuates.

4. Organizations are leveraging the high-performance computing capabilities of cloud infrastructure to solve complex problems involving millions of variables and calculations such as climate and weather predictions and financial modeling.

5. Mining massive data sets to locate valuable patterns, trends, and associations requires a huge amount of processing power. Cloud infrastructure not only provides the required high-performance computing but also makes it economically viable.

B. Paas

PaaS takes advantage of all the virtualized resources from Iaas and then just abstracts them away, so the user doesn't have to worry about managing any of those virtualized resources. The user for PaaS is usually a dev.

With PaaS, the provider, in addition to the computing resources, also manages the platform infrastructure which includes the operating systems, development tools, databases, and business analytics unlike infrastructure as a service.

The PaaS provider hosts everything: servers, networks, storage, operating system, application runtimes, APIs, middleware, databases and other tools at their data center. The provider also takes responsibility for the installation, configuration, and operation of the application infrastructure, leaving the user responsible for only the application code and its maintenance. Customers pay for this service on a usage basis and purchase resources on demand.

With IaaS, the cloud provider offers access to raw computing resources such as servers, storage, and networking, while the user is responsible for the platform and application software. With P-a-a-S or PaaS, the cloud service provider delivers and manages the entire platform infrastructure, abstracting users from the lower level details of the environment.

Characteristics of PaaS.

1. PaaS clouds are distinguished by the high level of abstraction they provide to the users, eliminating the complexity of deploying applications, configuring infrastructure, and provisioning and configuring supporting technologies like load balancers and databases.

2. PaaS clouds provide services and APIs that help simplify the job of developers in delivering elastically scalable and highly available cloud applications. These services typically include a variety of capabilities such as APIs for distributing, caching, queuing and messaging, file and data storage, workload management, user identity, and analytics, thus eliminating the need to integrate disparate components.

3. The PaaS runtime environment executes end user code according to policies set by the application owner and cloud provider. Many of the PaaS offerings provide developers with rapid deployment mechanisms or push and run mechanism for deploying and running applications.

4. PaaS offerings support a range of application infrastructure or middleware capabilities such as application servers, database management systems, business analytics servers, mobile backend services, integration services, business process management systems, rules engines, and complex event processing systems. Such an application infrastructure assists developers by reducing the amount of code that must be written while expanding the application's functional capabilities.

Use cases for PaaS

The most important use case for PaaS is strategic, build, test, deploy, enhance and scale applications rapidly and cost effectively.

Others are:

1. API development and management.

Organizations are using PaaS to develop, run, manage and secure APIs and microservices, which are loosely coupled, independently deployable components and services.

2. Internet of Things, or IoT:

PaaS clouds support a broad range of application environments, programming languages, and tools used for IoT deployments.

3. Business analytics, or intelligence:

PaaS tools allow organizations to analyze their data to find business insights that enable more informed business decisions and predictions. Business Process management, or BPM. Organizations are using the PaaS cloud to access BPM platform delivered as a service.

4. Master data management, or MDM:

Organizations are leveraging the PaaS cloud to provide a single point of reference for critical business data, such as information about customer transactions and analytical data to support decision-making.

Advantages of using PaaS.

1. Scalability, made possible because of the rapid allocation and deallocation of resources with a pay-as-you-use model offered by PaaS.

2. The APIs support services and middleware capabilities that PaaS clouds provide assist developers in focusing their efforts on application development and testing, resulting in faster time-to-market for their products and services.

3. Middleware capabilities reduce the amount of code that need to be written while expanding the application's functional capabilities.

4. Greater agility and innovation: because using PaaS platforms means that you can experiment with multiple operating systems, languages and tools without having to invest in these resources. You can evaluate and prototype ideas with very low risk exposure, resulting in faster, easier, less risky adoption of a wider range of resources.

Some of the key PaaS offerings available in the market today include AWS Elastic Beanstalk, Cloud Foundry, IBM Cloud Paks, Windows Azure, Red Hat OpenShift, Magento Commerce Cloud, force.com, and Apache Stratos.

C. SaaS

Software as a Service is a cloud offering that provides users with access to a service provider’s cloud-based software. You don't have to install this software on your machine neither do you have to manually update them. The user for Software as a Service could be anyone. The service is usually charged on a subscription model rather than a one-time license fee

SaaS providers maintain the servers, databases, and code that constitute an application. They also manage access to the application, including security, availability, and performance. Applications reside on a remote cloud network, and users use these applications without having to maintain and update the infrastructure.

Core business processes supported by SaaS today include email and collaboration via offerings such as Microsoft's Office 365 and Google's Gmail, Customer Relationship Management via services such as NetSuite CRM and Salesforce, Human Resource Management via services from Workday and SAP SuccessFactors, financial management, billing and collaboration, and many more.

Characteristics of Software-as-a-Service

1. SaaS clouds have a multitenant architecture. Infrastructure and code are maintained centrally and accessed by all users.

2. SaaS makes it easy for users to manage privileges, monitor data use, and ensure everyone sees the same information at the same time.

3. Security, compliance, and maintenance are all part of the offering.

4. In SaaS, customizations are often limited, however some SaaS applications may allow certain types of customizations like branding; they can modify data fields and enable or disable features within the business process. These customizations are preserved through upgrades.

5. The use of resources can be scaled easily, depending on service needs.

Benefits of adopting SaaS

1. Businesses can directly procure solutions without upfront capital and assistance from IT, greatly reducing the time from decision to value from months to days.

2. SaaS greatly increases workforce productivity and efficiency. Users can access core business apps from wherever; they can also buy and deploy apps in minutes reducing the typical obstacles enterprises have to test the products they might use.

3. Using SaaS applications, individuals and small enterprises can spread out their software costs over time.

Use cases for SaaS

1. Organizations are moving to SaaS for their core business needs as part of their strategic transformation to reduce on-premises IT infrastructure and reduce capital expenditure.

2. Organizations are leveraging SaaS to avoid the need for ongoing upgrades, maintenance, and patching, done traditionally by internal IT resources; applications run reliably with minimal input, for example, email servers and office collaboration and productivity tools.

3. Organizations are increasingly opting for SaaS eCommerce Platforms to manage their websites, marketing, sales, and operations. With SaaS, organizations are able to take advantage of the resilience and business continuity of the cloud provider.

4. Enterprises are now developing SaaS integration platforms (or SIPs) for building additional SaaS applications, moving SaaS beyond standalone software functionality to a platform for mission-critical applications.


General Issues to take note of while employing Cloud services

Cloud services come with some risks,some of hem are as follows

  1. Information security threats and dependency on the service provider's infrastructure as services can get impacted when a service provider's infrastructure experiences downtime.
  2. Customers also don't have any direct control over the changes that may take place when a provider makes changes in its strategy, service offerings or tools.
  3. Data ownership and data safety: Security is an important consideration when you’re allowing a third-party to maintain business-critical data.
  4. Application access relies on a good network connection.

These are reasons why one should carefully consider the extent of satisfaction the cloud service they employ, could offer them. Nevertheless, the benefits can far outweigh these risks.

要查看或添加评论,请登录

Joy Ukibe的更多文章

社区洞察

其他会员也浏览了