Cloud Computing Unit 1

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

Cloud computing

Unit 1
1.1 CLOUD COMPUTING IN A NUTSHELL
➢ Cloud computing is the delivery of computing services including servers, storage, databases,
networking, software, analytics and intelligence over the internet(cloud).
➢ The cloud offers faster innovation, flexible resources and economy of scale.
➢ Cloud computing has been coined as an umbrella term to describe a category of sophisticated
on demand computing services Offered by commercial providers such as amazon, google, and
Microsoft.
➢ The main principle behind the cloud is offering computing, storage and software as a service.
➢ Cloud is a parallel and distributed computing system consisting of collection of interconnected
and virtualized computers that are dynamically provisioned and presented as one computing
resource based on service level agreements(SLA) established through negotiation between
the service providers and consumers.
Benefits of cloud computing:
1. Cost
2. Speed
3. Global scale
4. Productivity
5. Performance
6. Security
1.3 LAYERS AND TYPES OF CLOUDS
Cloud computing services are divided into three classes, according to the abstraction level of the
capability provided and the service model of providers, namely: (1) Infrastructure as a Service, (2)
Platform as a Service, and (3) Software as a Service.

1.3.1 Infrastructure as a Service


➢ Infrastructure is a business model that delivers IT infrastructure like compute, storage and
networking.
➢ A cloud infrastructure enables on-demand provisioning of services running several choices of
operating systems and a customized software stack.
➢ Infrastructure services are considered to be the bottom layer of cloud computing system.
➢ The user is responsible for deploying maintaining and supporting your application.
➢ The IaaS provider is responsible for maintaining the physical infrastructure.
➢ Examples: Amazon Web Services, Microsoft Azure, etc.
1.3.2 Platform as a Service
➢ PaaS is a complete development and deployment environment in the cloud.
➢ PaaS offers an environment on which developers create and deploy applications and do not
necessarily need to know how many processors or how much memory the application is
using.
➢ In addition, multiple programming models and specialized services (e.g., data access,
authentication, and payments) are offered as building blocks to new applications
➢ Like IaaS, PaaS includes infrastructure(servers, storage and networking) but also middleware,
development tools.
➢ Example: Google App Engine, Elastic Beanstalk, etc.
1.3.3 Software as a Service
➢ The top layer of cloud computing is Software as a Service (SaaS).Applications reside on the
top of the cloud stack.
➢ Services provided by this layer can be accessed by end users through Web portals.
➢ SaaS delivers ready-to-use applications that are accessible over the internet. It offers
businesses the convenience of accessing software applications over the Internet, eliminating
the need for local installations.
➢ Traditional desktop applications such as word processing and spreadsheet can now be
accessed as a service in the Web.
➢ This model of delivering applications, known as Software as a Service (SaaS), alleviates the
burden of software maintenance for customers and simplifies development and testing for
providers.
➢ Example: Google Workspace, Salesforce, Shopify, etc.
1.3.4 Deployment Models
Public cloud - “cloud made available in a pay-as-you-go manner to the general public”
Private cloud -“internal data center of a business or other organization, not made available to the
general public.”
A community cloud is “shared by several organizations and supports a specific community that has
shared concerns.
A hybrid cloud takes shape when a private cloud is supplemented with computing capacity from
public clouds.
deployment based
1. Public
2. Private
3. Hybrid
Service based
1. Infrastructure as a service
2. Platform as a service
3. Software as a service
1.4 DESIRED FEATURES OF A CLOUD
1.4.1 Self-Service
In cloud computing, self-service allows users to access and manage resources independently
through a user-friendly web portal or API. This feature enables them to perform actions such as
creating virtual machines, setting up storage, or deploying applications without requiring assistance
from IT staff. The benefit of self-service is flexibility and speed, as users can directly provision
resources to meet their needs instantly, streamlining workflows and reducing dependency on
administrative overhead.
1.4.2 Per-Usage Metering and Billing
Cloud services operate on a pay-as-you-go model, meaning users are charged based on actual usage
rather than a fixed rate. This metering tracks resources like computing power, storage, and network
bandwidth and bills accordingly. It allows for cost efficiency, as users only pay for what they
consume, making it ideal for dynamic workloads or fluctuating demand. This model also provides
transparency, helping users monitor and control their spending with clear usage metrics.
1.4.3 Elasticity
Elasticity refers to the cloud’s ability to automatically scale resources up or down in response to
changing demand. For example, during peak traffic times, cloud services can allocate more
computing resources to handle the load, then scale back down when demand decreases. This
capability ensures optimal performance without manual intervention and helps avoid unnecessary
costs, as resources are only provisioned as needed.
1.4.4 Customization
Cloud platforms offer a high level of customization, allowing users to configure resources,
applications, and environments to fit their specific requirements. This might include choosing
operating systems, hardware specifications, security settings, and software integrations.
Customization enables businesses to tailor their cloud environment to align closely with their
unique needs, making it suitable for diverse industries and specialized workloads.
1.5 CLOUD INFRASTRUCTURE MANAGEMENT
1.5.1 Features
➢ Virtualization Support
Virtualization in cloud infrastructure allows the creation of multiple virtual instances on a
single physical machine, enhancing resource utilization and flexibility. It abstracts the physical
hardware, enabling users to run multiple operating systems and applications independently.
Virtualization supports isolation, so each virtual instance is secure and unaffected by others
on the same host. It also enables rapid scaling and efficient resource management, which are
essential for cloud environments.
➢ Self-Service, On-Demand Resource Provisioning
This feature allows users to independently request and allocate cloud resources (such as
virtual machines, storage, and networks) whenever needed, without manual intervention
from IT staff. Users can access and configure resources via a web portal or API, enabling faster
deployment and experimentation. Resources are billed based on actual usage, promoting
cost-effectiveness by scaling up or down as demand changes. This flexibility empowers users
to manage their workloads with greater autonomy and efficiency.
➢ Multiple Backend Hypervisors
Supporting multiple backend hypervisors allows a cloud infrastructure to operate with
different virtualization technologies, such as VMware, KVM, or Hyper-V. This compatibility
enhances flexibility, enabling integration with various hardware and optimizing for different
workloads. It also allows organizations to avoid vendor lock-in and choose hypervisors that
best fit specific performance, security, or cost needs. Multiple hypervisors support diverse
environments, making cloud infrastructure more versatile and adaptable.
➢ Storage Virtualization
Storage virtualization aggregates multiple physical storage devices into a single, unified
storage resource accessible by users and applications. It simplifies management by allowing
administrators to provision, allocate, and scale storage without dealing with individual
hardware constraints. This abstraction enhances performance, as data can be dynamically
moved across devices based on demand. It also improves fault tolerance and data
redundancy, ensuring reliability and availability in cloud environments.
➢ Interface to Public Clouds
An interface to public clouds enables seamless connectivity and integration with major cloud
providers like AWS, Azure, or Google Cloud. This feature allows users to extend or migrate
workloads between private infrastructure and public cloud, enhancing scalability and
flexibility. By accessing public cloud resources, organizations can handle peak loads or access
specialized services. It also enables hybrid and multi-cloud strategies, providing a unified
management experience across different cloud environments.
➢ High Availability and Data Recovery
High availability ensures continuous access to cloud services by minimizing downtime through
redundant infrastructure, load balancing, and failover mechanisms. Data recovery
complements this by backing up data and providing restoration options in the event of
failures, outages, or data loss. Together, they maintain service reliability, allowing for quick
recovery and minimal disruption during incidents. These features are critical for mission-
critical applications that require consistent uptime and data protection.
➢ Dynamic Resource Allocation
Dynamic resource allocation automatically adjusts computing resources, such as CPU,
memory, and storage, based on real-time demand. This feature ensures that applications
receive adequate resources during peak loads while freeing them up when demand
decreases. It optimizes resource utilization and helps reduce costs by avoiding over-
provisioning. Additionally, it enhances application performance and user experience by
delivering resources as needed without manual intervention.
1.5.2 Case Studies
1.8 CHALLENGES AND RISKS
1.8.1 Security, Privacy, and Trust
Cloud computing raises concerns about data security due to shared infrastructure, making it
vulnerable to breaches, unauthorized access, and cyberattacks. Privacy issues arise as sensitive data
is stored off-site, potentially outside of local regulatory jurisdictions. Trust in cloud service providers
is critical, as businesses rely on their security measures, but issues with data handling, transparency,
and control can create uncertainty. These concerns require strong encryption, access controls, and
clear data management policies.
1.8.2 Data Lock-In and Standardization
Data lock-in occurs when a company’s data is stored in a proprietary format or system, making it
difficult or costly to migrate to another provider. This limits flexibility and increases dependency on a
specific cloud vendor. Lack of standardization across cloud platforms also complicates
interoperability, as different providers may use incompatible technologies, making it harder to move
or integrate data and services. Overcoming this challenge requires adopting open standards and
ensuring portability across platforms.
1.8.3 Availability, Fault-Tolerance, and Disaster Recovery
Ensuring high availability in cloud environments requires redundancy and failover mechanisms to
minimize downtime. Fault tolerance ensures that if one component fails, others can take over,
maintaining service continuity. Disaster recovery plans are essential to quickly restore systems and
data after major failures, ensuring business continuity. These elements require careful planning,
regular backups, and real-time monitoring to protect against disruptions and minimize recovery
time.
1.8.4 Resource Management and Energy-Efficiency
Effective resource management in cloud computing involves optimizing the allocation and use of
computing resources to avoid waste and ensure high performance. Poor resource management can
lead to over-provisioning or under-utilization, which impacts cost and efficiency. Energy efficiency is
a key concern, as data centers consume significant amounts of power; optimizing workloads and
using energy-efficient hardware can reduce costs and environmental impact. Balancing resource
demand with energy-saving strategies helps maintain sustainable operations while minimizing
operational costs.
2.3 THE SEVEN-STEP MODEL OF MIGRATION INTO A CLOUD

Uses of cloud computing:


1. Create cloud native applications
2. Store, backup and recover data
3. Stream audio and video
4. Test and build applications
5. Deliver software on demand
6. Data analysis
7. Embedded intelligence

You might also like