Virtualization 101 presents a history of virtualization and defines key concepts. It describes how virtual machines isolate operating systems and applications from each other and the physical hardware. Benefits include ease of deployment, mobility, backup/recovery, and hardware independence. Server virtualization partitions physical servers, while desktop virtualization hosts desktops centrally. Application virtualization protects operating systems from application changes. Major virtualization vendors include Citrix, Microsoft, and VMWare.
2. HistoryThe prototypical illustration of full virtualization is in the control program of IBM's CP/CMS operating system – first demonstrated with IBM's CP-40 research system in 1967, then distributed via open source in CP/CMS in 1967-1972, and re-implemented in IBM's VM family from 1972 to the present. Each CP/CMS user was provided a simulated, stand-alone computer. Each such virtual machine had the complete capabilities of the underlying machine, and (for its user) the virtual machine was indistinguishable from a private system. This simulation was comprehensive, and was based on the Principles of Operation manual for the hardware. It thus included such elements as instruction set, main memory, interrupts, exceptions, and device access. The result was a single machine that could be multiplexed among many users.
4. Virtual Machines: a full abstraction of a physical machineIsolationPartitioningRun multiple virtual machines simultaneously on a single PCThe virtual machine is isolated from Host OS, other VMs on the same PC Run a virtual machine on any PC without modification. Break dependence between OS & HWEncapsulation HW Independence & TransparencyEntire virtual machine is saved in files. Can be moved and copied like any other file.Key Properties of Virtualization
5. DefinitionsServer Virtualization is focused on partitioning a physical instance of an operating system into a virtual instance or virtual machine. There are two aspects of server virtualization:
6. Software Virtualization runs the virtualized operating system on top of a software virtualization platform running on an existing operating system.
7. Hardware Virtualization runs the virtualized operating system on top of a software platform running directly on top of the hardware without an existing operating system. The engine used to run hardware virtualization referred to as a hypervisor.
8. Desktop Virtualization allows you to rely on virtual machines to provision desktop systems. Desktop virtualization has several advantages, the least of which is the ability to centralize desktop deployments and reduce distributed management costs.Benefits – Server VirtualizationEase of deployment – can be ready in 20 minutes
12. Easy to maintain – application developers do not need to bother about hardware details they just provide a file with required RAMBenefits – Desktop VirtualizationAll desktops centrally hosted and users given remote desktop access
16. Easy to upgrade or migrate to new environmentsBenefits – Application VirtualizationProtects the OS from any changes an application can make during installation
17. Instead of capturing the installation process you capture what an application needs to run in an OS
43. Its hypervisor is called ESXOracle (Oracle VM), Novell (Xen), Red Hat (Xen), IBM, Sun (xVM), Virtual Iron, and others also all offer their own hypervisors
44. Software AppliancesA software appliance is a software application combined with just enough operating system (JeOS) for it to run optimally on industry standard hardware (typically a server) or in a virtual machine.JeOS is the abbreviation (pronounced "juice") for the concept of Just Enough Operating System as it applies to a software appliance.JeOS is not a generic, one-size-fits-all operating system. Rather, it refers to a customized operating system that precisely fits the needs of a particular application. The application's OS requirements can be determined manually, or with an analytical tool.Therefore, JeOS includes only the pieces of an operating system (often Linux) required to support a particular application and any other third-party components contained in the appliance. This makes the appliance smaller, and possibly more secure than an application running under a full general purpose OS.
45. FIREWALLVirtual ApplianceCRMVirtual ApplianceLinuxLinuxWhat is a Virtual ApplianceFirewall SWPre-built, pre-configured and ready-to-run software application packaged with the OS inside a Virtual Machine.Or packaged inside multiple Virtual MachinesLinuxApachemySQLTomcatLinux
46. Virtual AppliancesVirtual appliances are virtual machine templates, sometimes in the Open Virtualization Format (OVF), that contain preconfigured operating systems and applications. Since VMs are self-contained and transportable, they can be delivered in a preconfigured state as virtual appliances. VAPs are most often designed to run on Linux operating systems because of the licensing cost. Few vendors have created VAPs based on Microsoft technologies because they have to become Windows resellers to do so.Some considerations that need addressable when we choose a VAP:Has the OS been hardened?Is the appliance upgradeable?ScalabilityMicrosoft v/s LinuxLicensingCustom OS?
49. Major BenefitsApplication conflicts due to shared resources become very easy to deal with; applications become independent of the OS version
50. Applications can be deployed in streaming mode to reduce network usage and hard disk requirements
51. Application developers do not have to worry about the underlying OSSoftware Release1 centers on request management2 prepares product integration and begins the application analysis process. What are the application requirements? Does it integrate with others? What is its installation process? These are all questions that this step aims to answer before the package is created and is ready to move on to the next stage3 tests the initial package to ensure that it works properly and has been integrated with your organization’s security and other standards4 performs quality assurance (QA) on the package, testing both remote and interactive installations, identifying if conflicts remain and if the package can be removed without issues remaining on the target systemOnce the package has passed through QA, it moves on to release management and then it is ready for deployment. The package is fully documented and is integrated with the software repository in your network
52. Cloud ComputingCloud Computing is a collection of network hosted services accessible from anywhere.Attributes:Services are sourced via networks and are housed “somewhere else”