SOA & REST in Cloud Computing
SOA & REST in Cloud Computing
Cloud Computing(KCS-713)
Unit-2
> Service Oriented Architecture
Benefits
Greater business agility.
Ability to leverage legacy functionality (to be able to lock functionality in one
platform
and to extend it to the other).
C
Improved collaboration between business & IT.
Cloud Computing (KCS-713)
Examples of SOA
By 2010, SOA
implementations were gainfully streamed in the following organizations
Delaware electric turned to SOA to integrate systems that
other. previously did not talk to each
CISCO adopted SOA to make sure that its product
ordering experience was consistent
across all products and channels by exposing
ordering processes as services that CISCO
divisions & business partners could incorporate into their
web sites.
Characteristics of Service-Oriented Architecture
While the defining concepts of
there
Service-Oriented Architecture vary from company to company,
are six key tenets that overarch the broad
concept of Service-Oriented Architecture. These
core values include:
Business value
Strategic goals
Intrinsic inter-operability
Shared services
Flexibility
Evolutionary refinement
Each of these core values can be seen on a continuum from older
format distributed computing to
Service-Oriented Architecture to cloud computing (something that is often seen as an of offshoot
Service-Oriented Architecture).
PROCESS
01 Empower
decision Makers
-02 Align IT with
business operalions
SOA
Service Oriented
Architecture
04
PRACTICE
03 Operatonal
Increase
efficiency
Employ best
practice methology
Cloud Computing (KCS-713)
Statelessness
context being stored on the
The client-server communication is constrained by no client
client contains all the information
server between requests. Each request from any
state is held in the client. The session
necessary to service the request, and the session
another service such as a database to maintain a
state can be transferred by the server to
The client begins sending requests
persistent state for a period and allow authentication.
are
a new state. While one or more requests
when it is ready to make the transition to
transition. The representation of each
outstanding, the client is considered to be in
next time the client chooses to initiate
used the
application state contains links that can be
a new state-transition.
Cache ability
clients and intermediaries can cache responses. Responses
As on the World Wide Web, non-cacheable to
explicitly,define themselves as either cacheable or
must,implicitly or requests.
providing stale or inappropriate data in response to further
prevent clients from some client-server interactions,
completely eliminates
Well-managed caching partially or
andperformance.
further improving scalability
Layered system
the end server, or to an
ordinarily tell whether it is connected directly to
A client cannot client and
proxy or load balancer is placed between the
intermediary along the way. If a the client
communications and there won't be a need to update
affect their
server, it won't system scalability by enabling load
Intermediary servers can improve
code. on top
or server
shared caches. Also, security can be added as alayer
balancing and byproviding security logic. Adding
and then clearly separate business logic from
of the web services,
Cloud Computing (KCS-713)
security as a separate layer enforcessecurity policies. Finally, it also means that a server
can callmultiple other servers to generate a
response to the client.
Code on demand (optional)
Servers can temporarily extend or customize the functionality of a client by transferring
executable code: for example, compiled components such as Java applets, or client-side
scripts such as JavaScript.
Uniform interface
Internet architecture
1, Broadband networks &
to a network
Allclouds must be connected
Internets largest backbone networks, established and
deployed by ISPs(internet service
provider), are interconnected by core routers
Two fundamental components
Connectionless packet switching End- to- end (sender- receiver pair) data flows are
divided
VIM
3. Virtualization technology
something, such as a
the "creation ofa virtual (rather than actual) version of
Virtualization is
resources'".
storage device, an operating system or network
Server, adesktop, a
a
technique, which allows sharing a single physical instance of
is a
In other words, Virtualization organizations. It does by assigninga
among multiple customers and
resource or an application that physical resource when
providing a pointer to
storage and
logical name to a physical
demanded.
as
existing operating system and hardware is known
over
Creation of a virtual machine environment that islogically separated
machine provides an
Hardware Virtualization. AVirtual
from the underlying hardware.
Cloud Computing (KCS-713)
Machine and that
The machine on which the virtual machine is going to create is known as Host
virtualmachine is referred as a Guest Machine
Types of Virtualization:
1. Hardware Virtualization.
2. Operating system Virtualization.
3. Server Virtualization.
4. Storage Virtualization.
1) Hardware Virtualization:
Usage:
because controlling virtual
virtualization is mainly done for the server platforms,
Hardware
controlling a physical server.
machines is much easier than
Virtualization:
2) Operating System installed on the Host
manager (VMM) is
software or virtual machine operating system
When the virtual machine system is known as
directly on the hardware
operating system instead of
virtualization.
Storage virtualization is the process of grouping the physical storage from multiple network
also
storage devices so that it looks like a single storage device. Storage virtualization is
implemented by using software applications.
Usage:
Data Virtualization
knowing its
virtualization is the process of retrieve data from various resources without
Data different
and physical location where it is stored. It collects heterogeneous data from
type organization to access this data according to
their
resources and allows data users across the application such as web
requirements. This heterogeneous data can be accessed using any
work application.
web services, E-commerce, Software as a Service (SaaS), and mobile
portals,
and cloud
Data Virtualization in the field of data integration, business intelligence,
We can use
computing.
Data Virtualization (DV) provides a mechanism to easily search the data which is similar and
internally related to each other.
It is one of the most common uses of Data Virtualization. It is used in agile reporting, real-time
dashboards that require timely aggregation, analyze and present the relevant data from multiple
resources. Both individuals and managers use this to monitor performance, which helps to make
daily operational decision processes such as sales, support, finance, logistics, legal, and
compliance.
4. Data Management
the unified
Data virtualization provides a securecentralized layer to search, discover, and govern
data and its relationships.
Virtualization tools -
There are the following Data
Cloud Computing (KCS-713)
very popular and powerful data integrator tool which is mainly worked with Oracle
It isa and manage data services to access a single
products. It allows organizations to quickly develop
view of data.
5. Denodo
organizations to minimize the
best data virtualization tools which allows
Denodo is one of the
for large data sets. It is
suitable for both small as
improve response time
network traffic load and
well as large organizations.
Virtualization
Industries that use Data
Communication & Technology increase revenue
Technology industry, data virtualization is used to
In Communication & marketing, manage customers,
improve
real-time ODS for
per customer, create a customer care, etc.
optimize
customer insights, and
Finance improve trade reconciliation, empowering data
DV is used to
In the feld of finance, complexity, and managing fixed-risk income.
democracy, addressing data
Government protecting the environment.
sector, DV is used for
Inthe government
In healthcare,
Healthcare
veryimportant role in the field of healthcare.
Data virtualization plays
a product innovation, accelerating M&A
patient care, drive new
DV helps to improve more efficient claim analysis.
a
synergies, and provide
Manufacturing data virtualization is used to optimize a global supply chain,
manufacturing industry, assets utilization,
In improve IT
optimize factories, and
CloudComputing (KCS-713)
> Hardware Virtualization
Virtualization
Usage of Hardware
controlling virtual
mainly done for the server platforms, because
Hardware virtualization is
much easier than controlling a physical server.
machines is
Virtualization
Advantages of Hardware lower overall
utilization,
virtualization are moreefficient resource
hardware
The main benefits of
as increased uptime and IT flexibility.
costs as well
Resource Utilization:
1) More Efficient unused resources can be
machines. Although the
resources can be shared among virtual other virtual machines if the need exists.
Physical used by
to a virtual machine and that can be
allocated
Because Of Server Consolidation:
Overall Costs
2) Lower hardware platform, so
systemscan co-exist on a single
possible for multiple operating consumption drops
significantly.
Now it is power
number of servers, rack space, and
that the
Advanced Hardware Virtualization Features:
Because Of
3) Increased Uptime abstraction of
orchestrated operationsthat maximize the
highly migrate a running
The modern hypervisors provide maximum uptime. These functions help to
the
and help to ensure
the hardware
Cloud Computing (KCS-713)
wirtual machine from one host to another
irtual machine on another physical host indynamically, as well as maintain a running copy of
case the primary host fails.
4) Increased IT Flexibility:
Copyinga file to a workstation or linking a file in a network then we can easily install virtual
software.
2) Easy to manage:
Tomanage updates becomes a simpler task. You need to update at one place and deploy the
updated virtual application to the all clients.
3) Software Migration:
Without software virtualization, moving from one software platform to another platformn takes
virtualized software
much tÉme for deploving and impact on end user systems. With the help of
environnment the migration becomes easier.
Server Virtualization
a physical server into several virtual
Server Virtualization is the process of dividing
virtual private server can run independently
servers. called virtual private servers. Eacn
Server Virtualization widely used in the IT infrastructure to minimizes the
The concept of resources
utilization of existing
Costs by increasing the
Cloud Computing (KCS-713)
2. FullVirtualization
CPUand physical server.
Full Virtualization uses a hypervisor to directly communicate with the
machines.
It provides the best isolation and security mechanism to the virtual
virtualization is that a hypervisor has its
The biggest disadvantage of using hypervisor in full
application and server performance.
own processing needs, so it can slow down the
virtualization.
VMware ESX server is the best example of full
3. Para Virtualization
this
Virtualization is quite similar to the Full Virtualization. The advantage of using
Para performance, and does not require
virtualization is that it is easier to use, Enhanced Virtualization.
UML use the Para
emulation overhead. Xen primarily and
virtualization is that, inpara virtualization hypervisor does
The difference between full and pare manage the OS.
processing power to
not need too much
Virtualization
4. Operating System
It is a server
virtualization is also called as system-lever virtualization.
Operating system operating system into multiple isolated user-space
virtualization technology that divides oneadvantage of using server visualization is that it
The biggest
called virtual environments. it willsave money.
space, so
reduces the use of physical
System
Windows OS Virtualization are the types of Operating
Linux OsVirtualization and System-Level
OpenVZ, and Linux Vserver are some examples of
virtualization. FreeVPS.,
Virtualization.
Cloud Computing (KCS-713)
1. Independent Restart
working
server can be restart independently and does not affect the
InServer Virtualization, each
of other virtual servers.
2. Low Cost
virtual private servers, so it reduces
a single server into multiple
Server Virtualization can divide
the cost of hardwarecomponents.
3. Disaster Recovery<
Server
advantages of Server Virtualization. In be
Disaster Recovery is one of
the best
one server to another and these data can
quickly move from
Virtualization, data can easily and
anywhere.
stored and retrieved from
deployment of resources
4. Faster simpler and faster wav.
resources in a
allows us to deploy our
Server virtualization
5.Security
data inside the data centers.
to store their sensitive
ItallowS users
Virtualization
Disadvantages ofServer
Virtualization -
disadvantages of Server
following
There arethe
Cloud Computing (KCS-713)
1. The biggest disadvantage of server virtualization is that when the server goes
offline, all
the websites that are hosted by the server will
also go down.
2. There is no way to measure the performance of virtualized environments.
3. It requires a huge amount of RAM
consumption.
4. It is difficult to set up and maintain.
5. Some core applications and databases are not supported virtualization.
6. It requires extra hardware resources.
Storage Tiering: Utilizing the storage pool conceptas astepping stone, storage tiering
analyzes the most commonly used data and places iton the highest performing storage
pool. The lowest one used data is placed on the weakest performing storage pool.
consumer.
This operation is done automatically without any interruption of service to the data
VMo VMG
Ring 3 Apps Apps
VM VM VMCS VMM
VMX entry exit configuration
root Memory and /O
mode virtualization
VM control structure
Memory Virtualization
virtual memory support provided by
Virtual memory virtualization is similar to the
modern operating systems.
maintains mappings
traditional execution environment, the operating system
a
In
machine memory using page tables, which is a one-stage mapping
of virtual memory to
machine memory.
from virtual memory to
memory management unit (MMU) anda translation look
include a
Allmodern x86 CPUs performance.
optimize virtual memory
aside buffer (TLB)to virtualization involves
execution environment, virtual memory
a virtual allocating it to
However. in
system memory in RAM and dynamically
sharing the physical VMs.
memory of the
the physical should be maintained by the guest OS
and the
process
two-stage mapping and physical memory to
That means a
virtual memory to physical memory
VMM, respectively:
guest
machine memory. supported, which is transparent to the
virtualizationshould be
Furthermore, MMU control the mapping of virtual addresses to the physical
to machine
The guest OS continues guest OOS cannot directly access the actual
OS. But the to the actual
addresses of VMs. for mappingthe guest physical memory
memory responsible
VMMis
memory. The
maehinHe memOry.
VM1
Process 1 VM2
Process2 Process1 Process2
Virtual VA
memory
Physical PA
memory
Machine MA
memory
I/Ovirtual1zation involves managing the routing of /O requests between virtual devices and
the shared physical hardware. At the time of this writing, there are three ways to implement
VO virtualization: full device emulation, Para-virtualization, and direct VO. Full device
emulation are the first approach for VO virtualization. Generally, this approach emulates
well-known, real-world devices.
enumeration.
infrastructure, such as device
or bus located in
the functions of a device replicated insoftware. This software is are
All DMA, are requests of the guest OS
identification, interrupts, andvirtual device. The I/O access
and acts as a interacts with the I/O
devices,
the VMM concurrently
VMM which multiple VMs that run emmlates
trapped in the shared by hardware it
hardware device can be much slower than the Xen, It is alo
A single software emulation runs virtualizationis typically used in driver. The
However, method of IVO frontend driver and a backend
Para-virtualization consistingofa Domain 0.
The model backend driver is runningin
the
thesplit driver Domain Uand memory.
known as running in shared driver is
driver is via a block of
guest OSes and the backend
frontend cach other /Orequestsofthemultiplexing the VOdata of different
interactwith the devices and
They driver manages VO
frontend the real
The managing
responsible for
Cloud Computing (KCS-713)
VMs. Although
device emulation,Para-I/O-virtualization achieves better device performance than full
it comes with a higher CPU
overhead.
Direct I/Ovirtualization lets the VM access devices
native performance without high CPU costs. However, directly. It can achieve close-to
current direct I/O virtualization
implementationsfocus on networking for mainframes.There are a lot of challenges for
commodity hardware devices.
For example, when a physical device is reclaimed
(required by workload migration) for
later reassignment, it may have been set to an arbitrary state (e.g., DMA tosome arbitrary
memory locations) that can function incorrectly or even crash the whole
Since software-based 1/O virtualization requires a very high system.
overhead of device
emulation, hardware-assisted /O virtualization is critical. Intel VT-d supports the
remapping of I/O DMA transfers and device-generated interrupts.
The architecture of VT-d provides the flexibility to support multiple usage
models that
mayrun unmodified, special-purpose, or virtualization-aware" guest OSes.
A virtual machine is effectively a single file that contains everything, including your
operat1ng systems, progranms, settings, and files. At the same time, you'll be able to
use your virtual machine the same way you use a localdesktop.
Virtualization greatly simplifies disaster recovery, since it does not require rebuilding
machines over to
a physical server environment. Instead, you can move your virtual
another system and access them as normal.