L5 - Cloud Models
L5 - Cloud Models
• E.g. Amazon Elastic Compute (EC2) and Simple Storage Service (S3).
Conti…
• Platform-as-a-Service (PaaS): In Platform-as-a-Service model, complete resources needed to Design, Develop,
Testing, Deploy and Hosting an application are provided as services without spending money for purchasing and
maintaining the servers, storage and software.
• PaaS is an extension of IaaS. In addition to the fundamental computing resource supplied by the hardware in an IaaS
offering, PaaS models also include the software and configuration required to create an applications.
• E.g. Accounting, CRM, Google Docs are all popular examples of SaaS.
Public vs Private Cloud
Private Cloud: A private cloud is a cloud computing environment dedicated to a
single organization. It offers enhanced control, customization, and security.
• Key Characteristics:
• Ownership: Exclusively used by one organization, either hosted on-premises or
by a third party.
• Access: Restricted to the organization’s employees or authorized users.
• Customization: Fully customizable based on the organization’s specific
requirements.
• Security: High-level security and compliance as resources are isolated from
external access.
• Management: Managed internally by the organization or outsourced to a private
cloud provider.
Diagram
Conti…
• Advantages:
• Enhanced data privacy and security.
• Greater control over the infrastructure.
• Tailored solutions for specific workloads and applications.
• Compliance with regulatory requirements (e.g., for finance or healthcare
industries).
• Disadvantages:
• High initial cost for infrastructure setup.
• Requires skilled IT staff for management and maintenance.
• Limited scalability compared to public clouds.
Conti…
• Use Cases:
• Industries with strict regulatory and compliance requirements (e.g.,
healthcare, finance).
• Organizations handling sensitive or confidential data.
• Large enterprises requiring dedicated resources.
• Examples of Private Cloud Platforms:
• VMware vSphere
• Microsoft Azure Stack
• OpenStack
Public Cloud
A public cloud is a cloud computing environment available to multiple
users (tenants) over the internet. It is owned and managed by a cloud
service provider.
Key Characteristics:
• Ownership: Owned and operated by third-party providers.
• Access: Resources are shared among multiple organizations (multi-
tenant model).
• Scalability: Highly scalable with on-demand resources.
• Cost-Effectiveness: Users pay only for what they use, eliminating
infrastructure costs.
Conti…
Advantages:
• Cost-efficient, especially for startups and small businesses.
• High scalability to accommodate fluctuating workloads.
• No need for on-premises hardware or infrastructure.
• Managed services reduce the need for in-house IT expertise.
Disadvantages:
• Less control over resources and infrastructure.
• Potential security risks due to shared environments.
• Compliance challenges for industries with strict regulations.
Conti…
Use Cases:
• Startups and SMEs looking for cost-effective IT solutions.
• Applications requiring high scalability, such as e-commerce platforms.
• Temporary workloads, like software development and testing.
Examples of Public Cloud Providers:
• Amazon Web Services (AWS)
• Microsoft Azure
• Google Cloud Platform (GCP)
Cloud Deployment Models
• Mainly there are four cloud deployment models ( 4 ways we can create/organize a cloud)
Public Cloud
Private Cloud
Community Cloud
Hybrid Cloud
Cloud Deployment Models (Cont…)
• Public Cloud: A public cloud is a cloud in which services and infrastructure are hosted off-site by a cloud provider (owned by
an organization selling cloud services) and easily accessible to general public via internet.
• Private Cloud: Private Cloud is a cloud where services and infrastructure are operated for a single operation accessible via
private network, managed internally or by a third party. It is greater level of security.
Cloud Deployment Models (Cont…)
• Community Cloud: Community Cloud is a cloud where services and infrastructure are accessible by a group of
organizations.
• Hybrid Cloud: Hybrid Cloud is a cloud which is a mixture of private and public cloud. In this type of cloud all critical and
sensitive applications and data are stored in private cloud and non critical and non sensitive applications and data are
stored in public cloud.
Features of Cloud Computing
• It is elastic: Cloud computing is flexible in nature, where users can scale up and scale down the resources as needed.
• Pay per use: Usage is metered and user pays only for how much the resources were used.
• Reduce capital cost: No need to invest money on purchasing and maintaining of hardware and software, software licensing,
training required for IT staff.
• Remote accessibility: Users can access applications and data stored on cloud from anywhere any time worldwide through a
device with internet connection.
• Better use of IT staff: Staff with in enterprise need not worry on purchasing and maintaining of servers, softwares, up
gradation of servers and softwares, software licensing etc., instead they can concentrate more on work.
Cloud Services Examples:
IaaS-Amazon EC2, Google Compute Engine, Azure VMs
Amazon EC2
• Amazon Elastic Compute Cloud is an Infrastructure as a Service offering from Amazon.
• EC2 is a web service that provides a computing capacity in the form of virtual machines.
• Amazon EC2 allows users to launch instances on demand using a simple web based interface.
• Amazon provides pre-configured Amazon Machine Images (AMIs) which are templates of cloud instances.
• Users can also create their own AMIs with custom applications, libraries and data.
Cloud Services Examples:
IaaS-Amazon EC2, Google Compute Engine, Azure VMs
Amazon EC2
• Amazon EC2 also provides instances with high memory, high CPU resources, Cluster Compute instances, Cluster
Graphical Processor unit (GPU)instances and high Input/Output instances.
• Users can load their applications on running instances and rapidly and easily increase or decrease capacity to
meet dynamic application performance requirements.
• With EC2, users can even provision hundreds or thousands of server instances simultaneously, manage network
access permissions and monitor usage resources through web interface. (Create 2 VMs at 3 different places and running
applications, creating network among 3 and allowing data transfer among 3 VMs and monitoring resource usage)
Cloud Services Examples:
IaaS-Amazon EC2, Google Compute Engine, Azure VMs
Amazon EC2
• Amazon EC2 provides instances of various computing capacities ranging from Small Instances (Eg: 1 Virtual core with 1
EC2 compute unit, 1.7 GB memory and 160 GB instance storage) to Extra Large Instances (Eg: 4 Virtual cores with 2 EC@ compute unit each with 15GB memory
and 1690 GB instance storage).
• The pricing model for EC2 instances is based on Pay-Per Use model. Users are billed based on the number on
instance hours used for on demand instances.
• EC2 also provides spot instances that allow users to bid on unused Amazon EC2 capacity and run those
instances for as long as their bid exceeds the current spot price.
Cloud Services Examples:
IaaS-Amazon EC2, Google Compute Engine, Azure VMs
Amazon EC2
• The below figure shows screenshot of Amazon EC2 dashboard
Cloud Services Examples:
IaaS-Amazon EC2, Google Compute Engine, Azure VMs
Google Compute Engine
• Google Compute Engine (GCE) is an IaaS offering from Google.
• GCE provides virtual machines of various computing capacities ranging from small instances (Eg: Virtual core
with 1.38 GCE unit and 1.7 GB memory) to high memory machine types (8 virtual cores with 22 GCE unit and 52
GB memory.
• GAE is a cloud based web service for hosting web applications and storing data.
• GAE allows users to build scalable and reliable applications that run on the same systems that power Google’s
own applications.
• GAE provides a Software Development Kit (SDK) for developing web applications software that can be
deployed on GAE.
Cloud Services
Examples: PaaS-
•
Google App Engine
Developers can develop and test their applications with GAE SDK on a local machine and then upload it to GAE with
a simple click of a button
• Applications hosted in GAE are easy to build, maintain and scale. Users don’t need to worry about launching
additional computing instances when the applications load increases.
• With Java runtime environment developers can build applications using Java programming language and standard
Java technologies such as Java Servlets. GAE also provides runtime environment for Python programming languages.
Cloud Services Examples: PaaS-
Google App Engine
• Applications hosted in GAE run in secure sandbox with limited access to the underlying operating system and
hardware.
• The pricing model for GAE is based on the amount of computing resources used.
• GAE provides free computing resources for applications up to a certain limit. Beyond that limit, users are billed
based on the amount of computing resources used such as amount of bandwidth consumed, number of
resource instance hours, amount of data stored.
Cloud Services Examples: PaaS-
Google App Engine
• The below figure shows the screenshot of GAE dashboard.
Thank You!