Cloud Computing



Cloud Computing 

Cloud Computing is a technology that provides computing resources as services over the Internet. These resources include servers, storage, databases, networking, software, analytics, and intelligence. Instead of owning and maintaining physical infrastructure, users can rent resources on demand.

Key Idea

“Access computing resources anytime, anywhere, without owning the infrastructure.”

Definition of Cloud Computing

Standard Definition

Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.

Simple Definition: Cloud Computing allows users to use IT services over the Internet on a pay-as-you-use basis.

Evolution of Cloud Computing

Cloud computing did not appear suddenly. It evolved through multiple computing paradigms.

Evolution Stages

EraTechnologyDescription
1960sMainframe ComputingCentralized computing, shared by many users
1970sTime SharingMultiple users share CPU time
1980sClient-ServerClients request services from servers
1990sDistributed ComputingTasks distributed across machines
2000sGrid ComputingResource sharing across organizations
2010s–PresentCloud ComputingOn-demand, scalable Internet-based services

History of Cloud Computing (Exam-Oriented)

Important Milestones

YearEvent
1961John McCarthy proposed computing as a utility
1999Salesforce introduced SaaS
2002Amazon Web Services (AWS) launched
2006Amazon EC2 and S3 introduced
2008Google App Engine
2010Microsoft Azure
2015+AI, Big Data, IoT integrated with Cloud

Key Contributors

  • John McCarthy – Idea of utility computing
  • Amazon – Infrastructure as a Service (IaaS)
  • Google & Microsoft – Platform & software services

Characteristics of Cloud Computing 

  • On-Demand Self-Service
  • Broad Network Access
  • Resource Pooling
  • Rapid Elasticity
  • Measured Service (Pay-as-you-go)

Underlying Principles of Parallel and Distributed Computing

Cloud computing is built on Parallel Computing and Distributed Computing principles.

Parallel Computing

Parallel computing is a model where multiple processors execute multiple tasks simultaneously to improve performance.

Key Concepts

  • Task decomposition
  • Simultaneous execution
  • Shared or distributed memory

Parallel Computing Diagram

Distributed Computing

Distributed computing is a system where multiple independent computers communicate and coordinate their actions by passing messages to achieve a common goal.

Characteristics

  • No shared memory
  • Communication through network
  • Fault tolerance
  • Scalability

Distributed Computing Diagram

Relationship Between Cloud, Parallel & Distributed Computing

AspectParallelDistributedCloud
ExecutionSimultaneousCoordinatedOn-demand
LocationSame systemMultiple systemsData centers
ScalabilityLimitedHighVery High
CostHighModeratePay-per-use

Cloud Computing Architecture

Basic Architecture Components

  • Front End – User Interface (Browser, App)
  • Back End – Servers, Storage, Virtual Machines
  • Network – Internet
  • Cloud Management Software

Advantages of Cloud Computing (Exam Points)

  • Cost Reduction
  • High Scalability
  • Accessibility
  • Automatic Updates
  • Disaster Recovery
  • Resource Optimization

Applications of Cloud Computing

  • Education (Google Classroom)
  • Banking & Finance
  • Healthcare
  • E-commerce
  • Big Data & AI
  • Government e-Governance

Exam-Oriented Short Notes (Quick Revision)

  • Utility Computing: Computing resources provided like electricity or water on demand.
  • Virtualization: Technology that allows multiple virtual machines to run on a single physical machine.
  • Pay-As-You-Go: Users pay only for resources they consume.

Cloud Architecture

Cloud architecture refers to the overall structure of cloud computing components, including front end, back end, virtualization layer, network, and management systems, that work together to deliver cloud services.

Components of Cloud Architecture

Front End

  • User interface (Web browser, Mobile app)
  • Client-side applications

Back End

  • Servers
  • Storage systems
  • Databases
  • Virtual machines

Cloud Delivery Model

  • IaaS
  • PaaS
  • SaaS

Network

  • Internet / Intranet
  • Load balancers

Cloud Management

  • Resource provisioning
  • Monitoring
  • Security management
  • Billing

Characteristics of Cloud Architecture

  • Scalability
  • Elasticity
  • Fault tolerance
  • High availability
  • Resource pooling

Types of Clouds (Deployment Models)

Public Cloud

Cloud infrastructure owned and managed by third-party service providers and made available to the public.

Examples

  • AWS
  • Microsoft Azure
  • Google Cloud

Advantages

  • Low cost
  • High scalability
  • No infrastructure management

Disadvantages

  • Security concerns
  • Limited control

Private Cloud

Cloud infrastructure used exclusively by a single organization.

Advantages

  • High security
  • Full control
  • Customization

Disadvantages

  • High cost
  • Maintenance overhead

Hybrid Cloud

Combination of public and private clouds, allowing data and application sharing.

Advantages

  • Flexibility
  • Cost optimization
  • Data security

Community Cloud

Cloud infrastructure shared by organizations with common requirements (e.g., government, healthcare).

Comparison Table (Exam Important)

TypeOwnershipCostSecurityScalability
PublicThird PartyLowMediumHigh
PrivateOrganizationHighHighMedium
HybridMixedMediumHighHigh
CommunityGroupMediumHighMedium

Business Models Around Cloud Computing

Cloud business models define how cloud services are delivered and monetized.

Infrastructure as a Service (IaaS)

Provides virtualized hardware resources like servers, storage, and networking.

Examples

  • Amazon EC2
  • Google Compute Engine

Billing

Pay-per-use (CPU hours, storage, bandwidth)

Platform as a Service (PaaS)

Provides a development platform for application creation without managing infrastructure.

Examples

  • Google App Engine
  • Microsoft Azure App Services

Software as a Service (SaaS)

Delivers ready-to-use software applications over the Internet.

Examples

  • Gmail
  • Salesforce
  • Microsoft 365

Cloud Business Model Comparison

ModelUser ControlsProvider ControlsExample
IaaSOS, AppsHardwareAWS EC2
PaaSAppsOS + InfraGoogle App Engine
SaaSNothingEverythingGmail

Major Players in Cloud Computing

Leading Cloud Service Providers

ProviderServicesStrength
Amazon Web Services (AWS)IaaS, PaaSMarket leader
Microsoft AzureIaaS, PaaS, SaaSEnterprise integration
Google Cloud Platform (GCP)PaaS, AIData analytics
IBM CloudHybrid CloudEnterprise security
Oracle CloudSaaS, DB servicesDatabase expertise
Alibaba CloudIaaSAsian market

Issues in Cloud Computing

Security Issues

  • Data breaches
  • Unauthorized access
  • Data leakage

Privacy Issues

  • Data stored in third-party locations
  • Legal compliance

Vendor Lock-in

  • Difficulty in migrating between providers

Availability & Downtime

  • Internet dependency
  • Service outages

Performance Issues

  • Latency
  • Network congestion

Cloud Issues Summary Table

IssueDescription
SecurityData confidentiality risk
PrivacyRegulatory compliance
Lock-inLimited portability
DowntimeService unavailability
CostHidden or variable charges

Eucalyptus

Eucalyptus is an open-source cloud computing framework that enables the creation of private and hybrid clouds compatible with AWS.

Features

  • AWS API compatible
  • Private cloud support
  • Open source

Components

  • Cloud Controller (CLC)
  • Cluster Controller (CC)
  • Node Controller (NC)
  • Storage Controller (SC)

Advantages

  • Easy AWS migration
  • Cost-effective

Limitation

  • Limited scalability compared to public cloud

Nimbus

Nimbus is an open-source cloud toolkit designed for scientific and research computing.

Key Features

  • Virtual machine management
  • Used in grid computing
  • Supports IaaS

Usage

  • Academic research
  • High-performance computing

Open Nebula

OpenNebula is an open-source cloud management platform for managing private, public, and hybrid clouds.

Features

  • Virtual machine lifecycle management
  • Multi-hypervisor support
  • Data center virtualization

Advantages

  • Flexible
  • Enterprise-ready
  • Easy integration

CloudSim

CloudSim is a simulation toolkit used for modeling and simulating cloud computing environments.

Purpose

  • Research
  • Performance analysis
  • Resource scheduling testing

Features

  • VM simulation
  • Network modeling
  • Cost analysis

Exam Note

CloudSim is not a real cloud, it is a simulation framework.

Comparison: Eucalyptus, Nimbus, OpenNebula, CloudSim

ToolTypePurpose
EucalyptusCloud PlatformPrivate cloud
NimbusCloud ToolkitScientific cloud
OpenNebulaCloud ManagerHybrid cloud
CloudSimSimulatorCloud research

Exam-Ready Conclusion

Cloud architecture provides the structural foundation of cloud computing. Different deployment models and business models offer flexibility for diverse organizational needs. Major cloud providers dominate the industry, while open-source platforms like Eucalyptus, Nimbus, and OpenNebula enable private cloud deployment. CloudSim plays a critical role in cloud research and performance evaluation. Despite its advantages, cloud computing faces challenges related to security, privacy, and reliability.