Posts Tagged ‘vmware server’
This post is based on insight gained from two of Brian Madden’s posts: A deeper look at VMware’s upcoming bare-metal client hypervisor and Bare-metal client hypervisors are coming — for real this time
Type 1 Hypervisor
Type 1 (or native, bare-metal) hypervisors are software systems that run directly on the host’s hardware to control the hardware and to monitor guest operating-systems. A guest operating system thus runs on another level above the hypervisor. Some examples are VMware ESX, Xen, Microsoft Hyper-V, etc.
Type 1 hypervisors are appropriate when you want to provide the only OS that is used on a client. When a user turns a machine on, he only sees a single OS that looks and feels local.
Type 2 Hypervisor
Type 2 (or hosted) hypervisors are software applications running within a conventional operating-system environment. Considering the hypervisor layer as a distinct software layer, guest operating systems thus run at the third level above the hardware. Some examples are VMware Workstation, VMware Fusion, MED-V, Windows Virtual PC, VirtualBox, Parallels, MokaFive, etc.
Type 2 hypervisors are appropriate when you want a user to have access to their own local desktop OS in addition to the centrally-managed corporate VDI OS. This could be for an employee-owned PCscenario, or it could be a situation where you have contractors, etc., who need access to their personal apps and data in addition to the company’s apps and data.
Over the past 5 years, Type 1 hypervisors are dominantly used in the server market, whereas, Type 2 hypervisors are being used on clients, i.e., desktops and laptops. Recently, the need for a Type 1 hypervisor that runs locally on a client device, called the client hypervisor, has emerged for supporting the Virtual Desktop Infrastructure VDI).
VDI’s promise lies in realizing a significant cost reduction for managing desktops. A client hypervisor is useful because it combines the centralized management of VDI with the performance and flexibility of local computing. It offers several advantages:
- It provides a Hardware Abstraction Layer so that the same virtual disk image can be used on a variety of different devices.
- The devices do not need a “base OS” when the client hypervisor is present. The maintenance overhead of patching a “base OS” frequently on each of the devices is greatly reduced.
- Once a virtual disk image has been provisioned, it runs and the display is driven locally. This frees up the client from the need to support remote display protocols.
- It decouples the management of the device from the management of Windows and the user; administrators can spend their time focusing on user needs instead of device maintenance.
Type 1 Server and Client Hypervisors
Server hypervisors are designed to make VMs portable and increasing the utilization of physical hardware. Client hypervisors are intended to increase the manageability of the client device and improve security by separating work and personal VMs.
The bottom line is that even though they’re both called “Type 1” or “bare-metal hypervisors,” there are some philosophical differences in how each came to be. (This could help explain why it has taken over five years to extend the Type 1 hypervisor concept from the server to the desktop.)
|Dimension||Type 1 Server Hypervisor||Type 1 Client Hypervisor|
|Design Goal||Host multiple VMs and make each VM seem like a “real” server on the network.||The user shouldn’t even know that there is a hypervisor or they are using a VM.|
|Virtualization Goal||I/O: Disk and Networking||Native device support that affects user experience, e.g.,
a) GPU and graphics capabilities
b) USB ports and devices
c) Laptop battery and power state
d) Suspend/Hibernate states
|Tuning||Maximum simultaneous network, processor and disk I/O utilization||Graphics, multimedia and wireless connectivity|
|Hardware Support||Narrow set of different preapproved hardware models||Should (ideally) run on just about anything|
|Intrusiveness||Controls most if not all of the hardware platform and devices and provide a near complete emulated and/or para-virtualized device model to the virtual machines running on top||a) Should support full device pass-through to a guest VM.
b) Should also support dynamic assignment and “switching” of devices between different guests
Type 1 Client Hypervisor Vendors
In the Type 1 client hypervisor space, there are Neocleus NeoSphere and Virtual Computer NXTop. There are product announcements from both VMware and Citrix, however, there is no shipping product to date. There is also the Xen Client Initiative – an effort to port the open source Xen hypervisor to the client.
Today, hypervisors are a commodity. While they are indeed foundational technology, they are “out of sight is out of mind”, i.e., most users do not perceive their presence and hence ascribe no/low value for this technology. Hypervisor developers will be hard pressed to build a lasting public company solely based on selling hypervisors.
a process that reduces the amount of fragmentation in file systems. It does this by physically organizing the contents of the disk to store the pieces of each file close together and contiguously. It also attempts to create larger regions of free space using compaction to impede the return of fragmentation.
Generically, the defragmentation of a Windows guest within a virtual disk running on a Windows host (Windows on Windows) requires a three-step process:
- Defragment the guest
- Defragment the virtual disk
- Defragment the host
On a Linux host or guest, the ext3 and ext4 file systems are more resilient to defragmentation.
Windows on Windows
You should perform the following steps whether you are using a Microsoft VHD, VirtualBox VDI or VMware VMDK virtual disk,
- On a Windows guest OS, run the Windows Disk Defragmenter to defragment the files within the volumes stored inside the virtual disk.
- Next, power down the virtual machine and defragment the virtual disk using contig. Defragmenting the virtual disk simply reorganizes the blocks so that used blocks move towards lower-numbered sectors and unused blocks move towards higher-numbered sectors.
- Run the Windows Disk Defragmenter to achieve an overall defragmentation of all files on the host including the virtual disk.
VMware VMDK specific
The following steps can be used generically for VMware VMDK, for Windows on WIndows or any other suppoted platforms. vmware-vdiskmanger:is a standalone tool for defragmenting a growable VMware Workstation, VMware Fusion or VMware Server, vmdk when it is offline. Note that you cannot defragment:
- Preallocated virtual disks
- Physical hard drives
- Virtual disks that are associated with snapshots.
The recommended steps for defragmenting a vmdk are:
- On a Windows guest OS, run the Windows Disk Defragmenter to defragment the files within the volumes stored inside the VMDK.
- Next, power down the virtual machine and defragment the vmdk using the command
vmware-vdiskmanager -d myVirtualDisk.vmdk.Defragmenting the vmdk simply reorganizes the blocks so that used blocks move towards lower-numbered sectors and unused blocks move towards higher-numbered sectors.
- If the host OS is also Windows, run the Windows Disk Defragmenter to achieve an overall defragmentation of all files on the host including the VMDK.
My envrionment is the same as the one stated in my earloer post:
- Outlook 2007 crashes intermittently (I usually shut it down gracefully before starting the VM)
- Wireless drops intermittently but reconnects quickly
- One USB port not recognized by host OS (XP)
The download was a snap. I installed it on my Windows XP laptop, and also downloaded the User Guide. I had to read this manual and was able to create a Windows XP VM for myself. I downloaded Java, Apache and mySQL and had my setup running on the first day. Felt great about it. I have not worked with UNIX since over 10 years and the VM gave me the freedom to experiment without switching machines. I downloaded Fedora 9. It took over 3 hours to download the ISO image.
I have begun looking at Linux with different eyes now. WIndows has its quirks and 10 years of training have made it second nature to use it – warts and all 😉 This was perhaps the first time that I really appreciated the value of the packaging that Microsoft provides. My initial attempts at installing rpm’s caused them to be installed in their preset “default” locations and I could not find the installed software on the system. UNIX experts may well laugh at my predicament. Believe me, I have not appeared so hapless and felt helpless (until I installed Ubuntu and felt witless, but THAT is another tale about building stronger character).
The X-windows interface runs very slow within VMWare Server 2. I had to read several man pages on Google using the pre-packaged Firefox browser, various README files to set up shell variables, PATH’s, CLASSPATHs, etc. I was taking copious notes to ensure that I could repeat this feat if needed again. On the second day, the apps finally began to run. While Linux may be ready as a desktop/server OS, I can see why it has not gained widespread commercial adoption on the desktop. The standardization of packaging for apps supported on it is absent. – Linux developers have been trained to deal with this and I could struggle through this first experience and got things to work but most non-techies require a single click installer and expect magic to happen.
I should have read Chapter 9, Preserving the State of the VM, otheriwse I would not have experienced “Chapter 11” crash and insolvency. Through force of habit, I snapped my laptop shut at the end of day while the VMWare Server 2 was running. This caused the virtual machine to crash and Ieft it in an unrecoverable state. This is a “known” and documented behavior and here I was, seemingly the only person on Earth who did not know about it. RTFM – what a dumb thing not to do!