Virtualization and Cloud Computing

Bahrain Polytechnic Virtualization and Cloud Computing Unit

Introduction

  • Course Code: ICT 1001 Computer Systems

  • Year: 2009

Virtualization

Definition of Virtualization

  • Virtualization uses special software-based technology.

  • Enables multiple virtual machines (VMs) with their own OS to run concurrently on a single physical machine.

Benefits of Virtualization

  • Power Saving

    • Reduces electrical power usage by running multiple virtual machines on one physical server instead of unique physical systems.

  • Hardware Consolidation

    • Avoids purchasing underutilized hardware by consolidating multiple servers into a single powerful server.

  • System Management and Security

    • Makes systems easy to manage as VMs are files that can be copied.

    • Allows restoration of VMs from checkpoints or snapshots quickly.

  • Research

    • Provides platforms for testing and development environments.

System Management and Security

  • VMs are generally unaffected by any malware affecting a single VM, allowing for easy recovery by just shutting down and reloading a clean copy.

  • Checkpoints can be created, preserving the state of VMs at specific moments for recovery purposes.

Implementing Virtualization

Hypervisor

  • A hypervisor is needed to manage interactions between VMs and hardware due to the complexity of running multiple OS simultaneously.

  • Types of Hypervisors:

    • Type 1 Hypervisors: Run directly on hardware, authorizing direct access. Example: VMware.

    • Type 2 Hypervisors: Run on a host operating system. Example: Oracle VM VirtualBox.

  • Popular Hypervisors:

    • VMware: Pioneered PC virtualization.

    • Microsoft Hyper-V: Available on Windows Server and later versions.

Client-Side Virtualization

Setup Requirements

  • Verify hardware supports virtualization and meets resource requirements.

  • Install a hypervisor and create a new VM matching the requirements of the guest OS.

VM Hardware Support and Resource Requirements

  • Enable hardware virtualization (e.g., Intel's VT-x, AMD's AMD-V) in BIOS for performance improvements.

  • Ensure sufficient RAM to run each VM effectively, as each VM requires as much RAM as a physical machine.

VM Storage

  • VM files can range from megabytes to hundreds of gigabytes due to installed systems and snapshots.

Networking in Virtualization

  • Virtual switches connect VMs within a hypervisor allowing different networking scenarios:

    • Internal Networking: VMs communicate with each other without external internet access.

    • Bridged Networking: VMs access the physical network, sharing resources with the host.

Cloud Computing

Definition of Cloud Computing

  • Refers to the delivery of computing services (servers, storage, databases, etc.) over the internet on a demand basis.

Comparison to Traditional Computing

  • Cloud allows easy selection and activation of servers without local infrastructure.

Cloud Providers

  • Services include not just storage (e.g., Dropbox, Google Drive) but also substantial processing power and infrastructure (e.g., Amazon Web Services).

Cloud Service Models

Types of Cloud Services

  • IaaS (Infrastructure as a Service)

    • Providers offer resource capacities like public data centers. Examples include Amazon EC2 and Google Compute Engine.

  • PaaS (Platform as a Service)

    • Supports web applications development and deployment, providing runtime environments. Examples include Google AppEngine and Microsoft Azure.

  • SaaS (Software as a Service)

    • Applications hosted by a service provider, accessed via the internet. Examples include Salesforce, Gmail, and Dropbox.

Ownership and Access Types

  • Public Cloud: Services delivered via the internet; managed by third-party providers (e.g., AWS).

  • Private Cloud: Services are managed within the organization’s infrastructure, offering more control and less outside exposure (e.g., HP Data Centers).

  • Hybrid Cloud: Combination of public and private services, allowing flexibility in deployment (e.g., ERP on private cloud, sales on public cloud).