0% found this document useful (0 votes)
62 views11 pages

Cloud Computing - KCS713 - UNIT-1 Notes

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
62 views11 pages

Cloud Computing - KCS713 - UNIT-1 Notes

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

UNIT-1 Introduction To Cloud Computing

Cloud Computing:-
Cloud Computing means storing and accessing the data and programs on remote
servers that are hosted on the internet instead of the computer’s hard drive or local server. Cloud
computing is also referred to as Internet-based computing, it is a technology where the resource is
provided as a service through the Internet to the user. The data that is stored can be files, images,
documents, or any other storable document.

The following are some of the Operations that can be performed with Cloud Computing
 Storage, backup, and recovery of data
 Delivery of software on demand
 Development of new applications and services
 Streaming videos and audio

Key Concept: Instead of owning and maintaining physical data centers or servers, businesses can use
cloud computing to access technology services such as computing power, storage, and databases on
an as-needed basis.

How Cloud Computing Works?


Cloud computing helps users in easily accessing computing resources like storage, and processing
over internet rather than local hardwares. Here we discussing how it works in nutshell:
 Infrastructure: Cloud computing depends on remote network servers hosted on internet for
store, manage, and process the data.
 On-Demand Acess: Users can access cloud services and resources based on-demand they
can scale up or down the without having to invest for physical hardware.
 Types of Services: Cloud computing offers various benefits such as cost saving, scalability,
reliability and acessibility it reduces capital expenditures, improves efficiency.

Evolution of Cloud Computing

1. 1950s:
The term "Cloud Computing" originated to describe services that operated over the internet.
Since then, cloud computing has evolved from basic distributed systems to today’s advanced
internet-based infrastructure.
2. Distributed Systems:
o Composed of multiple independent systems that work together and appear as a
single unit to users.
o Key Characteristics: Scalability, Concurrency, Continuous Availability, and Fault
Tolerance.
o Limitation: All systems needed to be geographically close, leading to advancements
like Mainframe, Cluster, and Grid Computing.
3. Mainframe Computing (1950s):
o Large, powerful, and reliable systems designed for handling bulk data processing and
transactions.
o Known for their high fault tolerance and minimal downtime, but were expensive,
leading to alternatives like Cluster Computing.
4. Cluster Computing (1980s):
o Cheaper alternative to mainframes.
o Machines (nodes) connected through high-bandwidth networks to perform large
computations.
o Scalable and more cost-effective, but geographically restricted, which led to the rise
of Grid Computing.
5. Grid Computing (1990s):
o Systems geographically dispersed but connected via the internet.
o Allowed sharing of resources across different organizations and geographical
locations.
o Challenges: Low bandwidth and other network issues due to the distance between
nodes.
o Cloud computing emerged as the "Successor of Grid Computing".
6. Virtualization:
o Introduced 40 years ago, it allows multiple instances (virtual machines) to run on a
single hardware unit.
o Virtualization forms the backbone of modern cloud platforms like Amazon EC2 and
VMware.
7. Web 2.0 (2004):
o A user-friendly interface enabling interactive and dynamic web applications.
o Examples: Facebook, Twitter, Google Maps.
o Essential for modern cloud services.
8. Service Orientation:
o Cloud computing adopted Service-Oriented Architecture (SOA), focusing on
flexibility and evolvability.
o Key concepts: Quality of Service (QoS) and Software as a Service (SaaS).
9. Utility Computing:
o Provides computing services (like storage, processing, etc.) on a pay-per-use basis,
which is fundamental to cloud computing’s pricing model.
Key Concepts and Advancements
Cloud Characteristics:
 On-Demand Self-Service: Users can access resources when needed without human
intervention.
 Broad Network Access: Services are available over the internet and can be accessed from
anywhere.
 Resource Pooling: Resources are shared dynamically across multiple users (multi-tenancy).
 Elasticity: Resources can be scaled up or down automatically based on demand.
 Measured Service: Users only pay for what they use.

Advantages of Cloud Computing


1. Cost Saving:
No need for physical infrastructure. Resources are rented based on usage, significantly
reducing costs.
2. Data Redundancy and Replication:
Cloud services offer multiple backups and copies of data, ensuring data remains available
even during failures.
3. Ransomware/Malware Protection:
Advanced security measures protect data from cyber-attacks and malware.
4. Flexibility:
Cloud resources can be scaled up or down based on demand, making it highly adaptable.
5. Reliability:
Major cloud providers ensure high reliability with uptime guarantees and redundancies in
place.
6. High Accessibility:
Users can access resources from anywhere, anytime, as long as they have an internet
connection.
7. Scalability:
Cloud infrastructure automatically scales according to user demand, ensuring smooth service
during traffic spikes.

Disadvantages of Cloud Computing


1. Internet Dependency:
Requires a reliable internet connection. Without it, accessing cloud resources becomes
difficult or impossible.
2. Security and Privacy Issues:
Storing data off-premises can raise concerns about data privacy and protection from
unauthorized access.
3. Data Breaches:
Though rare, cloud environments are targets for hackers, which may lead to potential data
breaches.
4. Limitations on Control:
Users have limited control over the infrastructure and data as cloud service providers
manage and maintain the environment.

What is Parallel Computing?


In parallel computing multiple processors performs multiple tasks assigned to them simultaneously.
Memory in parallel systems can either be shared or distributed. Parallel computing provides
concurrency and saves time and money.
Advantages of Parallel Computing
 Increased Speed: In this technique, several calculations are executed concurrently hence
reducing the time of computation required to complete large scale problems.
 Efficient Use of Resources: Takes full advantage of all the processing units it is equipped with
hence making the best use of the machine’s computational power.
 Scalability: Also the more processors built into the system, the more complex problems can
be solved within a short time.
 Improved Performance for Complex Tasks: Best suited for activities which involve a large
numerical calculation like, number simulation, scientific analysis and modeling and data
processing.
Disadvantages of Parallel Computing
 Complexity in Programming: Parallel writing programming that is used in organizing tasks in
a parallel manner is even more difficult than that of serial programming.
 Synchronization Issues: Interaction of various processors when operating concurrently can
become synchronized and result in problem areas on the overall communication.
 Hardware Costs: The implementation of parallel computing does probably involve the use of
certain components such as multi-core processors which could possibly be costly than the
normal systems.
What is Distributed Computing?
In distributed computing we have multiple autonomous computers which seems to the user as single
system. In distributed systems there is no shared memory and computers communicate with each
other through message passing. In distributed computing a single task is divided among different
computers.
Advantages of Distributed Computing
 Fault Tolerance: The failure of one node means that this node is no longer part of the
computations, but that is not fatal for the entire computation since there are other
computers participating in the process thereby making the system more reliable.
 Cost-Effective: Builds upon existing hardware and has flexibility in utilizing commodity
machines instead of the need to have expensive and specific processors for its use.
Scalability: The distributed systems have the ability to scale and expand horizontally through
the addition of more machines in the networks and therefore they can take on greater
workloads and processes.
 Geographic Distribution: Distributed computing makes it possible to execute tasks at
different points thereby eliminating latencies.
Disadvantages of Distributed Computing
 Complexity in Management: The task of managing a distributed system itself can be made
more difficult since it may require dealing with the latency and/or failure of a network as
well as issues related to synchronizing the information to be distributed.
 Communication Overhead: Inter node communication requirements can actually hinder the
package transfer between nodes that are geographically distant and hence the overall
performance is greatly compromised.
 Security Concerns: In general, distributed systems are less secure as compared to centralized
system because distributed systems heavily depend on a network.

Difference between Parallel Computing and Distributed Computing:

S.NO Parallel Computing Distributed Computing

Many operations are performed System components are located at different


1.
simultaneously locations

2. Single computer is required Uses multiple computers

Multiple processors perform multiple


3. Multiple computers perform multiple operations
operations

It may have shared or distributed


4. It have only distributed memory
memory

Processors communicate with each Computer communicate with each other through
5.
other through bus message passing.

Improves system scalability, fault tolerance and


6. Improves the system performance
resource sharing capabilities
Cloud Characteristics
Cloud computing has transformed the way individuals and organizations access and utilize computing
resources. Understanding its fundamental characteristics helps in leveraging its potential effectively.
Here are the key characteristics of cloud computing:

1. On-Demand Self-Service
 Definition: Users can provision computing resources automatically without requiring human
intervention from service providers.
 Examples: Users can access servers, storage, and applications as needed through a web
interface or API, enabling instant deployment.
2. Broad Network Access
 Definition: Cloud services are accessible over the network through standard mechanisms,
promoting usage across various platforms (e.g., mobile phones, tablets, laptops).
 Examples: Services can be accessed from any device with internet connectivity, enhancing
flexibility and convenience for users.
3. Resource Pooling
 Definition: Cloud providers use a multi-tenant model to serve multiple customers using the
same physical resources, which are dynamically allocated based on demand.
 Characteristics:
o Location Independence: The exact location of resources is abstracted from the user
(e.g., storage, processing power).
o Efficient Resource Utilization: Resources are optimally allocated and reallocated as
needed, reducing waste and cost.
4. Rapid Elasticity
 Definition: Cloud services can scale resources up or down rapidly based on demand, allowing
users to easily adjust their resource allocation.
 Examples:
o Automatic Scaling: Applications can automatically scale resources during peak usage
and scale down during off-peak times to optimize costs.
o Elastic Resource Allocation: Users can increase or decrease storage, processing
power, and other resources as needed without manual intervention.
5. Measured Service
 Definition: Cloud systems automatically control and optimize resource usage by leveraging a
metering capability. Resource usage can be monitored, controlled, and reported.
 Benefits:
o Transparency: Users can see and manage their usage, which helps in cost control.
o Pay-As-You-Go: Users are charged based on their actual resource consumption,
allowing for more efficient budgeting.
6. Multi-Tenancy
 Definition: A single instance of a software application serves multiple customers, with each
customer’s data and configurations kept isolated.
 Benefits:
o Cost Efficiency: Reduces costs for service providers and customers by sharing
resources.
o Scalability: Allows providers to scale services to a larger user base easily.
7. Security and Privacy
 Definition: Cloud providers implement security measures to protect data and applications in
the cloud, ensuring that data privacy and compliance are maintained.
 Considerations:
o Data Encryption: Data is often encrypted during transmission and storage to protect
against unauthorized access.
o Access Controls: Robust authentication and authorization mechanisms ensure that
only authorized users can access sensitive data.
8. Resilience and Reliability
 Definition: Cloud services are designed to be reliable and resilient, ensuring minimal
downtime and data loss.
 Features:
o Backup and Disaster Recovery: Automatic backup solutions and disaster recovery
protocols help maintain service continuity.
o Redundancy: Cloud providers often deploy redundant systems across multiple
locations to ensure availability.
9. Flexibility and Agility
 Definition: Cloud computing allows organizations to be more agile, enabling them to quickly
adapt to changing business needs.
 Benefits:
o Rapid Deployment: New applications and services can be deployed quickly without
the need for extensive infrastructure planning.
o Experimentation and Innovation: Organizations can easily test new ideas and
technologies without large upfront investments.

Elasticity in Cloud Computing

Cloud Elasticity
Definition: Elasticity in cloud computing refers to the ability of a cloud service to automatically adjust
its resources in response to fluctuating demands. This means that resources can be dynamically
expanded or contracted based on workload requirements, helping to manage costs effectively.
Key Characteristics:
 Dynamic Resource Allocation: When there is an increase in user demand, additional
resources such as computing power, storage, and bandwidth are automatically provisioned.
Conversely, when demand decreases, these resources are scaled back down.
 Temporary Demand Handling: Elasticity is particularly useful for scenarios with sudden,
temporary spikes in resource requirements, such as during sales events or holiday seasons.
 Pay-Per-Use Model: Most commonly associated with public cloud services, where users pay
only for the resources they consume.
Application Example:
 Online Shopping During Festive Seasons: An e-commerce site experiences a spike in
transaction workload during Christmas. Elasticity allows the site to automatically increase
resources to handle the increased traffic and then scale back down after the season ends.
Benefits:
 Cost Savings: By utilizing resources only when needed, organizations can minimize
infrastructure costs.
 Maximized Resource Utilization: Elasticity ensures that resources are used efficiently,
leading to overall cost savings.
Considerations:
 Dependent on Environment: Elasticity is most beneficial in environments with fluctuating
workloads. However, it may not be ideal for applications requiring consistent, guaranteed
performance
On-Demand Provisioning in Cloud Computing

Definition: On-demand provisioning refers to the ability to allocate and manage cloud resources as
needed, rather than in advance. This approach allows users to quickly access computing resources—
such as storage, processing power, and applications—when required, and to scale them down when
they are no longer needed. This feature is a fundamental characteristic of cloud computing services.
Key Characteristics:
1. Immediate Access:
o Users can provision resources instantly, often through a self-service portal, without
the need for manual intervention from IT personnel.
2. Scalability:
o Resources can be scaled up or down easily to accommodate changes in demand,
ensuring optimal performance and cost efficiency.
3. Pay-As-You-Go Model:
o Users are typically billed based on their actual usage of resources. This model allows
for cost savings since organizations only pay for what they consume.
4. Automation:
o On-demand provisioning often involves automated systems that can detect workload
changes and adjust resources accordingly.
5. Flexibility:
o Organizations can quickly adapt to changing business needs, such as launching new
applications or handling traffic spikes.
Benefits:
1. Cost Efficiency:
o By paying only for the resources used, organizations can reduce costs associated with
idle resources and over-provisioning.
2. Increased Agility:
o Businesses can respond quickly to market changes or customer demands by rapidly
provisioning resources without lengthy procurement processes.
3. Enhanced Resource Utilization:
o Resources can be allocated dynamically based on current needs, improving overall
utilization rates.
4. Reduced Time to Market:
o New applications and services can be deployed faster, allowing businesses to
capitalize on opportunities more effectively.
5. Risk Mitigation:
o By using resources on an on-demand basis, organizations can reduce the risk
associated with investing in infrastructure that may become obsolete or
underutilized.
Use Cases:
1. Startups and Small Businesses:
o On-demand provisioning is ideal for startups that may not have predictable
workloads and want to minimize upfront costs.
2. Development and Testing:
o Developers can quickly provision resources for development, testing, and staging
environments without long lead times.
3. Seasonal Businesses:
o Retailers can scale their resources up during peak shopping seasons and scale down
afterward.
4. Disaster Recovery:
o Organizations can provision backup resources quickly in response to unexpected
failures or disasters.
5. Data Processing:
o Businesses that analyze large datasets can provision resources as needed for
processing and then scale down once the tasks are complete.
Challenges:
1. Management Complexity:
o While on-demand provisioning offers flexibility, it can also lead to management
challenges, particularly if organizations do not have robust monitoring and
governance practices in place.
2. Cost Overruns:
o Without careful monitoring, users may inadvertently incur high costs due to
unexpected usage spikes.
3. Resource Sprawl:
o The ease of provisioning can lead to resource sprawl, where organizations lose track
of what has been provisioned and are unable to manage it effectively.
4. Security Concerns:
o Rapid provisioning may lead to insufficient security measures being implemented,
increasing the risk of data breaches or compliance issues.

Cloud Computing Reference Model


The Cloud Computing Reference Model provides a framework for understanding and implementing
cloud services, helping to break down cloud computing into different layers of service models. These
layers define how resources, platforms, and applications are provided to users and businesses via
cloud environments. The main components of the cloud reference model are:
1. Service Models
Cloud services are generally categorized into three main service models, which define the level of
abstraction and control users have:
a. Infrastructure as a Service (IaaS)
 Definition: IaaS provides virtualized computing resources over the internet. It includes
physical or virtual servers, storage, and networking.
 Key Features: Users have control over the operating system, applications, and networking
but do not manage the underlying physical infrastructure.
 Examples: Amazon Web Services (AWS) EC2, Microsoft Azure, Google Compute Engine (GCE).
 Use Case: Ideal for system administrators who need control over the computing environment
to run custom applications or manage complex software stacks.
b. Platform as a Service (PaaS)
 Definition: PaaS offers a platform that allows developers to build, run, and manage
applications without worrying about the underlying infrastructure.
 Key Features: It provides tools, libraries, and a development environment but abstracts
infrastructure management, operating systems, and middleware.
 Examples: AWS Elastic Beanstalk, Google App Engine, Microsoft Azure App Services.
 Use Case: Suitable for developers who want to focus on building applications without
managing servers, storage, or databases.
c. Software as a Service (SaaS)
 Definition: SaaS delivers fully functional software applications over the internet. End users
access the application via a web browser, while the service provider manages everything
from infrastructure to application logic.
 Key Features: Users only interact with the application itself, with no control over the
underlying infrastructure or platform.
 Examples: Google Workspace (Gmail, Google Docs), Microsoft 365, Salesforce.
 Use Case: Suitable for organizations looking for easy-to-use, ready-made applications like
email, collaboration tools, and CRM software.

2. Deployment Models
Cloud computing can be deployed in different environments depending on an organization’s needs:
a. Public Cloud
 Definition: Cloud infrastructure and services are provided to multiple customers over the
internet by third-party providers.
 Key Features: Cost-effective, scalable, and managed by the provider.
 Examples: AWS, Microsoft Azure, Google Cloud Platform.
 Use Case: Suitable for businesses that need scalable resources without investing in on-
premises infrastructure.
b. Private Cloud
 Definition: Cloud infrastructure is used exclusively by a single organization, either hosted
internally or by a third party.
 Key Features: Provides greater control, security, and customization but requires higher costs
and maintenance.
 Examples: VMware Cloud Foundation, OpenStack.
 Use Case: Suitable for organizations with specific security or regulatory requirements.
c. Hybrid Cloud
 Definition: Combines both public and private cloud environments, allowing data and
applications to be shared between them.
 Key Features: Provides flexibility to leverage the benefits of both public and private clouds.
 Examples: Microsoft Azure with on-premises infrastructure.
 Use Case: Ideal for organizations needing to balance sensitive workloads and scalable cloud
resources.
d. Community Cloud
 Definition: A cloud shared by several organizations with similar needs, typically in specific
industries.
 Key Features: Offers shared infrastructure while meeting specific industry compliance or
security needs.
 Examples: Cloud services for government agencies or healthcare sectors.
3. Essential Characteristics
Cloud computing must meet specific characteristics to be classified as a cloud service:
a. On-Demand Self-Service: Users can provision computing resources like server time and network
storage without human intervention.
b. Broad Network Access: Resources are available over the network and accessed through standard
mechanisms such as mobile devices, laptops, or workstations.
c. Resource Pooling: Cloud resources are pooled to serve multiple users using a multi-tenant model,
dynamically allocating resources based on demand.
d. Rapid Elasticity: Resources can be quickly scaled up or down based on current demand, giving the
illusion of unlimited capacity.
e. Measured Service: Cloud systems automatically control and optimize resource use by leveraging a
metering capability, typically billed on a pay-per-use basis.

You might also like