Unit 1 - Cloud Computing - WWW - Rgpvnotes.in
Unit 1 - Cloud Computing - WWW - Rgpvnotes.in
Unit 1 - Cloud Computing - WWW - Rgpvnotes.in
The revenue we generate from the ads we show on our website and app
funds our services. The generated revenue helps us prepare new notes
and improve the quality of existing study materials, which are
available on our website and mobile app.
If you don't use our website and app directly, it will hurt our revenue,
and we might not be able to run the services and have to close them.
So, it is a humble request for all to stop sharing the study material we
provide on various apps. Please share the website's URL instead.
Downloaded from www.rgpvnotes.in, whatsapp: 8989595022
UNIT I
Cloud computing is the use of various services, such as software development platforms, servers, storage
and software, over the internet, often referred to as the "cloud."
In general, there are three cloud computing characteristics that are common among all cloud-computing
vendors:
1. The back-end of the application (especially hardware) is completely managed by a cloud vendor.
2. A user only pays for services used (memory, processing time and bandwidth, etc.).
3. Services are scalable
Many cloud computing advancements are closely related to virtualization. The ability to pay on demand
and scale quickly is largely a result of cloud computing vendors being able to pool resources that may be
divided among multiple clients. It is common to categorize cloud computing services as infrastructure as a
service (IaaS), platform as a service (PaaS) or software as a service (SaaS).
CHARACTERISTICS
Following are the characteristics of Cloud Computing:
1. Resources Pooling: It means that the Cloud provider pulled the computing resources to provide services
to multiple customers with the help of a multi-tenant model. There are different physical and virtual
resources assigned and reassigned which depends on the demand of the customer. The customer generally
has no control or information over the location of the provided resources but is able to specify location at a
higher level of abstraction
2. On-Demand Self-Service: It is one of the important and valuable features of Cloud Computing as the user
can continuously monitor the server uptime, capabilities, and allotted network storage. With this feature,
the user can also monitor the computing capabilities.
3. Easy Maintenance: The servers are easily maintained and the downtime is very low and even in some
cases, there is no downtime. Cloud Computing comes up with an update every time by gradually making it
better. The updates are more compatible with the devices and perform faster than older ones along with
the bugs which are fixed.
4. Large Network Access: The user can access the data of the cloud or upload the data to the cloud from
anywhere just with the help of a device and an internet connection. These capabilities are available all over
the network and accessed with the help of internet.
5. Availability: The capabilities of the Cloud can be modified as per the use and can be extended a lot. It
analyzes the storage usage and allows the user to buy extra Cloud storage if needed for a very small
amount.
6. Automatic System: Cloud computing automatically analyzes the data needed and supports a metering
capability at some level of services. We can monitor, control, and report the usage. It will provide
transparency for the host as well as the customer.
7. Economical: It is the one-time investment as the company (host) has to buy the storage and a small part
of it can be provided to the many companies which save the host from monthly or yearly costs. Only the
amount which is spent is on the basic maintenance and a few more expenses which are very less.
8. Security: Cloud Security, is one of the best features of cloud computing. It creates a snapshot of the data
stored so that the data may not get lost even if one of the servers gets damaged. The data is stored within
the storage devices, which cannot be hacked and utilized by any other person. The storage service is quick
and reliable.
9. Pay as you go: In cloud computing, the user has to pay only for the service or the space they have
utilized. There is no hidden or extra charge which is to be paid. The service is economical and most of the
time some space is allotted for free.
10. Measured Service: Cloud computing resources used to monitor and the company uses it for recording.
This resource utilization is analyzed by supporting charge-per-use capabilities. This means that the
resource usages which can be either virtual server instances that are running in the cloud are getting
monitored measured and reported by the service provider. The model pay as you go is variable based on
actual consumption of the manufacturing organization.
COMPONENTS
The basic components of cloud computing are divided into 3 (three) parts, namely clients, data-center, and
distributed servers. The three basic components have specific goals and roles in running cloud computing
operations.
1. Clients on cloud computing architecture are said to be the exact same things that are plain, old,
everyday local area networks (LANs). They are, typically, the computers that just sit on your desk.
But they might also be laptops, tablet computers, mobile phones, or PDAs - all big drivers for cloud
computing because of their mobility. Clients are interacting with to manage their information on
the cloud.
2. Data-center is collection of servers where the application to which you subscribe is housed. It could
be a large room in the basement of your building full of servers on the other side of the world that
you access via the Internet. A growing trend in the IT world is virtualizing servers. That is, software
can be installed allowing multiple instances of virtual servers to be used. In this way, you can have
half a dozen virtual servers running on one physical server.
3. Distributed Servers is a server placement in a different location. But the servers don't have to be
housed in the same location. Often, servers are in geographically disparate locations. But to you,
the cloud subscribers, these servers act as if they're humming away right next to each other.
Another component of cloud computing is Cloud Applications cloud computing in terms of software
architecture. So that the user does not need to install and run applications using a computer. Cloud
Platform is a service in the form of a computing platform that contains hardware infrastructure and
software. Usually have certain business applications and use services PaaS as its business
application infrastructure. Cloud Storage involves processes delivering data storage as a service.
Cloud Infrastructure is the delivery of computing infrastructure as a service
When you are deciding whether or not to adopt the cloud model for your business, the best approach to
analyze the situation is by creating a Business Use Case for the Cloud Model. For this, you would require
collecting data, do comparative analysis, create reports, and understand the technical details involved.
• Understand the business requirement – Talk to all the customer facing and non-customer facing
team heads, get a clearer picture of the business requirement and draw out the direct relation
between the business requirement and business aspects involved.
• Cost study – Create a comparative analysis report to understand the cost involved in using the
services of the cloud compared to having infrastructure and services in-house.
• Taking expert advice and professional help – Have sessions with Cloud advocates to understand the
principles and technicalities of having your business on the cloud.
• Study other relevant business use cases – Study the business cases of other similar businesses, who
are on cloud as well as not on cloud.
• Data security – Have professionals deployed to do a detailed study on the data security factors
involved, if migrating to the cloud.
• Migration effort – Create a detailed report of the manual as well as automatic requirements for the
migration to cloud, if the business was already running with another vendor or in-house.
• Choosing the right model – Understand the options of the different cloud deployment models and
chooses the model rightly suiting your requirements.
3. Data Security
Security is the key concern for all customers - since the applications and the data is residing in the public
cloud; it is the responsibility of the service provider for providing adequate security. In my opinion security
for customer data/applications becomes a key differentiator when it comes to selecting the cloud service
provider. When it comes to IT security, customers tend to view the cloud service providers like they view
banks. The service provider is totally responsible for user security, but there are certain responsibilities
that the customer also needs to take.
The service provider must a robust Information Security Risk Management process - which is well
understood by the customer, and customer must clearly know his responsibilities as well. As there are
several types of cloud offerings (SaaS, PaaS, IaaS etc), there will be different sets of responsibility for the
customer and the service provider depending on the cloud service offering.
When it comes to security, the cloud service providers offer better security than what the customer's own
data center security. This is a kin to banks - where banks can offer far greater security than any individual
or company. The security in cloud is much higher due to: Centralized monitoring, enhanced incidence
detection/forensics, logging of all activity, greater security/venerability testing, centralized authentication
testing (aka password protection), secure builds & testing patches before deployment and lastly better
security software/systems.
4. Manageability
Managing the cloud infrastructure from the customer perspective must be under the control of the
customer admin. Customers of Cloud services must be able to create new accounts, must be able to
provision various services, do all the user account monitoring - monitoring for end user usage, SLA
breaches, data usage monitoring etc. The end users would like to see the availability, performance and
configuration/provisioning data for the set of infrastructure they are using in the cloud.
Cloud service provider will have various management tools for Availability management, performance
management, configuration management and security management of applications and infrastructure
(storage, servers, and network). Customers want to know how the entire infrastructure is being managed -
and if possible can that management information be shared with them, and alert the customer on any
outage, slow service, or breach of SLA as it happens. This allows customer to take corrective actions -
either move the applications to another cloud or enable their contingency plans.
Sharing the application performance and resource management information will help improve utilization
and consequently optimize usage by customers. This will result in improving ROI for the customers and
encourage customers to adapt cloud services.
As customers buy cloud services from multiple vendors, it will become a necessity to have a unified
management system to manage all the cloud services they have. This implies that cloud service providers
must embrace an XML based reporting formats to provide management information to customers and
customers then can build their own management dashboards.
5. Elasticity
Customer on Cloud computing have a dynamic computing loads. At times of high load, they need greater
amount of computing resources available to them on demand, and when the work loads are low, the
computing resources are released back to the cloud pool. Customer expects the service provider to charge
them for what they have actually used in the process.
Customers also want a self service on-demand resource provisioning capability from the service provider.
This feature enables users to directly obtain services from clouds, such as spawning the creation of a server
and tailoring its software, configurations, and security policies, without interacting with a human system
administrator. This eliminates the need for more time-consuming, labour-intensive, human driven
procurement processes familiar to many in IT.
6. Federated System
There are several reasons as to why customers will need a Federated cloud system. Customers may have to
buy services from several cloud service providers for various services - email from Google, online sales
transaction services from Amazon and ERP from another vendor etc. In such cases customer want their
cloud applications to interact with other services from several vendors to provide a seamless end to end IT
services.
CLOUD MODELS
Cloud models come in three types: SaaS (Software as a Service), IaaS (Infrastructure as a Service) and PaaS
(Platform as a Service). Each of the cloud models has their own set of benefits that could serve the needs
of various businesses.
SaaS
SaaS or Software as a Service is a model that gives quick access to cloud-based web applications. The
vendor controls the entire computing stack, which you can access using a web browser. These applications
run on the cloud and you can use them by a paid licensed subscription or for free with limited access.
SaaS does not require any installations or downloads in your existing computing infrastructure. This
eliminates the need for installing applications on each of your computers with the maintenance and
support taken over by the vendor. Some known example of SaaS includes Google G Suite, Microsoft Office
365, and Dropbox etc.
IaaS
IaaS or Infrastructure as a Service is basically a virtual provision of computing resources over the cloud. An
IaaS cloud provider can give you the entire range of computing infrastructures such as storage, servers,
PaaS
Platform as a Service or PaaS is essentially a cloud base where you can develop, test and organize the
different applications for your business. Implementing PaaS simplifies the process of enterprise software
development. The virtual runtime environment provided by PaaS gives a favourable space for developing
and testing applications.
The entire resources offered in the form of servers, storage and networking are manageable either by the
company or a platform provider. Google App Engine and AWS Elastic Beanstalk are two typical examples of
PaaS. PaaS is also subscription based that gives you flexible pricing options depending on your business
requirements.
Public cloud is a service offered by a third-party provider over the internet. Thus, offering higher
penetration in comparison to private cloud. Ideally used by small and mid-sized companies, the public
cloud offers ease operation as the maintenance and set up is borne by the provider. On the other hand,
the private clouds which are servers owned and operated by a single organization, are ideally used by
organisations dealing with sensitive data, one where a data breach is not an option. Private clouds are
thus, comparatively expensive.
• Pay-as-you-go: User will be charged by the hour, and you have to pay only for what you have used.
A company, XYZ might be using 100 servers normally, and on Mondays it scales down to 50 servers.
So, it only has to pay for 50 servers those days, not the usual fee for the usage of 100 servers.
• Increased Reliability: AWS is spread across 20 worldwide regions with 61 availability zones (AZs)
which helps your business when it is expanding. Also, this will increase the load speed of your
application around the world. User can always store multiple copies of your application in multiple
AZs so that when one data center fails or loses data, the application will not fail completely.
• Elasticity: Instead of 10 low-configuration machines, you could rent a single high-configuration
machine with an OS of your preferred choice for your application. Elasticity is the feature from
which Elastic Compute Cloud got its name.
2. Price. Google App Engine isn't cheap. But, you get what you pay for. Rock solid service, great tools,
at a hefty price.
3. Difficult to tell how to optimize costs. We racked up the expenses and it is still a mystery where all
the costs are being incurred.
4. Some intimidating or arcane aspects of configuration. Most of it was a breeze but every now and
then something would be pretty far out and require a few of us developers putting our heads
together to figure it out.
5. Sometimes required reading source code to figure out how to do something. Not a ton of examples
of how to do various things, nor Stack Overflow posts, at least in the beginning.
Microsoft Azure
Microsoft Azure is used by departments to manage larger data sets across entities. The software addresses
the need for multiple users to have access to multiple different data sets simultaneously. The software
makes this relatively easy by making Microsoft Azure similar to the user-friendliness of other Microsoft
products. Users point their analytical tools at Azure for data visualization and analytics. Some analytics is
also done in Azure itself.
1. Perhaps the biggest advantage of Microsoft Azure is its ease of integration with other Microsoft
products. If you're used to using Excel, Access, SQL Server, and other Microsoft products, Azure will
fit in nicely.
2. Azure does a good job at pointing the user into user-friendly methods for data capture and analysis.
In fact, Azure does the best job at this compared to competing tools.
3. Microsoft Azure has recently made strides in implementing advanced analytics, such as machine
learning. Their advances are great and integrate nicely with the tool.
UTILITY COMPUTING
Utility computing is a service provisioning model in which a service provider makes computing resources
and infrastructure management available to the customer as needed, and charges them for specific usage
rather than a flat rate. Like other types of on-demand computing (such as grid computing), the utility
model seeks to maximize the efficient use of resources and/or minimize associated costs.
The word utility is used to make an analogy to other services, such as electrical power, that seek to meet
fluctuating customer needs, and charge for the resources based on usage rather than on a flat-rate basis.
This approach, sometimes known as pay-per-use or metered services is becoming increasingly common in
enterprise computing and is sometimes used for the consumer market as well, for Internet service, Web
site access, file sharing, and other applications.
Another version of utility computing is carried out within an enterprise. In a shared pool utility model, an
enterprise centralizes its computing resources to serve a larger number of users without unnecessary
redundancy.
5. Automation: Repetitive management tasks such as setting up a new server or the installation of
updates can be automated. Moreover, automatically allocate resources to services and the
management of IT services to be optimized, with service level agreements and operating costs of IT
resources must be considered.
Cloud computing is about provisioning on-demand computing resources with the simplicity of a mouse
click. The amount of resources which can be sourced through cloud computing incorporates almost all the
facets of computing from raw processing power to massive storage space.
Besides providing these services on demand basis, the resources are elastic in nature, i.e. they can be easily
scaled depending upon the underlying resource requirements on run time without even disrupting the
operations and this ability is known as elastic computing. On a small scale this is done manually, but for
larger installations, the scaling is automatic. For example, a larger provider of online video could setup a
system so that the number of web-servers online scaled during peak viewing hours.