Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Cloud Computing

Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

CLOUD COMPUTING

UNIT - 2
Certainly! Let's break down the topic "Functioning of Cloud Computing" into simpler terms.

Introduction to Cloud Computing:


Cloud computing is like renting computing resources (such as servers, storage, databases,
networking, software) over the internet instead of owning and maintaining them on your own
computer or data center. It allows you to access and use these resources on-demand,
paying only for what you use.

Key Components:

1.Infrastructure as a Service (IaaS):


● Virtualization: IaaS employs virtualization technology to create virtual instances of
computing resources like servers, storage, and networks. This enables users to scale
resources up or down as needed.

● Examples: Amazon Web Services (AWS) Elastic Compute Cloud (EC2) and
Microsoft Azure Virtual Machines.

2. Platform as a Service (PaaS):


● Development Frameworks: PaaS provides a platform and environment for
developers to build, deploy, and manage applications without dealing with the
underlying infrastructure. It includes development frameworks, databases, and tools.

● Examples: Google App Engine and Heroku.

3. Software as a Service (SaaS):


- Delivers software applications over the internet on a subscription basis. Users access the
software through a web browser.
● Ready-Made Applications: SaaS delivers software applications over the internet.
Users can access these applications through a web browser without the need for
installation or maintenance.

● Examples: Salesforce, Google Workspace, and Microsoft 365.

Service Models:

1. Public Cloud:
● Shared Resources: Public cloud services are provided by third-party providers and
are available to the general public. Resources are shared among multiple users,
making it a cost-effective option.

● Examples: AWS, Microsoft Azure, and Google Cloud Platform.

2. Private Cloud:
● Dedicated Resources: Private clouds are dedicated to a single organization. They
can be managed internally or by a third-party provider. This model offers more control
over security and customization.

● Examples: VMware Cloud Foundation and OpenStack.

3. Hybrid Cloud:
● Combination of public and private clouds.
● Integration of Public and Private Clouds: Hybrid clouds combine elements of public
and private clouds, allowing data and applications to be shared between them. It
provides greater flexibility and optimization of existing infrastructure.

● Use Cases: A company might use a private cloud for sensitive data and a public
cloud for scalable computing power.
Characteristics of Cloud Computing:

1. On-Demand Self-Service:
- Users can provision and manage resources as needed without human intervention from
the service provider.

2. Broad Network Access:


- Access to cloud resources is available over the network and can be accessed through
standard mechanisms (e.g., mobile phones, tablets, laptops).

3. Resource Pooling:
- Resources are pooled to serve multiple customers. Resources are dynamically assigned
and reassigned according to demand.

4. Rapid Elasticity:
- Resources can be quickly scaled up or down based on demand. Users only pay for the
resources they use.
5. Measured Service:
- Cloud systems automatically control and optimize resource usage. Resource usage can
be monitored, controlled, and reported, providing transparency.

Advantages of Cloud Computing:


1. Cost-Efficiency:
- Pay only for the resources you use, reducing capital expenditure.

2. Scalability:
- Easily scale resources up or down based on demand.

3. Accessibility:
- Access your applications and data from anywhere with an internet connection.

4. Reliability:
- Cloud providers often have redundant systems, increasing reliability.

5. Security:
- Cloud providers invest in security measures, often providing better security than
individual organizations can afford.

Understanding the functioning of cloud computing is crucial as it revolutionizes how


businesses and individuals use and manage computing resources. It enables flexibility, cost
savings, and efficient resource utilization.

Introduction to Cloud Architecture:


Cloud Architecture refers to the design and structure of a cloud computing environment. It
outlines how various components and services are organized, connected, and interact within
a cloud system. Understanding cloud architecture is crucial for efficiently utilizing cloud
resources and ensuring the reliability and performance of applications.
Key Components of Cloud Architecture:

1. Front End:
- User Interface:The front end is what users interact with directly. It includes the user
interface and applications used to access cloud services.

2. Back End:
- Cloud Servers, Storage, and Databases: The back end consists of servers, storage,
databases, and other infrastructure components that run the cloud application. It is
responsible for processing and storing data.

3. Cloud Service Delivery:


- Service Models (IaaS, PaaS, SaaS): Cloud services are delivered through different
models. Infrastructure as a Service (IaaS) provides virtualized computing resources,
Platform as a Service (PaaS) offers a development platform, and Software as a Service
(SaaS) delivers complete applications.

4. Connectivity:
- Networks and Communication: Cloud architecture includes networks that facilitate
communication between different components. This ensures seamless data transfer and
access to services.

Cloud Deployment Models:

1. Public Cloud:
- Third-Party Services: Public cloud architecture involves using services provided by
external cloud service providers. Resources are shared among multiple users.

2. Private Cloud:
- Dedicated to a Single Organization: Private cloud architecture is used exclusively by a
single organization. It may be managed internally or by a third party.
3. Hybrid Cloud:
- Combination of Public and Private Clouds: Hybrid cloud architecture integrates both
public and private clouds, allowing data and applications to move between them. This
provides flexibility and optimization.

Key Concepts in Cloud Architecture:

1. Scalability:
- Ability to Scale Resources:Cloud architecture is designed to be scalable, allowing
organizations to increase or decrease resources based on demand. This ensures optimal
performance and cost efficiency.

2. Load Balancing:
- Distribution of Workload: Load balancing distributes incoming network traffic across
multiple servers. This ensures no single server is overwhelmed, optimizing resource usage.

3. Fault Tolerance:
- Resilience to Failures: Cloud architecture incorporates fault tolerance measures,
ensuring that the system can continue functioning even if individual components fail.

4. Elasticity:
- Dynamic Resource Allocation: Elasticity in cloud architecture allows for dynamic
allocation of resources to handle varying workloads. Resources can be automatically scaled
up or down.

Security in Cloud Architecture:

1. Data Encryption:
- Protecting Data: Cloud architecture includes encryption methods to secure data during
storage and transmission.
2. Access Control:
- Regulating Access: Access control mechanisms are implemented to ensure that only
authorized users and applications can access specific resources.

3. Compliance Measures:
- Meeting Regulatory Requirements: Cloud architecture incorporates features to meet
various compliance standards and regulatory requirements.

Advantages of Cloud Architecture:

1. Cost-Efficiency:
- Pay-as-You-Go Model: Cloud architecture allows organizations to pay for the resources
they use, reducing capital expenditures.

2. Flexibility:
- Adaptability to Changing Needs: Cloud architecture provides flexibility, allowing
organizations to adapt quickly to changing business requirements.

3. Global Accessibility:
- Access Anywhere, Anytime: Cloud architecture enables users to access resources and
applications from anywhere with an internet connection.

4. Collaboration:
- Facilitating Teamwork: Cloud architecture supports collaboration by allowing multiple
users to access and work on the same resources and applications.

Introduction to Cloud Storage:


Cloud Storage is a service that allows you to store and access your data (such as files,
documents, images, and videos) over the internet. Instead of saving data on your local
computer or a physical storage device, it is stored on remote servers maintained by a
third-party cloud service provider. This enables you to access your data from anywhere with
an internet connection.
Key Concepts of Cloud Storage:

1. Data Servers:
- Remote Storage Locations: Cloud storage providers operate data servers in various
locations. These servers store and manage your data, ensuring redundancy and availability.

2. Internet Access:
- Access Anywhere: Cloud storage allows you to access your data from different devices
connected to the internet. This could include computers, smartphones, tablets, and more.

3. Data Synchronization:
- Consistent Data Across Devices: Cloud storage often provides synchronization features,
ensuring that changes made to your data on one device are reflected across all connected
devices.
4. File Sharing:
- Collaborative Features: Cloud storage services typically include features for sharing files
and folders with others. This facilitates collaboration and easy sharing of documents.

Types of Cloud Storage Services:

1. Object Storage:
- Storage in Buckets or Containers: Object storage is a method where data is stored as
objects (files) in containers or buckets. Each object has a unique identifier, and these can be
easily accessed and managed.

2. File Storage:
-Structured File System: File storage resembles a traditional file system, organizing data
into folders and files. It is suitable for storing and retrieving files in a hierarchical structure.

3. Block Storage:
- Dividing Storage into Blocks: Block storage divides data into blocks and stores them as
separate pieces. It is often used for virtual machines and provides efficient and fast access
to data.

Advantages of Cloud Storage:

1. Accessibility:
- Access Anytime, Anywhere: Cloud storage enables you to access your data from any
device with an internet connection, providing flexibility and convenience.

2. Scalability:
- Adjust Storage Needs Easily: Cloud storage allows you to scale your storage space up or
down based on your needs. You only pay for the storage you use.
3. Data Backup and Redundancy:
- Built-in Redundancy: Cloud storage services often have built-in redundancy, meaning
your data is stored in multiple locations. This provides a backup in case of hardware failures.

4. Collaboration:
- Effortless File Sharing: Cloud storage facilitates easy sharing of files and folders,
supporting collaboration among individuals or teams.

5. Cost-Efficiency:
- Pay-as-You-Go Model: Many cloud storage services operate on a pay-as-you-go model,
where you only pay for the storage space you use. This can be cost-effective compared to
traditional storage methods.

Security Considerations:

1. Encryption:
- Securing Data in Transit and at Rest: Cloud storage providers often use encryption to
secure data during transmission and while it is stored on their servers.

2. Access Controls:
- Regulating Data Access: Access controls ensure that only authorized individuals or
systems can access and modify your stored data.

3. Compliance Measures:
- Meeting Security Standards: Cloud storage services implement measures to comply with
various security standards and regulations.
Cloud Services :

1. SaaS (Software as a Service):

Definition:
SaaS delivers software applications over the internet on a subscription basis. Instead of
installing and maintaining software locally on your device, you access it through a web
browser.

Examples:
- Google Workspace (formerly G Suite)
- Microsoft 365 (Office 365)
- Salesforce
- Dropbox

Key Points:
- Users access applications via a web browser.
- Eliminates the need for individual software installations and updates.
- Subscription-based pricing model.
- Managed, maintained, and updated by the service provider.
2. IaaS (Infrastructure as a Service):

Definition:
IaaS provides virtualized computing resources over the internet. It includes virtual machines,
storage, and networks, allowing users to run and manage applications without dealing with
physical hardware.

Examples:
- Amazon Web Services (AWS) Elastic Compute Cloud (EC2)
- Microsoft Azure Virtual Machines
- Google Cloud Compute Engine

Key Points:
- Offers virtualized computing infrastructure.
- Users have control over the operating systems, applications, and development frameworks.
- Scalable resources based on demand.
- Pay-as-you-go pricing model.

3. PaaS (Platform as a Service):

Definition:
PaaS offers a platform that allows developers to build, deploy, and manage applications
without dealing with the complexities of underlying infrastructure. It provides tools and
services for application development.

Examples:
- Google App Engine
- Microsoft Azure App Service
- Heroku

Key Points:
- Developers focus on coding and application logic.
- Eliminates the need to manage underlying infrastructure.
- Platform includes development frameworks, databases, and middleware.
- Streamlines the application development process.

4. DaaS (Desktop as a Service):

Definition:
DaaS delivers virtual desktops over the internet. Instead of having the desktop environment
on a local device, users access their desktops remotely from a cloud service.

Examples:
- Citrix Virtual Apps and Desktops
- VMware Horizon Cloud

Key Points:
- Virtual desktops are hosted in the cloud.
- Accessible from various devices.
- Simplifies desktop management and updates.
- Useful for remote work scenarios.

5. VDI (Virtual Desktop Infrastructure):

Definition:
VDI is a technology that virtualizes a desktop operating system and runs it on a centralized
server. Each user has their virtual desktop instance, which they can access remotely.

Examples:
- VMware Horizon View
- Microsoft Remote Desktop Services

Key Points:
- Each user has a dedicated virtual desktop.
- Centralized management of desktop images.
- Offers flexibility and scalability.
- Often used in enterprise environments.
These cloud services play crucial roles in providing flexible and scalable solutions for various
computing needs.

​ Cloud as Web-Based Application:


● The concept of the cloud as a web-based application refers to utilizing
cloud computing resources to deliver web-based applications over the
internet. In this model, applications are hosted on remote servers
maintained by cloud service providers and accessed by users via web
browsers.
● Cloud-based web applications offer several advantages, including
scalability, accessibility from anywhere with internet connectivity,
reduced infrastructure costs, and simplified maintenance and updates.
● Key components of cloud-based web applications include front-end
interfaces (e.g., HTML, CSS, JavaScript), back-end servers (e.g., using
frameworks like Node.js, Django, Flask), databases (e.g., MySQL,
PostgreSQL, MongoDB), and cloud services for storage, compute, and
networking.

Cloud Service Development: Pros and Cons:


● Pros:
● Scalability: Cloud services offer the ability to scale resources up
or down based on demand, ensuring optimal performance and
cost-efficiency.
● Cost-effectiveness: Cloud services eliminate the need for
upfront investment in infrastructure, allowing businesses to pay
only for the resources they use.
● Flexibility: Cloud platforms provide a wide range of services and
tools that can be tailored to specific application requirements.
● Cons:
● Security concerns: Storing data and applications in the cloud
raises security and privacy concerns, such as data breaches and
unauthorized access.
● Dependency on internet connectivity: Cloud-based applications
rely on internet connectivity, which can be a limitation in areas
with poor connectivity or during network outages.
● Vendor lock-in: Adopting specific cloud services may result in
dependency on a single provider, making it difficult to migrate to
alternative platforms in the future.

​ Types of Cloud Services:



● Software as a Service (SaaS): SaaS delivers applications over the
internet on a subscription basis, eliminating the need for users to
install and maintain software locally. Examples include Google
Workspace, Microsoft Office 365, and Salesforce.
● Platform as a Service (PaaS): PaaS provides a platform for developers
to build, deploy, and manage applications without worrying about
underlying infrastructure. Examples include Heroku, AWS Elastic
Beanstalk, and Google App Engine.
● Infrastructure as a Service (IaaS): IaaS offers virtualized computing
resources, including virtual machines, storage, and networking, on a
pay-as-you-go basis. Examples include Amazon EC2, Microsoft Azure
Virtual Machines, and Google Compute Engine.

​ Web Services:
● Web services are software components designed to communicate over
the internet and enable interoperability between different systems and
applications.
● They typically follow standards such as SOAP (Simple Object Access
Protocol) or REST (Representational State Transfer) for
communication.
● Web services facilitate integration between disparate systems, allowing
them to exchange data and functionality seamlessly.

​ On-Demand Computing:
● On-demand computing, also known as utility computing, refers to the
provision of computing resources on an as-needed basis.
● Users can access and utilize resources such as processing power,
storage, and networking on-demand, paying only for what they use.
● On-demand computing enables businesses to scale their infrastructure
dynamically to accommodate fluctuating workloads and demand
spikes.

​ Discovering Cloud Services:



● Discovering cloud services involves exploring the wide array of
offerings provided by cloud service providers to meet various
computing needs. Cloud services encompass infrastructure, platform,
and software services delivered over the internet on a pay-as-you-go
basis.
● Organizations can leverage cloud services to offload the burden of
managing physical infrastructure, reduce costs, improve scalability, and
increase agility.
● Key categories of cloud services include Infrastructure as a Service
(IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS),
each offering different levels of abstraction and management
responsibilities.

​ Development Services and Tools:


● Development services and tools provided by cloud service providers
empower developers to build, deploy, and manage applications
efficiently in the cloud environment.
● These services often include integrated development environments
(IDEs), code repositories, continuous integration and continuous
deployment (CI/CD) pipelines, testing frameworks, and monitoring
tools.
● Cloud providers offer SDKs (Software Development Kits) and APIs
(Application Programming Interfaces) to interact with their services
programmatically, enabling automation and integration with existing
workflows.
● DevOps practices are commonly supported by cloud development
services, emphasizing collaboration, automation, and continuous
delivery to streamline the software development lifecycle.
Overview of Major Cloud Service Providers:

​ a. Amazon EC2 (Elastic Compute Cloud):
● Amazon EC2 is a core service within Amazon Web Services (AWS) that
provides resizable compute capacity in the cloud.
● Users can launch virtual servers, known as instances, within minutes,
and scale them up or down based on demand.
● EC2 offers a wide range of instance types optimized for different
workloads, along with features such as auto-scaling, load balancing,
and security groups.
● It supports various operating systems and provides integrations with
other AWS services for storage, networking, and management.
​ b. Google App Engine:
● Google App Engine is a fully managed platform for building and
deploying web applications and services on Google Cloud Platform
(GCP).
● Developers can focus on writing code without worrying about
infrastructure management, as Google handles scaling, patching, and
monitoring.
● App Engine supports multiple programming languages, including Java,
Python, Go, and Node.js, and offers built-in services for databases,
caching, and authentication.
● It provides features like automatic scaling, traffic splitting, and
versioning to ensure high availability and reliability.
​ c. IBM Cloud:
● IBM Cloud is IBM's cloud computing platform that offers a wide range
of services for computing, storage, networking, AI, and more.
● It provides flexibility to deploy workloads in public, private, or hybrid
cloud environments, catering to diverse business needs.
● IBM Cloud offers managed services for Kubernetes, AI, and data
analytics, along with developer tools like IBM Cloud Foundry for
building and deploying applications.
● It emphasizes enterprise-grade security, compliance, and governance
features to meet the requirements of regulated industries.
​ d. Eucalyptus:
● Eucalyptus is an open-source software platform for building private
and hybrid clouds compatible with AWS APIs.
● It allows organizations to create their own cloud infrastructure using
existing hardware and software resources, providing self-service
access to compute, storage, and networking.
● Eucalyptus enables seamless integration with AWS services,
facilitating workload portability and hybrid cloud deployments.
● It offers features like elastic scaling, multi-tenancy, and resource
isolation, along with a web-based management console for
administration.

These cloud service providers offer a diverse range of services and tools to meet the
needs of developers, businesses, and enterprises, empowering them to innovate,
scale, and succeed in the cloud-first era. Each provider has its unique strengths,
pricing models, and target audiences, so organizations should evaluate their
requirements carefully before choosing a cloud platform.

You might also like