Cloud Computing 014 - Cloud computing • Cloud computing, like other technologies, such as cluster,

  • View
    1

  • Download
    0

Embed Size (px)

Text of Cloud Computing 014 - Cloud computing • Cloud computing, like other technologies, such as...

  • Introduction to Cloud Computing

    Roberto Beraldi

  • CC in a nutshell

    • Cloud computing is a way to use Information Technology infrastructures without the need to

    install specific HW related to the infrastructures

    being used.

    • IT infrastructure can be as simple as a single raw virtual machine, …

    … more abstract as a sw platform used to develop

    and running applications on several machines,

    …or a sw application

  • Cloud computing in a nutshell

    (by an analogy)

    • Electricity is “virtual” entity – (many sources, we do not care from where we receive it,…)

    • “Pay-as-you-go” – Elastic

    Production Distribution Utilization

  • CC: Virtual computing power

    CPU

    cycles

    Storage

    Memory

    Provider Utilization

    Virtual machine

    control panel

    User decides the size on the VM…

  • Cloud computing

    • Cloud computing, like other technologies, such as cluster, grid, aims at allowing access to large amounts of computing power in a fully virtualized manner, by aggregating resources and offering a single system view.

    • Cloud computing has been coined as an umbrella term to describe a category of sophisticated on- demand computing services initially offered by commercial providers, such as Amazon, Google, and Microsoft.

  • What CC can provide?

    • Infrastructure • Platform • Software • API • STorage • Desktop • X

    as a service (IaaS)

    as a service (PaaS)

    as a service (SaaS)

    as a service (APIaaS)

    as a service (STaaS)

    as a service (DaaS)

    as a service (XaaS)

  • Main characteristics of CC

    • Pay-per-use – no ongoing commitment, utility prices;

    • Elastic capacity and the illusion of infinite resources;

    • Resources that are abstracted or virtualized. • Resources provided as a Service and with a self-

    service Interface

    – provides users the ability to upload, build, deploy, schedule, manage, and report on their business services on demand.

  • Factors enabling cloud computing Hardware

    HW virtualization

    Multi-core chips In

    te rn

    e t

    Te ch

    n o

    lo g

    ie s

    D istrib

    u te

    d

    C o

    m p

    u tin

    g

    Web 2.0

    Web Services

    Mashups

    SoA

    Utility computing

    Grid Computing

    ..

    System Management

    Autonomic Computing

    Data Center Automation

    Cloud

    computing

  • Cloud actors

  • From mainframes to clouds

    • Providers of CC can operate their infrastructures at very high utilization rate

    • Something similar to what happened with Mainframes.

    – They had to operate at very high utilization rates simply because they were very expensive and

    costs should be justified by efficient usage

  • Provisioning

    Provisioning for peak load

    Underprovisioning, case 1

    Underprovisioning case 2

  • Types of Cloud Computing

    (IaaS) Infrastructure as a Service

    (SaaS)Software as a Service

    XaaS (PaaS) Platform as a Service

  • INFRASTRUCTURE AS A SERVICE

  • IaaS

    • A cloud infrastructure enables on-demand provisioning of servers running several choices of operating systems and a customized software stack.

    • Cloud computing services are usually backed by large-scale data centers composed of thousands of computers.

    • Such data centers are built to serve many users and host many disparate applications.

    • Offers virtualized resources (computation, storage, and communication) on demand

  • Virtualization - isolation

    • Through virtualization, workload isolation is achieved since all program instructions are fully confined inside a VM, which leads to improvements in security.

    • Better reliability is also achieved because software failures inside one VM do not affect others.

    • Moreover, better performance control is attained since execution of one VM should not affect the performance of another VM.

  • Virtualization - isolation

  • Virtualization – application mobility

    • Workload migration, also referred to as application mobility, targets at facilitating hardware maintenance, load balancing, fault tolerance and disaster recovery.

    • It is done by encapsulating a guest OS state within a VM and allowing it to be suspended, fully serialized, migrated to a different platform, and resumed immediately or preserved to be restored at a later date.

    • A VM’s state includes a full disk or partition image, configuration files, and an image of its RAM.

  • Virtualization – application mobility

  • Virtualization - consolidation

    • Virtualization makes it possible to consolidate individual workloads onto a single physical

    platform, reducing the total cost of ownership.

  • Virtual machines

    • Virtual machine is a logic machine implemented via software (ML) running on a physical machine (MF)

    • Two main types • No native emulation ML≠MF • Native emulation. ML=MF

  • Process virtual machine

    • Runs a SW process

    • Examples Java Virtual Machine • Common Language Runtime (CLR)/.NET

  • Virtual machine and interoperabiity

    • Java Virtual Machine (JVM) – ISA: Macchina a stack (zero-register)

    JVM

    MF1 MF2 MFn

    Java

    • “write once run everywhere”

  • System virtual machine

    • Same machine as the physical machine “Efficient, isolated duplicate of a real

    machine”*)

    • Virtualization is realized by a Virtual Machine Monitor (VMM) o hypervisor

    • Process : SO = Supervisor : Hypervisor

  • System virtual machine

    • Full virtualization – OS without modification (VMWare) – OS legacy

    • Paravirtualization – OS must be modified – Higher effciency

  • Resources

    • Xen and the Art of Virtualization, Pratt et al. SOSP 2003.

    • The Architecture of Virtual Machines, Smith, J.E.; R. Nair, IEEE Computer, May 2005, Volume: 38 , Issue: 5

    • A Comparison of Software and Hardware Techniques for x86 Virtualization, K. Adams, O. Agesen. ASPLOS

    2006.

  • Classical virtualization

    • “A classical VMM executes guest operating system directly, but at a reduced privileged level. The VMM intercepts traps from the de- privileged guest, and emulates the trapping instruction against a virtual machine state”[*]

    [*]”A camparison of Software and Hardware Techniques for x86 Virtualization”, K.Adams, O.Agesen, ASPLOS 2006

  • Classical virtualization, esempio

    1

    3

    4

    5

    Guest OS Istruzione non privilegiata

    verde = User Mode

    rosso = System Mode

    Istruzione privilegiata

    p.e. CLI, Clear Interrupts

    2 trap

    VMM

    time

    2’

    Livello User Livello Kernela. CPU executes a kernel

    instruction of the Guest OS

    while being in user mode

    b. CPU generates a trap

    c. Control passes to the VMM

    that emulates the instruction

    d. 2’ is different of 2, but is

    produces the same effect (

    (for example,

    CLI�VCPU.IF=0)

  • Hw virtualizazion

    Hardware virtualization allows running multiple operating systems and software

    stacks on a single physical platform.

    The virtual machine monitor (VMM), also called a hypervisor, mediates access to the

    physical hardware presenting to each guest operating system a virtual machine

    (VM), which is a set of virtual platform interfaces

  • Type-1 hypervisor (bare metal)

    • Guest OS runs unchanged • Used to build a “Hardware Server” (cloud computing) • Hyper-V(Microsoft) , VMWare ESX

  • Type-2 hypervisor (hosted)

    • Runs on top of a Hosting OS • Guest OS unchanged (full virtualization) • Often used on clients

  • Example of VMM: Virtual Box

    • It usually runs on Desktop computers • VMM runs as an application hosted by an OS • Software-based virtualization • Lower performance, easy to install VM (demo)

  • IaaS provider’s point of view

    • A key challenge IaaS providers face when building a cloud infrastructure is managing

    physical and virtual resources, namely servers,

    storage, and networks, in a holistic fashion.

    • The orchestration of resources must be performed in a way to rapidly and dynamically

    provision resources to applications.

  • IaaS provider’s point of view

    • The software toolkit responsible for this orchestration is called a virtual infrastructure manager (VIM).

    • This type of software resembles a traditional operating system (“cloud operating system”)— but instead of dealing with a single computer, it aggregates resources from multiple computers, presenting a uni

Recommended

View more >