Exp 7

Aim: Web service implementation for Private Cloud using Eucalyptus and Xen.
Theory:
Web service Implementation lifecycle:
1. Requirement Phase – This phase focuses on what the system will do in an effort that views
all stakeholders, including sponsors and potential users, as important sources of information. The
objective of the Private cloud using Eucalyptus and Xen is to build a private cloud environment.
The requirements were the cloud must be reliable, cost effective and it must satisfy all the needs
of an IT organization or a University for research and development.
2. Analysis Phase - This step involves breaking down the system in different pieces to analyse
the situation, analysing project goals, breaking down what needs to be created and attempting to
engage users so that definite requirements can be defined.
This phase resulted in choice of Eucalyptus, Xen and Ubuntu as the platform for development as
it satisfied all needs of the project.
3. Design Phase - In this phase, design functions and operations are described in detail,
including screen layouts, business rules, process diagrams and other documentation. The output
of this stage will describe the new system as a collection of modules or subsystems. The design
stage takes as its initial input the requirements identified in the approved requirements document.
For each requirement, a set of one or more design elements will be produced as a result of
interviews, workshops, and/or prototype efforts. Design elements describe the desired system
features in detail, and generally include functional hierarchy diagrams, screen layout diagrams,
tables of business rules, business process diagrams, pseudo-code, and a complete entityrelationship diagram with a full data dictionary. These design elements are intended to describe
the system in sufficient detail, such that skilled developers and engineers may develop and
deliver the system with minimal additional input design.
Mock ups were created for whole system and were refined with the help of the stakeholders.
4. Coding Phase – This involves actual implementation of the design document created. The
mock up were realized using Eucalyptus, Xen. Eucalyptus is an open source cloud computing
framework that gives users the ability to create, run and manage virtual machine instances across
physical machines. Xen is the hypervisor upon which the virtual machines run on the host
computer. A GUI is provided using PHP and HTML.
5. Test Phase - Testing is an investigation conducted to provide stakeholders with information
about the quality of the product or service under test.Software testing can also provide an
objective, independent view of the software to allow the business to appreciate and understand
the risks of software implementation. Test techniques include, but are not limited to the process
of executing a program or application with the intent of finding software bugs (errors or other
defects).
The private cloud was manually tested by launching various virtual machines with different
configurations and bugs found were rectified in the next iteration of development.
6. Deployment Phase - After successful testing the product is delivered / deployed to the
customer for their use. The private cloud will be deployed at customer premises with their own
hardware.
Comparison between REST and SOAP
REST
SOAP
“The web is the universe of globally
“The web is the universal transport for
Accessible information”
messages”
-Application should publish their data on
-Application get a chance to interact but they
the web(through URI)
remain outside the web.
Fig: REST
Fig: SOAP
REST provides explicit state transitions.
SOAP services have implicit state transitions
Communication is stateless.
-Server may maintain conversation state across
multiple message exchanges.
Resources contain data and links
Messages contain only data( but do not include
representing valid state transition.
information about valid state transition)
Clients maintain state correctly by
Clients maintain state by guessing the state
following links in generic manner.
machine of the service.
Techniques for adding sessions to HTTP:
Techniques for adding sessions to SOAP:
-Cookies(HTTP headers)
-Session headers(non standard)
-URL Re-writing
-Hidden form fields
A REST design implies that a web
A SOAP structure is complex in nature for a
application equipped for returning a plain
reason: resilience
and simple XML fragment as a response to
URL request.
A REST relies on a human readable
Client stubs can be built from WSDL
documentation that defines requests URLs
description in most programming languages.
and responses(XML,JSON)
REST involves interacting with the service
In SOAP each service publishes its own
which include hours of testing and
interface with different semantics.
debugging URIs manually built parameter
combinations.
REST security is all about HTTPs.
SOAP security includes extensions defined by
WS-security(from 2004)
Proven track record(SSL 1.0 from 1994)
XML encryption(2002)
XML signature(2001)
Secure, point to point communication
Secure, End to End communication- Self
(Authentication, Integrity, Encryption)
protecting.
SOAP messages(does not require HTTPs)
REST messages can be transferred using
SOAP messages can be transferred using
HTTP which is synchronous protocol, and
asynchronous transport protocol and APIs(like
hence it can be used to “simulate” a
JMS, MQ..)
message queue.
REST is useful in solving application
SOAP addresses the problem of enterprise
integration problems.
software standardization.
Lack of standard support for security,
SOAP is the prevailing standard for web
policy, reliable messaging, etc. So services
services, and hence has better support from other
that have more sophisticated requirement
standards (WSDL, WS) and tooling from
and harder to develop.
vendors.
REST is not usable for distributed
SOAP is designed to handle distributed
computing environment where message
computing environments.
may go through one or more
intermediaries.
Small learning curve, simpler to develop
Header to develop than REST, require tools.
less reliance on tools.
REST interface require no string typing as
SOAP proposes that string typing is necessary
in REST request and the response can be
feature for distributed applications.
short.
REST services are architectural styles for
SOAP service are middleware interoperability
the web.
standard.
Fig: RESTful Web Application Example
Fig: Web service Example
Conclusion: Thus we have completed Web Service implementation for Private Cloud using
Eucalyptus and Xen.