cloud-computing-final-report-seminar-changed
cloud-computing-final-report-seminar-changed
changed
In partial fulfillment
Master of Technology
Guided By Submitted by
I hereby declare that the work, which is being presented in the Industrial Training/ Seminar,
entitled “Cloud computing” in partial fulfillment for the award of degree of “ Master of
Technology” in Department of Computer Science & Engineering with Specialization in Computer
Science and submitted to the Department of Computer Science & Engineering, Shekhawati
Institute of Engineering and Technology, Sikar, Rajasthan Technical University is a record of
my own investigations under the Guidance of Mr. Irfan Khan, Assistant Professor in Computer
Science & Engineering Shekhawati Institute of Engineering and Technology, Sikar
I have not submitted the matter presented in this Industrial Training/ Seminar anywhere for the
award of any other Degree.
Khushboo Kumari
M.Tech. (CSE)
This is to certify that this Industrial Training/ Seminar entitled “Industrial Training/ Seminar
Name” has been successfully carried out by Student Khushboo Kumari, Roll No. 22ESFCS603.
under my supervision and guidance, in partial fulfillment of the requirement for the award of
Master of Technology Degree in Computer Science from Shekhawati Institute of Engineering and
Technology, Sikar.
Guided By
Mr. Irfan Khan
Assistant Professor
(Department of Computer Science & Engineering)
Shekhawati Institute of Engineering and Technology, Sikar
Place:
Date:
I wish to express my deep sense of gratitude towards my guide Mr.Irfan Khan Assistant
Professor, Computer Science & Engineering), Shekhawati Institute of Engineering and Technology,
Sikar for her guidance and encouraging support which were invaluable for the completion of this
work.
Words are inadequate in offering my thanks to the Dr. K. K. Vyas (Principal), Shekhawati
Institute of Engineering and Technology, Sikar (Raj.) for their encouragement and cooperation in
carrying out the dissertation work.
I take immense pleasure in thanking all the faculty members, staff members and colleagues for
their valuable assistance in the dissertation work.
Khushboo Kumari
4 Cloud Architecture 9
4.1 Comparison between Cloud Computing and Grid Computing.................................10
4.2 Relation between Cloud Computing and Utility Computing...................................10
4.3 Types of utility cloud services..................................................................................10
7 Conclusion 25
1. Private Cloud – This type of cloud is maintained within an organization and used
solely for their internal purpose. So the utility model is not a big term in this scenario. Many
companies are moving towards this setting and experts consider this is the 1st step for an
organization to move into cloud. Security, network bandwidth are not critical issues for private
cloud.
2. Public Cloud – In this type an organization rents cloud services from cloud providers
on-demand basis. Services provided to the users using utility com- puting model.
3. Hybrid Cloud – This type of cloud is composed of multiple internal or exter- nal
cloud. This is the scenario when an organization moves to public cloud computing domain from
its internal private cloud.
High demand of interactive applications – Applications with real time response and with
capability of providing information either by other users or by non- human sensors gaining more
and more popularity today. These are generally attracted to cloud not only because of high
availability but also because these services are generally data intensive and require analyzing
data across different sources.
1. Parallel batch processing – Cloud inherently supports batch-processing and analyzing
tera-bytes of data very efficiently. Programming models like Google’s map-reduce [18] and
Yahoo!’s open source counter part Hadoop can be used to do these hiding operational complexity
of parallel processing of hundreds of cloud computing servers.
2. New trend in business world and scientific community – In recent times the business
enterprises are interested in discovering customers needs, buying pat- terns, supply chains to take
top management decisions. These require analysis of very large amount of online data. This can
be done with the help of cloud very easily. Yahoo! Homepage is a very good example of such
thing. In the homepage they show the hottest news in the country. And according to the users’
interest they change the ads and other sections in the page. Other than these many scientific
experiments need very time consuming data processing jobs like LHC (Large Hadron Collider).
Those can be done by cloud.
3. Extensive desktop application – Some desktop applications like Matlab, Math- ematica
are becoming so compute intensive that a single desktop machine is no longer enough to run
them. So they are developed to be capable of using cloud computing to perform extensive
evaluations.
The cloud providers actually have the physical data centers to provide virtualized services to
their users through Internet. The cloud providers often provide separa- tion between application
and data. This scenario is shown in the Figure 2. The underlying physical machines are generally
organized in grids and they are usu- ally geographically distributed. Virtualization plays an
important role in the cloud scenario. The data center hosts provide the physical hardware on
which virtual ma- chines resides. User potentially can use any OS supported by the virtual
machines used.
Operating systems are designed for specific hardware and software. It results in the lack of
portability of operating system and software from one machine to another machine which uses
different instruction set architecture. The concept of virtual machine solves this problem by
acting as an interface between the hardware and the operating system called as system VMs [21].
Another category of virtual machine is called process virtual machine which acts as an abstract
layer between the operating system and applications. Virtualization can be very roughly said to
be as software translating the hardware instructions generated by conventional soft- ware to the
understandable format for the physical hardware. Virtualization also includes the mapping of
virtual resources like registers and memory to real hard- ware resources. The underlying platform
in virtualization is generally referred to as host and the software that runs in the VM environment
is called as the guest. The Figure 3 shows very basics of virtualization. Here the virtualization
layer cov- ers the physical hardware. Operating System accesses physical hardware through
virtualization layer. Applications can issue instruction by using OS interface as well as directly
using virtualizing layer interface. This design enables the users to use applications not
compatible with the operating system.
Virtualization enables the migration of the virtual image from one physical machine to another
9
Most of the cloud architectures are built on Grid architecture and utilizes its ser- vice. Grid is
also a form of distributed computing architecture where organizations owning data centers
collaborate with each other to have mutual benefit. Although if apparently seen it seems that
cloud computing is no different from its originator in the first look but there are substantial
difference between them in spite of so many similarities [12]. The relation between Grid and
cloud computing is discussed in Table 1.
The cloud users enjoy utility computing model for interacting with cloud service providers.
This Utility computing is essentially not same as cloud computing. Utility computing is the
aggregation of computing resources, such as computation and storage, as a metered service
similar to a traditional public utility like electricity, water or telephone network. This service
might be provided by a dedicated computer cluster specifically built for the purpose of being
rented out, or even an under-utilized supercomputer. And cloud is one of such option of
providing utility computing to the users.
10
11
1. SaaS (Software as a service) – Delivers a single application through the web browser
to thousands of customers using a multitenant architecture. On the customer side, it means no
upfront investment in servers or software licens- ing; on the provider side, with just one
application to maintain, cost is low compared to conventional hosting. Under SaaS, the software
publisher (seller) runs and maintains all necessary hardware and software. The customer of SaaS
accesses the applications through Internet. For example Salesforce.com with yearly revenues of
over $300M, offers on-demand Customer Relationship Management software solutions. This
application runs on Salesforce.com’s own infrastructure and delivered directly to the users over
the Internet. Salesforce does not sell perpetual licenses but it charges a monthly subscription fee
start- ing at $65/user/month [10]. Google docs is also a very nice example of SaaS where the
users can create, edit, delete and share their documents, spread- sheets or presentations whereas
Google have the responsibility to maintain the software and hardware.
E.g. - Google Apps, Zoho Office.
2. PaaS (Platform as a service) – Delivers development environment as a ser- vice. One
can build his/her own applications that run on the provider’s infras- tructure that support
transactions, uniform authentication, robust scalability and availability. The applications built
using PaaS are offered as SaaS and consumed directly from the end users’ web browsers. This
gives the ability to integrate or consume third-party web-services from other service platforms.
12
13
Applications using cloud computing are gaining popularity day by day for their high
availability, reliability and utility service model. Today many cloud providers are in the IT
market. Of those Google App-Engine, Windows Azure and Amazon EC2, S3 are prominent ones
for their popularity and technical perspective.
Amazon Elastic Computing (EC2) [13] is one of the biggest organizations to pro- vide
Infrastructure as a Service. They provide the computer architecture with XEN virtual machine.
Amazon EC2 is one of the biggest deployment of XEN architec- ture to date. The clients can
install their suitable operating system on the virtual machine. EC2 uses Simple Storage Service
(S3) for storage of data. Users can hire suitable amount CPU power, storage, and memory
without any upfront commitment. Users can control the entire software stack from kernel
upwards. The architecture has two components one is the EC2 for computing purposes and S3 is
for storage purposes [14].
14
• The Compute Service: The primary goal of this platform is to support a large number
of simultaneous users. (Microsoft also said that they would use Azure to build their SaaS
applications which motivated many potential users.) To allow applications to scale out Microsoft
uses multiple instances of that appli- cations on virtual machines provided by Hypervisor.
Developers use Windows Azure portal through Web browser, and use Windows live ID to sign
in into his/her hosting account or storage account or both.
Two different types of Azure instance is available: Web role instance and Worker role
instances.
– Web role instance: As the name implies this type of instance can accept HTTP or
HTTPS requests. For this facility Microsoft uses IIS (Internet Information Services) as a web
server inside the VM provided. Developers can build applications using ASP.NET, Windows
Communication Foun- dation (WCF) or any other .NET technology or native codes also like C+
+. PHP or java based technologies also supported in Azure. Azure scales applications by running
multiple instances without any affinity with a particular Web role instance. So it is perfectly
natural for an Azure application to serve multiple requests from a single user by multiple in-
stances. So this requires to write the client state in the Azure storage after each client request.
– Worker role instance: This type of instances are very similar to that of Web role
instances. But unlike the Web role instances these don’t have IIS configured. They can be
configured to run executable of users’ right. Worker role instance is more likely to function like a
background job. Web role instances can be used to accept request from the users and then they
can be processed by Worker role instances in a later point of time. For a compute intensive work
many Worker role instances can run in parallel.
Loging and monitoring of Azure applications is made easy by provision of ap- plication wide
log. a developer can collect performance related information like measure of CPU usage, store
crash dumps in the storage. Azure doesn’t give the developer the freedom to use his/her own VM
image for Windows Azure. The platform maintains its own Windows. Applications in Azure run
only in user mode - no administrative access isn’t allowed here. So Windows Azure can update
the operating system in each VM without any concern of affecting the applications running on it.
This approach separates administrative work from the user domain.
16
All data in the Windows Azure storage is replicated three times for providing fault tolerance.
Azure also keeps backups in geographically distributed data centers. Windows Azure storage can
be accessed by any Windows Azure ap- plication as well as any application hosted at another
cloud platform. All the blobs, tables, queues are named using URIs and can be accessed by
HTTP methods calls.
Some applications have inherent need for relational databases. This is provided in the form of
SQL Azure. This is build on Microsoft SQL Server. This data can be accessed via ADO.NET or
by other Windows data access interfaces.
17
18
Today most of the studies in cloud computing is related to commercial benefits. But this idea
can also be successfully applied to non-profit organizations and to the social benefit. In the
developing countries like India Cloud computing can bring about a revolution in the field of low
cost computing with greater efficiency, availability and reliability. Recently in these countries
e-governance has started to flourish. Experts envisioned that utility based computing has a great
future in e- governance. Cloud computing can also be applied to the development of rural life in
India by building information hubs to help the concerned people with greater access to required
information and enable them to share their experiences to build new knowledge bases.
6.1 E-Governance
E-Governance is an interface between Government and public or this can be an interface
between two governments or between government and business organiza- tions [7]. Objectives
are generally to improve efficiency and effectiveness to serve public demand and to save costs
for online services. This requires Government to have the will to decentralize the responsibilities
and processes and start to have faith on electronic and internet systems. E-government is a form
of e-business in gover- nance and refers to the processes and structures needed to deliver
electronic services to the public (citizens and businesses), collaborate with business partners and
to conduct electronic transactions within an organizational entity. This E-Governance can be
greatly improved by utility computing [8].
Impact of Technology in E-governance -
• 24/7 Service Model – Systems and services require high availability. Get the citizens
feel that Government is always at their service.
• Need for Content – Web contents should be regularly updated and the infor- mation
provided to the public should be sufficient. Respective departments should be responsible for
providing the information.
• Human Resource – Building these IT skilled resources would need properly trained
personals. This would make government to compete with other private organizations.
19
Recently Government of India have taken initiative and launched several projects to facilitate
people with better mechanism of governance using IT as a tool. They have launched projects like
Gyan Ganga, e-Gram [17] to leverage the strength of connectivity. Gyan Ganga is one of the
initiatives of the Government of Gujrat to ensure wireless Internet connectivity to 18000 villages
in Gujrat. This project is based on corDECT a technology based on Wireless Local Loop (WLL).
Rural citizens are provided with facilities like browsing emails, Internet, land records, rural job
opportunities, status of various government projects, information about local weather, soil and
consult with experts to increase productivity in agriculture, to have answer to their queries about
veterinary and health care. Gyan Ganga comes with other facilities with on-line registration of
various applications, on-line public grievance form, information on Government projects etc.
Another Government of India initiative is E-Gram computerization of local Gram panchayats.
This is also now implemented in the villages of Gujrat. This E- Gram provides the rural people
services like birth and death certification, property assessment, tax-collection, accounts of gram
panchayats etc.
Why traditional systems are not sufficient? For maintaining traditional sys- tems in
e-government there are many more disadvantages.
20
• Scalability – Cloud computing by design supports scalability. The data cen- ters have
enough computing and storage capacity to cope up with the spike demand.
• Modifiable – Applications hosted in cloud can be modified internally without too
much concern of the end users. Change in one place would reflect in all the places inherently and
it would be consistent.
• Data logging – This central facility can be very useful for locating any fault in the
system. Logging can also be used for detecting unauthorized usage checking or detecting
compromization.
• Availability – Cloud services are well known for high availability. If any data center
is down for any reason there is hot backup ready to work immediately. Virtual machine
migration is used to great extend in this situation to facilitate load balancing in case of failure of
some systems.
• Reliability – Replication and migration of instances across data centers make the
reliability of the system very high in the cloud scenario.
• Physical disaster recovery – Backup policies can be very useful for physical disaster
avoidance and this is inherent to the cloud system. Data is stored in different physical location so
that hot backup can be provided whenever needed.
• Policy management – Polices can be managed in a centralized fashion. This is helpful
for introducing Government policies readily unlike the present scenario.
• Legacy software – An already developed software can be moved to cloud with minor
changes some times. So the Government doesn’t incur cost for develop- ing applications which it
already has.
• Pay model – Cloud providers’ pay-as-you-use model enables the customer
(Government) to reduce cost of deployment and control the usage.
• Reduce power consumption – Adaptation of cloud reduces power consump- tion in
different offices and usage of power is concentrated in the data center only. But also that is not
the concern of the government as those data centers are to be handled by the third party who
provides cloud services.
21
• Security Concern – Government works are highly security sensitive and the policies
sometimes must not be go into public. But in cloud computing scenario security is not properly
implemented today. So this is a big concern.
• Policy Concern – Government has certain policies but the third party cloud provider
may have contradicting policies.
• Lack of faith in networks – Many government departments don’t have that much trust
in networks and internet. So they would not jump into accepting cloud computing.
With the help of cloud computing this can be made possible. We’ll now discuss the
technological and economic advantages for using cloud.
• No upfront commitment – The villagers need not to invest too much to buy computing
system and commit. But instead they can have very low cost terminals with basic functionality of
I/O and have a network access.
• No maintenance issues – The users need not to be an expert for maintenance. This
solves the unavailability of technical experts in the remote villages as the maintenance issues are
handled by the cloud provider explicitly.
• Upgraded version of hardware and software – The users always use the up- graded
version of software and hardware as maintained by the cloud provider. This reduces the cost of
up gradation.
• On-demand resource allocation – The virtual resources can be extended as needed. If
the user needs more resource then it is provided on demand basis.
• Utility computing model – The economic model used by the cloud is pay-as- you-use.
This enables the users handle the cost they have to pay.
By using cloud computing model some improvement of the current system is possible to bring
about social and as well as economic prospect in rural India.
• Share knowledge and build knowledge base – Most of the agriculture related issues
are generally local and they can’t be solved by general expertise. So it happens many times that
the so called experts are not the right person to answer the problems but instead the local farmers
are better in understanding.
So in these situations better solution can be given by the local experts. If these local experts
access a common space to share their knowledge then others eventually come to know about the
solution. Thus a knowledge base can be build which would represent the issues in that local
scenario. It is like building Wikipedia.
• Health and medical services – In the developing countries like India one of the
concern of Rural health care is in spite of best intention from both the medical professionals and
patients a practical challenge is faced for difficulties of communications among interested parties
[15]. This issue can be solved using cloud computing in an appropriate way. Consultation among
doctors around the world make sharing of knowledge possible and takes telemedicince to the
next level, creating a network that goes beyond the one-to-one, patient- to-patient,
patient-to-doctor or doctor-to-doctor interactions. In this way a patient suffering from a particular
disease can be better treated by consulting with doctors within region and also outside who may
have more experience with such a case.
23
All these things are possible with right initiative. These may need customiz- ing the original
cloud services. Some generally unpopular services like Desktop as a Service may make sense in
these scenario which essentially tells about providing the users a virtual desktop environment.
But deployment of cloud services in rural areas have some issues associated with it.
• The first and foremost issue for the deployment of internet based services in rural India
is the availability of electricity and networks. Currently there are a number of initiatives
underway to explore alternative to wired Internet, in- cluding WiFi, WiMax, satellite-based
Internet connectivity. Such an effort is made by Midas Communication technologies and Indian
Institute of Madras in the name of corDECT which is a wireless access system. It provides simul-
taneously voice and 35-70kbps Internet access to wireless subscriber. Another effort is [19]
where the authors modified traditional WiFi to make it efficiently work in long distance suitable
in the context of rural area.
• Optimization due to data locality – Store the data where it is mostly used is known as
the data locality. This is very helpful for optimization purpose. This can be done by establishing
data centers in rural India. But the cost of power and bandwidth may not be cheap in many
places. So for those places some efficiency and economic trade off should be obeyed.
India is now world’s 2nd fastest growing economy. As per World Bank survey, by this year
the growth rate of India’s economy would be faster than currently fastest economy China. In
India there is very large scope of applying IT in domestic level and that encouraged the cloud
providers to establish cloud services in India. Today companies like Reliance, TATA, Zenith
Computers, Wipro Technologies, Netmagic Solutions, and Reliance are providing cloud services
in India successfully. These companies can grasp the huge market in the rural India as well as
making social development.
24
25
26
27