SlideShare ist ein Scribd-Unternehmen logo
1 von 180
Downloaden Sie, um offline zu lesen
CLOUD COMPUTING CS & BCA
1 A. SIVASANKARI , SIASC.
CLOUD COMPUTING
DEPARTMENT OF COMPUTER SCIENCE AND COMPUTER APPLICATIONS
Ms. A. SIVASANKARI
ASSISTANT PROFESSOR
DEPT OF COMPUTER APPLICATIONS
SHANMUGA INDUSTRIES ARTS AND SCIENCE COLLEGE,
TIRUVANNAMALAI,
606601.
Dr. M. SOBIA
ASSISTANT PROFESSOR
DEPT OF COMPUTER APPLICATIONS
DONBOSCO COLLEGE
TIRUPATTUR.
Mr. R. RAJESH BABU
TEACHER
GOVT GIRLS HIGHER SEC SCHOOL,
VILLUPURAM.
CLOUD COMPUTING CS & BCA
2 A. SIVASANKARI , SIASC.
SYLLABUS
CLOUD COMPUTING
Objective:
To enable the students to learn the basic functions, principles and concepts of cloud Systems.
UNIT I: UNDERSTANDING CLOUD COMPUTING
Cloud Computing – History of Cloud Computing – Cloud Architecture – Cloud Storage –
Why Cloud Computing Matters – Advantages of Cloud Computing – Disadvantages of Cloud
Computing – Cloud Services.
UNIT II: DEVELOPING CLOUD SERVICES
Types of Cloud Service Development – Software as a Service – Platform as a Service –
Web Services – On-Demand Computing – Discovering Cloud Services Development Services
and Tools – Amazon Ec2 – Google App Engine – IBM Clouds.
UNIT III: CLOUD COMPUTING FOR EVERYONE
Centralizing Email Communications – Collaborating on Schedules – Collaborating on
To-Do Lists – Cloud Computing for the Community – Collaborating on Group Projects and
Events.
UNIT IV: PROGRAMMING MODEL
Parallel and Distributed Programming Paradigms – Map Reduce, Twister and Iterative
Map Reduce – Hadoop Library from Apache – Mapping Applications - Programming Support -
Google App Engine, Amazon AWS - Cloud Software Environments -Eucalyptus, Open Nebula,
Open Stack, Aneka, CloudSim.
UNIT V: SECURITY IN THE CLOUD
Security Overview - Cloud Security Challenges and Risks - Software-as-a-Service
Security- Security Governance - Risk Management - Security Monitoring - Security Architecture
Design - Data Security - Application Security - Virtual Machine Security - Identity Management
and Access Control - Autonomic Security.
CLOUD COMPUTING CS & BCA
3 A. SIVASANKARI , SIASC.
TEXT BOOK:
1. Michael Miller, “Cloud Computing: Web-Based Applications That Change the Way You
Work and Collaborate Online”, Que Publishing, August 2008.
REFERENCES:
1. Kai Hwang, Geoffrey C Fox, Jack G Dongarra, “Distributed and Cloud Computing, From
Parallel Processing to the Internet of Things”, Morgan Kaufmann Publishers, 2012.
2. John W.Rittinghouse and James F.Ransome, “Cloud Computing: Implementation,
Management, and Security”, CRC Press, 2010.
3. Toby Velte, Anthony Velte, Robert Elsenpeter, “Cloud Computing, A Practical
Approach”, TMH, 2009.
4. Kumar Saurabh, “Cloud Computing – insights into New-Era Infrastructure”, Wiley India,
2011.
5. George Reese, “Cloud Application Architectures: Building Applications and
Infrastructure in the Cloud” O'Reilly .
6. Arshdeep Bahga, Vijay Madisetti, “Cloud Computing - A Hands-On Approach”,
CreateSpace Independent Publishing Platform; 1 edition (December 9, 2013)
7. Barrie Sosinsky,”Cloud Computing Bible”, John Wiley & Sons,2010
8. Rajkumar Buyya, James Broberg, Andrzej M. Goscinski, “Cloud Computing:
Principles and Paradigms”, John Wiley & Sons. ,2010.
9. Rajkumar Buyya, Christian Vecchiola , S. ThamaraiSelvi, “Mastering Cloud
Computing “ Morgan Kaufmann,2013.
CLOUD COMPUTING CS & BCA
4 A. SIVASANKARI , SIASC.
UNIT – I
CLOUD COMPUTING
1. INTRODUCTION
Cloud Computing provides us means of accessing the applications as utilities over the
Internet. It allows us to create, configure, and customize the applications online.
The term Cloud refers to a Network or Internet. In other words, we can say that
Cloud is something, which is present at remote location. Cloud can provide services over
public and private networks, i.e., WAN, LAN or VPN.
Applications such as e-mail, web conferencing, customer relationship management
(CRM) execute on cloud.
Cloud Computing refers to manipulating, configuring, and accessing the hardware
and software resources remotely. It offers online data storage, infrastructure, and
application.
Computing is being transformed into a model consisting of services that are
commoditized and delivered in manner similar utilities such as water, electricity, gas, and
telephony. In such a model, users access services based on their requirements, regardless of
where the services are hosted. Several computing paradigms, such as s grid computing, have
promised to deliver this utility Computing vision. Cloud computing is the most recent
emerging paradigm promising to turn the vision of “computing utilities” into are laity.
Cloud computing is a technological advancement that focuses on the way we design
computing systems, develop applications, and leverage existing services for building
software. It is based on the concept of dynamic provisioning, which is applied not only to
services but also to compute capability, storage, networking, and information technology(IT)
infrastructure in general.
Resources are made available through the Internet and offered on a pay-per-use basis
from cloud computing vendors. Today, anyone with a credit card can subscribe to cloud
services and deploy and configure servers for an application in hours, growing and shrinking
the infrastructure serving its application according to the demand, and paying only for the
time these resources have been used.
Cloud computing has become a popular buzzword; it has been widely used to refer to
different technologies, services, and concepts. It is often associated with virtualized
CLOUD COMPUTING CS & BCA
5 A. SIVASANKARI , SIASC.
infrastructure or hard- ware on demand, utility computing, IT outsourcing, platform and
software as a service, and many other things that now are the focus of the IT industry.
Characteristics and benefits
Cloud computing has some interesting characteristics that bring benefits to both cloud
service consumers (CSCs) and cloud service providers (CSPs).
These characteristics are:
• No up-front commitments
• On-demand access
• Nice pricing
• Simplified application acceleration and scalability
• Efficient resource allocation
• Energy efficiency
• Seamless creation and use of third-party services
Principles of Parallel and Distributed Computing
Cloud computing is a new technological trend that supports better utilization of IT
infrastructures, services, and applications. It adopts a service delivery model based on a pay-
per-use approach, in which users do not own infrastructure, platform, or applications but use
them for the time they need them. These IT assets are owned and maintained by service
providers who make them accessible through the Internet.
This chapter presents the fundamental principles of parallel and distributed computing
and dis- cusses models and conceptual frameworks that serve as foundations for building
cloud computing systems and applications.
Eras of computing.
The two fundamental and dominant models of computing are sequential and parallel.
This quintal computing era began in the1940s;
The parallel (and distributed) computing era followed it within a decade.
The four key elements of computing developed during the seer as are architectures,
compilers, applications, and problem solving environments. The computing era started with a
development in hardware architectures, which actually enabled the creation of system
software particularly in the area of compilers and operating systems which support the
management to such systems and the development to applications. The development of
applications and systems are the major element of interest to us, and it comes to consolidation
CLOUD COMPUTING CS & BCA
6 A. SIVASANKARI , SIASC.
when problem solving environments were designed and introduced to facilitate and empower
engineers.
This is when the paradigm characterizing the computing achieved maturity and
became main stream. Moreover, every aspect of this era underwent a three-phase process:
research and development (R&D), commercialization, and commoditization Parallel vs.
distributed computing The terms parallel computing and distributed computing are often used
interchangeably, even though they means lightly different things. The term parallel implies a
tightly coupled system, whereas distributed refers to a wider class of system, including those
that are tightly coupled. More precisely, the term parallel computing refers to a model in
which the computation is divided among several processors sharing the same memory.
The architecture of a parallel computing system is often characterized by the
homogeneity of components: each processor is of the same type and it has the same
capability as the others. The shared memory has a single address space, which is accessible to
all the processors. Parallel programs are then broken down in to several units of execution
that can be allocated to different processors and can communicate with each other by means
of the shared memory. Originally we considered parallel systems only those architectures that
featured multiple processors sharing the same physical memory and that were considered a
single computer. Overtime, these restrictions have been relaxed, and parallel systems now
include all architectures that are based on the concept of shared memory, whether this is
physically present or created with the support of libraries, specific hardware, and a highly
efficient networking infrastructure. For example, a cluster of which the nodes are connected
through an Infinib and network and configured with a distributed shared memory system can
be considered a parallel system.
The term distributed computing encompasses any architecture or system that allows
the computation to be broken down in to units and executed concurrently on different
computing elements, whether these are processors on different nodes , processors on the same
computer, or cores within the same processor. Therefore, distributed computing includes a
wider range of systems and applications than parallel computing and is often considered a
more general term. Even though it is not a rule, the term distributed often implies that the
locations of the computing elements are not the same and such elements might be
heterogeneous in terms of hard ware and software features. Classic examples of distributed
computing systems are computing grids or Internet computing systems, which combine
together the biggest variety of architectures, systems, and applications in the world.
CLOUD COMPUTING CS & BCA
7 A. SIVASANKARI , SIASC.
Cloud computing might sound far-fetched, but chances are you’re already
using some cloud applications. If you’re using a web-based email program, such as
Gmail or Hotmail, you’re computing in the cloud. If you’re using a web-based
application such as Google Calendar or Apple Mobile Me, you’re computing in the
cloud. If you’re using a file- or photo-sharing site, such as Flickr or Picasa Web
Albums, you’re computing in the cloud. It’s the technology of the future, available
to use today.
The emergence of cloud computing is the computing equivalent of the
electricity revolution of a century ago. Before the advent of electrical utilities, every
farm and business produced its own electricity from freestanding generators. After
the electrical grid was created, farms and businesses shut down their generators and
bought electricity from the utilities, at a much lower price (and with much greater
reliability) than they could produce on their own.
FIGURE 1.1 CLOUD COMPUTING
Look for the same type of revolution to occur as cloud computing takes hold.
The desktop-centric notion of computing that we hold today is bound to fall by the
wayside as we come to expect the universal access, 24/7 reliability, and ubiquitous
collaboration promised by cloud computing.
Cloud computing offers platform independency, as the software is not required to
be installed locally on the PC. Hence, the Cloud Computing is making our business
applications mobile and collaborative.
The key to cloud computing is the “cloud”—a massive network of servers or
even individual PCs interconnected in a grid. These computers run in parallel,
combining the resources of each to generate supercomputing-like power
CLOUD COMPUTING CS & BCA
8 A. SIVASANKARI , SIASC.
1.2 PROPERTIES OF CLOUD COMPUTING
It might help to examine how one of the pioneers of cloud computing, Google,
perceives the topic. From Google’s perspective, there are six key properties of cloud
computing:
• Cloudcomputingis user-centric. Once you as a user are connected to the cloud,
whatever is stored there documents, messages, images, applications, whatever
becomes yours. In addition, not only is the data yours, but you can also share
it with others. In effect, any device that accesses your data in the cloud also
becomes yours.
• Cloudcomputingistask-centric. Instead of focusing on the application and what it
can do, the focus is on what you need done and how the application can do it
for you., Traditional applications word processing, spreadsheets, email, and so
on are becoming less important than the documents they create.
• Cloud computing is powerful. Connecting hundreds or thousands of computers
together in a cloud creates a wealth of computing power impossible with a
single desktop PC.
• Cloud computing is accessible. Because data is stored in the cloud, users can
instantly retrieve more information from multiple repositories. You’re not
limited to a single source of data, as you are with a desktop PC.
• Cloudcomputingisintelligent. With all the various data stored on the computers in
a cloud, data mining and analysis are necessary to access that information in
an intelligent manner.
• Cloud computing is programmable. Many of the tasks necessary with cloud
computing must be automated. For example, to protect the integrity of the
data, information stored on a single computer in the cloud must be replicated
on other computers in the cloud. If that one computer goes offline, the cloud’s
programming automatically redistributes that computer’s data to a new
computer in the cloud.
CLOUD COMPUTING CS & BCA
9 A. SIVASANKARI , SIASC.
User
Interface
System
Services
User
Web
FIGURE 1.2 PROPERTIES OF CLOUD COMPUTING
1.3 BASIC CONCEPTS
There are certain services and models working behind the scene making the cloud
computing feasible and accessible to end users. Following are the working models for cloud
computing:
• Deployment Models
• Service Models
DEPLOYMENT MODELS
1.4 TYPES OF CLOUD
Deployment models define the type of access to the cloud, i.e., how the cloud is
located? Cloud can have any of the four types of access: Public, Private, Hybrid, and
Community.
FIGURE 1.3 TYPES OF CLOUD
CLOUD COMPUTING CS & BCA
10 A. SIVASANKARI , SIASC.
PUBLIC CLOUD
The public cloud allows systems and services to be easily accessible to the general
public. Public cloud may be less secure because of its openness.
PRIVATE CLOUD
The private cloud allows systems and services to be accessible within an
organization. It is more secured because of its private nature.
COMMUNITY CLOUD
The community cloud allows systems and services to be accessible by a group of
organizations.
HYBRID CLOUD
The hybrid cloud is a mixture of public and private cloud, in which the critical
activities are performed using private cloud while the non-critical activities are performed
using public cloud.
1.4 HISTORY OF CLOUD COMPUTING
The concept of Cloud Computing came into existence in the year 1950 with
implementation of mainframe computers, accessible via thin/static clients. Since then,
cloud computing has been evolved from static clients to dynamic ones and from software to
services. The following diagram explains the evolution of cloud computing:
FIGURE 1.4 HISTORY OF CLOUD
1.5 BEBEFITS OF CLOUD COMPUTING
Cloud Computing has numerous advantages. Some of them are listed below -
• One can access applications as utilities, over the Internet.
• One can manipulate and configure the applications online at any time.
CLOUD COMPUTING CS & BCA
11 A. SIVASANKARI , SIASC.
• It does not require to install a software to access or manipulate cloud application.
• Cloud Computing offers online development and deployment tools, programming
runtime environment through PaaS model.
• Cloud resources are available over the network in a manner that provide platform
independent access to any type of clients.
• Cloud Computing offers on-demand self-service. The resources can be used without
interaction with cloud service provider.
• Cloud Computing is highly cost effective because it operates at high efficiency with
optimum utilization. It just requires an Internet connection
• Cloud Computing offers load balancing that makes it more reliable.
FIGURE 1.5 BENEFITS OF CLOUD
Risks related to Cloud Computing
Although cloud Computing is a promising innovation with various benefits in the
world of computing, it comes with risks. Some of them are discussed below:
Security and Privacy
It is the biggest concern about cloud computing. Since data management and
infrastructure management in cloud is provided by third-party, it is always a risk to handover
the sensitive information to cloud service providers.
Although the cloud computing vendors ensure highly secured password protected accounts,
any sign of security breach may result in loss of customers and businesses.
CLOUD COMPUTING CS & BCA
12 A. SIVASANKARI , SIASC.
Lock In
It is very difficult for the customers to switch from one Cloud Service Provider
(CSP) to another. It results in dependency on a particular CSP for service.
Isolation Failure
This risk involves the failure of isolation mechanism that separates storage, memory,
and routing between the different tenants.
Management Interface Compromise
In case of public cloud provider, the customer management interfaces are accessible
through the Internet.
Insecure or Incomplete Data Deletion
It is possible that the data requested for deletion may not get deleted. It happens because
either of the following reasons
• Extra copies of data are stored but are not available at the time of deletion
• Disk that stores data of multiple tenants is destroyed.
1.6 CHARACTERISTICS OF CLOUD COMPUTING
There are four key characteristics of cloud computing. They are shown in the
following diagram:
FIGURE 1.6 CHARACTERISTICS OF CLOUD
CLOUD COMPUTING CS & BCA
13 A. SIVASANKARI , SIASC.
On Demand Self Service
Cloud Computing allows the users to use web services and resources on demand. One
can logon to a website at any time and use them.
Broad Network Access
Since cloud computing is completely web based, it can be accessed from anywhere
and at any time.
Resource Pooling
Cloud computing allows multiple tenants to share a pool of resources. One can share
single physical instance of hardware, database and basic infrastructure.
Rapid Elasticity
It is very easy to scale the resources vertically or horizontally at any time. Scaling of
resources means the ability of resources to deal with increasing or decreasing demand.
The resources being used by customers at any given point of time are automatically
monitored.
Measured Service
In this service cloud provider controls and monitors all the aspects of cloud service.
Resource optimization, billing, and capacity planning etc. depend on it.
1.7 CLOUD COMPUTING ARCHITECTURE
Cloud Computing architecture comprises of many cloud components, which are loosely
coupled. We can broadly divide the cloud architecture into two parts:
• Front End
• Back End
Each of the ends is connected through a network, usually Internet. The following diagram
shows the graphical view of cloud computing architecture:
Front End
The front end refers to the client part of cloud computing system. It consists of
interfaces and applications that are required to access the cloud computing platforms,
Example - Web Browser.
Back End
The back End refers to the cloud itself. It consists of all the resources required to
provide cloud computing services. It comprises of huge data storage, virtual machines,
security mechanism, services, deployment models, servers, etc.
CLOUD COMPUTING CS & BCA
14 A. SIVASANKARI , SIASC.
FIGURE 1.7 CLOUD ARCHITECTURE
Note
• It is the responsibility of the back end to provide built-in security mechanism, traffic
control and protocols.
• The server employs certain protocols known as middleware, which help the connected
devices to communicate with each other.
1.8 WHY CLOUD COMPUTING MATTERS
For developers, cloud computing provides increased amounts of storage and
processing power to run the applications they develop. Cloud computing also enables
new ways to access information, process and analyse data, and connect people and
resources from any location anywhere in the world. In essence, it takes the lid off the
box; with cloud computing, developers are no longer boxed in by physical
constraints.
For end users, cloud computing offers all those benefits and more. A person
using a web-based application isn’t physically bound to a single PC, location, or
network. His applications and documents can be accessed wherever he is, whenever
he wants. Gone is the fear of losing data if a computer crashes.
Documents hosted in the cloud always exist, no matter what happens to the
user’s machine. And then there’s the benefit of group collaboration. Users from
around the world can collaborate on the same documents, applications, and projects,
CLOUD COMPUTING CS & BCA
15 A. SIVASANKARI , SIASC.
in real time. It’s a whole new world of collaborative computing, all enabled by the
notion of cloud computing.
And cloud computing does all this at lower costs, because the cloud enables more
efficient sharing of resources than does traditional network computing. With cloud
computing, hardware doesn’t have to be physically adjacent to a firm’s office or data
center. Cloud infrastructure can be located anywhere, including and especially areas with
lower real estate and electricity costs. In addition, IT departments don’t have to engineer
for peak-load capacity, because the peak load can be spread out among the external
assets in the cloud. And, because additional cloud resources are always at the ready,
companies no longer have to purchase assets for infrequent intensive computing tasks. If
you need more processing power, it’s always there in the cloud and accessible on a cost
efficient basis.
1.9 CLOUD COMPUTING INFRASTRUCTURE
Cloud infrastructure consists of servers, storage devices, network, cloud
management software, deployment software, and platform virtualization.
FIGURE 1.8 CLOUD COMPUTING INFRASTRUCTURE
Hypervisor
Hypervisor is a firmware or low-level program that acts as a Virtual Machine
Manager. It allows sharing the single physical instance of cloud resources between several
tenants.
Management Software
It helps to maintain and configure the infrastructure.
Deployment Software
It helps to deploy and integrate the application on the cloud.
Network
CLOUD COMPUTING CS & BCA
16 A. SIVASANKARI , SIASC.
It is the key component of cloud infrastructure. It allows connecting cloud services
over the Internet. It is also possible to deliver network as a utility over the Internet, which
means, the customer can customize the network route and protocol.
Server
The server helps to compute the resource sharing and offers other services such as
resource allocation and de-allocation, monitoring the resources, providing security etc.
Storage
Cloud keeps multiple replicas of storage. If one of the storage resources fails, then it
can be extracted from another one, which makes cloud computing more reliable.
Infrastructural Constraints
Fundamental constraints that cloud infrastructure should implement are shown in the
following diagram:
FIGURE 1.9 FUNDAMENTAL CONSTRAINTS OF CLOUD
Transparency
Virtualization is the key to share resources in cloud environment. But it is not
possible to satisfy the demand with single resource or server. Therefore, there must be
transparency in resources, load balancing and application, so that we can scale them on
demand.
Scalability
Scaling up an application delivery solution is not that easy as scaling up an
application because it involves configuration overhead or even re-architecting the network.
So, application delivery solution is need to be scalable which will require the virtual
infrastructure such that resource can be provisioned and de-provisioned easily.
Intelligent Monitoring
CLOUD COMPUTING CS & BCA
17 A. SIVASANKARI , SIASC.
To achieve transparency and scalability, application solution delivery will need to be
capable of intelligent monitoring.
Security
The mega data centre in the cloud should be securely architected. Also the control
node, an entry point in mega data centre, also needs to be secure.
1.10 CLOUD COMPUTING DATA STORAGE
Cloud Storage is a service that allows to save data on offsite storage system managed
by third-party and is made accessible by a web services API.
Storage Devices
Storage devices can be broadly classified into two categories:
• Block Storage Devices
• File Storage Devices
1.10.1 BLOCK STORAGE DEVICES
The block storage devices offer raw storage to the clients. These raw storage are
partitioned to create volumes.
1.10.2 FILE STORAGE DEVICES
The file Storage Devices offer storage to clients in the form of files, maintaining its
own file system. This storage is in the form of Network Attached Storage (NAS).
1.10.3 CLOUD STORAGE CLASSES
Cloud storage can be broadly classified into two categories:
• Unmanaged Cloud Storage
• Managed Cloud Storage
Unmanaged Cloud Storage
Unmanaged cloud storage means the storage is preconfigured for the customer. The
customer can neither format, nor install his own file system or change drive properties.
Managed Cloud Storage
Managed cloud storage offers online storage space on-demand. The managed cloud
storage system appears to the user to be a raw disk that the user can partition and format.
1.10.4 CREATING CLOUD STORAGE SYSTEM
The cloud storage system stores multiple copies of data on multiple servers, at
multiple locations. If one system fails, then it is required only to change the pointer to the
location, where the object is stored.
CLOUD COMPUTING CS & BCA
18 A. SIVASANKARI , SIASC.
To aggregate the storage assets into cloud storage systems, the cloud provider can use
storage virtualization software known as Storage GRID. It creates a virtualization layer that
fetches storage from different storage devices into a single management system. It can also
manage data from CIFS and NFS file systems over the Internet. The following diagram
shows how Storage GRID virtualizes the storage into storage clouds:
FIGURE 1.10 CLOUD STORAGE SYSTEM
1.10.5 VIRTUAL STORAGE CONTAINERS
The virtual storage containers offer high performance cloud storage
systems. Logical Unit Number (LUN) of device, files and other objects are created in
virtual storage containers. Following diagram shows a virtual storage container, defining a
cloud storage domain:
CLOUD COMPUTING CS & BCA
19 A. SIVASANKARI , SIASC.
FIGURE 1.11 VIRTUAL STORAGE CONTAINERS
Challenges
Storing the data in cloud is not that simple task. Apart from its flexibility and
convenience, it also has several challenges faced by the customers. The customers must be
able to:
• Get provision for additional storage on-demand.
• Know and restrict the physical location of the stored data.
• Verify how data was erased.
• Have access to a documented process for disposing of data storage hardware.
• Have administrator access control over data.
Cloud storage is a way of storing data online. It requires an internet connection in order
to maintain, manage, and share documents, presentations, spreadsheets, images, audio, video,
etc. with others. Online storage service providers don't store any data on the hard disk of your
PC. Cloud storage tools help you to access your data from any device.
1.11 CLOUD STORAGE TOOLS
Following is a handpicked list of top cloud storage tools, with popular features and
latest download links.
1) Google Drive
CLOUD COMPUTING CS & BCA
20 A. SIVASANKARI , SIASC.
Google Drive is a free online data storage service provided by Google. The service
syncs stored files, photos, and more across all the user's PCs, tablets, and mobile devices. It
offers 15 GB of free space.
Features:
• You can build Docs, Sheets, Slides.
• It provides real time synchronization.
• You can create forms that help you to run a survey.
• The tool can be used for macOS.
• Integrates with thousands of external apps like a mind map, Gantt chart, diagram
tools, etc.
• It allows to store documents up to 1.02 million characters, spreadsheets up to 5
million cells, presentation up to 100 MB, and Google Sites up to 2000,000 characters
per page.
Download Link: https://www.google.com/drive/
2) Box
Box is a cloud file management and sharing service. This tool is available for
Windows, macOS, and mobile platforms.
Features:
• You can use Windows Explorer or Mac Finder to quickly search the file you want.
• Edit like a local file and Box will save it to the cloud.
• Allows you to invite the team to make changes and upload files.
• Enable admin to add external users to collaborate content and control the version.
Download Link: https://www.box.com/en-gb/drive
3) OneDrive
CLOUD COMPUTING CS & BCA
21 A. SIVASANKARI , SIASC.
Microsoft OneDrive is an internet-based storage and synchronization service provider.
It is available for free to all the people having Microsoft account. OneDrive apps can be used
to sync files on a Windows PC or Mac operating system.
Features:
• Use your phone to scan and business cards, receipts, whiteboard notes, or store paper
documents in OneDrive.
• You can set an expiration date of shared files, photos, and links for security purpose.
• Allows uploading files up to 15 GB in size.
Download Link: https://onedrive.live.com/about/en-in/
4) Mega
Mega is an online storage and file hosting service provided by Mega Limited. Mega is
available for Windows, Mac, and Linux platform.
Features:
• It offers 50 GB free storage space.
• It uses keys to encrypt files and chats.
• Mega allows you to sync files and folders.
• Upload or download 1 GB data every 6 hours
Download Link: https://mega.nz/
5) Yandex Disk
CLOUD COMPUTING CS & BCA
22 A. SIVASANKARI , SIASC.
Yandex Disk is a cloud service that allows users to store files on cloud servers and
share with others. Disk is available on Windows, macOS as well as Linux. It is available in
two plans Annual and Monthly subscription.
Features:
• Allows uploading maximum 50 GB file size. User can sync data between different
devices.
• Provides free access to Microsoft Word, Excel, and PowerPoint.
• Offer you to download files from public pages without any hassle.
Download Link: https://disk.yandex.com/
6) Upthere
Upthere offer you to store videos, photos, music, and documents safely and privately
in the cloud. This platform is based on UpOS technology to store, manage, share data.
Upthere is available for iPhone, Android, Mac, and Windows.
Features:
• Share any number of files without any size limitation.
• It enables you to create privately shared loops for celebrations, trips, or whatever
works good for you.
• Anyone can invite other people, add content, and comment.
Download Link: https://upthere.com/
7) Media Fire
MediaFire is a file hosting, cloud storage, and synchronization service. It provides an
easy-to-use solution for managing digital stuff online as well as on the go. MediaFire can be
used for iPhone, Windows, OSX, Web, and Android.
Features:
• Maximum file uploading limit is 20 GB
• It offers the professional an ad-free experience to employees.
• Lets you to paste link in any files and MediaFire will upload to your account
CLOUD COMPUTING CS & BCA
23 A. SIVASANKARI , SIASC.
• Allows you to specify access control.
Download Link: https://www.mediafire.com/
8) Koofr
Koofr is a cloud storage solution that connects Dropbox, Amazon, Google Drive,
OneDrive accounts and utilizes the additional free space on a hard drive. The tool is available
for Android, iOS, Windows, Linux, Windows, and macOS.
Features:
• Automatic backup from phones.
• Synchronization data with computers.
• No file type and size limits, upload anything you want to keep safe.
• It provides automatic backup of photos and videos from the mobile phone.
Download Link: https://koofr.eu/
9) Icedrive
Icedrive is the next generation cloud service that helps you to access, manage, and
update your cloud storage effortlessly. It provides a space to share, showcase, and collaborate
with your files.
Features:
• It allows you to store files up to 100 TB.
• Sync all your data from the computer.
• Icedrive provides clean and easy to use interface to manage your files.
Download Link: https://icedrive.net/
10) MiMedia
MiMedia is a cloud-based backup service that allows you to manage and enjoy your
digital life. It helps you to curate your personalized collection.
Features:
CLOUD COMPUTING CS & BCA
24 A. SIVASANKARI , SIASC.
• It allows you to access and organize music, photos, videos, and documents on all
devices.
• You can download a desktop app to your PC or Mac and put any content in the cloud.
• Import from Dropbox, Google, Flickr, and Facebook.
Download Link: http://www.mimedia.com
11) IDrive
IDrive provides service for data backup. This service is available to Windows, Linux,
iOS, Android, and Mac users.
Features:
• IDrive provides 5 GB free
• Users can organize and monitor backups of their PC from the web interface.
• Users can upload or download files up to 2 GB in size.
• It provides the best solution to protect all computers, Macs, iPhones, and Android
devices into one account.
Download Link: https://www.idrive.com/
12) ICloud
ICloud is a cloud storage service managed by Apple Inc.
It is a service where users can save any files on the cloud, and iCloud will
automatically sync to your device. You can use this service for Mac and Windows PCs.
Features:
• It provides 5GB of free iCloud storage
• File size uploading limit is 15 GB.
• Many people can work together by simply sending a link.
• Lets you to collaborate with numbers, Keynote, Pages, and Notes.
Download Link: https://www.apple.com/in/icloud/
CLOUD COMPUTING CS & BCA
25 A. SIVASANKARI , SIASC.
13) Amazon Drive
Amazon Drive or Amazon Cloud Drive is a cloud storage application of Amazon. The
service provides secure cloud storage, file sharing, photo printing, and file backup.
Features:
• It helps you to organize and edit photos online.
• Amazon Drive automatically backs up the photos and videos on your phone.
• Allows you to Sync files and folders.
Download Link: https://www.amazon.com/b?ie=UTF8&node=15547130011
14) Sync
Sync.com is a cloud service for sharing files from any computer or mobile device.
Sync provides an ideal solution for storing and sharing confidential and sensitive data.
Features:
• Sync allows you to send files of any size to anyone, even if they don't have a
registered.
• Performance becomes slower if you upload files larger than 40 GB.
• Synch can support Windows, Mac, iOS, and Android.
• It gives unlimited data transfer for all the plans.
Download Link: https://www.sync.com/
15) Dropbox
CLOUD COMPUTING CS & BCA
26 A. SIVASANKARI , SIASC.
Name Link Free Space
Google
Drive
https://www.google.com/drive/ 15GB
Box https://www.box.com/en-gb/drive 10GB
OneDrive https://www.pcloud.com/ 5GB
Mega https://mega.nz/ 50GB
Yandex
Disk
https://disk.yandex.com/ 50GB
Upthere https://upthere.com/ 20GB
Media
Fire
https://www.mediafire.com/ 10GB
Koofr https://koofr.eu/ 10GB
Ice Drive https://icedrive.net/ 10GB
MiMedia http://www.mimedia.com 10GB
IDrive https://www.idrive.com/ 5GB
iCloud https://www.apple.com/in/icloud/ 5GB
Amazon
Drive
https://www.amazon.com/b?ie=UTF8&node=15547130011 5GB
Sync https://www.sync.com/ 5GB
Dropbox https://www.dropbox.com/ 2GB
Jumpshare https://jumpshare.com/ 2GB
CLOUD COMPUTING CS & BCA
27 A. SIVASANKARI , SIASC.
Dropbox is a file hosting service providing personal cloud, file synchronization, cloud
storage, and client software. It is designed to collaborate your projects whether you are
working alone or in a team.
Features:
• It offers you to safely sync data across all devices.
• Your file size should be 50 GB or smaller
• Service is available for macOS, Linux, and Windows operating systems.
Download Link: https://www.dropbox.com/
16) Jumpshare
Jumpshare combines screenshot capture, file sharing, video recording, as well as team
collaboration. It allows you to to send and share unlimited big size file.
Features:
• It helps you to capture and share anything
• Jumpshare has drag and drop facility to share any file.
• Allows you to capture screenshots
• You can record your screen in GIF or video.
• This service can be used on macOS, Android, Windows, iPad, and iPhone.
Download Link: https://jumpshare.com/
1.12 ADVANTAGES AND DISADVANTAGES OF CLOUD COMPUTING
Cloud computing is a term referred to storing and accessing data over the internet. It
doesn't store any data on the hard disk of your personal computer. In cloud computing, you
can access data from a remote server.
1.12.1 ADVANTAGES OF CLOUD COMPUTING
Here, are important benefits for using Cloud computing in your organization:
CLOUD COMPUTING CS & BCA
28 A. SIVASANKARI , SIASC.
FIGURE 1.12 BENEFITS OF CLOUD COMPUTING
Cost Savings
Cost saving is the biggest benefit of cloud computing. It helps you to save substantial
capital cost as it does not need any physical hardware investments. Also, you do not need
trained personnel to maintain the hardware. The buying and managing of equipment is done
by the cloud service provider.
Strategic edge
Cloud computing offers a competitive edge over your competitors. It helps you to
access the latest and applications any time without spending your time and money on
installations.
High Speed
Cloud computing allows you to deploy your service quickly in fewer clicks. This
faster deployment allows you to get the resources required for your system within fewer
minutes.
Back-up and restore data
Once the data is stored in a Cloud, it is easier to get the back-up and recovery of that,
which is otherwise very time taking process on premise.
Automatic Software Integration
In the cloud, software integration is something that occurs automatically. Therefore,
you don't need to take additional efforts to customize and integrate your applications as per
your preferences.
CLOUD COMPUTING CS & BCA
29 A. SIVASANKARI , SIASC.
Reliability
Reliability is one of the biggest pluses of cloud computing. You can always get
instantly updated about the changes.
Mobility
Employees who are working on the premises or at the remote locations can easily
access all the could services. All they need is an Internet connectivity.
Unlimited storage capacity
The cloud offers almost limitless storage capacity. At any time you can quickly
expand your storage capacity with very nominal monthly fees.
Collaboration
The cloud computing platform helps employees who are located in different
geographies to collaborate in a highly convenient and secure manner.
Quick Deployment
Last but not least, cloud computing gives you the advantage of rapid deployment. So,
when you decide to use the cloud, your entire system can be fully functional in very few
minutes. Although, the amount of time taken depends on what kind of technologies are used
in your business.
Other Important Benefits
Apart from the above, some other advantages of cloud computing are:
• On-Demand Self-service
• Multi-tenancy
• Offers Resilient Computing
• Fast and effective virtualization
• Provide you low-cost software
• Offers advanced online security
• Location and Device Independence
• Always available, and scales automatically to adjust to the increase in demand
• Allows pay-per-use
• Web-based control & interfaces
• API Access available.
1.12.2 DISADVANTAGES OF CLOUD COMPUTING
Here, are significant challenges of using Cloud Computing:
CLOUD COMPUTING CS & BCA
30 A. SIVASANKARI , SIASC.
FIGURE 1.13 CHALLENGES OF CLOUD
Performance Can Vary
When you are working in a cloud environment, your application is running on the
server which simultaneously provides resources to other businesses. Any greedy behavior or
DDOS attack on your tenant could affect the performance of your shared resource.
Technical Issues
Cloud technology is always prone to an outage and other technical issues. Even, the
best cloud service provider companies may face this type of trouble despite maintaining high
standards of maintenance.
Security Threat in the Cloud
Another drawback while working with cloud computing services is security risk.
Before adopting cloud technology, you should be well aware of the fact that you will be
sharing all your company's sensitive information to a third-party cloud computing service
provider. Hackers might access this information.
Downtime
Downtime should also be considered while working with cloud computing. That's
because your cloud provider may face power loss, low internet connectivity, service
maintenance, etc.
Internet Connectivity
Good Internet connectivity is a must in cloud computing. You can't access cloud
without an internet connection. Moreover, you don't have any other way to gather data from
the cloud.
CLOUD COMPUTING CS & BCA
31 A. SIVASANKARI , SIASC.
Lower Bandwidth
Many cloud storage service providers limit bandwidth usage of their users. So, in case
if your organization surpasses the given allowance, the additional charges could be
significantly costly
Lacks of Support
Cloud Computing companies fail to provide proper support to the customers.
Moreover, they want their user to depend on FAQs or online help, which can be a tedious job
for non-technical persons.
CLOUD COMPUTING CS & BCA
32 A. SIVASANKARI , SIASC.
UNIT – II
2. DEVELOPING CLOUD SERVICES
2.1 CLOUD SERVICE MODELS
Cloud computing is based on service models. These are categorized into three basic
service models which are ,
• Infrastructure-as–a-Service (IaaS)
• Platform-as-a-Service (PaaS)
• Software-as-a-Service (SaaS)
Anything-as-a-Service (XaaS) is yet another service model, which includes Network-
as-a-Service, Business-as-a-Service, Identity-as-a-Service, Database-as-a-
Service or Strategy-as-a-Service.
The Infrastructure-as-a-Service (IaaS) is the most basic level of service. Each of the
service models inherit the security and management mechanism from the underlying model,
as shown in the following diagram:
FIGURE 2.1 CLOUD SERVICE
Infrastructure-as-a-Service (IaaS)
CLOUD COMPUTING CS & BCA
33 A. SIVASANKARI , SIASC.
IaaS provides access to fundamental resources such as physical machines, virtual machines,
virtual storage, etc.
Platform-as-a-Service (PaaS)
PaaS provides the runtime environment for applications, development and deployment
tools, etc.
Software-as-a-Service (SaaS)
SaaS model allows to use software applications as a service to end-users.
2.1.1 Cloud Computing Infrastructure as a Service (IaaS)
Infrastructure-as-a-Service provides access to fundamental resources such as physical
machines, virtual machines, virtual storage, etc. Apart from these resources, the IaaS also
offers:
• Virtual machine disk storage
• Virtual local area network (VLANs)
• Load balancers
• IP addresses
• Software bundles
All of the above resources are made available to end user via server
virtualization. Moreover, these resources are accessed by the customers as if they own
them.
CLOUD COMPUTING CS & BCA
34 A. SIVASANKARI , SIASC.
FIGURE 2.2 IAAS
Benefits
IaaS allows the cloud provider to freely locate the infrastructure over the Internet in a
cost-effective manner. Some of the key benefits of IaaS are listed below:
• Full control of the computing resources through administrative access to VMs.
• Flexible and efficient renting of computer hardware.
• Portability, interoperability with legacy applications.
Full control over computing resources through administrative access to VMs
IaaS allows the customer to access computing resources through administrative access
to virtual machines in the following manner:
• Customer issues administrative command to cloud provider to run the virtual
machine or to save data on cloud server.
• Customer issues administrative command to virtual machines they owned to start
web server or to install new applications.
Flexible and efficient renting of computer hardware
IaaS resources such as virtual machines, storage devices, bandwidth, IP addresses,
monitoring services, firewalls, etc. are made available to the customers on rent. The payment
is based upon the amount of time the customer retains a resource. Also with administrative
access to virtual machines, the customer can run any software, even a custom operating
system. Portability, interoperability with legacy applications
It is possible to maintain legacy between applications and workloads between IaaS
clouds. For example, network applications such as web server or e-mail server that normally
runs on customer-owned server hardware can also run from VMs in IaaS cloud.
2.1.1.1 Issues
IaaS shares issues with PaaS and SaaS, such as Network dependence and browser
based risks. It also has some specific issues, which are mentioned in the following diagram:
CLOUD COMPUTING CS & BCA
35 A. SIVASANKARI , SIASC.
FIGURE 2.3 ISSUES OF IAAS
Compatibility with legacy security vulnerabilities
Because IaaS offers the customer to run legacy software in provider's infrastructure,
it exposes customers to all of the security vulnerabilities of such legacy software.
Virtual Machine sprawl
The VM can become out-of-date with respect to security updates because IaaS allows
the customer to operate the virtual machines in running, suspended and off state. However,
the provider can automatically update such VMs, but this mechanism is hard and complex.
Robustness of VM-level isolation
IaaS offers an isolated environment to individual customers through hypervisor.
Hypervisor is a software layer that includes hardware support for virtualization to split a
physical computer into multiple virtual machines.
Data erase practices
The customer uses virtual machines that in turn use the common disk resources
provided by the cloud provider. When the customer releases the resource, the cloud provider
must ensure that next customer to rent the resource does not observe data residue from
previous customer.
Characteristics
Here are the characteristics of IaaS service model:
• Virtual machines with pre-installed software.
• Virtual machines with pre-installed operating systems such as Windows, Linux, and
Solaris.
• On-demand availability of resources.
• Allows to store copies of particular data at different locations.
• The computing resources can be easily scaled up and down.
CLOUD COMPUTING CS & BCA
36 A. SIVASANKARI , SIASC.
2.1.2 Platform as a Service (PaaS)
Platform-as-a-Service offers the runtime environment for applications. It also offers
development and deployment tools required to develop applications. PaaS has a feature
of point-and-click tools that enables non-developers to create web applications.
App Engine of Google and Force.com are examples of PaaS offering vendors.
Developer may log on to these websites and use the built-in API to create web-based
applications.
But the disadvantage of using PaaS is that, the developer locks-in with a particular
vendor. For example, an application written in Python against API of Google, and using App
Engine of Google is likely to work only in that environment.
The following diagram shows how PaaS offers an API and development tools to the
developers and how it helps the end user to access business applications.
FIGURE 2.4 PaaS
Benefits
Following are the benefits of PaaS model:
CLOUD COMPUTING CS & BCA
37 A. SIVASANKARI , SIASC.
FIGURE 2.5 BENEFITS OF PAAS
• Lower administrative overhead
• Customer need not bother about the administration because it is the responsibility of
cloud provider.
• Lower total cost of ownership
• Customer need not purchase expensive hardware, servers, power, and data storage.
• Scalable solutions
• It is very easy to scale the resources up or down automatically, based on their
demand.
• More current system software
• It is the responsibility of the cloud provider to maintain software versions and patch
installations.
2.1.2.1 Issues
Like SaaS, PaaS also places significant burdens on customer's browsers to maintain
reliable and secure connections to the provider’s systems. Therefore, PaaS shares many of
the issues of SaaS. However, there are some specific issues associated with PaaS as shown
in the following diagram:
CLOUD COMPUTING CS & BCA
38 A. SIVASANKARI , SIASC.
FIGURE 2.6 ISSUES OF PAAS
Lack of portability between PaaS clouds
Although standard languages are used, yet the implementations of platform services
may vary. For example, file, queue, or hash table interfaces of one platform may differ from
another, making it difficult to transfer the workloads from one platform to another.
Event based processor scheduling
The PaaS applications are event-oriented which poses resource constraints on
applications, i.e., they have to answer a request in a given interval of time.
Security engineering of PaaS applications
Since PaaS applications are dependent on network, they must explicitly use
cryptography and manage security exposures.
Characteristics
Here are the characteristics of PaaS service model:
• PaaS offers browser based development environment. It allows the developer to
create database and edit the application code either via Application Programming
Interface or point-and-click tools.
• PaaS provides built-in security, scalability, and web service interfaces.
• PaaS provides built-in tools for defining workflow, approval processes, and
business rules.
• It is easy to integrate PaaS with other applications on the same platform.
CLOUD COMPUTING CS & BCA
39 A. SIVASANKARI , SIASC.
• PaaS also provides web services interfaces that allow us to connect the applications
outside the platform.
2.1.2.2 PaaS Types
Based on the functions, PaaS can be classified into four types as shown in the
following diagram:
FIGURE 2.7 CLASSIFICATION OF PAAS
Stand-alone development environments
stand-alone PaaS works as an independent entity for a specific function. It does not
include licensing or technical dependencies on specific SaaS applications.
Application delivery-only environments
The application delivery PaaS includes on-demand scaling and application security.
Open platform as a service
Open PaaS offers an open source software that helps a PaaS provider to run
applications.
Add-on development facilities
The add-on PaaS allows to customize the existing SaaS platform.
Cloud Computing Software as a Service (SaaS)
2.1.3 Software-as–a-Service (SaaS)
Software-as–a-Service (SaaS) model allows to provide software application as a
service to the end users. It refers to a software that is deployed on a host service and is
accessible via Internet. There are several SaaS applications listed below:
• Billing and invoicing system
• Customer Relationship Management (CRM) applications
• Help desk applications
• Human Resource (HR) solutions
CLOUD COMPUTING CS & BCA
40 A. SIVASANKARI , SIASC.
Some of the SaaS applications are not customizable such as Microsoft Office Suite. But
SaaS provides us Application Programming Interface (API), which allows the developer
to develop a customized application.
Characteristics
Here are the characteristics of SaaS service model:
• SaaS makes the software available over the Internet.
• The software applications are maintained by the vendor.
• The license to the software may be subscription based or usage based. And it is billed
on recurring basis.
• SaaS applications are cost-effective since they do not require any maintenance at end
user side.
• They are available on demand.
• They can be scaled up or down on demand.
• They are automatically upgraded and updated.
• SaaS offers shared data model. Therefore, multiple users can share single instance of
infrastructure. It is not required to hard code the functionality for individual users.
• All users run the same version of the software.
Benefits
Using SaaS has proved to be beneficial in terms of scalability, efficiency and
performance. Some of the benefits are listed below:
• Modest software tools
• Efficient use of software licenses
• Centralized management and data
• Platform responsibilities managed by provider
• Multitenant solutions
Modest software tools
The SaaS application deployment requires a little or no client side software installation,
which results in the following benefits:
• No requirement for complex software packages at client side
• Little or no risk of configuration at client side
• Low distribution cost
Efficient use of software licenses
CLOUD COMPUTING CS & BCA
41 A. SIVASANKARI , SIASC.
The customer can have single license for multiple computers running at different
locations which reduces the licensing cost. Also, there is no requirement for license servers
because the software runs in the provider's infrastructure.
Centralized management and data
The cloud provider stores data centrally. However, the cloud providers may store data
in a decentralized manner for the sake of redundancy and reliability.
Platform responsibilities managed by providers
All platform responsibilities such as backups, system maintenance, security,
hardware refresh, power management, etc. are performed by the cloud provider. The
customer does not need to bother about them.
Multitenant solutions
Multitenant solutions allow multiple users to share single instance of different
resources in virtual isolation. Customers can customize their application without affecting
the core functionality.
Issues
There are several issues associated with SaaS, some of them are listed below:
• Browser based risks
• Network dependence
• Lack of portability between SaaS clouds
Browser based risks
• If the customer visits malicious website and browser becomes infected, the
subsequent access to SaaS application might compromise the customer's data.
• To avoid such risks, the customer can use multiple browsers and dedicate a specific
browser to access SaaS applications or can use virtual desktop while accessing the
SaaS applications.
Network dependence
The SaaS application can be delivered only when network is continuously available.
Also network should be reliable but the network reliability cannot be guaranteed either by
cloud provider or by the customer.
Lack of portability between SaaS clouds
Transferring workloads from one SaaS cloud to another is not so easy because work
flow, business logics, user interfaces, support scripts can be provider specific.
2.1.3.3 Open SaaS and SOA
CLOUD COMPUTING CS & BCA
42 A. SIVASANKARI , SIASC.
Open SaaS uses those SaaS applications, which are developed using open source
programming language. These SaaS applications can run on any open source operating
system and database. Open SaaS has several benefits listed below:
• No License Required
• Low Deployment Cost
• Less Vendor Lock-in
• More portable applications
• More Robust Solution
The following diagram shows the SaaS implementation based on SOA:
FIGURE 2.8 SOA
2.1.3.4 Cloud Computing Identity as a Service (IDaaS)
Employees in a company require to login to system to perform various tasks. These
systems may be based on local server or cloud based. Following are the problems that an
employee might face:
• Remembering different username and password combinations for accessing multiple
servers.
• If an employee leaves the company, it is required to ensure that each account of that
user is disabled. This increases workload on IT staff.
CLOUD COMPUTING CS & BCA
43 A. SIVASANKARI , SIASC.
To solve above problems, a new technique emerged which is known as Identity-as–a-
Service (IDaaS).
IDaaS offers management of identity information as a digital entity. This identity can be
used during electronic transactions.
Identity
Identity refers to set of attributes associated with something to make it recognizable.
All objects may have same attributes, but their identities cannot be the same. A unique
identity is assigned through unique identification attribute.
There are several identity services that are deployed to validate services such as
validating web sites, transactions, transaction participants, client, etc. Identity-as-a-Service
may include the following:
• Directory services
• Federated services
• Registration
• Authentication services
• Risk and event monitoring
• Single sign-on services
• Identity and profile management
2.1.3.5 Single Sign-On (SSO)
To solve the problem of using different username and password combinations for
different servers, companies now employ Single Sign-On software, which allows the user to
login only one time and manage the access to other systems.
SSO has single authentication server, managing multiple accesses to other systems,
as shown in the following diagram:
FIGURE 2.9 SSO WORKING
2.1.3.6 SSO Working
CLOUD COMPUTING CS & BCA
44 A. SIVASANKARI , SIASC.
There are several implementations of SSO. Here, we discuss the common ones:
FIGURE 2.10 IMPLEMENTATIONS OF SSO
Following steps explain the working of Single Sign-On software:
• User logs into the authentication server using a username and password.
• The authentication server returns the user's ticket.
• User sends the ticket to intranet server.
• Intranet server sends the ticket to the authentication server.
• Authentication server sends the user's security credentials for that server back to the
intranet server.
If an employee leaves the company, then disabling the user account at the authentication
server prohibits the user's access to all the systems.
2.1.3.7 Federated Identity Management (FIDM)
FIDM describes the technologies and protocols that enable a user to package security
credentials across security domains. It uses Security Markup Language (SAML) to
package a user's security credentials as shown in the following diagram:
CLOUD COMPUTING CS & BCA
45 A. SIVASANKARI , SIASC.
FIGURE 2.11 FIDM
OpenID
It offers users to login into multiple websites with single account. Google, Yahoo!,
Flickr, MySpace, WordPress.com are some of the companies that support OpenID.
Benefits
• Increased site conversation rates
• Access to greater user profile content
• Fewer problems with lost passwords
• Ease of content integration into social networking sites
2.2 AMAZON WEB SERVICES
In 2006, Amazon Web Services (AWS) started to offer IT services to the market in
the form of web services, which is nowadays known as cloud computing. With this cloud,
we need not plan for servers and other IT infrastructure which takes up much of time in
advance. Instead, these services can instantly spin up hundreds or thousands of servers in
minutes and deliver results faster. We pay only for what we use with no up-front expenses
and no long-term commitments, which makes AWS cost efficient.
Today, AWS provides a highly reliable, scalable, low-cost infrastructure platform in
the cloud that powers multitude of businesses in 190 countries around the world.
2.3 On-Demand Computing
What Is On-Demand Computing?
CLOUD COMPUTING CS & BCA
46 A. SIVASANKARI , SIASC.
On-demand computing is a business computing model in which computing
resources are made available to the user on an “as needed” basis. Rather than all at once,
on-demand computing allows cloud hosting companies to provide their clients with access
to computing resources as they become necessary.
What Are the Advantages of On-Demand Computing?
The on-demand computing model was developed to overcome the common
challenge that enterprises encountered of not being able to meet unpredictable, fluctuating
computing demands in an efficient manner. Businesses today need to be agile and need
the ability to scale resources easily and quickly based on rapidly changing market
needs. Because an enterprise’s demand for computing resources can vary dramatically
from one period of time to another, maintaining sufficient resources to meet peak
requirements can be costly. However, with on-demand computing, companies can cut
costs by maintaining minimal computing resources until they run into the need to increase
them, meanwhile only paying for what they use.
Industry experts predict on-demand computing to soon be the most widely used
computing model for enterprises. In fact, IBM’s vice-president of technology and strategy
stated, “The technology is at a point where we can start to move into an era of on-demand
computing. I give it between two and four years to reach a level of maturity.”
2.4 Discovering Cloud Services Development Services and Tools:
➢ Cloud computing is at an early stage of its development. This can be seen by
observing the large number of small and start-up companies offering cloud
development tools.
➢ In a more established industry, the smaller players eventually fall by the wayside as
larger companies take center stage.
➢ Cloud services development services and tools are offered by a variety of companies,
both large and small.
➢ The most basic offerings provide cloud-based hosting for applications developed from
scratch.
CLOUD COMPUTING CS & BCA
47 A. SIVASANKARI , SIASC.
➢ The more fully featured offerings include development tools and pre-built
applications that developers can use as the building blocks for their own unique web-
based applications.
2.5 Amazon
➢ Amazon, one of the largest retailers on the Internet, is also one of the primary
providers of cloud development services.
➢ Amazon has spent a lot of time and money setting up a multitude of servers to service
its popular website, and is making those vast hardware resources available for all
developers to use.
➢ The service in question is called the Elastic Compute Cloud, also known as EC2. This
is a commercial web service that allows developers and companies to rent capacity on
Amazon’s proprietary cloud of servers— which happens to be one of the biggest
server farms in the world.
➢ EC2 enables scalable deployment of applications by letting customers request a set
number of virtual machines, onto which they can load any application of their choice.
➢ Thus, customers can create, launch, and terminate server instances on demand,
creating a truly “elastic” operation. Amazon’s service lets customers choose from
three sizes of virtual servers:
• Small, which offers the equivalent of a system with 1.7GB of memory,160GB of
storage, and one virtual 32-bit core processor.
• Large, which offers the equivalent of a system with 7.5GB of memory,850GB of
storage, and two 64-bit virtual core processors.
• Extra large, which offers the equivalent of a system with 15GB of memory,1.7TB of
storage, and four virtual 64-bit core processors
• AWS offers comprehensive cloud IaaS services ranging from virtual compute ,
storage, and networking to complete computing stacks. AWS is mostly known for its
CLOUD COMPUTING CS & BCA
48 A. SIVASANKARI , SIASC.
compute and storage-on- demand services, namely Elastic Compute Cloud (EC2) and
Simple Storage Service (S3).
• EC2 provides users with customize able virtual hardware that can be used as the base
infrastructure for deploying computing systems on the cloud. It is possible to choose
from a large variety of virtual hardware configurations, including GPU and cluster
instances. EC2 instances are deployed either by using the AWS console, which is a
comprehensive Web portal for accessing AWS services, or by using the Web services
API available for several programming languages. EC2 also provides the capability to
save a specific running instance as an image, thus allowing users to create their own
templates for deploying systems. These templates are stored into S3 that delivers
persistent storage on demand. S3is organized into buckets; these are containers of
objects that are stored in binary form and can been riches with attributes .Users can
store objects of any size, from simple files to entire disk images, and have them
accessible from everywhere.
• Besides EC2 and S3, a wide range of services can be leveraged to build virtual
computing systems. Including networking support, caching systems, DNS, database
(relational and not) support, and others.
(In other words, you pick the size and power you want for your virtual server, and Amazon
does the rest)
2.6 EC2
➢ EC2 is just part of Amazon’s Web Services (AWS) set of offerings, which provides
developers with direct access to Amazon’s software and machines.
➢ By tapping into the computing power that Amazon has already constructed,
developers can build reliable, powerful, and low-cost web-based applications.
➢ Amazon provides the cloud (and access to it), and developers provide the rest. They
pay only for the computing power that they use.
➢ AWS is perhaps the most popular cloud computing service to date. Amazon claims a
market of more than 330,000 customers—a combination of developers, start-ups, and
established companies.
CLOUD COMPUTING CS & BCA
49 A. SIVASANKARI , SIASC.
FIGURE 2.12 EC2
2.7 Google App Engine
Google App Engine is a scalable runtime environment mostly devoted to executing
Web applications. These take advantage of the large computing infrastructure of Google to
dynamically scale as the demand varies overtime. App Engine provides both a secure
execution environment and a col-lection of services that simplify the development of scalable
and high-performance Web applications. These services include in memory caching, scalable
data store, job queues and messaging tasks. Developer scan build and test applications on
their own machines using the App Engine software development kit(SDK),which replicates
the production run time environment and helps test and profile applications. Once
development is complete, developers can easily migrate their application to AppEngine , set
quotas to contain the costs generated, and make the application available to the world. The
languages currently supported are Python, Java, and Go.
➢ Google is a leader in web-based applications, so it’s not surprising that the company
also offers cloud development services.
CLOUD COMPUTING CS & BCA
50 A. SIVASANKARI , SIASC.
➢ These services come in the form of the Google App Engine, which enables developers
to build their own web applications utilizing the same infrastructure that powers
Google’s powerful applications.
➢ The Google App Engine provides a fully integrated application environment. Using
Google’s development tools and computing cloud, App Engine applications are easy
to build, easy to maintain, and easy to scale.
➢ All you have to do is develop your application (using Google’s APIs and the Python
programming language) and upload it to the App Engine cloud; from there, it’s ready
to serve your users.
➢ As you might suspect, Google offers a robust cloud development environment. It
includes the following features:
• Dynamic web serving
• Full support for all common web technologies
• Persistent storage with queries, sorting, and transactions
• Automatic scaling and load balancing
• APIs for authenticating users and sending email using Google Accounts
➢ In addition, Google provides a fully featured local development environment that
simulates the Google App Engine on any desktop computer.
➢ And here’s one of the best things about Google’s offering: Unlike most other cloud
hosting solutions, Google App Engine is completely free to use—at a basic level,
anyway.
➢ A free App Engine account gets up to 500MB of storage and enough CPU strength
and bandwidth for about 5 million page views a month.
➢ If you need more storage, power, or capacity, Google intends to offer additional
resources (for a charge) in the near future.
CLOUD COMPUTING CS & BCA
51 A. SIVASANKARI , SIASC.
FIGURE 2.13 Google App Engine
CLOUD COMPUTING CS & BCA
52 A. SIVASANKARI , SIASC.
FIGURE 2.14 Google App Engine
2.8 IBM
➢ It’s not surprising, given the company’s strength in enterprise-level computer
hardware, that IBM is offering a cloud computing solution.
➢ The company is targeting small- and medium-sized businesses with a suite of cloud-
based ondemand services via its Blue Cloud initiative.
➢ Blue Cloud is a series of cloud computing offerings that enables enterprises to
distribute their computing needs across a globally accessible resource grid.
CLOUD COMPUTING CS & BCA
53 A. SIVASANKARI , SIASC.
FIGURE 2.15 IBM
➢ One such offering is the Express Advantage suite, which includes data backup and
recovery, email continuity and archiving, and data security functionality—some of the
more data-intensive processes handled by a typical IT department.
➢ To manage its cloud hardware, IBM provides open source workload-scheduling
software called Hadoop, which is based on the MapReduce software usedGoogle in
its offerings. Also included are PowerVM and Xen virtualization tools,along with
IBM’s Tivoli data center management software.
2.9 Salesforce.com
Salesforce.com is probably the most popular and developed CRM solution available
today. As of today more than 100,000 customers have chosen Safesforce.com to implement
their CRM solutions. The application provides customizable CRM solutions that can be
integrated with additional features developed by third parties.
CLOUD COMPUTING CS & BCA
54 A. SIVASANKARI , SIASC.
Salesforce.com is based on the Force.com cloud development platform. This
represents scalable and high-performance middleware executing all the operations of all
Salesforce.com applications. The architecture of the Force.com platform is shown in
Figure10.5. Initially designed to support scalable CRM applications, the platform has evolved
to support the entire life cycle of a wider range of cloud applications by implementing a
flexible and scalable infrastructure.
At the core of the platform resides its metadata architecture, which provides the
system with flexibility and scalability. Rather than being built on top of specific components
and tables, application core logic and business rules metadata into the Force.com store. Both
application structure and application data are stored in the store. A runtime engine executes
application logic by retrieving its metadata and then performing the operations on the data.
Although running in isolated containers, different applications logically share the same
database structure, and the runtime engine exe- cutes all of them uniformly.
A full-text search engine supports the runtime engine. This allows application users to
have an effective user experience despite the large amounts of data that need to be crawled.
The search engine maintains its indexing data in a separate store and is constantly updated by
background processes triggered by user interaction. Users can customize their application by
leveraging the “native” Force.com application frame- work or by using programmatic APIs in
the most popular programming languages.
The application framework allows users to visually define either the data or the core
structure of a Force.com application, while the programmatic APIs provide them with a more
conventional way for developing applications that relies on Web services to interact with the
platform. Customization of application processes and logic can also be implemented by
developing scripts in APEX. This is a Java-like language that provides object-oriented and
procedural capabilities for defining either scripts executed on demand or triggers. APEX also
offers the capability of expressing searches and queries to have complete access to the data
managed by the Force.com platform.
➢ Salesforce.com is probably best known for its sales management SaaS, but it’s also a
leader in cloud computing development.
➢ The company’s cloud computing architecture is dubbed Force.com. The platform as a
service is entirely on-demand, running across the Internet.
CLOUD COMPUTING CS & BCA
55 A. SIVASANKARI , SIASC.
➢ Salesforce provides its own Force.com API and developer’s toolkit. Pricing is on a
per log-in basis. Supplementing Force.com is AppExchange, a directory of web-based
applications.
➢ Developers can use AppExchange applications uploaded by others, share their own
applications in the directory, or publish private applications accessible only by
authorized companies or clients.
➢ Many applications in the AppExchange library are free, and others can be purchased
or licensed from the original developers.
➢ Most existing AppExchange applications are sales related—sales analysis tools, email
marketing systems, financial analysis apps, and so forth. But companies can use the
Force.com platform to develop any type of application.
➢ In fact, many small businesses have already jumped on the Force.com bandwagon.
For example, an April 2008 article in PC World magazine quoted Jonathan Snyder,
CTO of Dream builder Investments, a 10-person mortgage investment company in
New York.
➢ “We’re a small company,” Snyder said, “we don’t have the resources to focus on
buying servers and developing from scratch. For us, Force.com was really a jump-
start.”
Salesforce.com is the Enterprise Cloud Computing Company. Put simply, we provide
CRM and Collaboration applications that you access over the Internet and pay-as-you-go.
You can also build your own apps on our Force.com platform, all without the need to run and
manage your own data centre and software. Find out why more than 87,200 companies have
chosen salesforce.com to help run their business
CLOUD COMPUTING CS & BCA
56 A. SIVASANKARI , SIASC.
FIGURE 2.16 Salesforce.com
2.9.1PRODUCTS
1.Accounts and contacts
Everything you need to know about your customers and prospects - all in one place.
2.Marketing and leads
Close that gap between marketing and sales with better quality leads—and more of
them.
3.Opportunities and quotes
When you have critical deals in the works, don’t let anything slip through the cracks.
4.Jigsaw data services
Your CRM data just got a whole lot better with real-time contact info and automated
data hygiene.
5.Analytics and forecasting
Get the insight you need to keep your sales on track and moving efficiently
6.Approvals and workflow
Nothing should impede the momentum of your sales efforts. Drag and drop to create
automated processes with these tools.
7.Email and productivity
Don’t change the way you work. With the Sales Cloud , you can work seamlessly
with the tools you already use everyday.
CLOUD COMPUTING CS & BCA
57 A. SIVASANKARI , SIASC.
8.Content library
Stop searching aimlessly for that killer presentation… that new product datasheet…
that updated price sheet. It’s right at your fingertips.
9.Genius
Find sales insights when you need them most. Genius connects you with people and
resources to help you close deals.
10.Chatter
Collaborate instantly. Get real-time updates pushed to you on the people, data, and
documents that can help you close your deals.
11.Partners
Stop waiting for partner updates. Now you can have complete visibility into both
direct and indirect sales channels with one view.
12.Mobile
Having the latest information can improve customer relations and accelerate your
deals. Stay on top of your business from any location on any device.
13. AppExchange
Discover hundreds of apps that will expand your sales success. Want more solutions?
Look no further
Salesforce.com Support also offers:
Basic Support Premier Support
Premier Support
with Administration
Case limit Unlimited Unlimited Unlimited
Response time
2 business
days
2 hours 2 hours
Online customer portal Included Included Included
Live phone support 12/51
24/7 24/7
Assigned representative Yes (50 users)3
Yes (50 users)2
Health check (annual) Yes (50 users) Yes (50 users)
CLOUD COMPUTING CS & BCA
58 A. SIVASANKARI , SIASC.
Developer Support4
Yes Yes
Force.com app
extensions5
Yes Yes Yes
Administration Included
2.10 Other Cloud Services Development Tools
➢ Amazon, Google, IBM, and Salesforce.com aren’t the only companies offering tools
for cloud services developers.
➢ There are also a number of smaller companies working in this space that developers
should evaluate, and that end users may eventually become familiar with. These
companies include the following:
✓ 3tera (www.3tera.com)
✓ 10gen (www.10gen.com)
✓ Cohesive Flexible Technologies (www.cohesiveft.com)
✓ Joyent (www.joyent.com)
✓ Mosso (www.mosso.com)
✓ Nirvanix (www.nirvanix.com)
✓ Skytap (www.skytap.com).
✓ StrikeIron (www.strikeiron.com)
✓ Sun Microsystems has an R&D project, dubbed Project Caroline
✓ (www.projectcaroline.net)
This is the basic structure of AWS EC2, where EC2 stands for Elastic Compute Cloud.
EC2 allow users to use virtual machines of different configurations as per their requirement.
It allows various configuration options, mapping of individual server, various pricing
options, etc. We will discuss these in detail in AWS Products section. Following is the
diagrammatic representation of the architecture.
CLOUD COMPUTING CS & BCA
59 A. SIVASANKARI , SIASC.
FIGURE 2.17 AWS Products
Note − In the above diagram S3 stands for Simple Storage Service. It allows the users
to store and retrieve various types of data using API calls. It doesn’t contain any computing
element. We will discuss this topic in detail in AWS products section.
Load Balancing
➢ Load balancing simply means to hardware or software load over web servers, that
improver's the efficiency of the server as well as the application. Following is the
diagrammatic representation of AWS architecture with load balancing.
➢ Hardware load balancer is a very common network appliance used in traditional web
application architectures.
➢ AWS provides the Elastic Load Balancing service, it distributes the traffic to EC2
instances across multiple available sources, and dynamic addition and removal of
Amazon EC2 hosts from the load-balancing rotation.
➢ Elastic Load Balancing can dynamically grow and shrink the load-balancing
capacity to adjust to traffic demands and also support sticky sessions to address more
advanced routing needs.
Amazon Cloud-front
➢ It is responsible for content delivery, i.e. used to deliver website. It may contain
dynamic, static, and streaming content using a global network of edge locations.
CLOUD COMPUTING CS & BCA
60 A. SIVASANKARI , SIASC.
Requests for content at the user's end are automatically routed to the nearest edge
location, which improves the performance.
➢ Amazon Cloud-front is optimized to work with other Amazon Web Services, like
Amazon S3 and Amazon EC2. It also works fine with any non-AWS origin server
and stores the original files in a similar manner.
➢ In Amazon Web Services, there are no contracts or monthly commitments. We pay
only for as much or as little content as we deliver through the service.
Elastic Load Balancer
➢ It is used to spread the traffic to web servers, which improves performance. AWS
provides the Elastic Load Balancing service, in which traffic is distributed to EC2
instances over multiple available zones, and dynamic addition and removal of
Amazon EC2 hosts from the load-balancing rotation.
➢ Elastic Load Balancing can dynamically grow and shrink the load-balancing capacity
as per the traffic conditions.
Security Management
➢ Amazon’s Elastic Compute Cloud (EC2) provides a feature called security groups,
which is similar to an inbound network firewall, in which we have to specify the
protocols, ports, and source IP ranges that are allowed to reach your EC2 instances.
➢ Each EC2 instance can be assigned one or more security groups, each of which routes
the appropriate traffic to each instance. Security groups can be configured using
specific subnets or IP addresses which limits access to EC2 instances.
➢ Elastic Caches
➢ Amazon Elastic Cache is a web service that manages the memory cache in the cloud.
In memory management, cache has a very important role and helps to reduce the load
on the services, improves the performance and scalability on the database tier by
caching frequently used information.
Amazon RDS
➢ Amazon RDS (Relational Database Service) provides a similar access as that of
MySQL, Oracle, or Microsoft SQL Server database engine. The same queries,
applications, and tools can be used with Amazon RDS.
➢ It automatically patches the database software and manages backups as per the user’s
instruction. It also supports point-in-time recovery. There are no up-front investments
required, and we pay only for the resources we use.
CLOUD COMPUTING CS & BCA
61 A. SIVASANKARI , SIASC.
➢ Hosting RDMS on EC2 Instances
➢ Amazon RDS allows users to install RDBMS (Relational Database Management
System) of your choice like MySQL, Oracle, SQL Server, DB2, etc. on an EC2
instance and can manage as required.
➢ Amazon EC2 uses Amazon EBS (Elastic Block Storage) similar to network-attached
storage. All data and logs running on EC2 instances should be placed on Amazon
EBS volumes, which will be available even if the database host fails.
➢ Amazon EBS volumes automatically provide redundancy within the availability
zone, which increases the availability of simple disks. Further if the volume is not
sufficient for our databases needs, volume can be added to increase the performance
for our database.
➢ Using Amazon RDS, the service provider manages the storage and we only focus on
managing the data.
Storage & Backups
➢ AWS cloud provides various options for storing, accessing, and backing up web
application data and assets. The Amazon S3 (Simple Storage Service) provides a
simple web-services interface that can be used to store and retrieve any amount of
data, at any time, from anywhere on the web.
➢ Amazon S3 stores data as objects within resources called buckets. The user can store
as many objects as per requirement within the bucket, and can read, write and delete
objects from the bucket.
➢ Amazon EBS is effective for data that needs to be accessed as block storage and
requires persistence beyond the life of the running instance, such as database
partitions and application logs.
➢ Amazon EBS volumes can be maximized up to 1 TB, and these volumes can be
striped for larger volumes and increased performance. Provisioned IOPS volumes are
designed to meet the needs of database workloads that are sensitive to storage
performance and consistency.
➢ Amazon EBS currently supports up to 1,000 IOPS per volume. We can stripe
multiple volumes together to deliver thousands of IOPS per instance to an
application.
Auto Scaling
CLOUD COMPUTING CS & BCA
62 A. SIVASANKARI , SIASC.
➢ The difference between AWS cloud architecture and the traditional hosting model is
that AWS can dynamically scale the web application fleet on demand to handle
changes in traffic.
➢ In the traditional hosting model, traffic forecasting models are generally used to
provision hosts ahead of projected traffic. In AWS, instances can be provisioned on
the fly according to a set of triggers for scaling the fleet out and back in. Amazon
Auto Scaling can create capacity groups of servers that can grow or shrink on
demand.
➢ Key Considerations for Web Hosting in AWS
➢ Following are some of the key considerations for web hosting −
➢ No physical network devices needed
➢ In AWS, network devices like firewalls, routers, and load-balancers for AWS
applications no longer reside on physical devices and are replaced with software
solutions.
➢ Multiple options are available to ensure quality software solutions. For load
balancing choose Zeus, HAProxy, Nginx, Pound, etc. For establishing a VPN
connection choose OpenVPN, OpenSwan, Vyatta, etc.
No security concerns
➢ AWS provides a more secured model, in which every host is locked down. In
Amazon EC2, security groups are designed for each type of host in the architecture,
and a large variety of simple and tiered security models can be created to enable
minimum access among hosts within your architecture as per requirement.
Availability of data centers
➢ EC2 instances are easily available at most of the availability zones in AWS region
and provides model for deploying your application across data centers for both high
availability and reliability.
➢ AWS Management Console is a web application for managing Amazon Web
Services. AWS Management Console consists of list of various services to choose
from. It also provides all information related to our account like billing.
➢ This console provides an inbuilt user interface to perform AWS tasks like working
with Amazon S3 buckets, launching and connecting to Amazon EC2 instances,
setting Amazon Cloud Watch alarms, etc.
➢ Following is the screenshot of AWS management console for Amazon EC2 service.
CLOUD COMPUTING CS & BCA
63 A. SIVASANKARI , SIASC.
2.10.1 How to Access AWS?
➢ Step 1 − Click on services. We get a list of various services.
➢
➢ Step 2 − Select the choice from the list of categories and we get their sub-categories
such as Computer and Database category is selected in the following screenshots.
CLOUD COMPUTING CS & BCA
64 A. SIVASANKARI , SIASC.
Step 3 − Select the service of your choice and the console of that service will open.
➢ Customizing the Dashboard
➢ Creating Services Shortcuts
➢ Click the Edit menu on the navigation bar and a list of services appears. We can
create their shortcuts by simply dragging them from the menu bar to the navigation
bar.
➢ Adding Services Shortcuts
CLOUD COMPUTING CS & BCA
65 A. SIVASANKARI , SIASC.
➢ When we drag the service from the menu bar to the navigation bar, the shortcut will
be created and added. We can also arrange them in any order. In the following
screenshot we have created shortcut for S3, EMR and DynamoDB services.
Deleting Services Shortcuts
➢ To delete the shortcut, click the edit menu and drag the shortcut from the navigation
bar to the service menu. The shortcut will be removed. In the following screenshot,
we have removed the shortcut for EMR services.
➢ Selecting a Region
➢ Many of the services are region specific and we need to select a region so that
resources can be managed. Some of the services do not require a region to be selected
like AWS Identity and Access Management (IAM).
➢ To select a region, first we need to select a service. Click the Oregon menu (on the
left side of the console) and then select a region
CLOUD COMPUTING CS & BCA
66 A. SIVASANKARI , SIASC.
➢ Changing the Password
➢ We can change password of our AWS account. To change the password, following
are the steps.
➢ Step 1 − Click the account name on the left side of the navigation bar.
➢ Step 2 − Choose Security Credentials and a new page will open having various
options. Select the password option to change the password and follow the
instructions.
➢ Step 3 − After signing-in, a page opens again having certain options to change the
password and follow the instructions.
CLOUD COMPUTING CS & BCA
67 A. SIVASANKARI , SIASC.
➢
➢ When successful, we will receive a confirmation message.
➢ Know Your Billing Information
➢ Click the account name in the navigation bar and select the 'Billing & Cost
Management' option.
➢
➢ Now a new page will open having all the information related to money section. Using
this service, we can pay AWS bills, monitor our usage and budget estimation.
CLOUD COMPUTING CS & BCA
68 A. SIVASANKARI , SIASC.
➢
The AWS Console mobile app, provided by Amazon Web Services, allows its users to
view resources for select services and also supports a limited set of management functions
for select resource types.
Following are the various services and supported functions that can be accessed using the
mobile app.
EC2 (Elastic Compute Cloud)
• Browse, filter and search instances.
• View configuration details.
• Check status of CloudWatch metrics and alarms.
• Perform operations over instances like start, stop, reboot, termination.
• Manage security group rules.
• Manage Elastic IP Addresses.
• View block devices.
Elastic Load Balancing
• Browse, filter and search load balancers.
• View configuration details of attached instances.
• Add and remove instances from load balancers.
S3
• Browse buckets and view their properties.
• View properties of objects.
Route 53
• Browse and view hosted zones.
• Browse and view details of record sets.
CLOUD COMPUTING CS & BCA
69 A. SIVASANKARI , SIASC.
RDS (Relational Database Service)
• Browse, filter, search and reboot instances.
• View configuration details, security and network settings.
Auto Scaling
• View group details, policies, metrics and alarms.
• Manage the number of instances as per the situation.
Elastic Beanstalk
• View applications and events.
• View environment configuration and swap environment CNAMEs.
• Restart app servers.
DynamoDB
• View tables and their details like metrics, index, alarms, etc.
CloudFormation
• View stack status, tags, parameters, output, events, and resources.
OpsWorks
• View configuration details of stack, layers, instances and applications.
• View instances, its logs, and reboot them.
CloudWatch
• View CloudWatch graphs of resources.
• List CloudWatch alarms by status and time.
• Action configurations for alarms.
Services Dashboard
• Provides information of available services and their status.
• All information related to the billing of the user.
• Switch the users to see the resources in multiple accounts.
Features of AWS Mobile App
To have access to the AWS Mobile App, we must have an existing AWS account.
Simply create an identity using the account credentials and select the region in the menu.
This app allows us to stay signed in to multiple identities at the same time.
For security reasons, it is recommended to secure the device with a passcode and to
use an IAM user's credentials to log in to the app. In case the device is lost, then the IAM
user can be deactivated to prevent unauthorized access.
CLOUD COMPUTING CS & BCA
70 A. SIVASANKARI , SIASC.
Root accounts cannot be deactivated via mobile console. While using AWS Multi-
Factor Authentication (MFA), it is recommended to use either a hardware MFA device or a
virtual MFA on a separate mobile device for account security reasons.
2.10.2 How to Use AWS Account?
Following are the steps to access AWS services −
• Create an AWS account.
• Sign-up for AWS services.
• Create your password and access your account credentials.
• Activate your services in credits section.
Create an AWS Account
Amazon provides a fully functional free account for one year for users to use and
learn the different components of AWS. You get access to AWS services like EC2, S3,
DynamoDB, etc. for free. However, there are certain limitations based on the resources
consumed.
Step 1 − To create an AWS account, open this link https://aws.amazon.com and sign-up for
new account and enter the required details.
If we already have an account, then we can sign-in using the existing AWS password.
CLOUD COMPUTING CS & BCA
71 A. SIVASANKARI , SIASC.
Step 2 − After providing an email-address, complete this form. Amazon uses this
information for billing, invoicing and identifying the account. After creating the account,
sign-up for the services needed.
CLOUD COMPUTING CS & BCA
72 A. SIVASANKARI , SIASC.
Step 3 − To sign-up for the services, enter the payment information. Amazon executes a
minimal amount transaction against the card on the file to check that it is valid. This charge
varies with the region.
Step 4 − Next, is the identity verification. Amazon does a call back to verify the provided
contact number.
Step 5 − Choose a support plan. Subscribe to one of the plans like Basic, Developer,
Business, or Enterprise. The basic plan costs nothing and has limited resources, which is
good to get familiar with AWS.
Step 6 − The final step is confirmation. Click the link to login again and it redirects to AWS
management console.
CLOUD COMPUTING CS & BCA
73 A. SIVASANKARI , SIASC.
Now the account is created and can be used to avail AWS services.
AWS Account Identifiers
AWS assigns two unique IDs to each AWS account.
• An AWS account ID
• A conical user ID
AWS Account ID
It is a 12-digit number like 123456789000 and is used to construct Amazon Resource
Names (ARN). This ID helps to distinguish our resources from resources in other AWS
accounts.
To know the AWS account number, click Support on the upper right side of the navigation
bar in AWS management console as shown in the following screenshot.
Conical String User ID
It is a long string of alphanumeric characters like 1234abcdef1234. This ID is used in
Amazon S3 bucket policy for cross-account access, i.e. to access resources in another AWS
account.
Account Alias
Account alias is the URL for your sign-in page and contains the account ID by
default. We can customize this URL with the company name and even overwrite the
previous one.
2.10.3 How to Create/Delete Your Own AWS Account Alias?
CLOUD COMPUTING CS & BCA
74 A. SIVASANKARI , SIASC.
Step 1 − Sign in to the AWS management console and open the IAM console using the
following link https://console.aws.amazon.com/iam/
Step 2 − Select the customize link and create an alias of choice.
Step 3 − To delete the alias, click the customize link, then click the Yes, Delete button. This
deletes the alias and it reverts to the Account ID.
Multi Factor Authentication
Multi Factor Authentication (MFA) provides additional security by authenticating
the users to enter a unique authentication code from an approved authentication device or
SMS text message when they access AWS websites or services. If the MFA code is correct,
then only the user can access AWS services or else not.
Requirements
CLOUD COMPUTING CS & BCA
75 A. SIVASANKARI , SIASC.
To use MFA services, the user has to assign a device (hardware or virtual) to IAM
user or AWS root account. Each MFA device assigned to the user must be unique, i.e. the
user cannot enter a code from another user's device to authenticate.
How to Enable MFA Device?
Step 1 − Open the following link, https:// console.aws.amazon.com/iam/
Step 2 − On the web page, choose users from the navigation pane on the right side to view
the list of user name.
Step 3 − Scroll down to security credentials and choose MFA. Click activate MFA.
Step 4 − Follow the instructions and the MFA device will get activated with the account.
There are 3 ways to enable a MFA device −
SMS MFA Device
In this method, MFA requires us to configure the IAM user with the phone number of
the user's SMS-compatible mobile device. When the user signs in, AWS sends a six-digit
code by SMS text message to the user's mobile device. The user is required to enter the same
code on a second web page during sign-in to authenticate the right user. This SMS-based
MFA cannot be used with AWS root account.
Hardware MFA Device
In this method, MFA requires us to assign an MFA device (hardware) to the IAM
user or the AWS root account. The device generates a six-digit numeric code based upon a
CLOUD COMPUTING CS & BCA
76 A. SIVASANKARI , SIASC.
time synchronized one-time password algorithm. The user has to enter the same code from
the device on a second web page during sign-in to authenticate the right user.
Virtual MFA Device
In this method, MFA requires us to assign an MFA device (virtual) to the IAM user
or the AWS root account. A virtual device is a software application (mobile app) running on
a mobile device that emulates a physical device. The device generates a six-digit numeric
code based upon a time-synchronized one-time password algorithm. The user has to enter
the same code from the device on a second web page during sign-in to authenticate the right
user.
AWS Identity & Access Management (IAM)
IAM is a user entity which we create in AWS to represent a person that uses it with
limited access to resources. Hence, we do not have to use the root account in our day-to-day
activities as the root account has unrestricted access to our AWS resources.
How to Create Users in IAM?
Step 1 − Open the link https://console.aws.amazon.com/iam/ to sign-in to AWS
Management console.
Step 2 − Select the Users option on the left navigation pane to open the list of all users.
CLOUD COMPUTING CS & BCA
77 A. SIVASANKARI , SIASC.
Step 3 − We can also create New Users using the Create New Users option, a new window
will open. Enter the user-name which we want to create. Select the create option and a new
user will be created.
Step 4 − We can also see Access Key IDs and secret keys by selecting Show Users Security
Credentials link. We can also save these details on the computer using the Download
Credentials option.
Step 5 − We can manage the user’s own security credentials like creating password,
managing MFA devices, managing security certificates, creating/deleting access keys,
adding user to groups, etc.
CLOUD COMPUTING CS & BCA
78 A. SIVASANKARI , SIASC.
There are many more features that are optional and are available on the web page.
2.11 AWS - Elastic Compute Cloud
Amazon EC2 (Elastic Compute Cloud) is a web service interface that provides
resizable compute capacity in the AWS cloud. It is designed for developers to have complete
control over web-scaling and computing resources.
EC2 instances can be resized and the number of instances scaled up or down as per
our requirement. These instances can be launched in one or more geographical locations or
regions, and Availability Zones (AZs). Each region comprises of several AZs at distinct
locations, connected by low latency networks in the same region.
2.12 EC2 Components
In AWS EC2, the users must be aware about the EC2 components, their operating
systems support, security measures, pricing structures, etc.
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI
CLOUD COMPUTING BY SIVASANKARI

Weitere ähnliche Inhalte

Was ist angesagt?

Virtualization in cloud computing ppt
Virtualization in cloud computing pptVirtualization in cloud computing ppt
Virtualization in cloud computing pptMehul Patel
 
Distributed Computing system
Distributed Computing system Distributed Computing system
Distributed Computing system Sarvesh Meena
 
Unit 2 -Cloud Computing Architecture
Unit 2 -Cloud Computing ArchitectureUnit 2 -Cloud Computing Architecture
Unit 2 -Cloud Computing ArchitectureMonishaNehkal
 
Evolution of the cloud
Evolution of the cloudEvolution of the cloud
Evolution of the cloudsagaroceanic11
 
Cloud Computing- components, working, pros and cons
Cloud Computing- components, working, pros and consCloud Computing- components, working, pros and cons
Cloud Computing- components, working, pros and consAmritpal Singh Bedi
 
Programming Elasticity in the Cloud
Programming Elasticity in the CloudProgramming Elasticity in the Cloud
Programming Elasticity in the CloudHong-Linh Truong
 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systemsSHATHAN
 
Load balancing in cloud computing.pptx
Load balancing in cloud computing.pptxLoad balancing in cloud computing.pptx
Load balancing in cloud computing.pptxHitesh Mohapatra
 
Deployment Models of Cloud Computing.pptx
Deployment Models of Cloud Computing.pptxDeployment Models of Cloud Computing.pptx
Deployment Models of Cloud Computing.pptxJaya Silwal
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Enginerajdeep
 
Migration into a Cloud
Migration into a CloudMigration into a Cloud
Migration into a CloudDivya S
 
Presentation on Cloud Computing
Presentation on Cloud ComputingPresentation on Cloud Computing
Presentation on Cloud ComputingHarpreetKaur1382
 
cloud virtualization technology
 cloud virtualization technology  cloud virtualization technology
cloud virtualization technology Ravindra Dastikop
 

Was ist angesagt? (20)

Virtualization in cloud computing ppt
Virtualization in cloud computing pptVirtualization in cloud computing ppt
Virtualization in cloud computing ppt
 
Resource management
Resource managementResource management
Resource management
 
Distributed Computing system
Distributed Computing system Distributed Computing system
Distributed Computing system
 
Unit 2 -Cloud Computing Architecture
Unit 2 -Cloud Computing ArchitectureUnit 2 -Cloud Computing Architecture
Unit 2 -Cloud Computing Architecture
 
Evolution of the cloud
Evolution of the cloudEvolution of the cloud
Evolution of the cloud
 
Cloud Computing- components, working, pros and cons
Cloud Computing- components, working, pros and consCloud Computing- components, working, pros and cons
Cloud Computing- components, working, pros and cons
 
Application of Cloud Computing
Application of Cloud ComputingApplication of Cloud Computing
Application of Cloud Computing
 
Trends in distributed systems
Trends in distributed systemsTrends in distributed systems
Trends in distributed systems
 
IaaS, SaaS, PasS : Cloud Computing
IaaS, SaaS, PasS : Cloud ComputingIaaS, SaaS, PasS : Cloud Computing
IaaS, SaaS, PasS : Cloud Computing
 
Programming Elasticity in the Cloud
Programming Elasticity in the CloudProgramming Elasticity in the Cloud
Programming Elasticity in the Cloud
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systems
 
Server Virtualization
Server VirtualizationServer Virtualization
Server Virtualization
 
cloud computing basics
cloud computing basicscloud computing basics
cloud computing basics
 
Load balancing in cloud computing.pptx
Load balancing in cloud computing.pptxLoad balancing in cloud computing.pptx
Load balancing in cloud computing.pptx
 
Deployment Models of Cloud Computing.pptx
Deployment Models of Cloud Computing.pptxDeployment Models of Cloud Computing.pptx
Deployment Models of Cloud Computing.pptx
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Migration into a Cloud
Migration into a CloudMigration into a Cloud
Migration into a Cloud
 
Presentation on Cloud Computing
Presentation on Cloud ComputingPresentation on Cloud Computing
Presentation on Cloud Computing
 
cloud virtualization technology
 cloud virtualization technology  cloud virtualization technology
cloud virtualization technology
 

Ähnlich wie CLOUD COMPUTING BY SIVASANKARI

Cc unit 1 ppt
Cc unit 1 pptCc unit 1 ppt
Cc unit 1 pptDr VISU P
 
Introduction Of Cloud Computing
Introduction Of Cloud ComputingIntroduction Of Cloud Computing
Introduction Of Cloud ComputingMonica Rivera
 
Understanding the Cloud Computing: A Review
Understanding the Cloud Computing: A ReviewUnderstanding the Cloud Computing: A Review
Understanding the Cloud Computing: A ReviewIJEACS
 
Cloud computing presentation
Cloud computing presentationCloud computing presentation
Cloud computing presentationAhmed Abdisalan
 
Group seminar report on cloud computing
Group seminar report on cloud computingGroup seminar report on cloud computing
Group seminar report on cloud computingSandhya Rathi
 
Cloud computing
Cloud computingCloud computing
Cloud computingshethzaid
 
Core of Cloud Computing
Core of Cloud ComputingCore of Cloud Computing
Core of Cloud ComputingIJERA Editor
 
cloud computting
cloud computtingcloud computting
cloud computtingAvinash Ram
 
cloud computing cc module 1 notes for BE
cloud computing cc module 1 notes for BEcloud computing cc module 1 notes for BE
cloud computing cc module 1 notes for BELipikaSlt
 
Cloud computing course and tutorials
Cloud computing course and tutorialsCloud computing course and tutorials
Cloud computing course and tutorialsUdara Sandaruwan
 
cloude computing report
cloude computing reportcloude computing report
cloude computing reportKrishnalal Kj
 
A Comprehensive Study On Cloud Computing
A Comprehensive Study On Cloud ComputingA Comprehensive Study On Cloud Computing
A Comprehensive Study On Cloud ComputingSteven Wallach
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud ComputingAnimesh Chaturvedi
 
Zpryme Report on Cloud and SAS Solutions
Zpryme Report on Cloud and SAS SolutionsZpryme Report on Cloud and SAS Solutions
Zpryme Report on Cloud and SAS SolutionsPaula Smith
 

Ähnlich wie CLOUD COMPUTING BY SIVASANKARI (20)

Cc unit 1 ppt
Cc unit 1 pptCc unit 1 ppt
Cc unit 1 ppt
 
Introduction Of Cloud Computing
Introduction Of Cloud ComputingIntroduction Of Cloud Computing
Introduction Of Cloud Computing
 
Cloud computing report
Cloud computing reportCloud computing report
Cloud computing report
 
Understanding the Cloud Computing: A Review
Understanding the Cloud Computing: A ReviewUnderstanding the Cloud Computing: A Review
Understanding the Cloud Computing: A Review
 
Cloud computing presentation
Cloud computing presentationCloud computing presentation
Cloud computing presentation
 
Cloud Computing_2015_03_05
Cloud Computing_2015_03_05Cloud Computing_2015_03_05
Cloud Computing_2015_03_05
 
A REVIEW ON RESOURCE ALLOCATION MECHANISM IN CLOUD ENVIORNMENT
A REVIEW ON RESOURCE ALLOCATION MECHANISM IN CLOUD ENVIORNMENTA REVIEW ON RESOURCE ALLOCATION MECHANISM IN CLOUD ENVIORNMENT
A REVIEW ON RESOURCE ALLOCATION MECHANISM IN CLOUD ENVIORNMENT
 
Group seminar report on cloud computing
Group seminar report on cloud computingGroup seminar report on cloud computing
Group seminar report on cloud computing
 
Understanding Cloud Computing
Understanding Cloud ComputingUnderstanding Cloud Computing
Understanding Cloud Computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud final with_lab
Cloud final with_labCloud final with_lab
Cloud final with_lab
 
Core of Cloud Computing
Core of Cloud ComputingCore of Cloud Computing
Core of Cloud Computing
 
cloud computting
cloud computtingcloud computting
cloud computting
 
cloud computing cc module 1 notes for BE
cloud computing cc module 1 notes for BEcloud computing cc module 1 notes for BE
cloud computing cc module 1 notes for BE
 
Cloud computing course and tutorials
Cloud computing course and tutorialsCloud computing course and tutorials
Cloud computing course and tutorials
 
cloude computing report
cloude computing reportcloude computing report
cloude computing report
 
A Comprehensive Study On Cloud Computing
A Comprehensive Study On Cloud ComputingA Comprehensive Study On Cloud Computing
A Comprehensive Study On Cloud Computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
Zpryme Report on Cloud and SAS Solutions
Zpryme Report on Cloud and SAS SolutionsZpryme Report on Cloud and SAS Solutions
Zpryme Report on Cloud and SAS Solutions
 

Mehr von SivaSankari36

DATA STRUCTURE BY SIVASANKARI
DATA STRUCTURE BY SIVASANKARIDATA STRUCTURE BY SIVASANKARI
DATA STRUCTURE BY SIVASANKARISivaSankari36
 
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARIMOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARISivaSankari36
 
JAVA BOOK BY SIVASANKARI
JAVA BOOK BY SIVASANKARIJAVA BOOK BY SIVASANKARI
JAVA BOOK BY SIVASANKARISivaSankari36
 
MOBILE COMPUTING BY SIVASANKARI
MOBILE COMPUTING BY SIVASANKARIMOBILE COMPUTING BY SIVASANKARI
MOBILE COMPUTING BY SIVASANKARISivaSankari36
 
PROGRAMMING IN JAVA- unit 5-part II
PROGRAMMING IN JAVA- unit 5-part IIPROGRAMMING IN JAVA- unit 5-part II
PROGRAMMING IN JAVA- unit 5-part IISivaSankari36
 
PROGRAMMING IN JAVA -unit 5 -part I
PROGRAMMING IN JAVA -unit 5 -part IPROGRAMMING IN JAVA -unit 5 -part I
PROGRAMMING IN JAVA -unit 5 -part ISivaSankari36
 
PROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part IIPROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part IISivaSankari36
 
PROGRAMMING IN JAVA- unit 4-part I
PROGRAMMING IN JAVA- unit 4-part IPROGRAMMING IN JAVA- unit 4-part I
PROGRAMMING IN JAVA- unit 4-part ISivaSankari36
 
PROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part IIPROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part IISivaSankari36
 
Functional MRI using Apache Spark in Big Data Application
Functional MRI using Apache Spark in Big Data ApplicationFunctional MRI using Apache Spark in Big Data Application
Functional MRI using Apache Spark in Big Data ApplicationSivaSankari36
 
Java unit1 b- Java Operators to Methods
Java  unit1 b- Java Operators to MethodsJava  unit1 b- Java Operators to Methods
Java unit1 b- Java Operators to MethodsSivaSankari36
 
Java unit1 a- History of Java to string
Java unit1 a- History of Java to stringJava unit1 a- History of Java to string
Java unit1 a- History of Java to stringSivaSankari36
 

Mehr von SivaSankari36 (14)

DATA STRUCTURE BY SIVASANKARI
DATA STRUCTURE BY SIVASANKARIDATA STRUCTURE BY SIVASANKARI
DATA STRUCTURE BY SIVASANKARI
 
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARIMOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
 
JAVA BOOK BY SIVASANKARI
JAVA BOOK BY SIVASANKARIJAVA BOOK BY SIVASANKARI
JAVA BOOK BY SIVASANKARI
 
MOBILE COMPUTING BY SIVASANKARI
MOBILE COMPUTING BY SIVASANKARIMOBILE COMPUTING BY SIVASANKARI
MOBILE COMPUTING BY SIVASANKARI
 
PROGRAMMING IN JAVA- unit 5-part II
PROGRAMMING IN JAVA- unit 5-part IIPROGRAMMING IN JAVA- unit 5-part II
PROGRAMMING IN JAVA- unit 5-part II
 
PROGRAMMING IN JAVA -unit 5 -part I
PROGRAMMING IN JAVA -unit 5 -part IPROGRAMMING IN JAVA -unit 5 -part I
PROGRAMMING IN JAVA -unit 5 -part I
 
PROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part IIPROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part II
 
PROGRAMMING IN JAVA- unit 4-part I
PROGRAMMING IN JAVA- unit 4-part IPROGRAMMING IN JAVA- unit 4-part I
PROGRAMMING IN JAVA- unit 4-part I
 
PROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part IIPROGRAMMING IN JAVA-unit 3-part II
PROGRAMMING IN JAVA-unit 3-part II
 
PROGRAMMING IN JAVA
PROGRAMMING IN JAVAPROGRAMMING IN JAVA
PROGRAMMING IN JAVA
 
PROGRAMMING IN JAVA
PROGRAMMING IN JAVAPROGRAMMING IN JAVA
PROGRAMMING IN JAVA
 
Functional MRI using Apache Spark in Big Data Application
Functional MRI using Apache Spark in Big Data ApplicationFunctional MRI using Apache Spark in Big Data Application
Functional MRI using Apache Spark in Big Data Application
 
Java unit1 b- Java Operators to Methods
Java  unit1 b- Java Operators to MethodsJava  unit1 b- Java Operators to Methods
Java unit1 b- Java Operators to Methods
 
Java unit1 a- History of Java to string
Java unit1 a- History of Java to stringJava unit1 a- History of Java to string
Java unit1 a- History of Java to string
 

Kürzlich hochgeladen

GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Dust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSEDust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSEaurabinda banchhor
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
The Contemporary World: The Globalization of World Politics
The Contemporary World: The Globalization of World PoliticsThe Contemporary World: The Globalization of World Politics
The Contemporary World: The Globalization of World PoliticsRommel Regala
 
TEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxTEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxruthvilladarez
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfErwinPantujan2
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 

Kürzlich hochgeladen (20)

GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Dust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSEDust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSE
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
The Contemporary World: The Globalization of World Politics
The Contemporary World: The Globalization of World PoliticsThe Contemporary World: The Globalization of World Politics
The Contemporary World: The Globalization of World Politics
 
TEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxTEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docx
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 

CLOUD COMPUTING BY SIVASANKARI

  • 1. CLOUD COMPUTING CS & BCA 1 A. SIVASANKARI , SIASC. CLOUD COMPUTING DEPARTMENT OF COMPUTER SCIENCE AND COMPUTER APPLICATIONS Ms. A. SIVASANKARI ASSISTANT PROFESSOR DEPT OF COMPUTER APPLICATIONS SHANMUGA INDUSTRIES ARTS AND SCIENCE COLLEGE, TIRUVANNAMALAI, 606601. Dr. M. SOBIA ASSISTANT PROFESSOR DEPT OF COMPUTER APPLICATIONS DONBOSCO COLLEGE TIRUPATTUR. Mr. R. RAJESH BABU TEACHER GOVT GIRLS HIGHER SEC SCHOOL, VILLUPURAM.
  • 2. CLOUD COMPUTING CS & BCA 2 A. SIVASANKARI , SIASC. SYLLABUS CLOUD COMPUTING Objective: To enable the students to learn the basic functions, principles and concepts of cloud Systems. UNIT I: UNDERSTANDING CLOUD COMPUTING Cloud Computing – History of Cloud Computing – Cloud Architecture – Cloud Storage – Why Cloud Computing Matters – Advantages of Cloud Computing – Disadvantages of Cloud Computing – Cloud Services. UNIT II: DEVELOPING CLOUD SERVICES Types of Cloud Service Development – Software as a Service – Platform as a Service – Web Services – On-Demand Computing – Discovering Cloud Services Development Services and Tools – Amazon Ec2 – Google App Engine – IBM Clouds. UNIT III: CLOUD COMPUTING FOR EVERYONE Centralizing Email Communications – Collaborating on Schedules – Collaborating on To-Do Lists – Cloud Computing for the Community – Collaborating on Group Projects and Events. UNIT IV: PROGRAMMING MODEL Parallel and Distributed Programming Paradigms – Map Reduce, Twister and Iterative Map Reduce – Hadoop Library from Apache – Mapping Applications - Programming Support - Google App Engine, Amazon AWS - Cloud Software Environments -Eucalyptus, Open Nebula, Open Stack, Aneka, CloudSim. UNIT V: SECURITY IN THE CLOUD Security Overview - Cloud Security Challenges and Risks - Software-as-a-Service Security- Security Governance - Risk Management - Security Monitoring - Security Architecture Design - Data Security - Application Security - Virtual Machine Security - Identity Management and Access Control - Autonomic Security.
  • 3. CLOUD COMPUTING CS & BCA 3 A. SIVASANKARI , SIASC. TEXT BOOK: 1. Michael Miller, “Cloud Computing: Web-Based Applications That Change the Way You Work and Collaborate Online”, Que Publishing, August 2008. REFERENCES: 1. Kai Hwang, Geoffrey C Fox, Jack G Dongarra, “Distributed and Cloud Computing, From Parallel Processing to the Internet of Things”, Morgan Kaufmann Publishers, 2012. 2. John W.Rittinghouse and James F.Ransome, “Cloud Computing: Implementation, Management, and Security”, CRC Press, 2010. 3. Toby Velte, Anthony Velte, Robert Elsenpeter, “Cloud Computing, A Practical Approach”, TMH, 2009. 4. Kumar Saurabh, “Cloud Computing – insights into New-Era Infrastructure”, Wiley India, 2011. 5. George Reese, “Cloud Application Architectures: Building Applications and Infrastructure in the Cloud” O'Reilly . 6. Arshdeep Bahga, Vijay Madisetti, “Cloud Computing - A Hands-On Approach”, CreateSpace Independent Publishing Platform; 1 edition (December 9, 2013) 7. Barrie Sosinsky,”Cloud Computing Bible”, John Wiley & Sons,2010 8. Rajkumar Buyya, James Broberg, Andrzej M. Goscinski, “Cloud Computing: Principles and Paradigms”, John Wiley & Sons. ,2010. 9. Rajkumar Buyya, Christian Vecchiola , S. ThamaraiSelvi, “Mastering Cloud Computing “ Morgan Kaufmann,2013.
  • 4. CLOUD COMPUTING CS & BCA 4 A. SIVASANKARI , SIASC. UNIT – I CLOUD COMPUTING 1. INTRODUCTION Cloud Computing provides us means of accessing the applications as utilities over the Internet. It allows us to create, configure, and customize the applications online. The term Cloud refers to a Network or Internet. In other words, we can say that Cloud is something, which is present at remote location. Cloud can provide services over public and private networks, i.e., WAN, LAN or VPN. Applications such as e-mail, web conferencing, customer relationship management (CRM) execute on cloud. Cloud Computing refers to manipulating, configuring, and accessing the hardware and software resources remotely. It offers online data storage, infrastructure, and application. Computing is being transformed into a model consisting of services that are commoditized and delivered in manner similar utilities such as water, electricity, gas, and telephony. In such a model, users access services based on their requirements, regardless of where the services are hosted. Several computing paradigms, such as s grid computing, have promised to deliver this utility Computing vision. Cloud computing is the most recent emerging paradigm promising to turn the vision of “computing utilities” into are laity. Cloud computing is a technological advancement that focuses on the way we design computing systems, develop applications, and leverage existing services for building software. It is based on the concept of dynamic provisioning, which is applied not only to services but also to compute capability, storage, networking, and information technology(IT) infrastructure in general. Resources are made available through the Internet and offered on a pay-per-use basis from cloud computing vendors. Today, anyone with a credit card can subscribe to cloud services and deploy and configure servers for an application in hours, growing and shrinking the infrastructure serving its application according to the demand, and paying only for the time these resources have been used. Cloud computing has become a popular buzzword; it has been widely used to refer to different technologies, services, and concepts. It is often associated with virtualized
  • 5. CLOUD COMPUTING CS & BCA 5 A. SIVASANKARI , SIASC. infrastructure or hard- ware on demand, utility computing, IT outsourcing, platform and software as a service, and many other things that now are the focus of the IT industry. Characteristics and benefits Cloud computing has some interesting characteristics that bring benefits to both cloud service consumers (CSCs) and cloud service providers (CSPs). These characteristics are: • No up-front commitments • On-demand access • Nice pricing • Simplified application acceleration and scalability • Efficient resource allocation • Energy efficiency • Seamless creation and use of third-party services Principles of Parallel and Distributed Computing Cloud computing is a new technological trend that supports better utilization of IT infrastructures, services, and applications. It adopts a service delivery model based on a pay- per-use approach, in which users do not own infrastructure, platform, or applications but use them for the time they need them. These IT assets are owned and maintained by service providers who make them accessible through the Internet. This chapter presents the fundamental principles of parallel and distributed computing and dis- cusses models and conceptual frameworks that serve as foundations for building cloud computing systems and applications. Eras of computing. The two fundamental and dominant models of computing are sequential and parallel. This quintal computing era began in the1940s; The parallel (and distributed) computing era followed it within a decade. The four key elements of computing developed during the seer as are architectures, compilers, applications, and problem solving environments. The computing era started with a development in hardware architectures, which actually enabled the creation of system software particularly in the area of compilers and operating systems which support the management to such systems and the development to applications. The development of applications and systems are the major element of interest to us, and it comes to consolidation
  • 6. CLOUD COMPUTING CS & BCA 6 A. SIVASANKARI , SIASC. when problem solving environments were designed and introduced to facilitate and empower engineers. This is when the paradigm characterizing the computing achieved maturity and became main stream. Moreover, every aspect of this era underwent a three-phase process: research and development (R&D), commercialization, and commoditization Parallel vs. distributed computing The terms parallel computing and distributed computing are often used interchangeably, even though they means lightly different things. The term parallel implies a tightly coupled system, whereas distributed refers to a wider class of system, including those that are tightly coupled. More precisely, the term parallel computing refers to a model in which the computation is divided among several processors sharing the same memory. The architecture of a parallel computing system is often characterized by the homogeneity of components: each processor is of the same type and it has the same capability as the others. The shared memory has a single address space, which is accessible to all the processors. Parallel programs are then broken down in to several units of execution that can be allocated to different processors and can communicate with each other by means of the shared memory. Originally we considered parallel systems only those architectures that featured multiple processors sharing the same physical memory and that were considered a single computer. Overtime, these restrictions have been relaxed, and parallel systems now include all architectures that are based on the concept of shared memory, whether this is physically present or created with the support of libraries, specific hardware, and a highly efficient networking infrastructure. For example, a cluster of which the nodes are connected through an Infinib and network and configured with a distributed shared memory system can be considered a parallel system. The term distributed computing encompasses any architecture or system that allows the computation to be broken down in to units and executed concurrently on different computing elements, whether these are processors on different nodes , processors on the same computer, or cores within the same processor. Therefore, distributed computing includes a wider range of systems and applications than parallel computing and is often considered a more general term. Even though it is not a rule, the term distributed often implies that the locations of the computing elements are not the same and such elements might be heterogeneous in terms of hard ware and software features. Classic examples of distributed computing systems are computing grids or Internet computing systems, which combine together the biggest variety of architectures, systems, and applications in the world.
  • 7. CLOUD COMPUTING CS & BCA 7 A. SIVASANKARI , SIASC. Cloud computing might sound far-fetched, but chances are you’re already using some cloud applications. If you’re using a web-based email program, such as Gmail or Hotmail, you’re computing in the cloud. If you’re using a web-based application such as Google Calendar or Apple Mobile Me, you’re computing in the cloud. If you’re using a file- or photo-sharing site, such as Flickr or Picasa Web Albums, you’re computing in the cloud. It’s the technology of the future, available to use today. The emergence of cloud computing is the computing equivalent of the electricity revolution of a century ago. Before the advent of electrical utilities, every farm and business produced its own electricity from freestanding generators. After the electrical grid was created, farms and businesses shut down their generators and bought electricity from the utilities, at a much lower price (and with much greater reliability) than they could produce on their own. FIGURE 1.1 CLOUD COMPUTING Look for the same type of revolution to occur as cloud computing takes hold. The desktop-centric notion of computing that we hold today is bound to fall by the wayside as we come to expect the universal access, 24/7 reliability, and ubiquitous collaboration promised by cloud computing. Cloud computing offers platform independency, as the software is not required to be installed locally on the PC. Hence, the Cloud Computing is making our business applications mobile and collaborative. The key to cloud computing is the “cloud”—a massive network of servers or even individual PCs interconnected in a grid. These computers run in parallel, combining the resources of each to generate supercomputing-like power
  • 8. CLOUD COMPUTING CS & BCA 8 A. SIVASANKARI , SIASC. 1.2 PROPERTIES OF CLOUD COMPUTING It might help to examine how one of the pioneers of cloud computing, Google, perceives the topic. From Google’s perspective, there are six key properties of cloud computing: • Cloudcomputingis user-centric. Once you as a user are connected to the cloud, whatever is stored there documents, messages, images, applications, whatever becomes yours. In addition, not only is the data yours, but you can also share it with others. In effect, any device that accesses your data in the cloud also becomes yours. • Cloudcomputingistask-centric. Instead of focusing on the application and what it can do, the focus is on what you need done and how the application can do it for you., Traditional applications word processing, spreadsheets, email, and so on are becoming less important than the documents they create. • Cloud computing is powerful. Connecting hundreds or thousands of computers together in a cloud creates a wealth of computing power impossible with a single desktop PC. • Cloud computing is accessible. Because data is stored in the cloud, users can instantly retrieve more information from multiple repositories. You’re not limited to a single source of data, as you are with a desktop PC. • Cloudcomputingisintelligent. With all the various data stored on the computers in a cloud, data mining and analysis are necessary to access that information in an intelligent manner. • Cloud computing is programmable. Many of the tasks necessary with cloud computing must be automated. For example, to protect the integrity of the data, information stored on a single computer in the cloud must be replicated on other computers in the cloud. If that one computer goes offline, the cloud’s programming automatically redistributes that computer’s data to a new computer in the cloud.
  • 9. CLOUD COMPUTING CS & BCA 9 A. SIVASANKARI , SIASC. User Interface System Services User Web FIGURE 1.2 PROPERTIES OF CLOUD COMPUTING 1.3 BASIC CONCEPTS There are certain services and models working behind the scene making the cloud computing feasible and accessible to end users. Following are the working models for cloud computing: • Deployment Models • Service Models DEPLOYMENT MODELS 1.4 TYPES OF CLOUD Deployment models define the type of access to the cloud, i.e., how the cloud is located? Cloud can have any of the four types of access: Public, Private, Hybrid, and Community. FIGURE 1.3 TYPES OF CLOUD
  • 10. CLOUD COMPUTING CS & BCA 10 A. SIVASANKARI , SIASC. PUBLIC CLOUD The public cloud allows systems and services to be easily accessible to the general public. Public cloud may be less secure because of its openness. PRIVATE CLOUD The private cloud allows systems and services to be accessible within an organization. It is more secured because of its private nature. COMMUNITY CLOUD The community cloud allows systems and services to be accessible by a group of organizations. HYBRID CLOUD The hybrid cloud is a mixture of public and private cloud, in which the critical activities are performed using private cloud while the non-critical activities are performed using public cloud. 1.4 HISTORY OF CLOUD COMPUTING The concept of Cloud Computing came into existence in the year 1950 with implementation of mainframe computers, accessible via thin/static clients. Since then, cloud computing has been evolved from static clients to dynamic ones and from software to services. The following diagram explains the evolution of cloud computing: FIGURE 1.4 HISTORY OF CLOUD 1.5 BEBEFITS OF CLOUD COMPUTING Cloud Computing has numerous advantages. Some of them are listed below - • One can access applications as utilities, over the Internet. • One can manipulate and configure the applications online at any time.
  • 11. CLOUD COMPUTING CS & BCA 11 A. SIVASANKARI , SIASC. • It does not require to install a software to access or manipulate cloud application. • Cloud Computing offers online development and deployment tools, programming runtime environment through PaaS model. • Cloud resources are available over the network in a manner that provide platform independent access to any type of clients. • Cloud Computing offers on-demand self-service. The resources can be used without interaction with cloud service provider. • Cloud Computing is highly cost effective because it operates at high efficiency with optimum utilization. It just requires an Internet connection • Cloud Computing offers load balancing that makes it more reliable. FIGURE 1.5 BENEFITS OF CLOUD Risks related to Cloud Computing Although cloud Computing is a promising innovation with various benefits in the world of computing, it comes with risks. Some of them are discussed below: Security and Privacy It is the biggest concern about cloud computing. Since data management and infrastructure management in cloud is provided by third-party, it is always a risk to handover the sensitive information to cloud service providers. Although the cloud computing vendors ensure highly secured password protected accounts, any sign of security breach may result in loss of customers and businesses.
  • 12. CLOUD COMPUTING CS & BCA 12 A. SIVASANKARI , SIASC. Lock In It is very difficult for the customers to switch from one Cloud Service Provider (CSP) to another. It results in dependency on a particular CSP for service. Isolation Failure This risk involves the failure of isolation mechanism that separates storage, memory, and routing between the different tenants. Management Interface Compromise In case of public cloud provider, the customer management interfaces are accessible through the Internet. Insecure or Incomplete Data Deletion It is possible that the data requested for deletion may not get deleted. It happens because either of the following reasons • Extra copies of data are stored but are not available at the time of deletion • Disk that stores data of multiple tenants is destroyed. 1.6 CHARACTERISTICS OF CLOUD COMPUTING There are four key characteristics of cloud computing. They are shown in the following diagram: FIGURE 1.6 CHARACTERISTICS OF CLOUD
  • 13. CLOUD COMPUTING CS & BCA 13 A. SIVASANKARI , SIASC. On Demand Self Service Cloud Computing allows the users to use web services and resources on demand. One can logon to a website at any time and use them. Broad Network Access Since cloud computing is completely web based, it can be accessed from anywhere and at any time. Resource Pooling Cloud computing allows multiple tenants to share a pool of resources. One can share single physical instance of hardware, database and basic infrastructure. Rapid Elasticity It is very easy to scale the resources vertically or horizontally at any time. Scaling of resources means the ability of resources to deal with increasing or decreasing demand. The resources being used by customers at any given point of time are automatically monitored. Measured Service In this service cloud provider controls and monitors all the aspects of cloud service. Resource optimization, billing, and capacity planning etc. depend on it. 1.7 CLOUD COMPUTING ARCHITECTURE Cloud Computing architecture comprises of many cloud components, which are loosely coupled. We can broadly divide the cloud architecture into two parts: • Front End • Back End Each of the ends is connected through a network, usually Internet. The following diagram shows the graphical view of cloud computing architecture: Front End The front end refers to the client part of cloud computing system. It consists of interfaces and applications that are required to access the cloud computing platforms, Example - Web Browser. Back End The back End refers to the cloud itself. It consists of all the resources required to provide cloud computing services. It comprises of huge data storage, virtual machines, security mechanism, services, deployment models, servers, etc.
  • 14. CLOUD COMPUTING CS & BCA 14 A. SIVASANKARI , SIASC. FIGURE 1.7 CLOUD ARCHITECTURE Note • It is the responsibility of the back end to provide built-in security mechanism, traffic control and protocols. • The server employs certain protocols known as middleware, which help the connected devices to communicate with each other. 1.8 WHY CLOUD COMPUTING MATTERS For developers, cloud computing provides increased amounts of storage and processing power to run the applications they develop. Cloud computing also enables new ways to access information, process and analyse data, and connect people and resources from any location anywhere in the world. In essence, it takes the lid off the box; with cloud computing, developers are no longer boxed in by physical constraints. For end users, cloud computing offers all those benefits and more. A person using a web-based application isn’t physically bound to a single PC, location, or network. His applications and documents can be accessed wherever he is, whenever he wants. Gone is the fear of losing data if a computer crashes. Documents hosted in the cloud always exist, no matter what happens to the user’s machine. And then there’s the benefit of group collaboration. Users from around the world can collaborate on the same documents, applications, and projects,
  • 15. CLOUD COMPUTING CS & BCA 15 A. SIVASANKARI , SIASC. in real time. It’s a whole new world of collaborative computing, all enabled by the notion of cloud computing. And cloud computing does all this at lower costs, because the cloud enables more efficient sharing of resources than does traditional network computing. With cloud computing, hardware doesn’t have to be physically adjacent to a firm’s office or data center. Cloud infrastructure can be located anywhere, including and especially areas with lower real estate and electricity costs. In addition, IT departments don’t have to engineer for peak-load capacity, because the peak load can be spread out among the external assets in the cloud. And, because additional cloud resources are always at the ready, companies no longer have to purchase assets for infrequent intensive computing tasks. If you need more processing power, it’s always there in the cloud and accessible on a cost efficient basis. 1.9 CLOUD COMPUTING INFRASTRUCTURE Cloud infrastructure consists of servers, storage devices, network, cloud management software, deployment software, and platform virtualization. FIGURE 1.8 CLOUD COMPUTING INFRASTRUCTURE Hypervisor Hypervisor is a firmware or low-level program that acts as a Virtual Machine Manager. It allows sharing the single physical instance of cloud resources between several tenants. Management Software It helps to maintain and configure the infrastructure. Deployment Software It helps to deploy and integrate the application on the cloud. Network
  • 16. CLOUD COMPUTING CS & BCA 16 A. SIVASANKARI , SIASC. It is the key component of cloud infrastructure. It allows connecting cloud services over the Internet. It is also possible to deliver network as a utility over the Internet, which means, the customer can customize the network route and protocol. Server The server helps to compute the resource sharing and offers other services such as resource allocation and de-allocation, monitoring the resources, providing security etc. Storage Cloud keeps multiple replicas of storage. If one of the storage resources fails, then it can be extracted from another one, which makes cloud computing more reliable. Infrastructural Constraints Fundamental constraints that cloud infrastructure should implement are shown in the following diagram: FIGURE 1.9 FUNDAMENTAL CONSTRAINTS OF CLOUD Transparency Virtualization is the key to share resources in cloud environment. But it is not possible to satisfy the demand with single resource or server. Therefore, there must be transparency in resources, load balancing and application, so that we can scale them on demand. Scalability Scaling up an application delivery solution is not that easy as scaling up an application because it involves configuration overhead or even re-architecting the network. So, application delivery solution is need to be scalable which will require the virtual infrastructure such that resource can be provisioned and de-provisioned easily. Intelligent Monitoring
  • 17. CLOUD COMPUTING CS & BCA 17 A. SIVASANKARI , SIASC. To achieve transparency and scalability, application solution delivery will need to be capable of intelligent monitoring. Security The mega data centre in the cloud should be securely architected. Also the control node, an entry point in mega data centre, also needs to be secure. 1.10 CLOUD COMPUTING DATA STORAGE Cloud Storage is a service that allows to save data on offsite storage system managed by third-party and is made accessible by a web services API. Storage Devices Storage devices can be broadly classified into two categories: • Block Storage Devices • File Storage Devices 1.10.1 BLOCK STORAGE DEVICES The block storage devices offer raw storage to the clients. These raw storage are partitioned to create volumes. 1.10.2 FILE STORAGE DEVICES The file Storage Devices offer storage to clients in the form of files, maintaining its own file system. This storage is in the form of Network Attached Storage (NAS). 1.10.3 CLOUD STORAGE CLASSES Cloud storage can be broadly classified into two categories: • Unmanaged Cloud Storage • Managed Cloud Storage Unmanaged Cloud Storage Unmanaged cloud storage means the storage is preconfigured for the customer. The customer can neither format, nor install his own file system or change drive properties. Managed Cloud Storage Managed cloud storage offers online storage space on-demand. The managed cloud storage system appears to the user to be a raw disk that the user can partition and format. 1.10.4 CREATING CLOUD STORAGE SYSTEM The cloud storage system stores multiple copies of data on multiple servers, at multiple locations. If one system fails, then it is required only to change the pointer to the location, where the object is stored.
  • 18. CLOUD COMPUTING CS & BCA 18 A. SIVASANKARI , SIASC. To aggregate the storage assets into cloud storage systems, the cloud provider can use storage virtualization software known as Storage GRID. It creates a virtualization layer that fetches storage from different storage devices into a single management system. It can also manage data from CIFS and NFS file systems over the Internet. The following diagram shows how Storage GRID virtualizes the storage into storage clouds: FIGURE 1.10 CLOUD STORAGE SYSTEM 1.10.5 VIRTUAL STORAGE CONTAINERS The virtual storage containers offer high performance cloud storage systems. Logical Unit Number (LUN) of device, files and other objects are created in virtual storage containers. Following diagram shows a virtual storage container, defining a cloud storage domain:
  • 19. CLOUD COMPUTING CS & BCA 19 A. SIVASANKARI , SIASC. FIGURE 1.11 VIRTUAL STORAGE CONTAINERS Challenges Storing the data in cloud is not that simple task. Apart from its flexibility and convenience, it also has several challenges faced by the customers. The customers must be able to: • Get provision for additional storage on-demand. • Know and restrict the physical location of the stored data. • Verify how data was erased. • Have access to a documented process for disposing of data storage hardware. • Have administrator access control over data. Cloud storage is a way of storing data online. It requires an internet connection in order to maintain, manage, and share documents, presentations, spreadsheets, images, audio, video, etc. with others. Online storage service providers don't store any data on the hard disk of your PC. Cloud storage tools help you to access your data from any device. 1.11 CLOUD STORAGE TOOLS Following is a handpicked list of top cloud storage tools, with popular features and latest download links. 1) Google Drive
  • 20. CLOUD COMPUTING CS & BCA 20 A. SIVASANKARI , SIASC. Google Drive is a free online data storage service provided by Google. The service syncs stored files, photos, and more across all the user's PCs, tablets, and mobile devices. It offers 15 GB of free space. Features: • You can build Docs, Sheets, Slides. • It provides real time synchronization. • You can create forms that help you to run a survey. • The tool can be used for macOS. • Integrates with thousands of external apps like a mind map, Gantt chart, diagram tools, etc. • It allows to store documents up to 1.02 million characters, spreadsheets up to 5 million cells, presentation up to 100 MB, and Google Sites up to 2000,000 characters per page. Download Link: https://www.google.com/drive/ 2) Box Box is a cloud file management and sharing service. This tool is available for Windows, macOS, and mobile platforms. Features: • You can use Windows Explorer or Mac Finder to quickly search the file you want. • Edit like a local file and Box will save it to the cloud. • Allows you to invite the team to make changes and upload files. • Enable admin to add external users to collaborate content and control the version. Download Link: https://www.box.com/en-gb/drive 3) OneDrive
  • 21. CLOUD COMPUTING CS & BCA 21 A. SIVASANKARI , SIASC. Microsoft OneDrive is an internet-based storage and synchronization service provider. It is available for free to all the people having Microsoft account. OneDrive apps can be used to sync files on a Windows PC or Mac operating system. Features: • Use your phone to scan and business cards, receipts, whiteboard notes, or store paper documents in OneDrive. • You can set an expiration date of shared files, photos, and links for security purpose. • Allows uploading files up to 15 GB in size. Download Link: https://onedrive.live.com/about/en-in/ 4) Mega Mega is an online storage and file hosting service provided by Mega Limited. Mega is available for Windows, Mac, and Linux platform. Features: • It offers 50 GB free storage space. • It uses keys to encrypt files and chats. • Mega allows you to sync files and folders. • Upload or download 1 GB data every 6 hours Download Link: https://mega.nz/ 5) Yandex Disk
  • 22. CLOUD COMPUTING CS & BCA 22 A. SIVASANKARI , SIASC. Yandex Disk is a cloud service that allows users to store files on cloud servers and share with others. Disk is available on Windows, macOS as well as Linux. It is available in two plans Annual and Monthly subscription. Features: • Allows uploading maximum 50 GB file size. User can sync data between different devices. • Provides free access to Microsoft Word, Excel, and PowerPoint. • Offer you to download files from public pages without any hassle. Download Link: https://disk.yandex.com/ 6) Upthere Upthere offer you to store videos, photos, music, and documents safely and privately in the cloud. This platform is based on UpOS technology to store, manage, share data. Upthere is available for iPhone, Android, Mac, and Windows. Features: • Share any number of files without any size limitation. • It enables you to create privately shared loops for celebrations, trips, or whatever works good for you. • Anyone can invite other people, add content, and comment. Download Link: https://upthere.com/ 7) Media Fire MediaFire is a file hosting, cloud storage, and synchronization service. It provides an easy-to-use solution for managing digital stuff online as well as on the go. MediaFire can be used for iPhone, Windows, OSX, Web, and Android. Features: • Maximum file uploading limit is 20 GB • It offers the professional an ad-free experience to employees. • Lets you to paste link in any files and MediaFire will upload to your account
  • 23. CLOUD COMPUTING CS & BCA 23 A. SIVASANKARI , SIASC. • Allows you to specify access control. Download Link: https://www.mediafire.com/ 8) Koofr Koofr is a cloud storage solution that connects Dropbox, Amazon, Google Drive, OneDrive accounts and utilizes the additional free space on a hard drive. The tool is available for Android, iOS, Windows, Linux, Windows, and macOS. Features: • Automatic backup from phones. • Synchronization data with computers. • No file type and size limits, upload anything you want to keep safe. • It provides automatic backup of photos and videos from the mobile phone. Download Link: https://koofr.eu/ 9) Icedrive Icedrive is the next generation cloud service that helps you to access, manage, and update your cloud storage effortlessly. It provides a space to share, showcase, and collaborate with your files. Features: • It allows you to store files up to 100 TB. • Sync all your data from the computer. • Icedrive provides clean and easy to use interface to manage your files. Download Link: https://icedrive.net/ 10) MiMedia MiMedia is a cloud-based backup service that allows you to manage and enjoy your digital life. It helps you to curate your personalized collection. Features:
  • 24. CLOUD COMPUTING CS & BCA 24 A. SIVASANKARI , SIASC. • It allows you to access and organize music, photos, videos, and documents on all devices. • You can download a desktop app to your PC or Mac and put any content in the cloud. • Import from Dropbox, Google, Flickr, and Facebook. Download Link: http://www.mimedia.com 11) IDrive IDrive provides service for data backup. This service is available to Windows, Linux, iOS, Android, and Mac users. Features: • IDrive provides 5 GB free • Users can organize and monitor backups of their PC from the web interface. • Users can upload or download files up to 2 GB in size. • It provides the best solution to protect all computers, Macs, iPhones, and Android devices into one account. Download Link: https://www.idrive.com/ 12) ICloud ICloud is a cloud storage service managed by Apple Inc. It is a service where users can save any files on the cloud, and iCloud will automatically sync to your device. You can use this service for Mac and Windows PCs. Features: • It provides 5GB of free iCloud storage • File size uploading limit is 15 GB. • Many people can work together by simply sending a link. • Lets you to collaborate with numbers, Keynote, Pages, and Notes. Download Link: https://www.apple.com/in/icloud/
  • 25. CLOUD COMPUTING CS & BCA 25 A. SIVASANKARI , SIASC. 13) Amazon Drive Amazon Drive or Amazon Cloud Drive is a cloud storage application of Amazon. The service provides secure cloud storage, file sharing, photo printing, and file backup. Features: • It helps you to organize and edit photos online. • Amazon Drive automatically backs up the photos and videos on your phone. • Allows you to Sync files and folders. Download Link: https://www.amazon.com/b?ie=UTF8&node=15547130011 14) Sync Sync.com is a cloud service for sharing files from any computer or mobile device. Sync provides an ideal solution for storing and sharing confidential and sensitive data. Features: • Sync allows you to send files of any size to anyone, even if they don't have a registered. • Performance becomes slower if you upload files larger than 40 GB. • Synch can support Windows, Mac, iOS, and Android. • It gives unlimited data transfer for all the plans. Download Link: https://www.sync.com/ 15) Dropbox
  • 26. CLOUD COMPUTING CS & BCA 26 A. SIVASANKARI , SIASC. Name Link Free Space Google Drive https://www.google.com/drive/ 15GB Box https://www.box.com/en-gb/drive 10GB OneDrive https://www.pcloud.com/ 5GB Mega https://mega.nz/ 50GB Yandex Disk https://disk.yandex.com/ 50GB Upthere https://upthere.com/ 20GB Media Fire https://www.mediafire.com/ 10GB Koofr https://koofr.eu/ 10GB Ice Drive https://icedrive.net/ 10GB MiMedia http://www.mimedia.com 10GB IDrive https://www.idrive.com/ 5GB iCloud https://www.apple.com/in/icloud/ 5GB Amazon Drive https://www.amazon.com/b?ie=UTF8&node=15547130011 5GB Sync https://www.sync.com/ 5GB Dropbox https://www.dropbox.com/ 2GB Jumpshare https://jumpshare.com/ 2GB
  • 27. CLOUD COMPUTING CS & BCA 27 A. SIVASANKARI , SIASC. Dropbox is a file hosting service providing personal cloud, file synchronization, cloud storage, and client software. It is designed to collaborate your projects whether you are working alone or in a team. Features: • It offers you to safely sync data across all devices. • Your file size should be 50 GB or smaller • Service is available for macOS, Linux, and Windows operating systems. Download Link: https://www.dropbox.com/ 16) Jumpshare Jumpshare combines screenshot capture, file sharing, video recording, as well as team collaboration. It allows you to to send and share unlimited big size file. Features: • It helps you to capture and share anything • Jumpshare has drag and drop facility to share any file. • Allows you to capture screenshots • You can record your screen in GIF or video. • This service can be used on macOS, Android, Windows, iPad, and iPhone. Download Link: https://jumpshare.com/ 1.12 ADVANTAGES AND DISADVANTAGES OF CLOUD COMPUTING Cloud computing is a term referred to storing and accessing data over the internet. It doesn't store any data on the hard disk of your personal computer. In cloud computing, you can access data from a remote server. 1.12.1 ADVANTAGES OF CLOUD COMPUTING Here, are important benefits for using Cloud computing in your organization:
  • 28. CLOUD COMPUTING CS & BCA 28 A. SIVASANKARI , SIASC. FIGURE 1.12 BENEFITS OF CLOUD COMPUTING Cost Savings Cost saving is the biggest benefit of cloud computing. It helps you to save substantial capital cost as it does not need any physical hardware investments. Also, you do not need trained personnel to maintain the hardware. The buying and managing of equipment is done by the cloud service provider. Strategic edge Cloud computing offers a competitive edge over your competitors. It helps you to access the latest and applications any time without spending your time and money on installations. High Speed Cloud computing allows you to deploy your service quickly in fewer clicks. This faster deployment allows you to get the resources required for your system within fewer minutes. Back-up and restore data Once the data is stored in a Cloud, it is easier to get the back-up and recovery of that, which is otherwise very time taking process on premise. Automatic Software Integration In the cloud, software integration is something that occurs automatically. Therefore, you don't need to take additional efforts to customize and integrate your applications as per your preferences.
  • 29. CLOUD COMPUTING CS & BCA 29 A. SIVASANKARI , SIASC. Reliability Reliability is one of the biggest pluses of cloud computing. You can always get instantly updated about the changes. Mobility Employees who are working on the premises or at the remote locations can easily access all the could services. All they need is an Internet connectivity. Unlimited storage capacity The cloud offers almost limitless storage capacity. At any time you can quickly expand your storage capacity with very nominal monthly fees. Collaboration The cloud computing platform helps employees who are located in different geographies to collaborate in a highly convenient and secure manner. Quick Deployment Last but not least, cloud computing gives you the advantage of rapid deployment. So, when you decide to use the cloud, your entire system can be fully functional in very few minutes. Although, the amount of time taken depends on what kind of technologies are used in your business. Other Important Benefits Apart from the above, some other advantages of cloud computing are: • On-Demand Self-service • Multi-tenancy • Offers Resilient Computing • Fast and effective virtualization • Provide you low-cost software • Offers advanced online security • Location and Device Independence • Always available, and scales automatically to adjust to the increase in demand • Allows pay-per-use • Web-based control & interfaces • API Access available. 1.12.2 DISADVANTAGES OF CLOUD COMPUTING Here, are significant challenges of using Cloud Computing:
  • 30. CLOUD COMPUTING CS & BCA 30 A. SIVASANKARI , SIASC. FIGURE 1.13 CHALLENGES OF CLOUD Performance Can Vary When you are working in a cloud environment, your application is running on the server which simultaneously provides resources to other businesses. Any greedy behavior or DDOS attack on your tenant could affect the performance of your shared resource. Technical Issues Cloud technology is always prone to an outage and other technical issues. Even, the best cloud service provider companies may face this type of trouble despite maintaining high standards of maintenance. Security Threat in the Cloud Another drawback while working with cloud computing services is security risk. Before adopting cloud technology, you should be well aware of the fact that you will be sharing all your company's sensitive information to a third-party cloud computing service provider. Hackers might access this information. Downtime Downtime should also be considered while working with cloud computing. That's because your cloud provider may face power loss, low internet connectivity, service maintenance, etc. Internet Connectivity Good Internet connectivity is a must in cloud computing. You can't access cloud without an internet connection. Moreover, you don't have any other way to gather data from the cloud.
  • 31. CLOUD COMPUTING CS & BCA 31 A. SIVASANKARI , SIASC. Lower Bandwidth Many cloud storage service providers limit bandwidth usage of their users. So, in case if your organization surpasses the given allowance, the additional charges could be significantly costly Lacks of Support Cloud Computing companies fail to provide proper support to the customers. Moreover, they want their user to depend on FAQs or online help, which can be a tedious job for non-technical persons.
  • 32. CLOUD COMPUTING CS & BCA 32 A. SIVASANKARI , SIASC. UNIT – II 2. DEVELOPING CLOUD SERVICES 2.1 CLOUD SERVICE MODELS Cloud computing is based on service models. These are categorized into three basic service models which are , • Infrastructure-as–a-Service (IaaS) • Platform-as-a-Service (PaaS) • Software-as-a-Service (SaaS) Anything-as-a-Service (XaaS) is yet another service model, which includes Network- as-a-Service, Business-as-a-Service, Identity-as-a-Service, Database-as-a- Service or Strategy-as-a-Service. The Infrastructure-as-a-Service (IaaS) is the most basic level of service. Each of the service models inherit the security and management mechanism from the underlying model, as shown in the following diagram: FIGURE 2.1 CLOUD SERVICE Infrastructure-as-a-Service (IaaS)
  • 33. CLOUD COMPUTING CS & BCA 33 A. SIVASANKARI , SIASC. IaaS provides access to fundamental resources such as physical machines, virtual machines, virtual storage, etc. Platform-as-a-Service (PaaS) PaaS provides the runtime environment for applications, development and deployment tools, etc. Software-as-a-Service (SaaS) SaaS model allows to use software applications as a service to end-users. 2.1.1 Cloud Computing Infrastructure as a Service (IaaS) Infrastructure-as-a-Service provides access to fundamental resources such as physical machines, virtual machines, virtual storage, etc. Apart from these resources, the IaaS also offers: • Virtual machine disk storage • Virtual local area network (VLANs) • Load balancers • IP addresses • Software bundles All of the above resources are made available to end user via server virtualization. Moreover, these resources are accessed by the customers as if they own them.
  • 34. CLOUD COMPUTING CS & BCA 34 A. SIVASANKARI , SIASC. FIGURE 2.2 IAAS Benefits IaaS allows the cloud provider to freely locate the infrastructure over the Internet in a cost-effective manner. Some of the key benefits of IaaS are listed below: • Full control of the computing resources through administrative access to VMs. • Flexible and efficient renting of computer hardware. • Portability, interoperability with legacy applications. Full control over computing resources through administrative access to VMs IaaS allows the customer to access computing resources through administrative access to virtual machines in the following manner: • Customer issues administrative command to cloud provider to run the virtual machine or to save data on cloud server. • Customer issues administrative command to virtual machines they owned to start web server or to install new applications. Flexible and efficient renting of computer hardware IaaS resources such as virtual machines, storage devices, bandwidth, IP addresses, monitoring services, firewalls, etc. are made available to the customers on rent. The payment is based upon the amount of time the customer retains a resource. Also with administrative access to virtual machines, the customer can run any software, even a custom operating system. Portability, interoperability with legacy applications It is possible to maintain legacy between applications and workloads between IaaS clouds. For example, network applications such as web server or e-mail server that normally runs on customer-owned server hardware can also run from VMs in IaaS cloud. 2.1.1.1 Issues IaaS shares issues with PaaS and SaaS, such as Network dependence and browser based risks. It also has some specific issues, which are mentioned in the following diagram:
  • 35. CLOUD COMPUTING CS & BCA 35 A. SIVASANKARI , SIASC. FIGURE 2.3 ISSUES OF IAAS Compatibility with legacy security vulnerabilities Because IaaS offers the customer to run legacy software in provider's infrastructure, it exposes customers to all of the security vulnerabilities of such legacy software. Virtual Machine sprawl The VM can become out-of-date with respect to security updates because IaaS allows the customer to operate the virtual machines in running, suspended and off state. However, the provider can automatically update such VMs, but this mechanism is hard and complex. Robustness of VM-level isolation IaaS offers an isolated environment to individual customers through hypervisor. Hypervisor is a software layer that includes hardware support for virtualization to split a physical computer into multiple virtual machines. Data erase practices The customer uses virtual machines that in turn use the common disk resources provided by the cloud provider. When the customer releases the resource, the cloud provider must ensure that next customer to rent the resource does not observe data residue from previous customer. Characteristics Here are the characteristics of IaaS service model: • Virtual machines with pre-installed software. • Virtual machines with pre-installed operating systems such as Windows, Linux, and Solaris. • On-demand availability of resources. • Allows to store copies of particular data at different locations. • The computing resources can be easily scaled up and down.
  • 36. CLOUD COMPUTING CS & BCA 36 A. SIVASANKARI , SIASC. 2.1.2 Platform as a Service (PaaS) Platform-as-a-Service offers the runtime environment for applications. It also offers development and deployment tools required to develop applications. PaaS has a feature of point-and-click tools that enables non-developers to create web applications. App Engine of Google and Force.com are examples of PaaS offering vendors. Developer may log on to these websites and use the built-in API to create web-based applications. But the disadvantage of using PaaS is that, the developer locks-in with a particular vendor. For example, an application written in Python against API of Google, and using App Engine of Google is likely to work only in that environment. The following diagram shows how PaaS offers an API and development tools to the developers and how it helps the end user to access business applications. FIGURE 2.4 PaaS Benefits Following are the benefits of PaaS model:
  • 37. CLOUD COMPUTING CS & BCA 37 A. SIVASANKARI , SIASC. FIGURE 2.5 BENEFITS OF PAAS • Lower administrative overhead • Customer need not bother about the administration because it is the responsibility of cloud provider. • Lower total cost of ownership • Customer need not purchase expensive hardware, servers, power, and data storage. • Scalable solutions • It is very easy to scale the resources up or down automatically, based on their demand. • More current system software • It is the responsibility of the cloud provider to maintain software versions and patch installations. 2.1.2.1 Issues Like SaaS, PaaS also places significant burdens on customer's browsers to maintain reliable and secure connections to the provider’s systems. Therefore, PaaS shares many of the issues of SaaS. However, there are some specific issues associated with PaaS as shown in the following diagram:
  • 38. CLOUD COMPUTING CS & BCA 38 A. SIVASANKARI , SIASC. FIGURE 2.6 ISSUES OF PAAS Lack of portability between PaaS clouds Although standard languages are used, yet the implementations of platform services may vary. For example, file, queue, or hash table interfaces of one platform may differ from another, making it difficult to transfer the workloads from one platform to another. Event based processor scheduling The PaaS applications are event-oriented which poses resource constraints on applications, i.e., they have to answer a request in a given interval of time. Security engineering of PaaS applications Since PaaS applications are dependent on network, they must explicitly use cryptography and manage security exposures. Characteristics Here are the characteristics of PaaS service model: • PaaS offers browser based development environment. It allows the developer to create database and edit the application code either via Application Programming Interface or point-and-click tools. • PaaS provides built-in security, scalability, and web service interfaces. • PaaS provides built-in tools for defining workflow, approval processes, and business rules. • It is easy to integrate PaaS with other applications on the same platform.
  • 39. CLOUD COMPUTING CS & BCA 39 A. SIVASANKARI , SIASC. • PaaS also provides web services interfaces that allow us to connect the applications outside the platform. 2.1.2.2 PaaS Types Based on the functions, PaaS can be classified into four types as shown in the following diagram: FIGURE 2.7 CLASSIFICATION OF PAAS Stand-alone development environments stand-alone PaaS works as an independent entity for a specific function. It does not include licensing or technical dependencies on specific SaaS applications. Application delivery-only environments The application delivery PaaS includes on-demand scaling and application security. Open platform as a service Open PaaS offers an open source software that helps a PaaS provider to run applications. Add-on development facilities The add-on PaaS allows to customize the existing SaaS platform. Cloud Computing Software as a Service (SaaS) 2.1.3 Software-as–a-Service (SaaS) Software-as–a-Service (SaaS) model allows to provide software application as a service to the end users. It refers to a software that is deployed on a host service and is accessible via Internet. There are several SaaS applications listed below: • Billing and invoicing system • Customer Relationship Management (CRM) applications • Help desk applications • Human Resource (HR) solutions
  • 40. CLOUD COMPUTING CS & BCA 40 A. SIVASANKARI , SIASC. Some of the SaaS applications are not customizable such as Microsoft Office Suite. But SaaS provides us Application Programming Interface (API), which allows the developer to develop a customized application. Characteristics Here are the characteristics of SaaS service model: • SaaS makes the software available over the Internet. • The software applications are maintained by the vendor. • The license to the software may be subscription based or usage based. And it is billed on recurring basis. • SaaS applications are cost-effective since they do not require any maintenance at end user side. • They are available on demand. • They can be scaled up or down on demand. • They are automatically upgraded and updated. • SaaS offers shared data model. Therefore, multiple users can share single instance of infrastructure. It is not required to hard code the functionality for individual users. • All users run the same version of the software. Benefits Using SaaS has proved to be beneficial in terms of scalability, efficiency and performance. Some of the benefits are listed below: • Modest software tools • Efficient use of software licenses • Centralized management and data • Platform responsibilities managed by provider • Multitenant solutions Modest software tools The SaaS application deployment requires a little or no client side software installation, which results in the following benefits: • No requirement for complex software packages at client side • Little or no risk of configuration at client side • Low distribution cost Efficient use of software licenses
  • 41. CLOUD COMPUTING CS & BCA 41 A. SIVASANKARI , SIASC. The customer can have single license for multiple computers running at different locations which reduces the licensing cost. Also, there is no requirement for license servers because the software runs in the provider's infrastructure. Centralized management and data The cloud provider stores data centrally. However, the cloud providers may store data in a decentralized manner for the sake of redundancy and reliability. Platform responsibilities managed by providers All platform responsibilities such as backups, system maintenance, security, hardware refresh, power management, etc. are performed by the cloud provider. The customer does not need to bother about them. Multitenant solutions Multitenant solutions allow multiple users to share single instance of different resources in virtual isolation. Customers can customize their application without affecting the core functionality. Issues There are several issues associated with SaaS, some of them are listed below: • Browser based risks • Network dependence • Lack of portability between SaaS clouds Browser based risks • If the customer visits malicious website and browser becomes infected, the subsequent access to SaaS application might compromise the customer's data. • To avoid such risks, the customer can use multiple browsers and dedicate a specific browser to access SaaS applications or can use virtual desktop while accessing the SaaS applications. Network dependence The SaaS application can be delivered only when network is continuously available. Also network should be reliable but the network reliability cannot be guaranteed either by cloud provider or by the customer. Lack of portability between SaaS clouds Transferring workloads from one SaaS cloud to another is not so easy because work flow, business logics, user interfaces, support scripts can be provider specific. 2.1.3.3 Open SaaS and SOA
  • 42. CLOUD COMPUTING CS & BCA 42 A. SIVASANKARI , SIASC. Open SaaS uses those SaaS applications, which are developed using open source programming language. These SaaS applications can run on any open source operating system and database. Open SaaS has several benefits listed below: • No License Required • Low Deployment Cost • Less Vendor Lock-in • More portable applications • More Robust Solution The following diagram shows the SaaS implementation based on SOA: FIGURE 2.8 SOA 2.1.3.4 Cloud Computing Identity as a Service (IDaaS) Employees in a company require to login to system to perform various tasks. These systems may be based on local server or cloud based. Following are the problems that an employee might face: • Remembering different username and password combinations for accessing multiple servers. • If an employee leaves the company, it is required to ensure that each account of that user is disabled. This increases workload on IT staff.
  • 43. CLOUD COMPUTING CS & BCA 43 A. SIVASANKARI , SIASC. To solve above problems, a new technique emerged which is known as Identity-as–a- Service (IDaaS). IDaaS offers management of identity information as a digital entity. This identity can be used during electronic transactions. Identity Identity refers to set of attributes associated with something to make it recognizable. All objects may have same attributes, but their identities cannot be the same. A unique identity is assigned through unique identification attribute. There are several identity services that are deployed to validate services such as validating web sites, transactions, transaction participants, client, etc. Identity-as-a-Service may include the following: • Directory services • Federated services • Registration • Authentication services • Risk and event monitoring • Single sign-on services • Identity and profile management 2.1.3.5 Single Sign-On (SSO) To solve the problem of using different username and password combinations for different servers, companies now employ Single Sign-On software, which allows the user to login only one time and manage the access to other systems. SSO has single authentication server, managing multiple accesses to other systems, as shown in the following diagram: FIGURE 2.9 SSO WORKING 2.1.3.6 SSO Working
  • 44. CLOUD COMPUTING CS & BCA 44 A. SIVASANKARI , SIASC. There are several implementations of SSO. Here, we discuss the common ones: FIGURE 2.10 IMPLEMENTATIONS OF SSO Following steps explain the working of Single Sign-On software: • User logs into the authentication server using a username and password. • The authentication server returns the user's ticket. • User sends the ticket to intranet server. • Intranet server sends the ticket to the authentication server. • Authentication server sends the user's security credentials for that server back to the intranet server. If an employee leaves the company, then disabling the user account at the authentication server prohibits the user's access to all the systems. 2.1.3.7 Federated Identity Management (FIDM) FIDM describes the technologies and protocols that enable a user to package security credentials across security domains. It uses Security Markup Language (SAML) to package a user's security credentials as shown in the following diagram:
  • 45. CLOUD COMPUTING CS & BCA 45 A. SIVASANKARI , SIASC. FIGURE 2.11 FIDM OpenID It offers users to login into multiple websites with single account. Google, Yahoo!, Flickr, MySpace, WordPress.com are some of the companies that support OpenID. Benefits • Increased site conversation rates • Access to greater user profile content • Fewer problems with lost passwords • Ease of content integration into social networking sites 2.2 AMAZON WEB SERVICES In 2006, Amazon Web Services (AWS) started to offer IT services to the market in the form of web services, which is nowadays known as cloud computing. With this cloud, we need not plan for servers and other IT infrastructure which takes up much of time in advance. Instead, these services can instantly spin up hundreds or thousands of servers in minutes and deliver results faster. We pay only for what we use with no up-front expenses and no long-term commitments, which makes AWS cost efficient. Today, AWS provides a highly reliable, scalable, low-cost infrastructure platform in the cloud that powers multitude of businesses in 190 countries around the world. 2.3 On-Demand Computing What Is On-Demand Computing?
  • 46. CLOUD COMPUTING CS & BCA 46 A. SIVASANKARI , SIASC. On-demand computing is a business computing model in which computing resources are made available to the user on an “as needed” basis. Rather than all at once, on-demand computing allows cloud hosting companies to provide their clients with access to computing resources as they become necessary. What Are the Advantages of On-Demand Computing? The on-demand computing model was developed to overcome the common challenge that enterprises encountered of not being able to meet unpredictable, fluctuating computing demands in an efficient manner. Businesses today need to be agile and need the ability to scale resources easily and quickly based on rapidly changing market needs. Because an enterprise’s demand for computing resources can vary dramatically from one period of time to another, maintaining sufficient resources to meet peak requirements can be costly. However, with on-demand computing, companies can cut costs by maintaining minimal computing resources until they run into the need to increase them, meanwhile only paying for what they use. Industry experts predict on-demand computing to soon be the most widely used computing model for enterprises. In fact, IBM’s vice-president of technology and strategy stated, “The technology is at a point where we can start to move into an era of on-demand computing. I give it between two and four years to reach a level of maturity.” 2.4 Discovering Cloud Services Development Services and Tools: ➢ Cloud computing is at an early stage of its development. This can be seen by observing the large number of small and start-up companies offering cloud development tools. ➢ In a more established industry, the smaller players eventually fall by the wayside as larger companies take center stage. ➢ Cloud services development services and tools are offered by a variety of companies, both large and small. ➢ The most basic offerings provide cloud-based hosting for applications developed from scratch.
  • 47. CLOUD COMPUTING CS & BCA 47 A. SIVASANKARI , SIASC. ➢ The more fully featured offerings include development tools and pre-built applications that developers can use as the building blocks for their own unique web- based applications. 2.5 Amazon ➢ Amazon, one of the largest retailers on the Internet, is also one of the primary providers of cloud development services. ➢ Amazon has spent a lot of time and money setting up a multitude of servers to service its popular website, and is making those vast hardware resources available for all developers to use. ➢ The service in question is called the Elastic Compute Cloud, also known as EC2. This is a commercial web service that allows developers and companies to rent capacity on Amazon’s proprietary cloud of servers— which happens to be one of the biggest server farms in the world. ➢ EC2 enables scalable deployment of applications by letting customers request a set number of virtual machines, onto which they can load any application of their choice. ➢ Thus, customers can create, launch, and terminate server instances on demand, creating a truly “elastic” operation. Amazon’s service lets customers choose from three sizes of virtual servers: • Small, which offers the equivalent of a system with 1.7GB of memory,160GB of storage, and one virtual 32-bit core processor. • Large, which offers the equivalent of a system with 7.5GB of memory,850GB of storage, and two 64-bit virtual core processors. • Extra large, which offers the equivalent of a system with 15GB of memory,1.7TB of storage, and four virtual 64-bit core processors • AWS offers comprehensive cloud IaaS services ranging from virtual compute , storage, and networking to complete computing stacks. AWS is mostly known for its
  • 48. CLOUD COMPUTING CS & BCA 48 A. SIVASANKARI , SIASC. compute and storage-on- demand services, namely Elastic Compute Cloud (EC2) and Simple Storage Service (S3). • EC2 provides users with customize able virtual hardware that can be used as the base infrastructure for deploying computing systems on the cloud. It is possible to choose from a large variety of virtual hardware configurations, including GPU and cluster instances. EC2 instances are deployed either by using the AWS console, which is a comprehensive Web portal for accessing AWS services, or by using the Web services API available for several programming languages. EC2 also provides the capability to save a specific running instance as an image, thus allowing users to create their own templates for deploying systems. These templates are stored into S3 that delivers persistent storage on demand. S3is organized into buckets; these are containers of objects that are stored in binary form and can been riches with attributes .Users can store objects of any size, from simple files to entire disk images, and have them accessible from everywhere. • Besides EC2 and S3, a wide range of services can be leveraged to build virtual computing systems. Including networking support, caching systems, DNS, database (relational and not) support, and others. (In other words, you pick the size and power you want for your virtual server, and Amazon does the rest) 2.6 EC2 ➢ EC2 is just part of Amazon’s Web Services (AWS) set of offerings, which provides developers with direct access to Amazon’s software and machines. ➢ By tapping into the computing power that Amazon has already constructed, developers can build reliable, powerful, and low-cost web-based applications. ➢ Amazon provides the cloud (and access to it), and developers provide the rest. They pay only for the computing power that they use. ➢ AWS is perhaps the most popular cloud computing service to date. Amazon claims a market of more than 330,000 customers—a combination of developers, start-ups, and established companies.
  • 49. CLOUD COMPUTING CS & BCA 49 A. SIVASANKARI , SIASC. FIGURE 2.12 EC2 2.7 Google App Engine Google App Engine is a scalable runtime environment mostly devoted to executing Web applications. These take advantage of the large computing infrastructure of Google to dynamically scale as the demand varies overtime. App Engine provides both a secure execution environment and a col-lection of services that simplify the development of scalable and high-performance Web applications. These services include in memory caching, scalable data store, job queues and messaging tasks. Developer scan build and test applications on their own machines using the App Engine software development kit(SDK),which replicates the production run time environment and helps test and profile applications. Once development is complete, developers can easily migrate their application to AppEngine , set quotas to contain the costs generated, and make the application available to the world. The languages currently supported are Python, Java, and Go. ➢ Google is a leader in web-based applications, so it’s not surprising that the company also offers cloud development services.
  • 50. CLOUD COMPUTING CS & BCA 50 A. SIVASANKARI , SIASC. ➢ These services come in the form of the Google App Engine, which enables developers to build their own web applications utilizing the same infrastructure that powers Google’s powerful applications. ➢ The Google App Engine provides a fully integrated application environment. Using Google’s development tools and computing cloud, App Engine applications are easy to build, easy to maintain, and easy to scale. ➢ All you have to do is develop your application (using Google’s APIs and the Python programming language) and upload it to the App Engine cloud; from there, it’s ready to serve your users. ➢ As you might suspect, Google offers a robust cloud development environment. It includes the following features: • Dynamic web serving • Full support for all common web technologies • Persistent storage with queries, sorting, and transactions • Automatic scaling and load balancing • APIs for authenticating users and sending email using Google Accounts ➢ In addition, Google provides a fully featured local development environment that simulates the Google App Engine on any desktop computer. ➢ And here’s one of the best things about Google’s offering: Unlike most other cloud hosting solutions, Google App Engine is completely free to use—at a basic level, anyway. ➢ A free App Engine account gets up to 500MB of storage and enough CPU strength and bandwidth for about 5 million page views a month. ➢ If you need more storage, power, or capacity, Google intends to offer additional resources (for a charge) in the near future.
  • 51. CLOUD COMPUTING CS & BCA 51 A. SIVASANKARI , SIASC. FIGURE 2.13 Google App Engine
  • 52. CLOUD COMPUTING CS & BCA 52 A. SIVASANKARI , SIASC. FIGURE 2.14 Google App Engine 2.8 IBM ➢ It’s not surprising, given the company’s strength in enterprise-level computer hardware, that IBM is offering a cloud computing solution. ➢ The company is targeting small- and medium-sized businesses with a suite of cloud- based ondemand services via its Blue Cloud initiative. ➢ Blue Cloud is a series of cloud computing offerings that enables enterprises to distribute their computing needs across a globally accessible resource grid.
  • 53. CLOUD COMPUTING CS & BCA 53 A. SIVASANKARI , SIASC. FIGURE 2.15 IBM ➢ One such offering is the Express Advantage suite, which includes data backup and recovery, email continuity and archiving, and data security functionality—some of the more data-intensive processes handled by a typical IT department. ➢ To manage its cloud hardware, IBM provides open source workload-scheduling software called Hadoop, which is based on the MapReduce software usedGoogle in its offerings. Also included are PowerVM and Xen virtualization tools,along with IBM’s Tivoli data center management software. 2.9 Salesforce.com Salesforce.com is probably the most popular and developed CRM solution available today. As of today more than 100,000 customers have chosen Safesforce.com to implement their CRM solutions. The application provides customizable CRM solutions that can be integrated with additional features developed by third parties.
  • 54. CLOUD COMPUTING CS & BCA 54 A. SIVASANKARI , SIASC. Salesforce.com is based on the Force.com cloud development platform. This represents scalable and high-performance middleware executing all the operations of all Salesforce.com applications. The architecture of the Force.com platform is shown in Figure10.5. Initially designed to support scalable CRM applications, the platform has evolved to support the entire life cycle of a wider range of cloud applications by implementing a flexible and scalable infrastructure. At the core of the platform resides its metadata architecture, which provides the system with flexibility and scalability. Rather than being built on top of specific components and tables, application core logic and business rules metadata into the Force.com store. Both application structure and application data are stored in the store. A runtime engine executes application logic by retrieving its metadata and then performing the operations on the data. Although running in isolated containers, different applications logically share the same database structure, and the runtime engine exe- cutes all of them uniformly. A full-text search engine supports the runtime engine. This allows application users to have an effective user experience despite the large amounts of data that need to be crawled. The search engine maintains its indexing data in a separate store and is constantly updated by background processes triggered by user interaction. Users can customize their application by leveraging the “native” Force.com application frame- work or by using programmatic APIs in the most popular programming languages. The application framework allows users to visually define either the data or the core structure of a Force.com application, while the programmatic APIs provide them with a more conventional way for developing applications that relies on Web services to interact with the platform. Customization of application processes and logic can also be implemented by developing scripts in APEX. This is a Java-like language that provides object-oriented and procedural capabilities for defining either scripts executed on demand or triggers. APEX also offers the capability of expressing searches and queries to have complete access to the data managed by the Force.com platform. ➢ Salesforce.com is probably best known for its sales management SaaS, but it’s also a leader in cloud computing development. ➢ The company’s cloud computing architecture is dubbed Force.com. The platform as a service is entirely on-demand, running across the Internet.
  • 55. CLOUD COMPUTING CS & BCA 55 A. SIVASANKARI , SIASC. ➢ Salesforce provides its own Force.com API and developer’s toolkit. Pricing is on a per log-in basis. Supplementing Force.com is AppExchange, a directory of web-based applications. ➢ Developers can use AppExchange applications uploaded by others, share their own applications in the directory, or publish private applications accessible only by authorized companies or clients. ➢ Many applications in the AppExchange library are free, and others can be purchased or licensed from the original developers. ➢ Most existing AppExchange applications are sales related—sales analysis tools, email marketing systems, financial analysis apps, and so forth. But companies can use the Force.com platform to develop any type of application. ➢ In fact, many small businesses have already jumped on the Force.com bandwagon. For example, an April 2008 article in PC World magazine quoted Jonathan Snyder, CTO of Dream builder Investments, a 10-person mortgage investment company in New York. ➢ “We’re a small company,” Snyder said, “we don’t have the resources to focus on buying servers and developing from scratch. For us, Force.com was really a jump- start.” Salesforce.com is the Enterprise Cloud Computing Company. Put simply, we provide CRM and Collaboration applications that you access over the Internet and pay-as-you-go. You can also build your own apps on our Force.com platform, all without the need to run and manage your own data centre and software. Find out why more than 87,200 companies have chosen salesforce.com to help run their business
  • 56. CLOUD COMPUTING CS & BCA 56 A. SIVASANKARI , SIASC. FIGURE 2.16 Salesforce.com 2.9.1PRODUCTS 1.Accounts and contacts Everything you need to know about your customers and prospects - all in one place. 2.Marketing and leads Close that gap between marketing and sales with better quality leads—and more of them. 3.Opportunities and quotes When you have critical deals in the works, don’t let anything slip through the cracks. 4.Jigsaw data services Your CRM data just got a whole lot better with real-time contact info and automated data hygiene. 5.Analytics and forecasting Get the insight you need to keep your sales on track and moving efficiently 6.Approvals and workflow Nothing should impede the momentum of your sales efforts. Drag and drop to create automated processes with these tools. 7.Email and productivity Don’t change the way you work. With the Sales Cloud , you can work seamlessly with the tools you already use everyday.
  • 57. CLOUD COMPUTING CS & BCA 57 A. SIVASANKARI , SIASC. 8.Content library Stop searching aimlessly for that killer presentation… that new product datasheet… that updated price sheet. It’s right at your fingertips. 9.Genius Find sales insights when you need them most. Genius connects you with people and resources to help you close deals. 10.Chatter Collaborate instantly. Get real-time updates pushed to you on the people, data, and documents that can help you close your deals. 11.Partners Stop waiting for partner updates. Now you can have complete visibility into both direct and indirect sales channels with one view. 12.Mobile Having the latest information can improve customer relations and accelerate your deals. Stay on top of your business from any location on any device. 13. AppExchange Discover hundreds of apps that will expand your sales success. Want more solutions? Look no further Salesforce.com Support also offers: Basic Support Premier Support Premier Support with Administration Case limit Unlimited Unlimited Unlimited Response time 2 business days 2 hours 2 hours Online customer portal Included Included Included Live phone support 12/51 24/7 24/7 Assigned representative Yes (50 users)3 Yes (50 users)2 Health check (annual) Yes (50 users) Yes (50 users)
  • 58. CLOUD COMPUTING CS & BCA 58 A. SIVASANKARI , SIASC. Developer Support4 Yes Yes Force.com app extensions5 Yes Yes Yes Administration Included 2.10 Other Cloud Services Development Tools ➢ Amazon, Google, IBM, and Salesforce.com aren’t the only companies offering tools for cloud services developers. ➢ There are also a number of smaller companies working in this space that developers should evaluate, and that end users may eventually become familiar with. These companies include the following: ✓ 3tera (www.3tera.com) ✓ 10gen (www.10gen.com) ✓ Cohesive Flexible Technologies (www.cohesiveft.com) ✓ Joyent (www.joyent.com) ✓ Mosso (www.mosso.com) ✓ Nirvanix (www.nirvanix.com) ✓ Skytap (www.skytap.com). ✓ StrikeIron (www.strikeiron.com) ✓ Sun Microsystems has an R&D project, dubbed Project Caroline ✓ (www.projectcaroline.net) This is the basic structure of AWS EC2, where EC2 stands for Elastic Compute Cloud. EC2 allow users to use virtual machines of different configurations as per their requirement. It allows various configuration options, mapping of individual server, various pricing options, etc. We will discuss these in detail in AWS Products section. Following is the diagrammatic representation of the architecture.
  • 59. CLOUD COMPUTING CS & BCA 59 A. SIVASANKARI , SIASC. FIGURE 2.17 AWS Products Note − In the above diagram S3 stands for Simple Storage Service. It allows the users to store and retrieve various types of data using API calls. It doesn’t contain any computing element. We will discuss this topic in detail in AWS products section. Load Balancing ➢ Load balancing simply means to hardware or software load over web servers, that improver's the efficiency of the server as well as the application. Following is the diagrammatic representation of AWS architecture with load balancing. ➢ Hardware load balancer is a very common network appliance used in traditional web application architectures. ➢ AWS provides the Elastic Load Balancing service, it distributes the traffic to EC2 instances across multiple available sources, and dynamic addition and removal of Amazon EC2 hosts from the load-balancing rotation. ➢ Elastic Load Balancing can dynamically grow and shrink the load-balancing capacity to adjust to traffic demands and also support sticky sessions to address more advanced routing needs. Amazon Cloud-front ➢ It is responsible for content delivery, i.e. used to deliver website. It may contain dynamic, static, and streaming content using a global network of edge locations.
  • 60. CLOUD COMPUTING CS & BCA 60 A. SIVASANKARI , SIASC. Requests for content at the user's end are automatically routed to the nearest edge location, which improves the performance. ➢ Amazon Cloud-front is optimized to work with other Amazon Web Services, like Amazon S3 and Amazon EC2. It also works fine with any non-AWS origin server and stores the original files in a similar manner. ➢ In Amazon Web Services, there are no contracts or monthly commitments. We pay only for as much or as little content as we deliver through the service. Elastic Load Balancer ➢ It is used to spread the traffic to web servers, which improves performance. AWS provides the Elastic Load Balancing service, in which traffic is distributed to EC2 instances over multiple available zones, and dynamic addition and removal of Amazon EC2 hosts from the load-balancing rotation. ➢ Elastic Load Balancing can dynamically grow and shrink the load-balancing capacity as per the traffic conditions. Security Management ➢ Amazon’s Elastic Compute Cloud (EC2) provides a feature called security groups, which is similar to an inbound network firewall, in which we have to specify the protocols, ports, and source IP ranges that are allowed to reach your EC2 instances. ➢ Each EC2 instance can be assigned one or more security groups, each of which routes the appropriate traffic to each instance. Security groups can be configured using specific subnets or IP addresses which limits access to EC2 instances. ➢ Elastic Caches ➢ Amazon Elastic Cache is a web service that manages the memory cache in the cloud. In memory management, cache has a very important role and helps to reduce the load on the services, improves the performance and scalability on the database tier by caching frequently used information. Amazon RDS ➢ Amazon RDS (Relational Database Service) provides a similar access as that of MySQL, Oracle, or Microsoft SQL Server database engine. The same queries, applications, and tools can be used with Amazon RDS. ➢ It automatically patches the database software and manages backups as per the user’s instruction. It also supports point-in-time recovery. There are no up-front investments required, and we pay only for the resources we use.
  • 61. CLOUD COMPUTING CS & BCA 61 A. SIVASANKARI , SIASC. ➢ Hosting RDMS on EC2 Instances ➢ Amazon RDS allows users to install RDBMS (Relational Database Management System) of your choice like MySQL, Oracle, SQL Server, DB2, etc. on an EC2 instance and can manage as required. ➢ Amazon EC2 uses Amazon EBS (Elastic Block Storage) similar to network-attached storage. All data and logs running on EC2 instances should be placed on Amazon EBS volumes, which will be available even if the database host fails. ➢ Amazon EBS volumes automatically provide redundancy within the availability zone, which increases the availability of simple disks. Further if the volume is not sufficient for our databases needs, volume can be added to increase the performance for our database. ➢ Using Amazon RDS, the service provider manages the storage and we only focus on managing the data. Storage & Backups ➢ AWS cloud provides various options for storing, accessing, and backing up web application data and assets. The Amazon S3 (Simple Storage Service) provides a simple web-services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. ➢ Amazon S3 stores data as objects within resources called buckets. The user can store as many objects as per requirement within the bucket, and can read, write and delete objects from the bucket. ➢ Amazon EBS is effective for data that needs to be accessed as block storage and requires persistence beyond the life of the running instance, such as database partitions and application logs. ➢ Amazon EBS volumes can be maximized up to 1 TB, and these volumes can be striped for larger volumes and increased performance. Provisioned IOPS volumes are designed to meet the needs of database workloads that are sensitive to storage performance and consistency. ➢ Amazon EBS currently supports up to 1,000 IOPS per volume. We can stripe multiple volumes together to deliver thousands of IOPS per instance to an application. Auto Scaling
  • 62. CLOUD COMPUTING CS & BCA 62 A. SIVASANKARI , SIASC. ➢ The difference between AWS cloud architecture and the traditional hosting model is that AWS can dynamically scale the web application fleet on demand to handle changes in traffic. ➢ In the traditional hosting model, traffic forecasting models are generally used to provision hosts ahead of projected traffic. In AWS, instances can be provisioned on the fly according to a set of triggers for scaling the fleet out and back in. Amazon Auto Scaling can create capacity groups of servers that can grow or shrink on demand. ➢ Key Considerations for Web Hosting in AWS ➢ Following are some of the key considerations for web hosting − ➢ No physical network devices needed ➢ In AWS, network devices like firewalls, routers, and load-balancers for AWS applications no longer reside on physical devices and are replaced with software solutions. ➢ Multiple options are available to ensure quality software solutions. For load balancing choose Zeus, HAProxy, Nginx, Pound, etc. For establishing a VPN connection choose OpenVPN, OpenSwan, Vyatta, etc. No security concerns ➢ AWS provides a more secured model, in which every host is locked down. In Amazon EC2, security groups are designed for each type of host in the architecture, and a large variety of simple and tiered security models can be created to enable minimum access among hosts within your architecture as per requirement. Availability of data centers ➢ EC2 instances are easily available at most of the availability zones in AWS region and provides model for deploying your application across data centers for both high availability and reliability. ➢ AWS Management Console is a web application for managing Amazon Web Services. AWS Management Console consists of list of various services to choose from. It also provides all information related to our account like billing. ➢ This console provides an inbuilt user interface to perform AWS tasks like working with Amazon S3 buckets, launching and connecting to Amazon EC2 instances, setting Amazon Cloud Watch alarms, etc. ➢ Following is the screenshot of AWS management console for Amazon EC2 service.
  • 63. CLOUD COMPUTING CS & BCA 63 A. SIVASANKARI , SIASC. 2.10.1 How to Access AWS? ➢ Step 1 − Click on services. We get a list of various services. ➢ ➢ Step 2 − Select the choice from the list of categories and we get their sub-categories such as Computer and Database category is selected in the following screenshots.
  • 64. CLOUD COMPUTING CS & BCA 64 A. SIVASANKARI , SIASC. Step 3 − Select the service of your choice and the console of that service will open. ➢ Customizing the Dashboard ➢ Creating Services Shortcuts ➢ Click the Edit menu on the navigation bar and a list of services appears. We can create their shortcuts by simply dragging them from the menu bar to the navigation bar. ➢ Adding Services Shortcuts
  • 65. CLOUD COMPUTING CS & BCA 65 A. SIVASANKARI , SIASC. ➢ When we drag the service from the menu bar to the navigation bar, the shortcut will be created and added. We can also arrange them in any order. In the following screenshot we have created shortcut for S3, EMR and DynamoDB services. Deleting Services Shortcuts ➢ To delete the shortcut, click the edit menu and drag the shortcut from the navigation bar to the service menu. The shortcut will be removed. In the following screenshot, we have removed the shortcut for EMR services. ➢ Selecting a Region ➢ Many of the services are region specific and we need to select a region so that resources can be managed. Some of the services do not require a region to be selected like AWS Identity and Access Management (IAM). ➢ To select a region, first we need to select a service. Click the Oregon menu (on the left side of the console) and then select a region
  • 66. CLOUD COMPUTING CS & BCA 66 A. SIVASANKARI , SIASC. ➢ Changing the Password ➢ We can change password of our AWS account. To change the password, following are the steps. ➢ Step 1 − Click the account name on the left side of the navigation bar. ➢ Step 2 − Choose Security Credentials and a new page will open having various options. Select the password option to change the password and follow the instructions. ➢ Step 3 − After signing-in, a page opens again having certain options to change the password and follow the instructions.
  • 67. CLOUD COMPUTING CS & BCA 67 A. SIVASANKARI , SIASC. ➢ ➢ When successful, we will receive a confirmation message. ➢ Know Your Billing Information ➢ Click the account name in the navigation bar and select the 'Billing & Cost Management' option. ➢ ➢ Now a new page will open having all the information related to money section. Using this service, we can pay AWS bills, monitor our usage and budget estimation.
  • 68. CLOUD COMPUTING CS & BCA 68 A. SIVASANKARI , SIASC. ➢ The AWS Console mobile app, provided by Amazon Web Services, allows its users to view resources for select services and also supports a limited set of management functions for select resource types. Following are the various services and supported functions that can be accessed using the mobile app. EC2 (Elastic Compute Cloud) • Browse, filter and search instances. • View configuration details. • Check status of CloudWatch metrics and alarms. • Perform operations over instances like start, stop, reboot, termination. • Manage security group rules. • Manage Elastic IP Addresses. • View block devices. Elastic Load Balancing • Browse, filter and search load balancers. • View configuration details of attached instances. • Add and remove instances from load balancers. S3 • Browse buckets and view their properties. • View properties of objects. Route 53 • Browse and view hosted zones. • Browse and view details of record sets.
  • 69. CLOUD COMPUTING CS & BCA 69 A. SIVASANKARI , SIASC. RDS (Relational Database Service) • Browse, filter, search and reboot instances. • View configuration details, security and network settings. Auto Scaling • View group details, policies, metrics and alarms. • Manage the number of instances as per the situation. Elastic Beanstalk • View applications and events. • View environment configuration and swap environment CNAMEs. • Restart app servers. DynamoDB • View tables and their details like metrics, index, alarms, etc. CloudFormation • View stack status, tags, parameters, output, events, and resources. OpsWorks • View configuration details of stack, layers, instances and applications. • View instances, its logs, and reboot them. CloudWatch • View CloudWatch graphs of resources. • List CloudWatch alarms by status and time. • Action configurations for alarms. Services Dashboard • Provides information of available services and their status. • All information related to the billing of the user. • Switch the users to see the resources in multiple accounts. Features of AWS Mobile App To have access to the AWS Mobile App, we must have an existing AWS account. Simply create an identity using the account credentials and select the region in the menu. This app allows us to stay signed in to multiple identities at the same time. For security reasons, it is recommended to secure the device with a passcode and to use an IAM user's credentials to log in to the app. In case the device is lost, then the IAM user can be deactivated to prevent unauthorized access.
  • 70. CLOUD COMPUTING CS & BCA 70 A. SIVASANKARI , SIASC. Root accounts cannot be deactivated via mobile console. While using AWS Multi- Factor Authentication (MFA), it is recommended to use either a hardware MFA device or a virtual MFA on a separate mobile device for account security reasons. 2.10.2 How to Use AWS Account? Following are the steps to access AWS services − • Create an AWS account. • Sign-up for AWS services. • Create your password and access your account credentials. • Activate your services in credits section. Create an AWS Account Amazon provides a fully functional free account for one year for users to use and learn the different components of AWS. You get access to AWS services like EC2, S3, DynamoDB, etc. for free. However, there are certain limitations based on the resources consumed. Step 1 − To create an AWS account, open this link https://aws.amazon.com and sign-up for new account and enter the required details. If we already have an account, then we can sign-in using the existing AWS password.
  • 71. CLOUD COMPUTING CS & BCA 71 A. SIVASANKARI , SIASC. Step 2 − After providing an email-address, complete this form. Amazon uses this information for billing, invoicing and identifying the account. After creating the account, sign-up for the services needed.
  • 72. CLOUD COMPUTING CS & BCA 72 A. SIVASANKARI , SIASC. Step 3 − To sign-up for the services, enter the payment information. Amazon executes a minimal amount transaction against the card on the file to check that it is valid. This charge varies with the region. Step 4 − Next, is the identity verification. Amazon does a call back to verify the provided contact number. Step 5 − Choose a support plan. Subscribe to one of the plans like Basic, Developer, Business, or Enterprise. The basic plan costs nothing and has limited resources, which is good to get familiar with AWS. Step 6 − The final step is confirmation. Click the link to login again and it redirects to AWS management console.
  • 73. CLOUD COMPUTING CS & BCA 73 A. SIVASANKARI , SIASC. Now the account is created and can be used to avail AWS services. AWS Account Identifiers AWS assigns two unique IDs to each AWS account. • An AWS account ID • A conical user ID AWS Account ID It is a 12-digit number like 123456789000 and is used to construct Amazon Resource Names (ARN). This ID helps to distinguish our resources from resources in other AWS accounts. To know the AWS account number, click Support on the upper right side of the navigation bar in AWS management console as shown in the following screenshot. Conical String User ID It is a long string of alphanumeric characters like 1234abcdef1234. This ID is used in Amazon S3 bucket policy for cross-account access, i.e. to access resources in another AWS account. Account Alias Account alias is the URL for your sign-in page and contains the account ID by default. We can customize this URL with the company name and even overwrite the previous one. 2.10.3 How to Create/Delete Your Own AWS Account Alias?
  • 74. CLOUD COMPUTING CS & BCA 74 A. SIVASANKARI , SIASC. Step 1 − Sign in to the AWS management console and open the IAM console using the following link https://console.aws.amazon.com/iam/ Step 2 − Select the customize link and create an alias of choice. Step 3 − To delete the alias, click the customize link, then click the Yes, Delete button. This deletes the alias and it reverts to the Account ID. Multi Factor Authentication Multi Factor Authentication (MFA) provides additional security by authenticating the users to enter a unique authentication code from an approved authentication device or SMS text message when they access AWS websites or services. If the MFA code is correct, then only the user can access AWS services or else not. Requirements
  • 75. CLOUD COMPUTING CS & BCA 75 A. SIVASANKARI , SIASC. To use MFA services, the user has to assign a device (hardware or virtual) to IAM user or AWS root account. Each MFA device assigned to the user must be unique, i.e. the user cannot enter a code from another user's device to authenticate. How to Enable MFA Device? Step 1 − Open the following link, https:// console.aws.amazon.com/iam/ Step 2 − On the web page, choose users from the navigation pane on the right side to view the list of user name. Step 3 − Scroll down to security credentials and choose MFA. Click activate MFA. Step 4 − Follow the instructions and the MFA device will get activated with the account. There are 3 ways to enable a MFA device − SMS MFA Device In this method, MFA requires us to configure the IAM user with the phone number of the user's SMS-compatible mobile device. When the user signs in, AWS sends a six-digit code by SMS text message to the user's mobile device. The user is required to enter the same code on a second web page during sign-in to authenticate the right user. This SMS-based MFA cannot be used with AWS root account. Hardware MFA Device In this method, MFA requires us to assign an MFA device (hardware) to the IAM user or the AWS root account. The device generates a six-digit numeric code based upon a
  • 76. CLOUD COMPUTING CS & BCA 76 A. SIVASANKARI , SIASC. time synchronized one-time password algorithm. The user has to enter the same code from the device on a second web page during sign-in to authenticate the right user. Virtual MFA Device In this method, MFA requires us to assign an MFA device (virtual) to the IAM user or the AWS root account. A virtual device is a software application (mobile app) running on a mobile device that emulates a physical device. The device generates a six-digit numeric code based upon a time-synchronized one-time password algorithm. The user has to enter the same code from the device on a second web page during sign-in to authenticate the right user. AWS Identity & Access Management (IAM) IAM is a user entity which we create in AWS to represent a person that uses it with limited access to resources. Hence, we do not have to use the root account in our day-to-day activities as the root account has unrestricted access to our AWS resources. How to Create Users in IAM? Step 1 − Open the link https://console.aws.amazon.com/iam/ to sign-in to AWS Management console. Step 2 − Select the Users option on the left navigation pane to open the list of all users.
  • 77. CLOUD COMPUTING CS & BCA 77 A. SIVASANKARI , SIASC. Step 3 − We can also create New Users using the Create New Users option, a new window will open. Enter the user-name which we want to create. Select the create option and a new user will be created. Step 4 − We can also see Access Key IDs and secret keys by selecting Show Users Security Credentials link. We can also save these details on the computer using the Download Credentials option. Step 5 − We can manage the user’s own security credentials like creating password, managing MFA devices, managing security certificates, creating/deleting access keys, adding user to groups, etc.
  • 78. CLOUD COMPUTING CS & BCA 78 A. SIVASANKARI , SIASC. There are many more features that are optional and are available on the web page. 2.11 AWS - Elastic Compute Cloud Amazon EC2 (Elastic Compute Cloud) is a web service interface that provides resizable compute capacity in the AWS cloud. It is designed for developers to have complete control over web-scaling and computing resources. EC2 instances can be resized and the number of instances scaled up or down as per our requirement. These instances can be launched in one or more geographical locations or regions, and Availability Zones (AZs). Each region comprises of several AZs at distinct locations, connected by low latency networks in the same region. 2.12 EC2 Components In AWS EC2, the users must be aware about the EC2 components, their operating systems support, security measures, pricing structures, etc.