IBU
Cloud Computing
International Burch University
CEN 101 Computer Engineering
Orientation
Assoc. Prof. Dr. Zerina Altoka
Summary
Cloud Computing Overview
Benefits and Limitations
Cloud Vendors
Cloud Security Threats
Cloud Computing Overview
cloud computing is a construct that allows you to access applications
that actually reside at a location other than your computer or other Internet-connected
device; most often, this will be a distant datacenter
“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.”
Cloud Computing Overview
another company handles the costs of servers, manages the software updates, and—
depending on how you craft your contract—you pay less for the service
Problems?
No internet
Cloud services go down
Application integration issues
Cloud Components
a cloud computing solution is made up of several elements: clients, the datacenter, and
distributed servers.
Cloud Components
Clients: the devices that the end users interact with to manage their information on the
cloud
Mobile: include PDAs or smartphones, like a Blackberry, Windows Mobile Smartphone, or an
iPhone.
Thin Clients: computers that do not have internal hard drives, but rather let the server do all the
work, but then display the information.
Thick: regular computer, using a web browser like Firefox or Internet Explorer to connect to the
cloud.
Cloud Components
Datacenter: the collection of servers where the application to which you subscribe is hosted
It could be a large room in the basement of your building or a room full of servers on the
other side of the world that you access via the Internet.
Cloud Components
Distributed servers: the servers don’t all have to be housed in the same location. Often,
servers are in geographically disparate locations.
This gives the service provider more flexibility in options and security.
For instance, Amazon has their cloud solution in servers all over the world. If something were to
happen at one site, causing a failure, the service would still be accessed through another site.
Also, if the cloud needs more hardware, they need not throw more servers in the safe room—they
can add them at another site and simply make it part of the cloud.
Types of Clouds
There are two classes of clouds: a) clouds based on deployment model and b) clouds based
on service models.
Deployment model indicates the location of the cloud and its purpose. Based on the
deployment model, there are four types of clouds: public, private, community and hybrid
clouds
Types of Clouds
Public • open use for the public by some
organization who host cloud services
Private
• for single organization, can be hosted
internally or externally
Community • shared among organizations, serves common
purpose
Hybrid • composition of multiple clouds, offers
benefits of multiple models
Types of Clouds
Service models describe the type of service that the service provider is offering. Cloud
computing has three main service models, referred to as Infrastructure as a Service (IaaS),
Platform as a Service (PaaS) and Software as a Service (SaaS)
Types of Clouds
IaaS provide access to network features, computers, and data storage. This model provides
highest flexibility and management control over the resourced provided by cloud
PaaS model provides developers with platform, with all systems and environments, for
creating, testing, deploying and hosting sophisticated applications
SaaS model provides users with the complete product, run and managed by service
provider. Users only care about how to use a software. Common example of SaaS is web-
based email
Services
The term services in cloud computing is the concept of being able to use reusable, fine-
grained components across a vendor’s network.
This is widely known as “as a service.”
Offerings with as a service as a suffix include traits like the following:
Low barriers to entry, making them available to small businesses
Large scalability
Multitenancy, which allows resources to be shared by many users
Device independence, which allows users to access the systems on different hardware
Software as a Service (SaaS)
model in which an application is hosted as a service to customers who access it via the
Internet
the provider does all the patching and upgrades as well as keeping the infrastructure running
Benefits:
Familiarity with the WWW
Less staff
Customization
Better marketing
Web reliability
Security
More bandwidth
Software as a Service (SaaS)
Obstacles:
an organization that has a very specific computational need might not be able to find the
application available through SaaS
“lock-in” with vendors: the customer might pay a provider to use an application, but once they do,
they may be unable to port that application to a new vendor
availability of opensource applications and cheaper hardware
Platform as a Service (PaaS)
another application delivery model that supplies all the resources required to build
applications and services completely from the Internet, without having to download or
install software
PaaS services include application design, development, testing, deployment, and hosting.
Other services include team collaboration, web service integration, database integration,
security, scalability, storage, state management, and versioning.
Platform as a Service (PaaS)
Benefits:
The ability of geographically isolated development teams to work together
The ability to merge web services from multiple sources
The ability to realize cost savings from using built-in infrastructure services for security,
scalability, and failover, rather than having to obtain and test them separately
The ability to realize cost savings from using higher-level programming abstractions
Platform as a Service (PaaS)
Obstacles:
some developers are afraid of being locked into a single provider
The vendor may allow the application to be brought to a different provider; however, the costs are
typically higher as compared to moving applications between conventional hosts
Infrastructure as a Service (IaaS)
IaaS offers the hardware; rather than purchase servers, software, racks, and having to pay
for the datacenter space for them, the service provider rents those resources
Additionally, the infrastructure can be dynamically scaled up or down, based on the
application resource needs.
Further, multiple tenants can be on the equipment at the same time.
Resources are typically billed based on a utility computing basis, so providers charge by
how many resources are consumed.
• Complete applications
SaaS • E.g. Office 365
• API for building applications
PaaS • E.g. Windows Azure
• Servers, storage, network
IaaS • E.g. Amazon EC2
Benefits and Limitations
Benefits:
Scalability
Simplicity
Knowledgeable Vendors
More Internal Resources
Security
Benefits and Limitations
Limitations:
Your Sensitive Information
Security Concerns
Regulatory Issues
Cloud Vendors
It should come as no surprise that some of the biggest names in cloud computing are some
of the biggest names in the computer world
Google, Microsoft, Yahoo!, Salesforce.com, IBM, and others
Google
Google App Engine - enables developers to build their web apps on the same
infrastructure that powers Google’s own applications
Features:
Write code once and deploy: Google App Engine makes it easier to deploy web applications by
dynamically providing computing resources as they are needed. Developers write the code, and
Google App Engine takes care of the rest
Absorb spikes in traffic: Google App Engine makes it easier to scale from one user to one
million
Easily integrate with other Google services: Developers using Google App Engine can make
use of built-in components
Google
Google App Engine - enables developers to build their web apps on the same
infrastructure that powers Google’s own applications
Cost:
Free quota to get started: 500MB storage and enough CPU and bandwidth for about 5 million
pageviews per month
$0.10–$0.12 per CPU core-hour
$0.15–$0.18 per GB-month of storage
$0.11–$0.13 per GB of outgoing bandwidth
$0.09–$0.11 per GB of incoming bandwidth
Microsoft
Azure Services Platform: cloud computing and services platform hosted in Microsoft
datacenters
Windows Azure - cloud-based operating system that enables the development, hosting, and
service management environment for the Azure Services Platform
SQL Services - delivers a set of integrated services that allow relational queries, search, reporting,
analytics, integration, and synchronization of data
.NET Services - set of Microsoft-hosted, developer-oriented services that provide the components
required by many cloud-based and cloud-aware applications
Amazon
The most widely known cloud vendor
They offer services on many different fronts, from storage to platform to databases
Amazon Elastic Compute Cloud (Amazon EC2)
web service that offers resizable compute capacity in the cloud and is designed to make web
scaling easier for developers
provides a simple web interface that allows you to obtain and configure capacity with little
difficulty. It allows you control of your computing resources.
Amazon
The most widely known cloud vendor
They offer services on many different fronts, from storage to platform to databases
Amazon SimpleDB
Amazon database service
provides core database functions of data indexing and querying
Amazon
The most widely known cloud vendor
They offer services on many different fronts, from storage to platform to databases
Amazon Simple Storage Service (Amazon S3)
Amazon’s storage solution for the Internet
designed to make web-scale computing easier for developers
Cloud Security Threats
Cloud Security has several threats, listed below:
data breaches
data loss
account hijacking
insecure APIs
denial of service
malicious insiders
abuse of cloud services
insufficient due diligence
shared technology issues
Project task
Submit your app prototype in the .doc form which will contain images of your product
(software, hardware, etc.).
Provide a prototype for each app functionality or for each hardware segment.
Explain all the parts of your product (what the page/device is created for, what the user can
do on the page/device, what are the main functionalities, etc.)
Submission deadline: 17.12.2023. until 23:55.
Project task
Some of the tools/websites you can use: Paint.Net, Wix, mockplus, moqups, justinmind,
marvelapp…