Cloud Computing Reference Model PDF
Document Details
![PlentifulMountRushmore](https://quizgecko.com/images/avatars/avatar-19.webp)
Uploaded by PlentifulMountRushmore
Tags
Related
Summary
This document explains a cloud computing reference model, with diagrams and descriptions of IaaS, PaaS, and SaaS. It also touches on related concepts like distributed systems, virtualization, and Web 2.0.
Full Transcript
**Explain cloud computing reference model with neat diagram.** - **A fundamental characteristic of cloud computing is the capability to** **deliver a variety of IT services on demand.** - **This variety creates different views of what cloud computing is among users** - **Even w...
**Explain cloud computing reference model with neat diagram.** - **A fundamental characteristic of cloud computing is the capability to** **deliver a variety of IT services on demand.** - **This variety creates different views of what cloud computing is among users** - **Even with this lack of uniformity, it is possible to classify cloud** **computing services offerings into three major categories:** - **Infrastructure-as-a-Service (IaaS)** - **Platform-as-a-Service (PaaS) and** - **Software-as-a-Service (SaaS)** - - **The model organizes the wide range of cloud computing services into a** **layered view that walks the computing stack from bottom to top.** - **At the base of the stack, Infrastructure-as-a-Service solutions deliver** **infrastructure on demand in the form of virtual hardware, storage, and** **networking.** - **Virtual hardware is utilized to provide compute on demand in the form of** **"virtual machine instances".** - **These are created at users request on the provider\'s infrastructure, and** **users are given tools and interfaces to configure the software stack** **installed in the virtual machine.** - **The pricing model is usually defined in terms of dollars per hour.** - **They deliver scalable and elastic runtime environments on demand and host the execution of applications.** - **These services are backed by a core middleware platform that is responsible for creating the abstract environment where applications are deployed and executed.** - **It is the responsibility of the service provider to provide scalability and to manage fault tolerance, while users are requested to focus on the logic of the application developed by leveraging the provider's APIs and libraries.** - **At the top of the stack, Software-as-a-Service solutions provide applications and services on demand.** - **Most of the common functionalities of desktop applications---such as office** **automation, document management, photo editing, and customer relationship management (CRM).** - **These software\'s are replicated on the provider\'s infrastructure and made** **more scalable and accessible through a browser on demand.** - **These applications are shared across multiple users whose interaction is** **isolated from the other users.** - **The SaaS layer is also the area of social networking Websites, which influence cloud-based infrastructures to sustain the load generated by their popularity** **2.Explain five core Technologies that played an important role in the realization of cloud computing?** **1. Distributed systems,** **2. Virtualization,** **3. Web2.0** **4. Service orientation, and** **5. Utility computing.** **Distributed cloud computing splits one task across multiple computers at different locations---all of whichare networked.** **Each computer will complete an aspect of the task,allowing for the task to be completed faster.** **A distributed system is a collection of independent computers that appears to its users as a single coherent system.** ![](media/image2.png) - **Virtualization** - **Virtualization is a process that allows a computer to share its hardware resources with multiple digitally separated environments.** - **In other words, Virtualization is a technique, which allows to share a single physical instance of a resource or an application among multiple customers** - **and organizations.** - **Each virtualized environment runs within its allocated resources, such as memory, processing power, and storage.** 2. **Virtualization** - **It is a Fundamental technology that powers cloud computing Allowing the concept of emulation of IT infrastructure like hardware, runtime environments, storage, and networking.** - **Hardware virtualization - allows the coexistence of different software stacks on top of the same hardware.** - **E.g., Amazon EC2, RightScale, VMware vCloud** - **Storage and network virtualization: Amazon s3** - **Process virtual machines: Google AppEngine and Windows Azure** **The Web is the primary interface through which cloud computing delivers its services** **Web 2.0 - a rich platform for application development** **Web 2.0 brings interactivity and flexibility into Web pages, providing enhanced user experience by gaining Web-based access to all the functions** **These capabilities are obtained by integrating a collection of standards and technologies.** **Examples of Web 2.0 applications are Google Documents, Google Maps, Flickr, Facebook, Twitter, YouTube, Blogger, and Wikipedia** **Means any thing from a simple function to a complex business process** **Characteristics-** - **Loosely coupled** - **reusable** - **programming language independent, and** **Utility computing is a vision of computing that defines service- provisioning model for compute services in which resources such as storage, compute power,** **applications, and infrastructure are packaged and offered on a pay-per-use basis.** **The idea of providing computing as a utility like natural** **gas, water, power, and telephone.** **3.Taxonomy of Virtualization Techniques** ![C:\\Users\\admin\\AppData\\Local\\Microsoft\\Windows\\INetCache\\Content.MSO\\F7CE6BAF.tmp](media/image5.png) **Virtualization covers a wide range of emulation techniques applied to different areas of computing. A classification of these techniques helps in understanding their characteristics and use cases. The taxonomy of virtualization techniques can be categorized based on the type of service or entity being virtualized.** **1. Execution Virtualization** **Execution virtualization refers to techniques that provide a virtual execution environment separate from the host system. It can be further divided into:** **a) Process-Level Virtualization** - **Implemented on top of an existing operating system.** - **The OS retains full control over hardware while providing a virtual execution environment.** - **Examples: Java Virtual Machine (JVM),.NET CLR, Wine.** **b) System-Level Virtualization** - **Implemented directly on hardware, requiring minimal or no OS support.** - **Used in cloud computing and server virtualization.** - **Examples: VMware ESXi, Xen, Hyper-V.** **Within these two categories, various virtualization techniques provide different virtual computing environments.** **i. Hardware-Level Virtualization** **Hardware-level virtualization enables multiple operating systems to run on a single hardware platform. It includes:** 1. **Hardware-Assisted Virtualization** - **Uses special CPU extensions (e.g., Intel VT-x, AMD-V) to improve virtualization performance.** - **Examples: KVM, Xen, VMware, Hyper-V.** 2. **Full Virtualization** - **Emulates the complete underlying hardware, allowing an unmodified OS to run on a virtual machine.** - **Provides strong isolation but may have performance overhead.** - **Example: VMware Workstation, VirtualBox.** 3. **Paravirtualization** - **Modifies the guest OS to communicate directly with the hypervisor for better performance.** - **Requires guest OS modifications.** - **Example: Xen with paravirtualized Linux.** 4. **Partial Virtualization** - **Emulates only some parts of the hardware, allowing certain applications but not a full OS to run.** - **Example: IBM M44/44X.** **ii. Operating System-Level Virtualization** - **Creates multiple isolated user-space instances within a single OS kernel.** - **Does not require a hypervisor, reducing overhead.** - **Used in containerization technologies.** - **Examples: Docker, LXC, OpenVZ.** **2. Storage Virtualization** - **Abstracts physical storage devices and pools them into a single storage unit.** - **Used in cloud storage and distributed file systems.** - **Examples: Storage Area Network (SAN), Network Attached Storage (NAS).** **3. Network Virtualization** - **Creates virtual networks independent of physical infrastructure.** - **Enhances scalability, security, and flexibility in cloud environments.** - **Examples: Software-Defined Networking (SDN), Virtual Private Networks (VPN), VLAN.** **4. Programming Language-Level Virtualization** - **Provides a uniform execution environment for applications across different platforms.** - **Uses virtual machines to execute bytecode instead of direct hardware execution.** - **Examples: JVM for Java,.NET CLR for C\#.** **5. Application-Level Virtualization** - **Allows applications to run in an environment that does not natively support them.** - **Achieved through emulation or binary translation.** - **Examples: Wine (running Windows applications on Linux), Citrix Virtual Apps** - **At the bottom layer, the model for the hardware is expressed in terms of** **the Instruction Set Architecture (ISA).** - **Which defines the instruction set for the processor, registers, memory,** - **ISA is the interface between hardware and software.** - **It is important to the operating system (OS) developer (System ISA) and** **developers of applications that directly manage the underlying hardware** **(User ISA).** - **This interface(ISA) allows portability of applications and libraries across** **operating systems that implement the same application binary interfaceABI.** - **The highest level of abstraction is represented by the application** **programming interface(API).** - **Which interfaces applications to libraries and/or the underlying operating system.** - **The application binary interface(ABI) separates the operating system layer from the applications and libraries, which are managed by the OS.** - **ABI covers details such as low-level data types, alignment, and call conventions and defines a format for executable programs.** - **System calls are defined at this level.** - **The instruction set exposed by the hardware has been divided into different** - **security classes that define who can operate with them.** - **The first distinction can be made between privileged and Nonprivileged** **instructions.** - **Nonprivileged instructions are those instructions that can be used without interfering with other tasks because they do not access shared resources.** - **for example, all the floating, fixed-point, and arithmetic instructions.** - **Privileged instructions are those that are executed under specific restrictions.** - **Are mostly used for sensitive operations, which expose (behavior-sensitive) or modify (control-sensitive) the privileged state.** - **For instance, behavior-sensitive instructions are those that operate on the I/O,whereas control-sensitive instructions alter the state of the CPU registers.** - **A possible implementation features a hierarchy of privileges (Figure in next slide) in the form of Ring-based Security.** - **Ring 0, Ring 1, Ring 2, and Ring 3;** - **Ring 0 is in the most privileged level and Ring 3 in the least privileged level.** - **Ring 0 is used by the kernel of the OS,** - **Rings 1 and 2 are used by the OS-level services, and** - **Ring 3 is used by the user.** - **Recent systems support only two levels, with Ring 0 for supervisor mode and** - **Ring 3 for user mode.** 2. **Explain characteristics and benefits of cloud computing.** **Challenges:** Characteristics: I. **[No up-front commitments]**-Consumers pay only for the resources they use, eliminating the need for significant upfront capital investment in IT infrastructure. II. **[On-demand access]**-Resources such as computing power, storage, and applications are available whenever needed, often provisioned automatically. III. **[Nice pricing]**-Pay-as-you-go or subscription models ensure transparent and affordable pricing. IV. **[Simplified application acceleration and scalability]**-Cloud platforms facilitate quick deployment, testing, and scaling of applications to meet growing demands. V. **[Efficient resource allocation]**-Cloud systems dynamically allocate resources based on demand and workload requirements. VI. **[Energy efficiency]**-Shared resources in centralized data centers lead to optimized energy usage compared to on-premises setups. VII. **[Seamless creation and use of third-party services]**-Cloud platforms enable easy integration and consumption of third-party APIs, tools, and services. Benefits: i. Lowers entry barriers for businesses, especially startups. ii. Ensures flexibility to scale resources up or down based on demand. iii. Cost efficiency by paying only for what is used. iv. Handles traffic surges effortlessly, improving user experience. v. Maximizes resource utilization, reducing wastage. ![](media/image7.png) 3. **With a neat diagram, describe virtualization reference model**. Virtualization is a process that allows a computer to share its hardware resources with multiple digitally separated environments. ![](media/image9.png) - In the case of hardware virtualization, the guest is represented by a - These are installed on top of virtual hardware that is controlled and manager (VMM). - The host is represented by the physical hardware that defines the environment where the virtual machine manager is running. - In the case of virtual storage, the guest might be client applications or users that interact with the virtual storage management software deployed on top of the real storage system. - The case of virtual networking is also similar: - The guest applications and users interacts with a virtual network, Such as a virtual private network (VPN), which is managed by specific software (VPN client) using the physical network available on the node. - VPNs are useful for creating the illusion of being within a different physical network and thus accessing the resources in it, which would otherwise not be available. - The main common characteristic of all these different implementations is the fact that the virtual environment is created by means of a software program. 4. **Characteristics of Virtualization** ï‚· **Increased Performance & Computing Capacity**: Enhances efficiency by optimizing resource usage. ï‚· **Underutilized Hardware & Software**: Improves utilization of existing resources. ï‚· **Space Optimization**: Reduces physical hardware needs, saving space. ï‚· **Greening Initiatives**: Supports eco-friendly practices by lowering energy consumption. ï‚· **Administrative Cost Management**: Helps control rising operational and management expenses. 5. **Advantages of Virtualization solutions** **Increased security** **Managed execution-**sharing, aggregation, emulation, and isolation are the most relevant features**.** **Portability-**hardware virtualization solution, the guest is packaged into a virtual image that, in most cases, can be safely moved and executed on top of different virtual machines \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\* 6. **Write a short note on** **a. Public and Private cloud.** **b. Hybrid cloud** **Public clouds** are a realization of the canonical/established view of cloud computing in which the services offered are made available to anyone, from anywhere, and at any time through the Internet. They are a distributed system, most likely composed of one or more datacenters connected together, on top of which the specific services offered by the cloud are implemented. Any customer can easily sign in with the cloud provider, enter the credential and billing details, and use the services offered Public clouds are used both to completely replace the IT infrastructure of enterprises and to extend it when it is required. A public cloud is meant to serve a mass users, not a single customer It is referred as Multi-tenancy. A public cloud can offer any kind of service. Amazon EC2 is a public cloud that provides IaaS Google AppEngine is a public cloud that provides an application development PaaS; and SalesForce.com is a public cloud that provides SaaS Private clouds are virtual distributed systems that rely on a private infrastructure and provide internal users with dynamic provisioning of computing resources. Internal users are provided with dynamic provisioning of computing resources.. Possibility of testing applications and systems at a comparatively lower price. Private clouds have the advantage of keeping the core business operations in-house by relying on the existing IT infrastructure. Reducing the burden of maintaining it once the cloud has been set up. Advantages of Private Clouds Customer information protection Infrastructure ensuring SLAs Compliance with standard procedures and operations. Hybrid cloud: Public clouds are large software and hardware infrastructures that have a capability that is huge enough to serve the needs of multiple users, but they suffer from security threats and administrative pitfalls. The major drawbacks of private deployments is the inability to scale on demand and to efficiently address peak loads. Hence, a hybrid solution could be an interesting opportunity for taking advantage of the best of the private and public worlds. This led to the development and diffusion of hybrid clouds. Heterogeneous distributed system resulting from a private cloud that integrates additional services or resources from one or more public clouds.