0% found this document useful (0 votes)
6 views

Cloud Computing Note (1)

The document provides an extensive overview of cloud computing, including its key features such as on-demand access, scalability, cost-saving, and security. It discusses various cloud service models (IaaS, PaaS, SaaS), deployment models, and the historical development of cloud technologies. Additionally, it covers principles of parallel and distributed computing, virtualization techniques, and the evolution of computing eras.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Cloud Computing Note (1)

The document provides an extensive overview of cloud computing, including its key features such as on-demand access, scalability, cost-saving, and security. It discusses various cloud service models (IaaS, PaaS, SaaS), deployment models, and the historical development of cloud technologies. Additionally, it covers principles of parallel and distributed computing, virtualization techniques, and the evolution of computing eras.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Unit-1

Introduction:

→.On-Demand Access: Get computing resources when you need them.

→ Scalable:Easily adjust resources to fit your needs.

→ Cost-Saving:Save money by reducing hardware costs.

→Remote Accessibility:Access services from anywhere via the internet.

→Reliable:Ensure consistent availability and quick recovery options.

Cloud Computing at a glance:

→On-Demand Services: Access computing resources whenever needed.

→Scalability: Quickly adjust resources to meet changing needs.

→Cost Efficiency:Save on hardware and maintenance costs.

→Global Access: Use cloud services from any location with internet.

→ Reliability:High availability and robust disaster recovery.

→Flexibility: Supports a variety of applications and workloads.

→Security :Strong measures to protect data and applications.

The vision of cloud computing:

→Quickly adapt to changing business needs and market demands.

→Support advanced data analysis and insights.

→Automate routine tasks to improve efficiency.

→Combine public and private cloud for more flexibility.

→Help meet legal and regulatory requirements.

Defining of cloud:

→Encompasses technologies like virtual infrastructure, IT outsourcing, and XaaS.

→”Cloud” originates from telecom and now symbolizes Internet-based computing.

→Relies on the Internet for delivering and accessing services.

→Includes hardware and software services as provided applications.


→Offers “pay-per-use” services, reducing upfront costs.

→Accessible via web browsers or APIs, with no initial capital expenditure.

A closer look:

→ Describes the types of cloud services like IaaS, PaaS, and SaaS.

→Explains public, private, and hybrid cloud options.

→Highlights the ability to easily increase or decrease resources.

→Discusses savings through pay-as-you-go pricing models.

→Emphasizes access to data and applications from any location.

→Covers measures and practices to protect data in the cloud.

→Details how cloud providers manage updates and maintenance.

The cloud computing reference model:

→Infrastructure as a Service (IaaS): Provides basic computing resources like virtual


machines and storage.

→Platform as a Service (PaaS): Offers a platform for developing, running, and managing
applications.

→Software as a Service (SaaS): Delivers software applications over the internet,


accessible via web browsers.

→Cloud Deployment Models: Various ways to deploy cloud services, including public,
private, hybrid, and community clouds.

→Service Models: Different types of cloud services, such as IaaS, PaaS, SaaS, STaaS,
DBaaS, etc.

→Cloud Security and Compliance: Ensures data security and adherence to regulations.

→Management and Automation: Efficient resource management and automation of


processes.

Characteristics and benefits:

→On-demand self-service enables users to access resources anytime without human


intervention.

→Broad network access ensures services are available online across various devices.
→Resource pooling dynamically allocates shared computing resources to multiple users.

→Rapid elasticity enables resources to be quickly scaled up or down automatically based on user
needs.

→Measured service ensures users pay only for the resources they use.

Benefits:

→It reduces hardware costs by charging only for the resources used.

→It scales easily based on demand without large upfront costs.

→Access your data and applications from anywhere with an internet connection.

→Provides robust backup and disaster recovery solutions.

→Collaboration enables multiple users to work on the same project in real-time.

Challenges ahed:

→As any new technology when launch , new issues have to be faced

→Cloud comPutting is not an exception.

→The cloud computing faces new challenges from it professional,government etc.

→It involves practical aspect like configuration, networking, and sizing of cloud computing
systems.

→Security in terms of confidentiality, secrecy, and protection of data in a cloud environment is


Another important challenge.

→Legal issues may also arise.

→These are specifically tied to the ubiquitous nature of cloud com-Putting.

Historical development

→1960s - Time-Sharing: Allowed shared use of computer resources, leading to cloud


computing.

→1999 – Salesforce.com: Pioneered the SaaS model by delivering internet-based applications.

→2002 – AWS: Amazon launched cloud services, reshaping the tech industry.
→2006 – Google Docs: Google introduced online tools, highlighting cloud computing’s
capabilities.

→2008 - Microsoft Azure: Microsoft introduced Azure, becoming a major cloud services
provider.

→2009 – Cloud Expansion: IBM, Oracle, and others enhanced their cloud services with diverse
solutions.

→2010s – Hybrid Cloud: Hybrid cloud combined private and public clouds to enhance
infrastructure.

Disturbed system:

→definition: Distributed systems are interconnected computers working together as one system.

→Scalability: Resources can be expanded by adding more nodes.

→Reliability: Distributed systems remain functional despite node failures.

→Load Balancing: Tasks are evenly distributed across nodes.

→ Data Redundancy: Data is replicated across nodes for availability and reliability.

→Geographic Distribution: Nodes across regions improve accessibility and performance.

→Parallel Processing: Distributed systems boost efficiency through parallel processing.

Virtualization:

→Virtualization creates virtual versions of physical hardware resources.

→ It increases resource utilization by running multiple VMs on a single physical machine.

→ Virtual machines provide isolation and security between different workloads.

→It enables flexible allocation and dynamic scaling of resources.

→Virtualization reduces hardware costs by consolidating servers.

→. Facilitates easier backup and disaster recovery through snapshots and replication.

→ Simplifies IT infrastructure management with centralized control of virtual resources.

Web 2.0
→Web 2.0 focuses on user-generated content and social networking.

→ It uses cloud computing to provide scalable and on-demand resources.

→ Web 2.0 platforms enable real-time collaboration and information sharing.

→ It relies on APIs and web services for integrating different applications.

→Cloud storage supports large-scale data management and accessibility.

→Web 2.0 applications are typically browser-based, enhancing accessibility.

→ It promotes rich media content such as videos, interactive graphics, and live stream.

Building cloud computing Environment:

→The creation of cloud computing environments encompasses both the development of


applications

And systems.

→that leverage cloud computing solutions.

→the creation of frameworks, platforms, And infrastructures delivering cloud computing


services .

Computing platforms and technologies:

→Development of a cloud computing application happens by leveraging platforms.

→and frameworks that provide different types of services,

→from the bare-metal infrastructure to customizable applicaTions serving specific purposes.

AWS:

→Aws offers extensive cloud laas services.

→Thet including virtual compute,storage,networking and full computing stack.

→AWS offers a strong cloud infrastructure with virtual machines, storage, and database services.

→AWS offers scalable solutions for businesses of any size.

→AWS offers a wide range of services, including AI, machine learning, IoT, and data analytics.
→AWS offers extensive tools and integrations for application development and management.

Google app engine:

→App Engine manages infrastructure, enabling developers to focus on coding.

→It supports various programming languages, including Node.js, Java, Ruby, C#, Go, Python,
and PHP.

→It scales applications automatically to ensure consistent performance.

→It provides standard and flexible environments to meet various application needs.

→It integrates with Google Cloud services for a unified development ecosystem.

→It offers tools for monitoring, logging, and error reporting to sustain app performance.

→It provides security features such as SSL/TLS certificates and a firewall to protect
applications.

Microsoft Azure:

→Microsoft Azure is a cloud computing platform offering various services over the internet.

→It provides a global network of data centers for reliable and scalable solutions.

→Azure offers a wide range of services, including computing, storage, and networking.

→It includes tools and frameworks for developing, deploying, and managing applications.

→Azure provides cost-effective solutions with flexible pricing models.

Hadoop:

→Hadoop uses HDFS to store large datasets across multiple nodes.

→It efficiently scales to handle increasing data volumes by adding more nodes.

→Hadoop uses MapReduce to process vast amounts of data in parallel.

→It ensures data reliability and availability by replicating data across nodes.

→Hadoop can integrate with cloud platforms for flexible, on-demand reso. urce usage.
Unit-2

Principles of Parallel and Distributed Computing:

→Concurrency: Executing multiple tasks simultaneously to improve efficiency.

→Scalability: The ability to expand resources to manage growing workloads.

→Fault Tolerance: Maintaining system operation despite component failures.

→Transparency: Hiding system complexity for a smooth user experience.

→Resource Sharing: Efficiently allocating resources to users and applications.

→Load Balancing: Distributing workloads evenly to optimize performance.

→Coordination: Synchronizing tasks to ensure efficient execution.

Eras of Computing:

→First Generation (1940s-1950s): Characterized by vacuum tubes in computers like ENIAC


and UNIVAC.

→Second Generation (1950s-1960s): Transistors improved computers’ size, speed, and


reliability.

→Third Generation (1960s-1970s): Integrated circuits made computers more compact and
efficient.

→Fourth Generation (1970s-Present): Microprocessors made personal computers and


widespread computing possible.

→Fifth Generation (1980s-Present): Focused on AI and machine learning for natural language
and complex problem-solving.

→Sixth Generation (Present and Beyond): Quantum computing and AI promise immense
computational power.

Difference Parallel vs. distributed computing:

→**Execution Environment**: Parallel computing uses multiple processors within one system

→while distributed computing uses multiple interconnected systems.


→**Memory Architecture**: Parallel computing often has shared memory,

→whereas distributed computing has separate, individual memory for each system.

→**Communication**: In parallel computing, communication is typically faster due to shared


resources.

→while distributed computing relies on network communication.

→**Coupling**: Parallel systems are tightly coupled,

→whereas distributed systems are loosely coupled.

→**Scalability**: Distributed computing offers higher scalability by adding more nodes.

→whereas parallel computing is limited.

→**Fault Tolerance**: Distributed systems can be more fault-tolerant as failure in one node
doesn’t affect the entire system,

→While parallel systems can be more fault-tolerant as failure in one node affect the entire
system,

→Parallel computing is used for real-time data processing,

→while distributed computing is used in cloud services and big data analysis.

Elements of parallel computing

→Parallelism: splits a task into parts that run simultaneously to increase efficiency.

→Memory architecture :uses shared or distributed systems for data access in parallel execution.

→Interconnect network: connects processors and memory for data exchange.

→Synchronization :coordinates parallel tasks for correct and efficient execution.

→Multiple processing: units working together to perform parallel tasks.

What is parallel processing?:

→Computational demands are continuously growing in both scientific and business sectors.

→Sequential architectures are limited by the speed of light and thermodynamic laws.

→Pipelining and superscalar hardware have scalability limits and require advanced compilers.
→Vector processing works well for certain kinds of problems.

→Parallel processing technology is mature, viable, and supported by ongoing R&D.

→Advancements in networking technology are enabling heterogeneous computing.

Hardware architectures for parallel processing:

→Multi-core processors improve efficiency through parallel processing.

→SMP enables multiple processors to share memory for parallel processing.

→Distributed Systems: Interconnected computers solve a single problem.

→SIMD: Single operation processes multiple data points.

→MIMD:Different processors execute different instructions.

→ **Pipeline Processing:** Sequential stages perform parts of computation.

→Cluster Computing:** Linked computers improve performance.

Approaches to parallel programming:

→Task Parallelism: Splits tasks across multiple processors.

→ Data Parallelism: Processes portions of large datasets at the same time.

→Pipeline Parallelism: Breaks tasks into stages for parallel processing.

→SPMD: Executes the same program on multiple processors with different data.

→ MPMD: Runs different programs on separate datasets.

→MapReduce: Divides tasks into Map and Reduce phases for parallel execution.

→SIMD: Applies the same operation on multiple data points ssimultaneously.

Elements of distributed computing:

→**Nodes**: Computers or servers performing computations and storing data.

→. **Network**: Infrastructure connecting nodes, enabling data exchange.

→**Middleware**: Software facilitating communication and data management.


→. **Concurrency**: Simultaneous execution of processes for enhanced performance.

→**Scalability**: Ability to adjust resources based on demand.

General concepts and definitions:

→Distributed Computing**: Studies distributed system models, architectures, and algorithms.

→Definition (Tanenbaum et al.)**: Independent computers act as a single coherent system.

→*Focus**: Unified use and aggregation of distributed resources.

→Architectural Models**: Present independent computers as one system.

→Communication**: Essential for collaboration via data exchange through networks.

→Definition (Coulouris et al.)**: Networked computers communicate and coordinate via


message passing.

→Message Passing**: Various communication models.

General concepts and definitions:

→Nodes – Independent computing entities in the system.

→Communication Network – Connects nodes for data exchange.

→Middleware – Manages communication and resource sharing.

→Data Storage – Distributed databases or file systems.

→Concurrency Control – Manages multiple processes safely.

→Fault Tolerance – Ensures system reliability despite failures.

→Security Mechanisms – Protects data and communication.

Architectural Styles for Distributed Computing:

→Client-Server – Clients request services from a central server.

→Peer-to-Peer (P2P) – Nodes share resources without a central authority.

→Three-Tier – Separates presentation, logic, and data layers.

→Event-Driven – Components react to event triggers.


→Microservices – Independent services communicate via APIs.

→Service-Oriented Architecture (SOA) – Uses reusable service components.

→Cloud-Based – Services hosted on cloud infrastructure.

System Architectural Styles:

→Monolithic – All components in a single application.

→Layered – Organized in hierarchical layers.

→Microservices – Small, independent, and scalable services.

→Event-Driven – Components interact through event messages.

→Service-Oriented – Uses loosely coupled service components.

→Pipe-and-Filter – Data flows through processing stages.

→Shared-Nothing – Independent nodes without shared resources.

Models for Interprocess Communication:

→Message Passing – Processes communicate via message exchange.

→Remote Procedure Call (RPC) – One process invokes another remotely.

→Shared Memory – Processes share a common memory space.

→Publish-Subscribe – Event-driven communication between components.

→Sockets – Network-based communication endpoints.

→Stream-Based – Data flows between processes continuously.

→Middleware-Based – Uses middleware for seamless communication.

Technologies for Distributed Computing:

→RPC (Remote Procedure Call) – Calls functions over a network.

→CORBA (Common Object Request Broker Architecture) – Enables object communication.

→Java RMI (Remote Method Invocation) – Java-based distributed communication.


→SOAP (Simple Object Access Protocol) – XML-based web services.

→REST (Representational State Transfer) – Lightweight API communication.

→gRPC – High-performance RPC framework from Google.

→Message Queues (e.g., Kafka, RabbitMQ) – Asynchronous communication.

Service-Oriented Computing:

→Loose Coupling – Services operate independently.

→Interoperability – Services communicate across platforms.

→Reusability – Services can be reused in multiple applications.

→Composability – Services combine to form complex workflows.

→Discoverability – Services are easily found and integrated.

→Scalability – Services handle varying workloads efficiently.

→Standardized Communication – Uses protocols like SOAP and REST.


Unit-3
Here are the concepts explained in single-line points:
Virtualization (5 one-line points):
1. Virtualization abstracts computing resources.
2. Virtualization creates virtual versions of hardware.
3. Virtualization enables running multiple VMs on one physical machine.
4. Virtualization improves resource utilization and management.
5. Virtualization is a foundation for cloud computing.
Introduction (5 one-line points):
1. Virtualization is a key technology in modern IT.
2. Virtualization transforms hardware usage.
3. Virtualization underpins cloud and data centers.
4. Virtualization offers cost savings and efficiency.
5. Virtualization simplifies IT management.
Characteristics of Virtualized Environments (5 one-line points):
1. Virtualized environments offer resource pooling and sharing.
2. Virtualized environments provide isolation between VMs.
3. Virtualized environments enable dynamic resource allocation.
4. Virtualized environments offer hardware independence.
5. Virtualized environments provide centralized management.
Machine reference model:
1. ISA Virtualization – Emulates hardware to run software across different architectures.
2. Hardware Virtualization – Creates virtual machines for multiple OS instances.
3. OS Virtualization – Uses the OS kernel to isolate applications.
4. Library Virtualization – Redirects application calls for compatibility.
5. Application Virtualization – Runs applications independently from the host OS.

Taxonomy of Virtualization Techniques (5 one-line points):


1. Hardware virtualization virtualizes physical hardware.
2. Software virtualization virtualizes software resources.
3. OS virtualization virtualizes the operating system kernel.
4. Application virtualization virtualizes individual applications.
5. Storage/Network virtualization virtualizes storage and network resources.
Execution Virtualization (5 one-line points):
1. Execution virtualization virtualizes the execution environment.
2. Execution virtualization allows multiple OSs on one machine.
3. Execution virtualization uses hypervisors to manage VMs.
4. Execution virtualization includes full, para, or emulation virtualization.
5. Execution virtualization enables server consolidation.
Other Types of Virtualization (5 one-line points):
1. Storage virtualization pools storage resources.
2. Network virtualization creates virtual networks.
3. Application virtualization runs apps in isolation.
4. Desktop virtualization delivers virtual desktops.
5. Data virtualization abstracts data access.
Virtualization and Cloud Computing (5 one-line points):
1. Virtualization is the foundation of cloud computing.
2. Virtualization enables scalable cloud resources.
3. Virtualization supports on-demand provisioning.
4. Virtualization facilitates multi-tenancy.
5. Virtualization improves resource use in clouds.
Pros and Cons of Virtualization (5 one-line points):
1. Virtualization offers cost savings and efficiency.
2. Virtualization offers flexibility and scalability.
3. Virtualization offers enhanced disaster recovery and testing.
4. Virtualization introduces performance overhead and complexity.
5. Virtualization raises security concerns and resource contention issues.
Advantages of Virtualization (5 one-line points):
1. Virtualization enables hardware consolidation (cost reduction).
2. Virtualization improves resource utilization.
3. Virtualization simplifies management.
4. Virtualization increases flexibility and scalability.
5. Virtualization enhances disaster recovery.
Disadvantages of Virtualization (5 one-line points):
1. Virtualization can introduce performance overhead.
2. Virtualization adds management complexity.
3. Virtualization can create security vulnerabilities.
4. Virtualization can lead to resource contention.
5. Virtualization may involve licensing issues.
Technology Examples (5 one-line points):
1. VMware vSphere is a popular virtualization platform.
2. Microsoft Hyper-V is Microsoft's virtualization solution.
3. KVM is a Linux-based virtualization solution.
4. Xen is an open-source hypervisor.
5. Citrix XenServer is a virtualization platform.
Xen: Paravirtualization (5 one-line points):
1. Xen paravirtualization requires guest OS modifications.
2. Xen paravirtualization reduces hypervisor overhead.
3. Xen paravirtualization offers improved performance.
4. Xen is an open-source hypervisor.
5. Xen is used in cloud environments.
VMware: Full Virtualization (5 one-line points):
1. VMware full virtualization creates complete virtual hardware.
2. VMware full virtualization runs any OS without modification.
3. VMware full virtualization uses binary translation.
4. VMware full virtualization provides a high degree of isolation.
5. VMware is an industry-leading virtualization platform.
Virtualization Solution (5 one-line points):
1. A virtualization solution combines hardware, software, and tools.
2. A virtualization solution enables virtualization implementation.
3. A virtualization solution is tailored to specific needs.
4. A virtualization solution includes a hypervisor and management console.
5. A virtualization solution may involve cloud integration.
End-user (desktop) virtualization (5 one-line points):
1. End-user virtualization delivers virtual desktops.
2. End-user virtualization provides centralized desktop management.
3. End-user virtualization improves security.
4. End-user virtualization simplifies patching.
5. End-user virtualization allows access from any device.

You might also like