Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
4 views

cloudcom assignment2 M3

Uploaded by

rumanp2002
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

cloudcom assignment2 M3

Uploaded by

rumanp2002
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

Introduction

• Cloud computing is a utility-oriented and


Internet-centric way of delivering IT services
on demand. These services cover the entire
computing stack: from the hardware
infrastructure(set of virtual machines) to
software services such as development
platforms and distributed applications.
The Cloud Reference Model
1) Architecture
2) Infrastructure- and hardware-as-a-service
3) Platform as a service
4) Software as a service
The Cloud Reference Model
• Cloud infrastructure uses a range of resources, like clusters
and networked PCs, to provide the necessary "computing
power for services.
• Typically, a datacenter with many nodes forms the base of
this infrastructure. The core middleware manages the
physical setup, optimizing resources and providing a
suitable environment for applications.
• At the base of this stack, virtualization technologies, such as
hypervisors, ensure customization, application isolation,
and resource management by creating virtual machines.
• These allow hardware resources like CPU and memory to
be divided efficiently, meeting the needs of different users
and applications.
• The "The Cloud Computing Architecture" shows the different layers
and components involved in cloud computing, from infrastructure
to applications.
• Cloud Resources (System Infrastructure):
This is the foundational layer and includes physical hardware like
servers, storage devices, and networking equipment that form the
base of cloud infrastructure. The physical resources are pooled
together and made available for use.
• Core Middleware:
Middleware acts as a bridge between the infrastructure and higher-
level services. It is responsible for managing cloud resources and
handling virtual machines (VMs). Virtualization allows the physical
resources to be divided and managed efficiently, enabling the
creation of VMs.
• Cloud Hosting Platforms:
This layer includes services that manage how applications
are hosted in the cloud. It handles tasks like service-level
agreements (SLAs), monitoring, pricing, and resource
management. It ensures applications are deployed properly
and meet their performance requirements.
• Cloud Programming Environment and Tools:
This layer provides tools and environments for developers
to create applications. It includes support for web
development, scripting, concurrent and distributed
programming, and libraries that help in building cloud-
based solutions.
• Cloud Applications:
At the top, we have the actual applications that end-
users interact with, such as social computing platforms,
enterprise software, scientific computing, and content
delivery networks (CDNs).
• Adaptive Management and Autonomic Cloud
Economy:
On the right side, this indicates that cloud systems can
self-manage to some extent (autonomic computing)
and adapt dynamically to changes in workload or
demand. It ensures efficient resource use and economy
in cloud environments.
• Layers of Service Models (on the left):
• IaaS (Infrastructure as a Service): Refers to the basic
infrastructure provided to users, including virtual
machines, storage, and networking.
• PaaS (Platform as a Service): Offers a platform with
tools and environments for developing applications
without worrying about the underlying infrastructure.
• SaaS (Software as a Service): Users interact with
software applications hosted in the cloud, such as web
apps or enterprise software.
• PurePaaS, PureSaaS: Variants of PaaS and SaaS with
more specific characteristics or use cases.
• Physical Infrastructure (Bottom Layer):
• Datacenter is The centralized facility that houses
servers and storage, forming the foundation of the
infrastructure.
• A group of interconnected servers that work together
as a single system, often used to provide high
availability and computing power are clusters.
• This contains Desktop/Heterogeneous Resources
which represents the varied physical machines that can
include desktops or other specialized hardware. The
infrastructure may combine different types of
computing resources to offer flexibility.
• Infrastructure Management Software (Middle Layer): This layer manages the physical
resources to offer cloud services.
• Pricing/Billing: Handles the costs associated with the usage of cloud resources, allowing the
cloud provider to charge customers based on their consumption.
• QoS SLA Management: Manages Service Level Agreements (SLAs) to ensure quality of
service (QoS) commitments are met, such as uptime and performance standards.
• Monitoring: Tracks the health, performance, and usage of the infrastructure in real-time.
• Reservation: Allows users to reserve certain amounts of cloud resources (like CPU or storage)
for specific time periods.
• VM Image Repository: Stores pre-configured virtual machine (VM) images that can be used
to quickly provision new virtual machines.
• VM Pool Management: Manages the pool of available virtual machines and resources to
balance workloads efficiently.
• Scheduling: Ensures the timely execution of tasks, including provisioning and managing
resources according to demand.
• Provisioning: Automatically allocates and deallocates resources based on demand, enabling
rapid scaling of infrastructure.
• Web-Based Management Interface (Top Layer):
Provides interfaces such as web services, portals,
that allow administrators and users to interact
with the cloud system. This layer is where users
can manage resources, make API calls, and
monitor the system through a web interface.
• Third-Party IaaS Cloud (Right Section):
The cloud provider can integrate with external,
third-party IaaS clouds for additional resources.
This ensures scalability and redundancy,
providing more options for managing demand.
• Physical Infrastructure (Bottom Layer): This layer
consists of the hardware resources like datacenters,
clusters, and desktops that support the underlying
infrastructure. It provides the physical foundation for
the platform.
• IaaS Providers: The PaaS system can utilize
Infrastructure-as-a-Service (IaaS) providers to access
additional virtualized resources (like virtual machines
and storage) from third-party cloud providers. This
allows the PaaS to dynamically scale and allocate
resources as needed.
• PaaS Core Middleware (Middle Layer):
• Resources Management: Manages the physical and virtual
resources to ensure optimal use and performance.
• Elasticity & Scaling: Provides dynamic scalability, allowing the
platform to adjust resources based on demand automatically.
• Runtime: This is the environment in which applications execute. It
ensures that applications have the resources and environment
needed to run efficiently.
• Application Management: Handles the deployment, management,
and monitoring of applications running on the platform.
• QoS/SLA Management & Billing: Ensures that Service Level
Agreements (SLAs) are met in terms of performance, availability,
and quality, while also managing billing based on resource usage.
• User Management: Manages user accounts, access control, and
permissions within the PaaS environment.
• Web-Based Interface (Top Layer): This layer
provides a user-facing interface that allows access
to the platform through web services, portals, or
REST APIs. Users can interact with the system to
manage resources, deploy applications, or
monitor performance.
• Programming API/Libraries: These are tools,
libraries, and APIs that developers use to build,
deploy, and manage applications on the platform.
Software as a service
• Definition: SaaS is a software delivery model where applications are
accessed via the internet instead of being installed on local hardware.
• Benefits:
– Frees users from complex hardware/software management.
– Third parties handle maintenance and upgrades.
• Multitenancy:
– SaaS applications are designed to serve multiple users from a single platform,
optimizing costs and resources.
• Cost Efficiency:
– Users pay a small fraction of what it would cost to maintain their own
infrastructure.
– Costs are distributed across a large user base.
• History:
– SaaS emerged in the late 1990s.
– Officially named in 2001 by the Software Information & Industry Association
(SIIA).
• Service Access:
– Applications are centrally hosted and accessed over a network (internet, VPN, etc.).
– Users pay a subscription fee to "rent" or access the software.
• Evolution from ASPs:
– Application Service Providers (ASPs) offered early versions of SaaS by hosting packaged
software.
– SaaS evolved to offer more flexibility and customization through Web 2.0 technologies.
• Customization:
– SaaS allows users to personalize software with new services, components, and
workflows.
• Web-Based:
– Customers access the application through a web browser without the need to install
software on their devices.
• Appeal:
– Ideal for applications like CRM (Customer Relationship Management) and ERP
(Enterprise Resource Planning) that meet the general needs of businesses.
– These applications can be easily customized for specific requirements.
Types of clouds
• Public clouds. The cloud is open to the wider public.
• Private clouds. The cloud is implemented within the private
premises of an institution and generally made accessible to the
members of the institution or a subset of them.
• Hybrid or heterogeneous clouds. A hybrid cloud combines
elements of both private and public cloud infrastructures. It
typically refers to a private cloud that is extended by incorporating
resources or services from a public cloud. This allows businesses to
leverage the scalability and flexibility of public cloud services while
maintaining control over sensitive data and critical applications
within their private infrastructure.
• Community clouds. The cloud is characterized by a multi-
administrative domain involving different deployment models
(public, private, and hybrid), and it is specifically designed to
address the needs of a specific industry.
Public clouds
• Public clouds are cloud computing services available to anyone, accessible
via the internet at any time.
• Structure is Comprised of distributed systems and one or more
datacenters. Services are implemented on top of this infrastructure.
• Easily Accessible as Customers sign up, enter credentials and billing
details, and start using services instantly.
• Public clouds were the first type of cloud computing implemented. Initially
popular for reducing IT infrastructure costs and managing peak loads.
• Ideal for small enterprises, allowing them to start without large up-front
investments. Businesses can scale their IT needs up or down as required.
PUBLIC CLOUD CONTD….
• Multitenancy:Public clouds serve multiple users, providing each
with isolated virtual environments. This ensures performance,
security, and proper monitoring.
• Quality of Service (QoS): QoS management is critical to ensure
performance, monitoring, billing, and accountability for each
user.
• Service Variety:
• Public clouds offer different services like:
– Infrastructure as a service (e.g., Amazon EC2)
– Platform as a service (e.g., Google AppEngine)
– Software as a service (e.g., SalesForce.com)
• Public clouds naturally scale to accommodate large numbers of
users and handle peak loads effectively.
Private clouds
• Public clouds offer a cost-effective way to reduce IT expenses, but they
aren't suitable for all situations.
• Major concern is the loss of control, as the cloud provider manages the
infrastructure and sensitive data.
• Despite privacy regulations, this can still feel risky for some organizations.
Government and military agencies, for instance, avoid public clouds due to
the security risks of exposing sensitive data. Additionally, the location of
data centers impacts legal regulations, with certain countries like the U.S.
having laws (e.g., the USA PATRIOT Act) that allow broad access to stored
information.
• For businesses with large IT infrastructures, switching to public clouds may
not be ideal, as they prefer to optimize their existing systems. These
concerns make public cloud use less appealing, but the concept of on-
demand IT services remains attractive.
• This has led to the rise of private clouds, which function similarly to public
clouds but are contained within an organization's own infrastructure.
Private clouds contd…..
• Private clouds are virtual systems that use an organization's
own infrastructure to provide internal users with flexible
access to computing resources.
• Unlike public clouds' pay-as-you-go model, private clouds
may use alternative billing systems to allocate costs to
different departments based on usage.
• The main advantage of private clouds is that they keep
business operations in-house, leveraging existing IT
infrastructure and reducing maintenance needs once the
cloud is established.
• Since data remains within the organization, security
concerns are minimized, and IT resources can be more
efficiently utilized to serve a broader range of users.
• Datacenters, Clusters, Desktop Grids: This represents the physical
hardware layer of the private cloud. It includes the physical servers,
storage devices, and networking equipment located in data centers, as
well as clusters of computers or desktop grids that provide the raw
computing power.
• Virtual Machine Technology:
• KVM, Xen, VMWare, etc.: This layer includes virtualization software,
which allows the physical infrastructure to be divided into multiple virtual
machines (VMs). These VMs can run different operating systems and
applications, making better use of hardware resources and allowing
multiple users to share the same physical servers.
• Infrastructure Management Software:
• Eucalyptus, OpenNebula, VMWare vCloud, etc.: This layer consists of
cloud management platforms that help manage and coordinate the
virtualized resources. These tools allow administrators to control the
distribution, scaling, and monitoring of resources in the cloud, automating
much of the IT management process.
• Platform-as-a-Service (PaaS) Solutions:
• DataSynapse, Zimory Pools, Elastra CloudServer,
Aneka, etc.: This is the highest layer of the stack,
where developers and users interact with the
cloud. PaaS solutions provide platforms that
support application development, deployment,
and scaling without worrying about the
underlying infrastructure. They enable dynamic
provisioning of computing resources for different
departments or users within the organization.
Hybrid clouds
• Public clouds are large infrastructures that serve multiple users but
face security threats and administrative challenges.
• While public clouds may appeal to start-ups due to their low IT
capital costs, private clouds often prevail because they allow
companies to utilize their existing IT infrastructure and keep data
processing within the enterprise.
• However, private clouds struggle with scalability, especially during
peak loads.
• To address this, hybrid clouds combine private and public cloud
benefits.
• They allow enterprises to retain sensitive data on-premises while
leveraging public cloud resources for scalability.
• Security concerns are mostly limited to the public portion, which
handles operations with fewer constraints.
Hybrid Clouds
• A hybrid cloud integrates private cloud systems with
public cloud resources, allowing dynamic provisioning,
or "cloudbursting," to manage peak demand.
• Hybrid cloud systems are especially useful for IT
infrastructure, allowing the on-demand acquisition of
virtual machines.
• Tools like OpenNebula and InterGrid manage hybrid
cloud environments by allocating resources based on
budget and demand, optimizing the use of public
resources for cost-effective scalability.
Community Cloud
Community Clouds
• Community clouds are distributed systems
created by integrating the services of different
clouds to address the specific needs of an
industry, a community, or a business sector.
• Community clouds also represent a model
where underutilized user resources form an
infrastructure where users can be consumers,
producers, or coordinators of services.
Community Clouds
• Candidate sectors for community clouds include:
• Media Industry: Media companies seek low-cost, agile solutions for
efficient content production, which often involves collaboration,
large data transfers, and compute-intensive tasks. Community
clouds provide a shared environment to facilitate this with
aggregate bandwidth, CPU, and storage.
• Healthcare Industry: Community clouds offer a platform for sharing
knowledge without exposing sensitive data. They support storing
patient data in private clouds while using shared infrastructure for
noncritical services.
• Energy and Core Industries: These sectors involve multiple
providers and vendors. Community clouds offer solutions for
service management and orchestration, creating an open market
infrastructure.
Community Clouds
• Public Sector: Legal and political restrictions limit
public cloud use. Community clouds provide a
distributed environment for governmental
processes like invoice approval and infrastructure
planning, supporting interactions between
businesses, citizens, and administrations.
• Scientific Research: Science clouds allow
organizations to share distributed infrastructure
for scientific computing, driven by a common
interest in research.
Community Clouds
The benefits of these community clouds are the following:

• Openness: Since no one company controls the cloud, different


solutions can compete fairly, making the system more open.
• Community-Based: Community clouds grow easily as more people
join and share resources, making them more scalable.
• More Reliable: There's no single company running everything, so if
one part fails, the whole system doesn’t break down.
• Control & Ease: The community owns the cloud and makes
decisions together, so it’s easy to use and gives everyone control.
• Eco-Friendly: Community clouds use resources that aren’t fully
used elsewhere, which reduces waste and makes them better for
the environment. They grow or shrink as needed to fit the
community’s needs.
Economics of the cloud
Main Drivers of Cloud Computing:
• The key benefits of cloud computing are cost savings and ease of software
delivery. The biggest advantage is financial, as cloud providers offer a pay-
as-you-go model that helps businesses in several ways:
– - Lowers capital costs for IT infrastructure
– - Eliminates depreciation costs of IT assets
– - Replaces software licensing with subscriptions
– - Reduces IT maintenance and administrative expenses

Capital Costs in IT:


• Capital costs are one-time expenses for purchasing assets like IT
infrastructure and software, which businesses rely on for operations (e.g.,
payroll, customer management, resource planning). These costs
depreciate over time, reducing profits because hardware loses value and
software becomes outdated.
• Pre-Cloud Era IT Costs:
• Before cloud computing, businesses—especially medium and large enterprises—
had to spend heavily on IT infrastructure, running datacenters, maintenance,
electricity, and software purchases. These capital costs, along with running an IT
department, were substantial.

• Cloud Computing’s Impact:


• Cloud computing shifts these capital costs into manageable operational costs, such
as renting infrastructure and paying for software subscriptions. It also cuts
administrative and support costs, as the cloud provider manages much of the
infrastructure. Since businesses no longer own IT assets, depreciation costs vanish.

• Cost Savings:
• The savings depend on how cloud services are used. A startup can completely
avoid capital costs by using the cloud for IT infrastructure and software
development. For larger enterprises with existing IT assets, cloud computing helps
manage unexpected capital costs by turning them into operational expenses that
last only as long as needed.
Cloud computing pricing models
categorized into three main strategies:
• Tiered Pricing:
– Cloud services are offered in multiple tiers.
– Each tier includes fixed computing specifications and Service Level
Agreements (SLAs).
– Pricing is based on a specific rate per unit of time.
– Example: Amazon EC2, where different server configurations (e.g., CPU type,
speed, memory) are priced differently per hour.
• Per-Unit Pricing:
– Customers pay based on the units of specific services used, such as data
transfer or memory allocation.
– This allows users to configure systems according to their application's needs.
– Example: GoGrid, where customers are charged per RAM/hour for deployed
servers.
• Subscription-Based Pricing:
– Commonly used by Software as a Service (SaaS) providers.
– Users pay a periodic subscription fee to access software or specific integrated
services.
Open challenges
• Cloud definition
• Cloud interoperability and standards
• Scalability and fault tolerance
• Security, trust, and privacy
• Organizational aspects
Cloud Definition
• Attempts to define cloud computing and classify
its services have led to several notable
frameworks, with one of the most widely
recognized being the NIST definition.
• This defines cloud computing by its core features:
on-demand self-service, broad network access,
resource pooling, rapid elasticity, and measured
service.
• It further classifies services into SaaS, PaaS, and
IaaS, and categorizes deployment models into
public, private, community, and hybrid clouds.
• While the NIST definition has gained acceptance,
alternative models exist.
• David Linthicum offers a 10-class taxonomy better
suited to enterprise contexts, while UCSB proposes an
ontology that organizes cloud into five layers:
applications, software environments, infrastructure,
software kernel, and hardware.
• Each layer supports a distinct user class and builds on
the others.
• The NIST model serves as a working definition,
continuously refined as cloud technology matures.
Cloud interoperability and standards
• Cloud computing operates as a service-based model for
delivering IT infrastructure and applications, similar to
utilities like power or water.
• To fully realize its potential, establishing standards and
enabling interoperability between vendors is crucial.
• One major challenge is vendor lock-in, where
customers face high costs and effort to switch
providers, particularly in enterprises reliant on IT for
revenue.
• Standardization could mitigate this by promoting
interoperability, reducing the risk of vendor lock-in.
• Currently, cloud computing standards are similar to the early internet days when
each system had its own protocols.
• Efforts like the Cloud Computing Interoperability Forum (CCIF) and the Open Cloud
Manifesto aim to create open standards for cloud services.
• Most efforts focus on the infrastructure (IaaS) level, where different virtual
machine formats make it hard for systems to work together.
• The Open Virtualization Format (OVF) helps by providing a common format for
virtual machines, but it's not widely adopted yet.
• The main challenge is making it easier to move running applications between
different cloud providers.
• There are also efforts to create a common architecture and standard interfaces for
cloud systems, but different solutions still don’t work well together.
• Amazon Web Services (AWS) leads the IaaS market, and some open-source options
provide AWS-compatible APIs. However, there’s no strong push yet for shared APIs
across all cloud services, which is an area that could improve in the future.
Scalability and fault tolerance
• Cloud computing allows resources to be scaled up or down based on
demand, surpassing the limits of in-house IT resources.
• Scaling can involve both infrastructure (like computing power and storage)
and application services.
• Cloud middleware must be designed with scalability in mind, considering
factors such as performance, size, and load.
• Cloud middleware manages a large number of resources and users,
providing computing power that may not be feasible for in-house setups
due to high administrative and maintenance costs.
• Organizations that develop and maintain cloud middleware must manage
significant costs associated with offering these services.
• In cloud environments, the ability to tolerate failures is crucial and can be
even more critical than optimizing performance.
• The main challenge is to create systems that are highly scalable, fault-
tolerant, easy to manage, and still deliver competitive performance.
Security, trust, and privacy
• Security, trust, and privacy concerns are major obstacles to widespread cloud computing
adoption.
• Traditional cryptographic methods are employed to protect sensitive data from tampering
and unauthorized access.
• The widespread use of virtualization introduces new security threats that were not previously
considered.
• While cloud applications may process sensitive data securely using advanced cryptography,
this data must be decrypted in memory, making it accessible to virtual machine managers.
• Cloud users often lack control over the environments where their applications run, leading to
security vulnerabilities.
• Users must decide whether to trust cloud service providers, especially when regulations
might conflict with privacy agreements.
• Cloud services often rely on a complex chain of third-party services, which can increase
vulnerabilities related to data security and privacy.
• In cases of privacy violations or unauthorized access, it can be difficult to determine who is
responsible for the breach.
• The main challenges involve creating secure and trustworthy systems from technical, social,
and legal perspectives.
Organizational aspects
• Cloud computing transforms how IT services (storage, computing power,
applications) are consumed and managed, offering them as metered
services over the Internet.
• This shift introduces a new billing model based on usage, which can
impact budgeting and financial planning.
• Users might have mixed feelings about cloud services, balancing
convenience against concerns about data security and lack of control.
• The inability to manage data and processes directly poses security risks
and introduces new challenges that didn’t exist before.
• Organizations previously relied on local expertise for troubleshooting.
With cloud services, this reference point may be lost.
• IT staff may need to develop different skills and may find
their value diminished due to reduced responsibilities for
maintenance and support.
• Cloud adoption can alter relationships within the
organization, requiring a cultural shift in how IT
departments interact with other business units.
• Significant cloud adoption will necessitate changes to
existing business processes and organizational structures.
• Questions for IT Departments
– What new roles will IT departments play in organizations that
rely heavily on cloud services?
– How will compliance departments work with less control over
application processes?

You might also like