Cloud Computing
Cloud Computing
Cloud Computing
UNIT – I
Cloud Computing Foundation : Introduction to Cloud Computing – Move to Cloud Computing –
Types of Cloud – Working of Cloud Computing. Cloud Computing Architecture : Cloud Computing
Technology – Cloud Architecture – Cloud Modeling and Design.
Definition
Cloud Computing is a model for enabling convenient, on-demand network access to a shared
pool of configurable computing resources like N/W, Servers, Storage, Applications and other
services.
The other major constraint in the design of utility computing which could shrink the growth of the
usage of personal computer was the technical restrictions on bandwidth as well as disk spaces.
Essentially, Amazon is far from being a company that specializes in retail. Its assistance to cloud
computing will be discussed shortly in a profile of companies using cloud technology, but it is clear
to any IT expert that Amazon is the first company that built on the basics of technical innovation,
particularly after the dot-com bubble time.
The Solution
There is one model of computing which satisfies the three requirements mentioned above in
business and is becoming the technology trend of the future, it is known as cloud computing. Have
you ever used cloud computing? Most of you will answer in the negative.
You are already on the cloud. An e-mail like Gmail, Yahoo and Hotmail are cloud-based
examples of SaaS (Software as a Service). SaaS is a piece of cloud computing.
Cloud is an acronym of the phrase: Common, Location-independent, Online Utility that is
available on Demand.
IT professionals recognized that there are eight basic components that are very important in
enabling the cloud computing concept (Figure 1.1) for the cloud to work in the public or private
sector, they are as follows:
1. Worldwide connectivity: users should have near-ubiquitous access to the Internet.
2. Open access: Users should have fair, open-minded access to the Internet.
3. Reliability: The cloud’s performance should equal to or better than recent standalone
systems.
4. Interoperability and user choice: Users must be able to progress among different clouds.
5. Security: It should ensure that data of users are safe.
MOVE TO CLOUD
COMPUTING PROS AND CONS OF CLOUD COMPUTING
Cloud computing can enable constant flow of information between service providers and the end
users.
5
A good cloud computing package must only charge you for the services that you use. Figure 2.2
shows some key elements of cloud computing, without which computing cannot be established.
Elements are divided into four layers.
Layer 1 contains the physical machines, where the required software and operating systems are
installed.
Layer 2 forms virtual machines. Layer 3 explains the service level agreements (SLA) and resource
allocator to the virtual machines (VM). This layer also accounts for the job, prices it and dispatches
the jobs to the VM. Layer 4 contains the users or brokers using the computing.
Upgraded Software: Software provided online is upgraded and maintained by the provider, so that
small business owner do not have to purchase the newest version of software program or download
fixes and patches. No need to buy a program, but entering into a monthly or annual contract is also
attractive, as is the reality that several applications are offered for free.
Working of Cloud
Cloud computing uses information technology as a service over the network.
Cloud computing consists of Infrastructure as a service (IaaS), Platform as a service (PaaS),
Hardware as a Service (HaaS) and Software as a service (SaaS).
Cloud computing finally enables the user to rent a virtual server loaded with software and turn it
on and off according to the need from the user and it can furthermore be cloned to meet an
immediate workload demand.
Cloud computing also stores a large amount of data that can be accessed by the certified users
with the authorized applications.
A cloud is used as a storage medium which handles applications, business and personal data.
TYPES OF CLOUD
Types of Cloud Computing (deployment models)
Cloud computing can be classified into four types based on the location of the cloud. Many types
of cloud deployment models are available; they are private, public and hybrid models as shown in
Figure 3.0. Private cloud is an on-premises or internal cloud setup, whereas public cloud is off-
premises or external one.
Both private and public cloud set-up may provide three different services, that is SaaS, PaaS and
IaaS. NIST (National Institute of Standards and Technology) provides a standard definition for cloud
computing and its models.
Public cloud is a widely used model, where infrastructure comprising of hardware systems,
networks, storages and applications are owned by the provider.
1. Public cloud: This computing infrastructure is hosted at the vendor’s workplace. The end
user cannot view the infrastructure. The computing infrastructure is shared between
companies.
3. Hybrid cloud: Organizations can submit less valued applications in public cloud and high
valued applications in the private cloud. The combination is known as hybrid cloud. Cloud
bursting is used to define a system where the organization uses its own infrastructure for
normal usage and cloud is used for peak times.
4. Community cloud: The cloud infrastructure is shared between the companies of the same
community. For example, all the government organizations in a city can share the same
cloud but not the non-governmental organizations.
Six different types of cloud computing and their offering to businesses are listed as follows:
1. WWW-based cloud computing service is a type of cloud service that exploits certain web
service functionalities, rather than deploying applications. For example, it can use Google
Maps API.
2. Software as a service is an idea, where an application can be used by multiple tenants,
using the browser. For example, SaaS solutions are used in sales, ERP and HR.
3. Platform as a service is a variant of SaaS, one can run their own applications but by
executing on the cloud provider’s infrastructure.
4. Utility cloud computing services offer virtual storage and server options, where the
companies can access it on demand. This allows easy creation of virtual data centre.
5. Managed services are the oldest cloud computing solutions. In this, a cloud computing
provider utilizes an application than the end customers. Examples are using anti-spam
services and application monitoring.
6. Service commerce is a mix of SaaS and managed services. It provides a hub of services,
where the end user interacts. Examples are tracking expenses, virtual assistant services and
travel bookings.
CLOUD INFRASTRUCTURE
Cloud Computing Infrastructure
Cloud computing infrastructure functions like an electricity grid. When you need light in a
room, you turn the switch on, the signal travels through the electricity grid, then power is transmitted
to your switch and you have light.
A cloud computing infrastructure works similarly. Whenever you need resources such as
information on software, they are stored in a network called a cloud.
Figure 3.1 shows the basic infrastructure for a cloud, comprising of client and server
machines.
Application, platform and infrastructure services are used by two machines. Servers deploy
services and act as a provider, whereas a client uses it and acts as a requestor.
WORKING OF CLOUD
COMPUTING TRENDS IN COMPUTING
Information technology (IT) is evolving rapidly. It becomes outdated as fast as it evolves.
Cloud computing technology changed its focus from industry to real-world problems. The major
trends that emerged in cloud computing technology are:
Small, medium business and micro-business
Supply chains management, media and digital content, and legacy systems
On-the-fly access
Hybrid cloud model
Growth in stack-as-a-service
Technology Trends
Virtualization
Infrastructure, applications, server, desktop, storage, network and hardware compose
virtualization. Virtualization can supply extra power on demand and is compatible with today’s
environmental measures. For small and medium business (SMBs), virtualization affords incredibly
easy migration.
Data Growth
According to Gartner, enterprise data growth is expected to increase more in the next five
years and 80% will remain unstructured. Due to this trend in the IT, the complexity will also
increase, despite continued budget constraints. More access will lead to more data, resulting in
increased compliance, backup, audit and security.
Energy and Green IT
In Green IT, performance and its effectiveness will play a vital role. Corporate social
responsibility will become a primary concern as the power issue moves up the food chain.
Complex Resource Tracking
Complex resource tracking monitors energy consumption made by resources and
automatically optimizes it by moving workloads dynamically. Organizations will have to manage
new KPI (knowledge power infrastructures) based on power and there will be a growing demand for
new vendors and skills.
Consumerization and Social Software
Social collaboration (wikis, blogs, Facebook, Twitter), social media (content sharing and
aggregation) and social validation (social ratings, rankings and commentary) will continue to be a
major force in shaping consumerization and the software, compelling organizations to focus on early
pattern detection and ‘collectiveness’.
SUMMARY OF UNIT I
Cloud computing is the use of computing assets (hardware and software) that are consigned as a service
over a mesh (i.e., Internet).
Cloud computing is a technology that values the Internet and isolated servers to sustain data and
applications.
Cloud computing permits buyers and enterprises to use applications without setting up and accessing their
personal documents at any computer with Internet access.
Cloud computing technology permits for much more effective computing by centralizing data storage,
processing and bandwidth.
Consumers assert that cloud computing permits businesses to bypass upfront infrastructure charges, and
aims on tasks that differentiate their enterprises rather than the infrastructure.
Cloud computing relies on distributing of assets to accomplish coherence and finances of scale alike to a
utility (i.e., electrical power grid) over a network.
The base of cloud computing is a broader notion of converged infrastructure and distributed services.
Cloud computing is the result of evolution and adoption of surviving technologies and paradigms.
The aim of cloud computing is to permit users to take advantage from all of these technologies, without
the requirement of in-depth knowledge or know-how with each one of them.
The major support technologies for cloud computing are virtualization and autonomic computing.
Cloud computing is having more advantage over the latest distributed computing techniques in terms of
QoS and Reliability.
Tim Berners–Lee suggested the concept of distributing information known on multiple servers to be made
accessible to the world via client computers. Thus, world wide web was born.
Enterprise computing proceeds from a server-centric to an application-centric operations model.
The cloud will assist IT rapidly to establish new capabilities—applications, services, accessibility—that
will endow enterprises to function more effectively and efficiently.
The salient characteristics of cloud computing defined by the National Institute of Standards and
Terminology (NIST) are (i) on-demand self-service, (ii) broad network access, (iii) resource pooling, (iv)
rapid elasticity and (v) measured service.
Cloud computing permits enterprises to boost IT capability (or add capabilities) on the go and in less time
without buying new infrastructure, staff or programs, and as a payper-use service.
The renowned cloud deliver models are (i) Cloud Software as a Service (SaaS), (ii) Cloud Platform as a
Service (PaaS) and (iii) Cloud Infrastructure as a Service (IaaS).
The well-known cloud deployment models are (i) private cloud, (ii) community cloud, (iii) public cloud
and (iv) hybrid cloud.
Cloud computing is often far more protected than customary computing, because organizations like
Google and Amazon have high-skilled employees who are updated in cyber security.
Cloud computing actually is not (i) a data centre, (ii) a client/server computing, (iii) grid computing or
(iv) a centralized computing system.
Cloud computing can empower the unfailing flow of knowledge between the service provider and the end
user.
The pay as you go model of cloud computing adds ample reservation to the company’s portfolio.
Cloud computing adopts Internet-based services to support enterprise processes.
It is important to know about cloud computing before making the decision to progress the enterprise in
‘the cloud’.
The interconnectivity of computer servers is the first constituent that identifies cloud computing.
Cloud computing can alleviate the appropriate organization technical knowledge resources within the
organization.
Characteristic of the cloud computing is that it sanctions outsourcing company’s work portfolio, which is
the key component.
Cloud computing is expected to carry in a higher stage of automation than the common procedures of
making acquaintance between the assorted sections of an organization.
A good cloud computing package must only charge you for the services that you use.
Software provided online is upgraded and upheld by the provider, so no need to pay for or download fixes
and patches.
Chances are there for anonymous computer hackers to gain entry to the enterprise knowledge in the
cloud.
The key to employ cloud hosting carefully is finding a conscientious provider that provides back-up
programs.
Advantages of cloud computing are (i) Cost reduction, (ii) scalability, (iii) levels the playing field, (iv)
easier collaboration, (v) scalable and flexible and (vi) efficiency.
Disadvantages of cloud computing are (i) Security concerns, (ii) risk of losing Internet connection, (iii)
limited resources for customizations, (iv) availability, (v) data mobility and ownership, and (vi) privacy.
The growth of cloud computing could drastically change the way companies manage their technical assets
and computing needs.
The cloud model can yield enhanced effects to the client of an IT service.
Cloud computing is developed from the existing advance distributed technologies.
Other cloud-related technologies are (i) Grid computing, (ii) utility computing and (iii) autonomic
computing.
Cloud computing uses IT as a service over the network.
Cloud computing contains Infrastructure as a service (IaaS), Platform as a service (PaaS), Hardware as a
Service (HaaS) and Software as a service (SaaS).
A cloud is employed as a storage medium which handles applications, enterprise and private data.
Cloud migration process can be pulled apart into three environs, (i) plan, (iii) execute and (iii) monitor.
Five things to be known while migrating to cloud are (i) Start small, (ii) trust cloud vendors to protect
data, (iii) consider importance of security aspects, (iv) be an identity provider and (v) plan for latency and
outages.
There are seven regions to consider in evaluating and transitioning to cloud-based solutions.
Understanding an organization’s prevailing surroundings, articulating its prerequisites and then arranging
and establishing the transition are the approaches to productively delineating and understanding in cloud.
Information technology is continuously evolving.
It becomes outdated as fast as it evolves.
Technologies are based on two parameters: (i) the current investment rate and (ii) the current adoption
rate.
Cloud computing technology changed its focus from industry to real-world problems.
Technology trends to watch for are: (i) virtualization, (ii) data growth, (iii) energy and Green IT, (iv)
complex resource tracking and (v) consumerization and social software.
A cloud service can be replaced with any one of the following as Cloud * as a Service, where ‘*’ can be
replaced as, ‘Desktop, data, platform, IT, infrastructure, testing, computing, security, software, storage,
hardware, database, etc.’
Cloud service models are (i) SaaS (Software as a Service), (ii) PaaS (Platform as a Service and (iii) IaaS
(Infrastructure as a Service).
Private and public clouds are defined based on their relationship and as the subsets of the Internet.
Many types of cloud deployment models are available; they are private, public and hybrid models.
Cloud computing has many benefits and risks.
Storage services based on cloud computing does cost cutting, but increase in data transfer (bandwidth),
which is the main concern.
CLOUD COMPUTING TECHNOLOGY
CLOUD ARCHITECTURE
CLOUD COMPUTING LOGICAL ARCHITECTURE
Cloud Computing Architecture
Cloud computing is an Internet-based technique using shared resources available remotely.
Cloud computing system can be divided into two parts: front end and back end. The interconnection
between them is done via the Internet. Front end is used by the customers and back end refers to the
service providers.
The front end contains customer’s devices comprising of computers and a network and
applications for accessing the back end system, that is, the cloud systems.
Front end refers to the interface through which a customer can make use of the services rendered
by the cloud computing system.
Back end contains physical devices or peripherals. It also contains various computer resources
such as CPU and data storage systems.
A combination of these resources is termed as cloud computing system. A dedicated server is used
for administration purpose. It monitors the consumer’s demands, traffics, etc.
Key Patterns
UNIT – II
Virtualization: Foundation – Grid, Cloud and Virtualization – Virtualization and Cloud Computing.
Data Storage and Cloud Computing: Data Storage – Cloud Storage – Cloud Storage from LANs to
WANs
FOUNDATIONS
DEFINITION OF VIRTUALIZATION
‘Virtualization is a methodology for dividing the computer resources to more than one
execution environment by applying more concepts like partitioning, time-sharing, machine
simulation and emulation.’
Virtualization reduces the burden of workloads of users by centralizing the administrative
tasks and improving the scalability and workloads.
It contains three layers: layer 1 comprising of network, layer 2 comprising of virtual
infrastructures and layer 3 contains virtual machines where different operating system and
applications are deployed.
A single virtual infrastructure can support more than one virtual machine, that is, more than
one OS and application can be deployed.
Physical resources of multiple machines of entire infrastructure are shared in virtual
environment.
Virtualization is a method in which multiple independent operating systems run on a physical
computer. It maximizes the usage of available physical resources.
TYPES OF VIRTUALIZATION
Today virtualization is applied in many places—server virtualization, client/desktop/application
virtualization, storage virtualization and service/application infrastructure virtualization.
Diagram depicts the various types of virtualization. A broad mixture of virtualization technology
has been conceptualized, developed and enhanced. This gives the consumer flexibility, greater
efficiencies and cost-effectiveness. Various virtualization types shown in Figure 8.2are as follows:
Server virtualization is a kind of virtualization, used for masking of server resources, which
includes number of physical servers, processors and operating systems.
Network Virtualization is a method where network resources are combine based on available
bandwidth.
Storage virtualization is a type of virtualization, where a pool of physical storage from
different network of storage devices appears as a single storage device.
Types of Virtualization
Desktop virtualization supports various computing such as utility and dynamism, testing,
development and security.
Application virtualization allows server consolidation, application and desktop
deployment, and business continuity. Apart from this, recovery when disaster, lower TCO
with higher ROI, dynamic computing, testing and development are possible.
Management virtualization allows variety of features which are as follows: server
consolidation, centralized policy-based management, business continuity and disaster
recovery, lower TCO with higher ROI, utility and dynamic computing, testing and
development and security.
VIRTUALIZATION APPLICATION
Application virtualization is a term, which describes a new software technology has a
technical edge over improving portability, compatibility and manageability of various applications
by encapsulating them from its base OS, on which they are executed.
A virtualized application is not installed as in case of any other software/application, but it is
executable as it is installed.
Technology Types Under Application Virtualization
Application streaming
Desktop virtualization/virtual desktop infrastructure (VDI)
Benefits of Application Virtualization
Non-native applications can be executed (i.e., windows applications in Linux)
Protection for the operating system
Lesser resources are used
Able to run applications with bugs (i.e., accessing read-only system owned location for
storing user data)
Incompatible applications can be executed with lesser regression testing
Migration of various operating systems is simplified
Faster application deployment and on-demand application streaming
Security is improved as applications are isolated from operating systems
Enterprises can easily track license usage
Tracking license usage is done easily for applications
No need to install the applications, as it can be imported from portable media to client
computers
Limits for Application Virtualization
All software cannot be virtualized. Examples include device driver and 16-bit applications.
Anti-virus packages require direct OS integration, these packages cannot be virtualized.
For legacy applications, file and registry level compatibility issues can be resolved using
virtualization in newer operating systems. For example, Windows Vista applications will
not run where they don’t manage the heap correctly. For this reason, application
compatibility fixes are needed.
VIRTUALIZATION IN GRID
Grid Computing
The main focal point in grid computing lies in secure resource sharing in accessing computers,
software and data in a dynamic atmosphere. Sharing of those resources has to be fine-tuned and
handled in a highly controlled manner.
Grid Computing and Virtualization
Virtualization is not a solution for enterprises to manage their resources although it provides
richer capabilities in managing and moving the OS in different hardware.
It helps to run multiple workloads in a single machine with clear distinction between them.
Virtualization can do suspending, resuming and migrating images in run-time.
VIRTUALIZATION IN CLOUD
Virtualization is a tool for system administrators, which has many technical uses than a cloud.
Virtualization allows IT organizations to perform multiple operations using a single physical
hardware. Multiple OS instances running on single device is cost-effective than multiple
servers for each task.
Virtualization and cloud computing can go hand in hand. Virtualizing everything started a
year ago when processing power, software and servers are virtualized. following table shows
the similarities between cloud computing and virtualization.
Recovery from failures Discard instance spin up new Attempt to recover failed
one VM
SUMMARY OF UNIT II
Cloud computing is capable of transforming the IT sector and enhance responsiveness towards
business requirements.
IT organizations are approaching cloud computing for implementing virtualization in their data
centres.
The traditional virtualized environment can be extended to cloud lifecycle management that can
deliver an operational model for cloud services and deployment.
Cloud lifecycle management provides five services.
Cloud computing is an effective model, which enables convenient on-demand network access for the
shared resources.
There are five possibilities and recommendations for integrating into cloud effectively.
Organizations require an effective solution to support the thousands of parallel applications used for
their business demands. Organizations can share the various resources such as storage, server and
workloads using cloud computing models such as IaaS, PaaS and DaaS.
The advantages of cloud computing are (i) increased QoS, (ii) rapid application development and
deployment, (iii) elasticity and (iv) speed.
Cloud computing model supports convenient, on-demand software using the Internet.
Cloud computing supports availability and comprises of five characteristics, four deployment and
three service structures.
A reference architecture (RA) provides a blueprint and/or architecture, reused by others with slight
modifications.
A reference model (RM) explains what the reference architecture comprises and its various
relationships.
In cloud computing, RAs and RMs help in forming frameworks speedily.
APIs are using for storing and transferring data in cloud computing.
A well-established document if published would help the IT industry in defining the cloud computing
process better.
Cloud computing is a type of computing environment, where IT businesses outsource their computing
needs which includes software application services when they are in need of computing power or other
resources like storage, database, e-mails, etc., which are accessed via WWW.
Cloud computing system can be divided into two parts: front end and back end.
A good example is Gmail and Yahoo, both use cloud computing technology.
The operating cost of the cloud computing is comparatively low considering personal infrastructure.
The only concern in the cloud computing technology is security and privacy.
Cloud computing environment can be broadly classified based on the infrastructure: (i) public cloud, (ii)
private cloud and (iii) hybrid cloud.
The main advantage in cloud computing is that consumers need not pay for the infrastructure and its cost
for maintenance.
Mainly three types of services are available from a cloud service provider: (i) Infrastructure as a service,
(ii) Platform as a service and (iii) Software as a service
Cloud architectures can be viewed as a collection of different functionalities and capabilities.
Simplest cloud computing model can be viewed as a collection of servers, which are virtualized using a
tool.
The cloud computing reference model (CC-RM) facilitates the process of modelling the cloud,
architecture and planning the deployment activities.
The cloud reference model consists of four elements/models: (i) cloud enablement model, (ii) cloud
deployment model, (iii) cloud governance and operations model and (iv) cloud ecosystem model.
The CC-RM has four sub-models: (i) cloud virtualization tier, (ii) cloud operating system tier, (iii) cloud
platform tier and (iv) cloud business tier.
Cloud-based solution architecture are (i) single cloud site architectures, (ii) redundant 3-tier architecture
and (iii) multi-datacentre architecture.
Cloud computing is a means to reduce the IT cost and complexity, and helps to optimize the workload in
hand.
Factors needed for promoting the cloud computing are: (i) assurance regarding security risk, (ii) no illicit
activities, (iii) data portability and (iv) SLA regarding authentication of consumer data and (v) way to go
beyond boundaries.
Three key principles of cloud computing are (i) abstraction, (ii) automation and (iii) elasticity:
Cloud federation is the interconnection the cloud computing environments with two or more service
providers for balancing the traffic and to surge spikes while there is demand.
Cloud ecosystem characterizes the complexity of the schemes in terms of its interdependent constituents
that work simultaneously to endow cloud services.
The concept of ‘governance’ means different opinions for different people.
Governance in the cloud means, service level should be given importance. Developers must know about
their providers SLAs.
Virtualization is a methodology for dividing the computer resources to more than one execution
environments by applying concepts such as partitioning, time-sharing, machine simulation and emulation.
Virtualization eases the work of users by centralizing the administrative tasks and improving the
scalability and workloads.
Virtualization is a very powerful tool that drives significant benefits for cost, agility and the
environment.
Virtualization provides multiple environments for execution termed as virtual machines; examples are (i)
Wine, (ii) FreeBSD, (iii) Hive, (iv) Microsoft Virtual Server, (v) Nemesis and (vi) SimOS.
Examples of virtual machines programming languages are (i) UCSD P-System, (ii) JVM.
The needs for server virtualization are (i) consolidation, (ii) redundancy, (iii) legacy systems and (iv)
migration.
There are three ways to create virtual servers (i) full virtualization, (ii) paravirtualization and (iii) OS-
level virtualization.
OS virtualization somewhat differs from server virtualization. In this, the host runs a single OS kernel and
exports different operating system functionalities to every visitors.
Storage systems use virtualization concepts for better functionality and have more features within the
storage system.
Common network virtualization scenarios and examples are (i) external network virtualization and (ii)
internal network virtualization.
Some pitfalls of virtualization adoption and strategies are given are (i) religious battles, (ii) procurement
and business changes, (iii) myopic virtualization strategy, (iv) physical cost recovery models, (v) physical
asset-based security, (vi) still support programs and (vii) over-virtualization.
By avoiding the following potential pitfalls can be overcome: (i) poor preparation, (ii) insufficient server
capacity, (iii) mismatched servers, (iv) slow network communications, (v) slow mechanical disks, (vi)
uneven workload distribution and (vii) security risks.
Virtualization is a core technique for many application environments in computing systems.
Virtualization is often coupled with virtual machines and corresponding CPU abstraction.
In grid computing, virtualization gets more attention, but not in terms of service consolidation and
growing server utilization.
Virtualization is not a solution for the enterprises to manage their resources although it provides richer
capabilities in managing and moving OS in different hardwares.
Virtualization helps to run multiple workloads in a single machine with huge separation between those
workloads.
Virtual machines can check the execution of applications and also they are a useful tool for grid system
administrators.
Virtualization is a tool for system administrators, which has many technical advantages than in cloud.
Virtualization allows IT organizations to perform multiple operations using a single physical
hardware.
Cloud computing and virtualization modernizes IT organizations. By combining them, companies can run
their applications without the need of running updates and backups, as they all will be done by the
provider.
Virtualization has enabled consumers to consolidate the servers and do more with fewer
infrastructures.
Cloud computing is changing itself to meet the demands of customers in terms of software and
hardware.
Amazon, Microsoft and Google are the players using cloud computing technology.
Cloud computing environment separates the computing environment away from the developers and lets
them to focus on improving their application.
Cloud services always bundles language run-time dynamically for efficient interpretation across many
application instances.
Companies such as Aptana, CohesiveFT, RightScale are some examples of cloud hosting providers.
Virtualization abstracts services and physical resources. It simplifies the job of managing the resources
and offers a great flexibility in resource usage.
CPU virtualization is not multi-tasking or multi-threading.
Network virtualization provides a way to run multiple networks, multiple consumers over a shared
substrate.
A storage system is also called as storage array or disk array.
DATA STORAGE
Storage is a resource to be allocated to organizations to add more value. Data storage
management includes a set of tools to configure, backup, assign to users according to defined
policies.
INTRODUCTION TO ENTERPRISE DATA STORAGE
Understanding storage system is an important point in building effective storage system. The
various types of storage subsystems are:
Direct Attached Storage (DAS)
Storage Area Network (SAN)
Network Attached Storage (NAS)
DAS is the basic in a storage system and employed in building SAN and NAS either directly or
indirectly. NAS is the top most layer, having SAN and DAS as its base. SAN lies between a DAS
and a NAS.
DAS: Direct Attached Storage
DAS is the basic storage system providing block-level storage and used for building SAN
and NAS. The performance of SAN and NAS depends on DAS.
Performance of DAS will always be high, because it is directly connected to the system.
SAN: Storage Area Network
When multiple hosts want to connect a single storage device, then SAN is used. SAN
provides block-level storage and simultaneous access is not permitted and hence it is suitable for
clustering environment.
NAS: Network Attached Storage
For file-level storage, NAS is used.
SAN and DAS act as base system for NAS. NAS is also called as ‘File Server’.
The main advantages of NAS are that multiple hosts can share a single volume at the same time,
whereas when using SAN or DAS only one client can access the volume at a time.
DATA STORAGE MANAGEMENT
Data storage is expensive; therefore, storage administrators are trying to use tiered storage.
Today IT organizations are implementing tiered storage as a mix of storage technologies that meet
the performance needs and are cost effective.
Data Storage Management Tools
Maintaining storage devices is a tedious job for storage administrators. They adopt some utilities
to monitor and manage storage devices.
Management level tasks are configuration, migration, provisioning, archiving and storage
monitoring/reporting.
Storage Resource Management (SRM) tools include configuration tools, provisioning tools and
measurement tools.
Configuration tools handle the set-up of storage resources. These tools help to organize
and manage RAID devices by assigning groups, defining levels or assigning spare drives.
Provisioning tools define and control access to storage resources for preventing a network
user from being able to use any other user’s storage.
Measurement tools analyse performance based on behavioural information about a storage
device. An administrator can use that information for future capacity and upgrade
planning.
CLOUD STORAGE
Storage system metadata is used by the cloud to offer basic storage functions like assigning,
modifying and access control.
UNIT – III
3 Cloud Computing and Security: Risks in Cloud Computing – Data Security in Cloud – Cloud
Security Services – Cloud Computing Tools: Tools and Technologies for Cloud – Cloud Mashaps –
Apache Hadoop – Cloud Tools
RISKS IN CLOUD COMPUTING
Cloud computing is recognized as the most widely used computing paradigm for the last few
years.
The most significant risks presented by cloud computing are: SLAs violations, proficiency to
amply consider risks of a cloud provider, blame to defend perceptive data, virtualization-related
risks, lessening of direct command of assets and software programs, compliance risks and decreased
reliability since service providers may proceed out of business.
The levels, from base to peak, are: infrastructure, storage, platform, application, services and
client.
Infrastructure: At the base is the infrastructure of the service or the platform virtualization. Users get
the server environment as they want. This is the rudimentary proposal, still clients need to handle the
server, all software programs installed and maintained on their own.
Storage: With the storage level, one can get a database or something similar and pay per gigabyte per
month. A storage level is nothing new or exceptional, except for the full stack of services. There are
some possibilities for storage. Examples are relational databases, Google’s BigTable and Amazon’s
SimpleDB.
Platform: The platform level has solution stacks, for example, Ruby on Rails, LAMP or Python
Django. A start-up organization need not deal with the setting up of server programs, or upgrade their
versions, because that comes with the service. They can aim on evolving and trading their
application.
Application: The application level comprises applications that are suggested as services. The most
well-known demonstrations are Salesforce.com and Google Docs, but there are hundreds and
thousands of genuine applications that can be bought as services.
Services: The services level comprises interoperable machine-to-machine procedures over the
network. The most common examples of this level is web services. Other examples encompass
payments schemes, for example, PayPal and mapping services such as Google Maps and Yahoo
Maps.
Client: At the peak of the stack is the consumer level, which comprises the users of the cloud
systems. Clients are, for example, desktop users and mobile users (Symbian, Android, iPhone). There
are possibilities for vendors to exit and adapt new services, and for clients to find new services and
applications to solve their problems.
However, there are some risks that clients need to understand. There are some points to address
before taking up cloud-based services.
Make sure that there is a straightforward means to get your data out of the service.
If something goes wrong with the service provider, for example, if servers break down, the
clientele cannot manage anything. For issues like this, it’s better to select a service provider who
caters similar sites.
Although cloud computing can offer small enterprises important cost-saving advantages, namely,
pay-as-you-go access to complicated programs and mighty hardware, the service does come with
certain security risks. While evaluating the promise of cloud-based service providers, one should
hold these top five security anxieties in mind.
1. Secure data transfer
2. Secure programs interfaces
3. Secure retained data
4. User access to control
5. Data separation
Cloud Computing Risks
Risk #1—The solution may not meet its economic objectives: Do the short-run and long-run
ROI work. The key components to address when considering cloud ROI risk likelihood
encompass utilization, speed, scale and quality.
Risk #2—The solution may not work in the context of the client enterprise’s association and
culture: This should encompass the establishment of a clear roadmap for procurement or
implementation of cloud services and applications that use them and coordination of
stakeholders and vying schemes to get agreement for storage, computing, mesh and
applications to bypass isles of demand usage.
Risk #3—The solution may be tough to evolve due to the adversity of incorporating the cloud
services involved: The service integration risk can be considered by contemplating interface
alteration cost, proficiency to change the existing system and available skills.
Risk #4—A catastrophe may occur from which the solution will not recover: As part of a risk
investigation, it should recognize the unplanned happenings that could damage and assess
their probabilities and impacts. One may also wish to make general provision for unforeseen
happenings that disturb the cloud services that use or impair the data.
Risk #5—System value may be insufficient, in order that it does not meet the users’ needs: The
value of an external service can be considered utilizing the identical components as for the
value of the solution. In addition, look at the track records of suppliers very carefully.
Risk #6—There may be an existing need for service orientation: Not having full-fledged SOA
isn’t inevitably strategic in itself when opting for cloud. But the incompetence to precede
methods from present interfaces and inherent applications to more agile cloud services could
actually mess up things. Finally it will make cloud more costly than leaving things as it is.
RISK MANAGEMENT
Risk management is a significant part of business planning. The method of risk management
is believed to reduce or eradicate the risk of certain types of happenings or having an influence on the
business.
Risk management is a method for recognizing, considering and prioritizing risks of distinct kinds.
Once the risks are recognized, the risk supervisor will conceive a design to minimize or eradicate the
influence of contradictory events.
There are several risk administration measures, encompassing those evolved by the Project
Management Institute, the International Organization for Standardization (ISO), the National
Institute of Science and Technology and societies.
There are numerous distinct kinds of risks that risk management designs can mitigate.
Risk Management in Cloud Computing
Google, Microsoft, IBM and all other renowned and unidentified cloud providers offer an
array of foremost cost saving options to the customary data centre and IT department.
45% of IT professionals believe the risks far outweigh the advantages and only 10% of those
reviewed said they would prefer going objective critical applications to the cloud.
Cloud computing is somewhat new in its present pattern, granted that, it is best directed to reduce
intermediate risk enterprise areas.
Don’t hesitate to inquire and if need be, enlist an unaligned conferring business to direct through
the process.
CLOUD IMPACT
Cloud’s Impact on IT Operations
Cloud computing has provided possibilities for organizations of all types to reduce the risks
affiliated to IT acquisition (software and hardware), in sync with enterprise desires and total costs.
Some have even developed their interior IT department from a reactive data centre to a more
proactive service consignment center.
As cloud computing starts to mature and hybrid clouds start to verify their enterprise worth,
organizations will aim more on taking up both public and personal cloud environments and having
them possibly work seamlessly together.
Threat #2—Insecure interfaces and APIs: Customers organize and combine with cloud
services through interfaces or APIs. Providers should double-check that security is incorporated into
their service forms, while users should be cognizant of security risks in the use, implementation, and
administration and monitoring of such services.
Threat #3—Vicious insiders: Vicious insiders represent a larger risk in a cloud computing
environment, since clients manage not have a clear outlook of provider principles and procedures.
Vicious insiders can gain unauthorized access into organizations and their assets.
Threat #4—Issues-related technology sharing: IaaS is based on distributed infrastructure,
which is often not conceived to accommodate a multi-tenant architecture. Overlooked flaws have
authorized visitors to gain unauthorized rights and/or leverage on the platform.
Threat #5—Data loss or leakage: Compromised data may encompass (i) deleted or changed
data without producing a backup, (ii) unlinking a record, (iii) decrease of an encoding key and (iv)
unauthorized access to perceptive data. The likelihood of data compromise considerably rises in
cloud computing, due to the architecture and operations. Examples of data loss/leakage include: (i)
insufficient authentication, (ii) authorization, (iii) review (AAA) controls, (iv) inconsistent
encryption, (v) inconsistent programs keys, (vi) operational flops, (vii) disposal challenges, (viii) risk
of association, (xi) jurisdiction/political issues, (x) persistence and trials, (xi) data centre reliability
and catastrophe recovery.
Threat #6—Hijacking (Account/Service): Account or service hijacking is generally carried
out with pilfered credentials. Such attacks encompass phishing, deception and exploitation of
programs vulnerabilities.
Threat #7—Unknown Risk Profile: Cloud services signify that organizations are less engaged
with hardware and software ownership and maintenance.
Data Loss
Cloud computing architecture presents larger trials in commanding and mitigating risks due
to its exclusive structure and operational attributes. Data in the cloud is prone to numerous risks, for
example, deletion of record, loss of encryption key and feeble encryption, corruption of data.
There is a large-scale inquiry when it comes to geographical position of data in the cloud
computing environment.
The data can be retained on numerous severs, in distinct positions, probably distinct towns, even
distinct homeland or continent.
Data security risks are aggregated by the open environment of cloud computing.
Accessibility of data is the basic concern in cloud-based systems.
If a system that presents improved accessibility and opens up the platform to multi-node access,
then client should take into account the risks associated with this advancement.
One way this can be done is by adding an element of control, in the pattern of access control, to
pay for risk mitigation for a platform.
Information-centric access can assist to balance advanced accessibility with risk, by associating
access directions with distinct data residing inside an open and accessible platform, without
mislaying the inherent usability of that platform
PARALLEL COMPUTING
It is obvious that silicon-based processor chips are available to their physical limits in processing
speed.
A viable answer to overwhelm this limitation is to attach multiple processors employed in
coordination with each other to explain large dispute problems.
Hence, high-performance computing needs the use of Massively Parallel Processing (MPP)
systems encompassing thousands of mighty CPUs.
A superior agent computing system constructed utilizing an MPP set is C-DAC’s PARAM
supercomputer.
At the end of this century, every-high performance system becomes a parallel computer system.
High-end computers will be the extraordinarily parallel processing systems including thousands of
processors that are interconnected.
To present well, these parallel systems need a functioning system fundamentally distinct from
present ones.
Most investigators in the area of functioning systems have discovered that these new functioning
systems will have to be much lesser than customary ones to accomplish the effectiveness and
flexibility needed.
ERAS OF COMPUTING
The most famous two eras of computing are the sequential and parallel eras. In the last 10
years, parallel machines have developed into a significant challenge to vector machines in the chase
for high-performance computing.
A 100-year broad outlook of development of computing eras is shown in Figure 24.1. The
computing era begins with a development in hardware architectures, pursued by system programs,
applications and coming to its saturation point with its development due to difficulty in
environments.
Every component of computing undergoes three phases: R&D, commercialization and
commodity.
Figure 24.1 Two Eras of Computing
Cloud computing refers to both the applications consigned as services over the Internet and
the hardware and systems programs in the data hubs that supply those services.
When a cloud is made accessible in a pay-as-you-go kind to the general public, it can be
called as a public cloud, and the service being traded is utility computing. Cloud computing is the
addition of SaaS and utility computing.
Infrastructure services (infrastructure-as-a-service) supplied by cloud vendors permit any
client to use a large number of compute examples effortlessly by utilizing the virtual assets to present
data/compute-intensive works.
PROGRAMMING IN CLOUD
Cloud computing comprises of two aspects of meaning, to recount the rudimentary platform
amenities and, on the other hand, to construct applications on this platform.
First, a cloud computing–based platform for programming is built. There are numerous programs
which can be utilized to construct a basis for cloud computing platform programming.
MapReduce Distributed Programming
MapReduce is a mighty distributed programming procedure, which is furthermore a function of
dialect form utilized to deal with huge data groups and in which only two functions are provided:
Map and Reduce.
Map function presents a dedicated procedure for each data item set and comes back as a new data
set after disposing of the project. In a data item set, a Reduce function gets implementation of the aim
procedure in the data piece sets.
Chubby
Chubby is a highly accessible, distributed data secure service. When any machine falls short,
Chubby double-checks the consistency of the backup utilizing the Paxos algorithm.
Each unit in little distributed document systems of Chubby can be utilized to supply secure
services.
Currently, this language is mostly utilized on the basis of Google’s cloud computing
platform.
Hadoop and PIG language are constructed on top of Hadoop Project and is a kind of open-
source implementation for programs model.
Dryad and DryadLINQ
Dryad and DryadLINQ, created by Microsoft Research Silicon Valley, are created to supply a
distributed computing platform. In recent years, this platform has been broadly utilized internally at
Microsoft, and specifically utilized on Microsoft’s own cloud computing platform Azure.
Dryad is developed for extending the computing platforms of all dimensions, from single-core
computers, to small cluster of the composition of a multiple computers and then to having data hubs
comprised of thousands of computers. The aim of DryadLINQ is to supply a high-level language
interface, for programmers to effortlessly convey large-scale distributed computing.
Dryad can develop distributed operations performed on Dryad engines and is responsible for self-
acting parallel processing of the jobs and sequence of functions required when data is delivered.
Programming of Dynamics Languages
Computing assets can extend dynamically as asserted by the dimensions of the task, since a
computing platform has a solid high expansion flexibility and platform abstraction.
As an outcome, programs can run without being influenced by the influence of infrastructure
change.
The fast and well-inspired way for enterprise applications is to use the programming
procedure of dynamic language.
Therefore, not only can the code created by dynamic language be established to achieve
enterprise applications in the Cloud’s Client, but cloud projects accomplished by dynamic languages
can also be discovered in parts of cloud infrastructure.
MASHUPS
‘Mashup’ is the word with a different context and has different meanings in different places.
Mashups use API software (application programming interface) to combine one or more website
elements.
A cloud mashup is simply an instance of a web-based mashup, but the application content
resides in the cloud. Cloud mashups can be understood based on its differing scopes and relies on
their real purpose
Examples are given as follows:
In terms of music, a mashup is a composition or a song developed by adding more than one
song.
In terms of cinematography, a video mashup is a collection of multiple video sources.
In terms of digital production, a digital mashup is a media file containing text, audio,
graphics and video taken from existing sources to develop a new work.
Mashups stands on the basic concept of data and services integration. To function in this way,
combination, aggregation and visualization are three main primitives:
1. Combination collects data from heterogeneous sources, uses it among the same application.
2. Aggregation operates on collected data having a measure and builds new information using
the obtained data.
3. Visualization is used to integrate data in a diagram way using maps or by using other
multimedia objects.
APACHE HADOOP
INTRODUCTION
Hadoop is creating worth for enterprises, organizations and individuals. With its proficiency to
unlock value from data, Hadoop is quickly being adopted by enterprises in effectively all parts and
industries.
Hadoop is a quickly developing ecosystem of constituents for developing the Google MapReduce
algorithms in a scalable hardware.
Hadoop endows users to store and use large volumes of data and investigate it in ways with less
scalable solutions or benchmark SQL-based approaches.
Hadoop is a highly scalable compute and storage platform. Hadoop is an open-source
implementation of Google MapReduce, encompassing a distribute file system.
WHAT IS HADOOP?
Hadoop is a sub-project of Lucene, under the Apache Software Foundation.
Hadoop parallelizes data processing over numerous nodes (computers) in a compute cluster, racing
up large computations and concealing I/O latency through improved concurrency.
Hadoop is particularly well-suited to large data processing jobs (like seeking and indexing). It can
also leverage its distributed file system at a reduced cost and reliably duplicate chunks of data to
nodes in the cluster, producing data accessible in the local area on the appliance that is processing it.
To the application programmer Hadoop presents the abstraction of map and reduce. Map and
reduce are accessible in numerous languages, for example, Lisp and Python.
Map and Reduce
The MapReduce paradigm takes idea from the map and it reduces programming constructs
widespread in abundant programming languages.
CHALLENGES IN HADOOP
Deployment of the servers and programs is an important concern with all large environments.
These best practices are applied through a set of tools to automate the configuration of the hardware,
set up the OS and set up the Hadoop programs stack from Cloudera.
As with numerous other kinds of data expertise (IT) solutions, change administration and system
supervising are a prime concern inside Hadoop.
The IT procedures desire to double-check tools in correct place and apply alterations and notify
employees when unforeseen happenings take place inside the Hadoop environment.
Hadoop is a certainly increasing, convoluted ecosystem of programs and presents no guidance to
the best stage for it to run on.
Hadoop environment and will change over time as job structure alterations, data layout
developments and increased data capacity.
Hadoop Nodes
Hadoop has nodes inside each Hadoop cluster. They are DataNodes, NameNodes and
EdgeNodes. Names of these nodes can change from location to location, but the functionality is
widespread over the sites. Hadoop’s architecture is modular, permitting individual constituents to be
levelled up and down as the desires of the environment change. The base nodes for a Hadoop cluster
are as follows:
NameNode: The NameNode is the centred position for data about the file system
established in a Hadoop environment.
DataNode: DataNodes make up the most of the servers comprised in a Hadoop
environment. The DataNode assists two functions: It comprises a piece of the data in the
Hadoop Distributed File System (HDFS) and it actions as a compute stage for running
occupations, some of which will utilize the localized data inside the HDFS.
EdgeNode: The EdgeNode is the access point for external applications, devices and users
that require utilizing the Hadoop environment. The EdgeNode is seated between the
Hadoop cluster and the business mesh to supply access to command, principle
enforcement, logging and entrance services to the Hadoop environment.
Hadoop was initially evolved to be an open implementation of Google MapReduce and Google
File System.
MAPREDUCE
The Internet presents an asset for amassing tremendous amount of data, often beyond the
capability of individual computer disks and too large for processing with a single CPU.
Google’s MapReduce, constructed on peak of the distributed Google File System, presents a
parallelization structure which has garnered substantial acclaim for its ease-of-use, scalability and
fault-tolerance.
The achievement at Google provoked the development of the Hadoop task, an open-source attempt
to duplicate Google’s implementation, hosted as a sub-project of the Apache Software Foundation’s
Lucene seek motor library. Hadoop is still in early phases of development.
MapReduce Programming Model
MapReduce is a programming model and an affiliated implementation for processing and
developing large data sets.
A Map function is created by users, which contains key/value pair and they build an intermediate
set of same pairs. A function called reduce merges all intermediate values with the same pairs. Many
genuine world jobs are expressible in this model.
Programs written in this purposeful method are automatically parallelized and performed on a
large cluster of machines.
The run-time system takes care of the minutia of partitioning the input data, arranging the
program’s execution over a set of machines, managing machine failures and organizing the needed
inter-machine communication.
This permits programmers with aligned and distributed systems to effortlessly utilize the assets of
a large distributed system.
The computation takes a set of input key/value in pairs and makes a set of output key/value pairs.
The client of the MapReduce library expresses the computation as two functions:
CLOUD TOOLS
VMWARE
VMware, Inc. is a company providing virtualization software, evolved in 1998. The company was
acquired by EMC Corporation in 2004 and functions as a distinct software subsidiary.
VMware’s desktop software sprints on Microsoft Windows, Linux and Mac OS-X, while
VMware’s enterprise software hypervisors for servers, VMware ESX and VMware ESXi and are
bare-metal embedded hypervisors that run exactly on server hardware without needing an added
inherent functioning system.
VMware software presents an absolutely virtualized set of hardware to the visitor functioning
system. It virtualizes the hardware for a video adapter, a mesh adapter and hard computer disk
adapters.
The host presents pass-through drivers for quest USB, serial and parallel devices. In this way, the
VMware virtual machine becomes highly portable between computers, because every host examines
almost equal to the guest.
VMware supports:
Desktop software consisting of:
VMware workstation
VMware fusion
VMware player
In the server software
VMware markets two virtualization products for servers: VMware ESX and
VMware ESXi.
The VMware server is furthermore supplied as freeware for non-commercial use,
like VMware player, and it is likely to conceive virtual machines with it. It is a
‘hosted’ application, which sprints inside an existing Linux or Windows OS.
The cloud management software consists of:
VMware vCloud
VMware Go
EUCALYPTUS
For Linking Your Programs To Useful Systems can use Elastic Utility Computing
Architecture is the GPL-licensed software which presents tooling to create and organize a private
cloud that can even be accessed as a public cloud.
It is a compatible platform for Amazon EC2 and S3 storage. It makes its services accessible
through EC2/S3 compatible APIs. Features in it are:
Interface compatibility with EC2
Simple setting up and deployment utilizing rocks
Simple set of extensible cloud share policies
Overlay functionality needing no modification into the Linux environment
Basic administrative tools for system administration and client accounting
Configuring multiple clusters with private mesh locations into a single cloud
Portability
Eucalyptus was initially developed to supply an inexpensive, extensible and straightforward
platform to establish open source cloud structure for the world of academia. It was developed by
computer researchers and scientists requiring elastic compute resources.
Components of Eucalyptus
Eucalyptus has three foremost components:
1. Cloud controller (CLC): Comprises the front-end services and the Walrus storage system.
2. Cluster controller (CC): Gives support for the virtual mesh overlay.
3. Node controller (NC): Interacts with VT to classify individual VMs.
The two constituents are utilized for storage administration:
1. Storage controller (SC): Presents continual impede storage for the instances.
2. Walrus storage controller (WSC): Presents continual and straightforward storage service.
Node Controller (NC)
The NC is accountable for executing a task on the private resources that host VM instances such as
launch, check shutdown and clean-up. A Eucalyptus cloud may comprise of some node controllers.
NC is a virtual fatal endowed server capable of running Kernel-based virtual machine (KVM) as
the hypervisor. The VMs running on the hypervisor are controlled by the instances.
The node controller interacts with the operating system and the hypervisor running on the node,
while on the other hand it furthermore interacts with the cluster controller (CC).
NC queries the OS on the node to find out the node’s resources. They are a number of cores,
memory and disk space. NC furthermore monitors the state of the VM instances running on the node
to propagate this data to the CC.
Cluster Controller (CC)
The CC is responsible for managing an assemblage of NCs (cluster) that work together. The
CC has access to both the private and public systems and is generally established on the cluster’s
head node or front-end server.
The CC supervises the state data of all instances in the pool of NCs and coordinates the
incoming input requests flow.
Walrus Storage Controller (WS3)
WS3 is a continual and straightforward storage service. WS3 uses REST and SOAP APIs, which
are compatible with S3 API.
Its features are:
Store machine images
Store snapshots
Store and serve documents utilizing S3 API
It should be considered as a straightforward file storage system.
Storage Controller (SC)
It presents continual impede storage for the instances. It resembles like elastic block storage
service from Amazon.
It creates and organizes continual impede storage devices.
It creates snapshots of volumes.
Cloud Controller (CLC)
Incoming demands from external clients or administrators are processed by CLC.
CLC is responsible for handling demands. Each Eucalyptus cloud will have a distinct CLC. It is
the user-visible entry point and decision-making constituent that makes high-level VM instances
scheduling conclusions, process authentication and sustains continual system and client metadata.
CLC is the front end to the whole cloud infrastructure.
It presents EC2/S3 compliant web services interface to the client tools and interacts with other
constituents of the Eucalyptus infrastructure. Its features are:
Monitoring resources of the cloud infrastructure
Resource arbitration
Monitoring running instances
CLC has comprehensive information of the state of the cloud with esteem to accessibility and usage
of resources primarily.
CLOUDSIM
Cloud computing is the expertise which delivers dependable, protected, fault-tolerant, sustainable
and scalable computational services.
Moreover, these services are suggested in private data hubs (private clouds), commercially
suggested for clients (public clouds), or yet it is likely that both public and private clouds are blended
in hybrid clouds.
The very high demand for energy-efficient IT technologies, and controllable methodologies for
evaluation of algorithms, applications, and principles, made hard-hitting in development of cloud
products.
An alternate is the utilization of replication devices, which open the likelihood of assessing the
hypothesis prior to the software’s development in an environment where one can duplicate tests.
Specifically in the case of cloud computing, where access to the infrastructure acquires payments
in currency, simulation-based advances offer important benefits. It permits cloud clients to check
their services free of cost in a repeatable and controllable environment.
The prime objective of the CloudSim project is to supply a generalized and extensible replication
structure that endows seamless modelling, replication and experimentation of cloud computing
infrastructures and application services.
By utilizing CloudSim, investigators and industry-based developers can aim at the exact system
design issues that they desire to enquire, without getting worried about the reduced level associated
to cloud-based infrastructures and services. CloudSim is driven by jProfiler.
CloudSim functionalities are as follows:
Support for modelling and replication of large-scale cloud computing data centres.
Support for modelling and replication of virtualized server hosts, with customizable
principles for provisioning host assets to virtual machines.
Support for modelling and replication of energy-aware computational resources.
Support for modelling and replication of data centre mesh topologies and message-passing
applications.
Support for modelling and replication of federated clouds.
Support for dynamic insertion of replication components, halt and restart of simulation.
Support for user-defined principles for share of hosts to virtual appliances and principles
for share of owner assets to virtual machines.
OPENNEBULA
OpenNebula is actually the premier and most sophisticated structure for cloud computing. It is
exceedingly straightforward to setup.
Furthermore, it is flexible, extensible and with very good presentation and scalability to organize
tens of thousands of VMs, Private cloud with Xen, KVM and VMware.
Cloud computing arrives and aims only when there is a requirement to boost capability or add
capabilities on the go without buying new infrastructure, training new staff or authorizing new
software.
Cloud computing supports subscription-based or pay-per-use service that, with time over the
Internet, expands IT’s existing capabilities.
A cloud service has three different characteristics that make a distinction from custom hosting.
It is traded on demand, normally by the minute or the hour, it is elastic, that is, a client can have as
much or as little service as they desire at any granted time, and the service is completely organized
by the provider.
Significant innovations in virtualization and distributed computing advanced access to high-speed
Internet and accelerated concern in cloud computing.
OpenNebula is a completely open-source toolkit to construct IaaS private, public and hybrid
clouds.
An OpenNebula private cloud presents infrastructure with an elastic stage for very fast
consignment and scalability of services to rendezvous dynamic claims of service end users.
OpenNebula does the following:
Management of the network, computing and storage capacity
Management of VM life-cycle
Management of workload placement
Management of virtual networks
Management of VM images
Management of information and accounting
Management of security
Management of remote cloud capacity
Management of public cloud servers
NIMBUS
Nimbus is an open-source toolkit concentrated on supplying infrastructure as a service (IaaS). It
provides capabilities to the scientific community. To accomplish it focuses on three goals:
Enables asset providers to construct personal and community IaaS cloud.
Enables users to use IaaS clouds.
Enables developers to continue, trial and customize
IaaS. Major features are as follows:
Open source IaaS: Nimbus presents a 100% freely accessible and open source
infrastructure as a service (IaaS) system. Every characteristic that a community develops is
freely accessible and there are no add-on or improvement costs.
Storage cloud service: Cumulus is a storage cloud service that is matching with the S3
REST API. It can be utilized contrary to numerous existing purchasers (boto, s3cmd, jets3t,
etc.) to supply data storage and transfer services.
EC2 based clients are capable of utilizing Nimbus installations. Both SOAP API and the
REST API have been applied in Nimbus. S3 REST API clients can also be utilized for
organizing VM storage with the Nimbus system.
Easy to use cloud client: The workspace cloud client permits authorized clients to get
access to numerous workspace service characteristics in a client amicable way. It is
conceived to get users up and running in a time-span of minutes, even from laptops, NATs,
etc. The workspace cloud client supports for storing data in cloud also acts as IaaS. Even
the uninitiated finds this completely incorporated device so straightforward to use.
Per-user storage quota: Cumulus (the VM likeness repository supervisor for Nimbus) can
be configured to enforce per client storage usage limits.
Easy client management: New in Nimbus 2.5 are a set of client administration tools that
make administering a Nimbus cloud considerably easier. The tools are both straightforward
to use and scriptable.
SUMMARY OF UNIT IV
Cloud computing is identified as the most widely used computing paradigm for the last few years. It’s
currently a true change for the Information and Communications Technology.
There are mainly two kinds of cloud providers: Cloud Service Providers (CSP) and Cloud Infrastructure
Providers (CIP).
Levels in cloud computing are: infrastructure, storage, platform, application, services and client.
When assessing with cloud service providers, these peak five security anxieties are to be checked: (i)
secure data transfer, (ii) secure programs interfaces, (iii) secure retained data, (iv) user access to control
and (v) data separation.
The method of risk administration is to reduce or eradicate the risk of certain types of happenings or
having an influence on the business.
Cloud computing has made it possible for organizations of all types to reduce the risks affiliated with IT
acquisition (software and hardware), elaborate in sync with enterprise desires and comprise costs.
Risk can be defined as ‘the likelihood of loss or wound, an unsafe component or component, or an
exposure to hazard or danger’.
Risk management process includes, (i) determination of objectives, (ii) identification of the risks, (iii)
evaluation of the risks, (iv) consideration of alternatives and selection of risk treatment, (v) implement of
the decision and (vi) evaluation and review.
Enterprise Risk Management (ERM) encompasses the procedures and methods utilized by organizations
to organize risks and grab opportunities to accomplish their objectives.
Types of risks in cloud computing are (i) misuse and illicit use of cloud computing, (ii) insecure
interfaces and APIs, (iii) vicious insiders, (iv) issues-related technology sharing, (v) data loss or leakage,
(vi) hijacking (account/service) and (vii) unknown risk profile.
Cloud computing has flexibility, as it outsources the services. This property adds risks, because of
malicious intents who can make the unauthorized persons to login into the system.
Cloud computing technologies can be utilized as a platform for commencing attacks, hosting
spam/malware, programs exploits, and for numerous other unethical reasons.
Cloud computing architecture presents larger trials in commanding and mitigating risks due to its
exclusive structure and operational attributes.Cloud computing is a development that is intended to permit
more open accessibility and simpler and advanced data sharing.
Data is uploaded upon a cloud and retained in a data centre for access by users from that data centre, or in
a fully cloud-based model.
Access becomes much more basic concern in cloud-based schemes because of the accessibility of the
data.
Information-centric access can assist to balance advanced accessibility with risk, by associating access
directions with distinct data residing, without mislaying the inherent usability of that platform.
Contrary to customary computing paradigms, in a cloud computing environment, data and application are
controlled by the service provider.
IaaS, PaaS and SaaS are three general forms of cloud computing. Each of these forms have distinct
influence on application security.
Cloud computing environment is usually presumed as a reasonable solution as well as provider of higher
service quality.
Security, availability and reliability are the foremost value anxieties of cloud service users.
Key security benefits of a cloud computing environment are (i) data centralization, (ii) incident response,
(iii) forensic image verification time and (iv) logging.
Key security issues are (i) investigation, (ii) data segregation, (iii) long-term viability, (iv) compromised
servers, (v) regulatory compliance, (vi) recovery.
Cloud computing boasts private and organization a much more fluid and opens way of broadcasting
information.
Cloud computing is a platform for conceiving the digital matching of this fluid, human-to-human data
flow, which is a sure thing that internal computing systems have not yet achieved.
In the context of computing, the terms security, privacy and trust may seem one and same but have
distinct meanings.
CLS evolved to meet the marketplace demands and propelled by the wishes of customer institutions.
Content level security endows organizations to organize data and content at the organizational level,
rather than at the institutional level.Cloud computing has become a foremost technology development in
IT. Enterprises started adopting it because of the changes it does to maximize the return on investment.
Confidentiality refers to limiting data access only to authorized users, and stopping access to unauthorized
ones.
Confidentiality double-checks that the data is accessible only to those authorized to have access, despite
of where the data is retained or how it is accessed.
Maintaining data integrity is absolutely crucial to the privacy, security and reliability of enterprise data.
Integrity of data can be compromised by malicious users, hackers, programs mistakes, computer virus,
hardware constituent errors and by human error while moving data.
Availability option is double-checking that the authorized users have got access to data.
Data backups are an absolutely crucial part of data security and an organization should be able to
refurbish data when there is data corruption or hardware failure.
Virtualization and cloud computing lend larger flexibility and effectiveness by giving you the proficiency
to proceed servers and add or eliminate assets as required to maximize the use of systems and reduce
expenses.
Testing all the levels from the application to the cloud service provider appears that the tester will have to
become effective in program testing.
Cloud-based testing is a means for organizations to discover the cloud and lower the charges of testing at
the same time.
Cloud tools are a set of tools for establishing, organizing and testing Java EE applications on elastic
computing cloud owned by Amazon.
PushToTest Test Maker is a distributed testing environment that can run tests on test gear or in a cloud
computing environment.
Cloud computing is the newest large-scale system to strike the IT companies and it is beginning to make
swell on the software testing services front.
Software testing companies no longer have to integrate large infrastructure charges into their yearly
budgets. Cloud computing reduces all responsibilities to prepare and upkeep that turns out to be the
responsibility of the cloud vendor.
High performance computing needs the use of Massively Parallel Processing (MPP) systems
encompassing thousands of mighty CPUs.
The most famous two eras of computing are the (i) sequential and (ii) parallel eras.
Cloud computing refers to both the applications consigned as services over the Internet and the hardware
and systems programs in the data hubs that supply those services.
Cloud technologies for HPC are Hadoop, Dryad and CGL-MapReduce.
Cloud technologies like Google MapReduce, Google File System, Hadoop and Hadoop Distributed File
System, Microsoft Dryad and CGL-MapReduce take a more data-centred set regarding two parallel
runtimes.
Services in the cloud can be grouped into three categories: (i) Software as a Service (SaaS), (ii) attached
services and (iii) cloud platforms.
Development tools are another significant part in platforms. Modern tools assist developers in
constructing applications utilizing the components of an application platform.
On-premises platform is split into two very broad categories: (i) packaged applications and (ii) custom
applications.
Cloud computing platforms are (i) Abicloud Cloud Computing Platform, (ii) Eucalyptus Cloud Platform,
(iii) Nimbus Cloud Computing Platform and (iv) OpenNebula Cloud Computing Platform.
Distributed computing is a by-product of Internet. Distributed development is global development, which
adds its own trials with collaboration and code management.
Git and subversion are two tools broadly utilized in distributed environments.
There are eight key components to address when constructing an internal or external compute cloud: (i)
shared infrastructure, (ii) self-service automated portal, (iii) scalable, (iv) rich application container, (v)
programmatic control, (vi) 100% virtual hardware abstraction, (vii) strong multi-tenancy and (viii)
chargeback.
Hadoop is an open source program that endows distributed processing of large data over inexpensive
servers.
Hadoop is creating worth for enterprises, organizations and individuals.
The MapReduce paradigm takes idea from the map and it reduces programming constructs widespread in
abundant programming languages.
The Hadoop environment and will change over time as job structure alterations, data layout developments
and increased data capacity.
Hadoop has nodes inside each Hadoop cluster. They are DataNodes, NameNodes and EdgeNodes.
The Hadoop Distributed File System (HDFS) is a distribute file system conceived to run on hardware.
Hadoop is furthermore designed to effectively distribute large amounts of work over a set of machines.
Hadoop presents no security model, neither safeguards contrary to maliciously injected data.
Hadoop is developed to be an effective method for large volumes of data by connecting numerous
computers to work in parallel.
VMware’s desktop software sprints on Microsoft Windows, Linux and Mac OS-X.
VMware software presents an absolutely virtualized set of hardware to the visitor functioning system.
Eucalyptus was initially developed to supply an inexpensive, extensible and straightforward platform to
establish an open source cloud structure for the world of academia.
Components of Eucalyptus are (i) cloud controller (CLC), (ii) cluster controller (CC), (iii) node controller
(NC), (iv) storage controller (SC) and (v) Walrus storage controller (WSC).
The NC is accountable for executing a task on the private resources that host VM instances such as
launch, check shutdown and clean-up.
The CC is responsible for managing an assemblage of NCs (cluster) that work together.
WSC presents a continual and straightforward storage service. WSC uses REST and SOAP APIs, which
are compatible with S3 API.
SC presents continual impede storage for the instances. It creates and organizes continual impede storage
devices and snapshots of volumes.
Incoming demands from external clients or administrators are processed by CLC. CLC is responsible for
handling demands.
Cloud computing is the expertise which delivers dependable, protected, fault-tolerant, sustainable and
scalable computational services.
The objective of the CloudSim project is to supply a generalized and extensible replication structure that
endows seamless modelling, replication and experimentation of cloud computing infrastructures and
application services.
OpenNebula is actually the premier and most sophisticated structure for cloud computing.
OpenNebula is a completely open-source toolkit to construct IaaS private, public and hybrid clouds.
Nimbus is an open-source toolkit concentrated on supplying infrastructure as a service (IaaS).
UNIT – V
Cloud Applications – Moving Applications to the Cloud – Microsoft Cloud Services – Google Cloud
Applications – Amazon Cloud Services – Cloud Applications
MOVING APPLICATIONS TO THECLOUD
CLOUD OPPORTUNITIES
Cloud computing presents an opening for business discovery and supplies platform to turn IT
into a more productive and responsive business service.
Ensuring on-demand access to pools of trusted infrastructure and services, cloud pledges to
de-couple business plans from the IT capabilities driving by them. For IT, it entails some basic re-
structuring and re-skilling.
For enterprise, it entails potential transformation in the speed, flexibility, effectiveness,
competitiveness and discovery of organizations.
Some of the cloud possibilities are listed in the following text.
Cloud for cost reduction: Under the pressure to decrease the cost of procedures, organizations of all
dimensions anticipate their IT to consign more worth for less expense.
By eradicating up-front spend on IT and supplying IT capability on pay-per-use, cloud
promises to restructure the IT budget, moving key applications and services to multi-tenancy
architectures.
Cloud for enterprise growth: Cloud permits organizations to quickly and effortlessly scale up their
procedures to support enterprise goals, in-terms of:
Expanding into new markets
Attracting and keeping new clients
Executing the amalgamation and acquisition system or racing up time-to-market for new
goods and services
Cloud for fast innovation: Cloud promises a spectacular change in the enterprises by endowing fast
innovation. Cloud eliminates obstacles for larger collaboration while lowering the risk and cost of
both going into new markets experimenting and checking new goods and services.
Cloud for enterprise agility: Cloud computing with its flexible infrastructures and on-demand
charging is a beginning to reset the anticipations for IT business. It presents the opening for IT to be
re-cast as an enabler of enterprise agility other than an inhibitor of enterprise change.
Cloud possibilities will be in three forms. Vendors hoping to find sales should aim on three
categories:
1. Working out an organization’s cloud system
2. Endowing an organization’s readiness to proceed to the cloud
3. Applying a cloud-based solution.
Batch processing applications: One kind of application that polishes in the cloud is the batch
processing application, for example, a data warehouse. As long as the data required is accessible into
the cloud without disturbing the procedures, the proficiency to quickly scale capability in the cloud
can result in marvellous savings.
CLOUD DESKTOP
Access anywhere, everywhere, anytime: Cloud Desktops presents completely purposeful,
person-alizable and continual desktops without the cost and complexity affiliated with getting
hardware, configuring OS or constructing Virtual Desktop Infrastructures (VDI). Cloud Desktops
provides protected and dependable access to desktops in the cloud from any client device.
Personalized and persistent: Cloud Desktops is neither distributed nor temporary.
Personalize the desktops required and add the applications needed. The desktop, data and
personalization are with us until we delete it.
Inexpensive and hassle-free: Cloud Desktops is accessible for $20 a month. Pay no up-front
charges and you are not locked into any long-term contracts.
Secure and reliable: Cloud Desktops is constructed on Amazon EC2, which commits to
99.95% accessibility and presents ways for protecting hosted desktops. In addition, it simplifies and
protects the cloud desktop login utilizing an encrypted, single-use token to authenticate users into
their desktops.
Easy to manage: Cloud Desktops Web interface provides easy designing, imaging, deleting
and tracking desktop usage in the cloud environment. One can organize multiple users, each with
their own individual desktops.
SCIENTIFIC APPLICATIONS IN THE CLOUD
Scientific computing engages the building of mathematical models and numerical solution
methods to solve technical, scientific and technology problems.
These models often need a huge number of computing assets to present large scale experiments or
to slash down the computational complexity in a sensible time frame.
These desires have been primarily addressed with dedicated high-performance computing (HPC)
infrastructures, for example, clusters or with a pool of networked machines in the same
department, organized by some ‘CPU cycle scavenger’ software like Condor.
With the advent of Grid computing, new possibilities became accessible to researchers that could
offer on demand large experiments.
Computing Grids introduced new capabilities like the dynamic breakthrough of services and
finding the best set of machines meeting the obligations of applications. The use of Grids for
technical computing has become so thriving that numerous worldwide tasks led to the
establishment of worldwide infrastructures accessible for computational science.
Cloud computing can address numerous of the aforementioned problems. By using virtualization
technologies, cloud computing boasts end-users a variety of services covering the whole
computing stack, from hardware to application level. Another significant feature is that
researchers can take advantage in terms of scaling up and scaling down the computing
infrastructure as asserted by the application obligations and the budget of users.
By utilizing Cloud-founded technologies, researchers can have a straightforward access to large
distributed infrastructures and will customize their execution environment. Moreover, by leasing
the infrastructure on a pay per use basis, they can have direct access to needed assets and are free
to release them when no longer needed.
Aneka is a Cloud platform for growing applications that can be climbed onto via harnessing the
CPU of virtual resources, desktop PCs and clusters. Its support for multiple programming models
presents researchers with distinct choices for expressing the reasoning of their applications: bag of
tasks, distributed threads, dataflow or MapReduce.
The Service-oriented architecture presents users with an exceedingly customizable infrastructure
that can rendezvous the desired quality of service for applications.
Clouds are therefore appearing as a significant class of distributed computational assets, for both
data-intensive and compute-intensive applications.
Build Repeatable IP
Faster deployment
Migrate solutions to the cloud
Scale users
Faster, less costly testing
Extended and customized cloud offerings
Google’s domain is constructed on the World Wide Web advertising. In 2010, 96% of its $29
billion income came from online ads.
Google deals subscriptions to enterprises, applying its web know-how to market
conventionally controlled by a very distinct kind of Software Company.
In September 2009, Gmail was offline for 1 hour 40 minutes. Users over the globe were
unable to access the service after the company made a mistake when updating the demand to routers
that direct queries to Gmail’s web servers.
The occurrence pursued a sequence of other, lesser Gmail outages, but Google habitually
contended that, in evaluation to client-server e-mail systems, the service was far more reliable.
Nearly a year and a half on, the contention retains up. Like Google’s search engine, Google
Apps is constructed atop a highly distributed infrastructure that disperses both data and code over
myriad servers and data centres.
CLOUD APPLICATIONS
Major companies encompassing Amazon, Google, IBM, Sun, Cisco, Dell, HP, Intel, Novell
and Oracle have bought into cloud computing and offer persons and enterprises a variety of cloud-
based solutions.
CLOUD-BASED SOLUTIONS
Social Networking
Perhaps the most well-renowned use of cloud computing, which does not hit persons as ‘cloud
computing’ at the start glimpse is communal networking websites, encompassing Facebook,
LinkedIn, MySpace, Twitter and numerous others. The major concept of communal networking is to
find persons you currently understand or persons you would like to understand and share your data
with them.
E-mail
Some of the large-scale cloud computing services are web-based e-mail. Using a cloud computing
e-mail answer permits the mechanics of hosting an e-mail server and alleviates in sustaining it.
Document/Spreadsheet/Other Hosting Services
Just like Google Docs, several services like Zoho Office live on the internet permit us to hold and
edit articles online.
By managing so, the articles will be accessible from any location and one can share the articles
and cooperate on them. Multiple persons can work in the identical article simultaneously. A new
online task administration device, Onit, is for ‘anyone, who organizes projects: large-scale, little,
enterprise, legal’.
Yahoo’s Flickr and Google’s Picasa offer hosting for photos that can be distributed with
associates, family and the world. People can comment on the photos, much like they can on
Facebook, but these focused photograph-hosting services offer some perks for the photographers.
SUMMARY OF UNIT V