Tuesday, 22 September 2009

OS Virtualization in Practice - Part 1

Introduction

In a previous article series I explained the basics of operating system virtualization, including the techniques, advantages, disadvantages and possible scenarios. But of course you would like to see how this works in practice. In this article I will show you how to operate system virtualization using Citrix Provisioning Server version 5.

Preparation: Server Installation and Initial Configuration

The Citrix Provisioning Server exists as a server component and a component on the client which makes it possible to create the virtual disk (vDisk). This also starts a client using the operating system streaming technique. The installation of the client component will be described later on this article; we will focus first on the installation of the server component.

The installation has some requirements. The configuration needs to be stored on a Microsoft SQL database. This can be a dedicated Microsoft SQL server or, for smaller/test environments, an SQL Express version. In a production environment, a dedicated SQL server is advisable because, ideally, you would want to install at least two Citrix Provisioning Servers for fault tolerance and you would also like to have access to the database even if one server is unavailable.

Note:
You need to have ample disk space available for storing the virtual disks.

When using more Provisioning Servers, the disk space should be claimed on a file share, SAN or NAS. With a single server, this can also be located on the local storage. A Citrix License Server is also required (the same as for using XenApp or other Citrix products).

The server component also requires .Net Framework 3.0, which will be automatically installed during the installation, if not available already. The installation of the server component is started using the PVSRV_Server.exe. The installation is pretty straight forwarded. First, the license agreement needs to be accepted, followed by specifying some customer information and the location where the application needs to be installed. The most important part of the installation is the question about the components which you would like to install. Like most products, it offers to install all components or just a selection of those. Which components you will need depends on which roles are already available in your infrastructure and which you would like to use for this product. Remember that only one PXE role can be available per IP subnet.


Figure 1:
Selecting the components which will be installed

After this question the installation will actually start. When the installation is complete, the intial configuration will automatically start. During this intial configuration you can specify which supporting services you will use, like DHCP and PXE services, where they are located and if you would like to create an new farm (creating an new Provisioning Server environment) or to join an existing farm (adding a Provisioning Server to current infrastructur). Also, the location of the virtual disk store, the network interface cards for the streaming protocol (including ports), enabling/disabling the TFTP service and the bootstrap configuration are a part of this intial configuration. This configuration can also be started later on to change these settings afterwards. Do not forget to add the DHCP options for PXE booting to your DHCP role, when using the PXE role.


Figure 2: Initial Configuration


Figure 3: Initial Configuration

The server component automatically installed the Provisioning Server console, but there is also a separate installation available to install the console on the administrator workstation or server.

Basic Configuration of the Provisioning Server environment

After the installation, the console needs to be started and connected to the farm the first time by specifying the name of (one of) the Provision Server console and the communication port. After the connection is established several settings can be configured like automatic updates of virtual disk, high availability, delegation of control, tuning of the streams and much more. These topics are pretty interesting, but will go into too much detail for this article. I will keep to the most basic configuration settings, which are needed to get the system up and running. The first thing that should be created is a so called Site. A site is a collection of servers, devices and connected stores. A site is simply created by right clicking the site component in the right pane. In the next dialog a (unique) name for the site needs to be specified and additionally a description, administration security and “auto add” can be configured. After a site is configured, additionally at least one Device Collection needs to be created. In this dialog also a name, description, a template target device (the configration of this client will be used to configure the new clients) can be set. When the site configuration is finished, a store needs to be created. In this store the vDisks will be created, which will be used to host the operating system for the streaming technology.


Figure 4: Create a store for the vDisks

The store needs to have a name and needs to be connected to a site which “owns” the store. Logically, a path needs to be specified on which the virtual disks will be stored. Also the write cache location can be specified (the location where the streamed content on the client will be cached). Lastly, the server(s) need to be specified which will use the store for streaming the content.

Creating a Virtual Operating System

Now that the most basic configuration is done; the next step is to create a virtual disk, which can host the operating system (and the applications installed on the operating system). This is accomplished by right clicking on the store and choosing “create vDisk”. A dialog will pop-up in which you need to specify the following information: the site that will contain the vDisk, the server being used to create the vDisk, a (file)name for the vDisk, a description, the size of the vDisk and the VHD format.


Figure 5: Create a vDisk

In this version 5 the Microsoft VHD format is introduced, which gives the options to create a dynamic VHD format. With the dynamic format not the total specified size of the disk is reserved, but just a small file is created. When the vDisk is used to store files in it, the size will be automatically adjusted. A progress bar will be displayed during the creation and when the vDisk is created a file can be found on the specified path of the store. As you can see in the figure below the file is just about a 2 MB size.


Figure 6: The actual file of the vDisk

Now that the virtual disk is created, it is time to fix the operating system with the corresponding applications placed on the virtual disk. For this you need to install a system with the corresponding operating systems and applications using the traditional way; for example, using a CD set or an electronic software deployment. When the system is completely installed, the last step is to install the Provisioning Server Device software. This installation exists as a single executable. During the installation wizard, only very basic dialogs are presented; accepting the license agreement, supplying customer information and specifying the destination location where the files should be installed. After the installation the system needs to be restarted before you can use the client. But actually, the system needs to be configured within the Provisioning Server software before the system can be restarted. I will continue with this part in the next article, which will be published soon.

Conclusion

In this first article of this article series I showed you the first steps in using operating system streaming. We installed the Provisioning Server and the required supporting software, configured the basis setup of software, created a virtual disk and configured a system to create the image on the virtual disk. The next article will continue with actually creating the image, building a new system using the virtual disk and updating a virtual disk with updates.

Installing Microsoft Application Virtualization (Part 1)

Introduction

When Microsoft acquired SoftGrid in January 2007, App-V 4.5 was the first version fully branded under the Microsoft umbrella. The most notable change that was made is, logically, the new name. After some other names like Microsoft Application Virtualization (you will find this name when researching the product) the final name became App-V (based on Microsoft hypervisor Hyper-V). You will also see the name System Centre Application Virtualization Management Server for this product.

Beside the name change, several new features introduced such as Dynamic Suite Composition and the Lightweight Streaming Server. This article will not go into the details of these new features since we are not interested in producing a step by step installation guide of App-V in this article.

The installation of the App-V architecture is composed of three components:

  • App-V Server
  • App-V Client
  • App-V Sequencer

Installation App-V Server

Before starting the installation of the App-V Server component you need to decide if you will be using the full App-V environment or the streaming option only. The full App-V environment is exactly the same as the previous SoftGrid version, most importantly, in terms of its database and the full management console. The management console provides you with options which include the assignment of applications to users based on group membership and software license metering. The Streaming only arranges that the sequences can be started using the client, but you should arrange via other software products or scripts authorization (by default everyone can start the applications using the streaming only feature), adding the application shortcuts to the end user and the software licensing part. It depends on several factors which option you choose in your infrastructure. In this article I will describe the installation of the full environment option.

The software installation will be started using the delivered setup.exe. For the full environment you need to start this executable out of the management installation folder. For the streaming part you should start the same named executable in the streaming folder.

Microsoft is (logically) using the MSI installer for the installation of the App-V product. The first window is the welcome message with information about the installation. Nothing interested is mentioned here so we will quickly continue with the next steps.


Figure 1

Of course there is also a license agreement that should be accepted before the installation can be carried out.


Figure 2

In the next screen the user name and organization information needed to fill in.


Figure 3

In the Setup Type Window the option appears to select the installation methodology. I select the custom option to show all the possibilities and explain what do these options mean in your infrastructure.


Figure 4

Because of the custom setup the available installations options appear. The first App Virt Management Server is the actually streaming component. This component is serving the client request to streamed applications. This component requires MS Core XML Services 6 to be installed on the server.

The second option is the Management Console of the suit. The console makes a connection with the App Virt Management Service.

This is the third option. This is a web services based component. To install this option you need Internet Information Services and .Net Framework 2.0

You can install the components on one server or on separated servers. For example the Management Service on an existing IIS server and the console on a special management server. For the article I will install all components on the same server.


Figure 5

If you did not install the required supporting software the following screen will be displayed. You need to cancel the installation and install that software first.


Figure 6

As mentioned before the full App-V environment requires a database. The installation wizard automatically searches for available MS SQL servers and you need to choose on which server you would like to host the database.


Figure 7

Next you can use an existing database (if you have more than one App-V Server, I will discuss this later) or to create a new database. By default the database will be created using the default paths defined on the SQL server, but you can change that with the option “Use the following location when creating the database”.


Figure 8

If you would like to use the secure communication option available within App-V you need to have a server certificate installed before you start the installation. That certificate can be configure or App-V in the Connection Security Window. In this article I will not use secure connections and did not install a certificate.


Figure 9

By default App-V uses port 554 to stream the applications, but you have the possibility here to change the use a different port.


Figure 10

App-V has only one type of permission within the console. There is no delegation of control possible. You can only give a group Full Control within the App-V infrastructure. In this case I will give the administrator role to the Domain Admins.


Figure 11

Secondly you also need to specify which users are allowed to access the App-V infrastructure. This part only allows setup a connection to the server, but does not specify which applications the users can use. In this case I will use the Domain Users.


Figure 12

The next step is to specify the content path. This content path is the folder in which you will store the sequences so they can be streamed to the clients. If you change the default path you need to create the directory in advance. You can always change the path later in the console.


Figure 13

The installation wizard has now collected all the necessary information and will install the App-V server locally on the disks.


Figure 14

After all the installation the last Windows will appear mentioning that the installation is completed.


Figure 15

A restart is required before the App-V server can be used.


Figure 16

After the installation there are a few settings you should configure before starting to use the server. This can be accomplished by using the App-V Management Console. As mentioned before, this console can be installed on the same server or a separate machine. The shortcut to the console can be found within the Administrative Tools folder on the machine you installed the console. The first time you start the console you need to connect to the App-V server.


Figure 17

If the console and the web service are installed on the same server you use the localhost otherwise you have to fill in the server on which the App-V web service role installed. You can use your current credential or specify your special administrator account.

After logging on you need to specify some settings to finalize the installation and optimize the App-V server configuration.

The first step is to configure the Default Content Path which can be set within System Options below the web service server (the server you connect the management console to).


Figure 18

The second location you can choose some important options about the way memory and processor is being used on the App-V server. This should be configured on a per server basis within Server Groups - <Server Group Name> (default is Default Server Group).

  • Max Memory allocation: The Max Memory Allocation option specifies how much memory the SoftGrid Streaming server can use for the SFT file cache to support user settings. The default value can be rather small for busy SoftGrid Streaming server systems. This value should be raised to the amount of RAM that is in the SoftGrid Streaming server minus the amount of RAM that is needed for Operating System and other components.
  • Warn Memory Allocation: The Warn Memory Allocation value is the threshold where the server starts logging warings to the ‘sft-server.log’ file. This value is typically around 80% of the Max Memory Allocation value.
  • Max Block Size: The Max Block Size depicts the size in kilobytes of the buffer in RAM to be used to cache the largest contiguous block of data from a SFT file for a user session. This value is ignored in Softgrid 4.0 and higher and above as the Max Block Size is dynamically determined based on information within the SFT file.
  • Number of Core Processes: The number of core processes (default is 3) specifies the number of ‘SFTCore.exe’ processes that can run simultaneously on this server. Each process can handle up to 1.5GB of memory so in general there is no need to increase this number.
  • Max Chunk Size: The Max Chunk Size specifies the size in kilobytes of the largest block of code in any SFT file that may be streamed from this SoftGrid Streaming Server. The default is 64KB and it is recommended to leave it like that.


Figure 19

At the default provider properties, also several settings can be set like the way of refreshing the client with the server and the authentication and logging information to your needs.


Figure 20

Now the App-V server is ready to stream applications. Remember that the default test application is configured to use secure streaming (via port 332), so if you choose to use the App-V infrastructure on the default port you should reconfigure the default test application or add your own sequenced application to the console.

Conclusion

In this first part article I described the necessary steps to install an App-V server. In the upcoming article the installation and basic configuration of the App-V Sequencer and the App-V (TS) Client will be described.

What VMware’s View 3 VDI offers and how to Install it

Introduction

VMware recently announced their latest version of their enterprise VDI (virtual desktop infrastructure) solution called “View” (version 3). VMware’s View 3 is a “new and improved” version of their previous solution, which was just called “VDI” or “VDM” (virtual desktop manager). In this article, I will cover what VMware’s new View 3 offers, how it can help you, and how to install it.

Whether you have completed the virtualization of your server infrastructure, or not, desktop virtualization is a popular type of virtualization that you should consider. VMware has recently updated their enterprise desktop virtualization solution with new features and a new name – “VMware View 3”.

I have worked in an enterprise business where we tested and later implemented VMware’s VDI solution (prior to View). I can tell you that we had a number of issues which we felt still needed to be addressed. I am impressed that VMware’s new View 3 really addresses the major issues we had. Some of the major issues we encountered included; support of Terminal Services, Citrix, Thin client printing, offline desktops, and much more. Let’s find out what VMware’s View can do.

What does VMware’s new View 3 do for you?

In its most basic form, all desktop virtualization packages work like this:

  • End user desktop PCs are replaced with virtualized guest operating systems, running inside virtual hosts, such as VMware ESX Server
  • End users then use a hardware or software thin client device to connect to those desktops. Typically, a protocol like RDP is used.
  • While you can manually have an end user to virtual guest mapping, this does not scale beyond a handful of users. A VDI “broker” is what comes in and automatically maps the correct user (no matter where they connect from) to their correct virtual desktop system running “in the cloud”. These VDI brokers go on to provide many more features such as dynamic creation of virtual desktop systems for end users, connection over the Web, universal printing support.

Previously, VMware’s VDI solution offered a desktop broker called “VDM”. This broker is still a critical piece of View but it offers so much more. VMware’s View 3 offers you:

  • Universal Client and universal web interface – a single client can be used whether you are accessing a Physical PC, Terminal Services, Application Virtualization Apps (using ThinApp), or a VDI Virtual Desktop
  • Reduce Costs of Desktop Management – just as you reduce IT costs and speed response to business needs with server virtualization, desktop virtualization will do the same
  • Disaster Recovery for Desktop systems – rarely do businesses find that disaster recovery for desktop PCs is cost effective. However, with desktop virtualization, due to the low cost of storing virtual desktops and using universal thin client devices, disaster recovery for desktops suddenly becomes viable. Automation of Virtual Desktop Provisioning
  • Virtual Printing and a universal print driver provided by ThinPrint. In fact, ThinPrint even has an enhanced version of this called the “.Print Engine for VMware View Environments”
  • ThinApp, application virtualization
  • Offline Desktop – a truly amazing experimental feature where you can take your virtual desktop offline and re-sync it later
  • Thin Client Support
  • Single Virtual Disk Image for clients to share (as Brian Madden details in his article: A deeper look at VMware's upcoming "View Composer" VDI disk image technology) with the new View Composer.

Overall, VMware claims that View will reduce storage and desktop management costs by 90% and that desktop provisioning time can be cut down to just 15 seconds

What components make up VMware View?

So what does a sample VMware View infrastructure look like? Here is VMware’s vision:


Figure 1: Sample VMware View Infrastructure

As you can see in the diagram, a VMware View infrastructure is made up of the following components:

  • Clients connecting to view with either View Client, View Portal (web) or Thin client device
  • View Connection Server – the “VDI Broker” – running Windows Server 2003
  • A View Administrator, accessing the View Connection Server via a web browser
  • Microsoft AD Serve, only used to authenticate users
  • Virtual Center Server, managing the ESX Hosts
  • ESX Host systems, running the guest VMs which are the View Clients (or virtual desktops)
  • Guest VMs which are the VM desktops that the client machines are eventually connected to and which are running special VMware View software called the View Agent.

How do you Evaluate and Install VMware View?

Based on the list of the infrastructure that makes up the VMware View (above), you can imagine what will need to be done to get VMware View running in your environment. Assuming that you already have a Microsoft Active Directory running and your own domain controller, here is a list of the, very simplified, steps you would take:

  1. Download a 60 day evaluation license and software kit for VMware View 3. This kit includes:
    a) VMware Virtual Infrastructure Suite (ESX Server & vCenter)
    b) VMware View Manager
    c) VMware View Composer
    d) VMware ThinApp
    e) Offline Desktop (experimental)
  2. Of course, the installation and evaluation of VMware View is easier if you already have VMware’s vCenter and ESX Server installed in your datacenter. Assuming you do not, you will need the following:
    a) ESX Server (make sure it matches the HCL) - unless you already have ESX running
    b) vCenter Server (or could be a virtual machine inside your ESX host)
    c) Windows 2003 Server that will serve as the VMware View Manager (I also believe that this could be a virtual machine inside your ESX host)
    d) Client PC running the View Client (or other type of client)
  3. Install the ESX host and vCenter Server
  4. Install VMware View Manager on the Windows 2003 Server
  5. Configure the VMware View Manager (see the View Manager Administration Guide)
  6. Create a new VM inside the ESX host and install the View Agent inside the VM.
  7. Connect to the new virtual desktop infrastructure (VDI) using the Client PC running the View Client. The client will learn what VM guest it needs to connect to based on the rules configured on the View Manager.

Again, this is a simplified look at how View 3 is installed. For detailed information on requirements, configuring view manager, and deploying virtual desktops, please read the VMware View Manager Administration Guide.

Summary

VMware View 3 is the latest version of VMware’s VDI Solution. View has many valuable updates over the previous version including thin client provisioning, universal printing, application virtualization, offline desktop, and more. I encourage you to take the steps listed out in the “how do you evaluate and install VMware View” section to get started learning more about VMware View, first hand.

Monday, 21 September 2009

A First Look at the New VMware Server 2.0 RC1 (and How it Compares to ESXi)

Introduction

For many years, VMware Server has been VMware's sole FREE virtualization offering. VMware Server runs on top of the Windows or Linux operating system and is an excellent platform for server virtualization. Recently, it was announced that VMware ESXi Server will now be offered at no cost. Now, if you are looking for a powerful but free virtualization platform for your SMB (from VMware), you have a choice between VMware Server and VMware ESXi. With the release of VMware Server 2.0, there are many few features offered with VMware Server. In this article, let's find out what VMware Server has to offer and how VMware Server compares to ESXi.

What is VMware Server?

For those who do not know, VMware Server is VMware’s free server virtualization product that runs inside Windows or Linux. VMware Server’s main competition is Microsoft Virtual Server. However, with VMware ESXi Server now being free, customers now have a greater choice of free server virtualization products (we will talk about how VMware Server & ESXi compare in an upcoming paragraph).

With VMware Server, you can run multiple guest operating systems inside your host operating system. There are many combinations of how this can be done. For example, you could run Linux inside Windows Server or Windows Vista inside Linux.

Now let’s find out about the latest version of VMware Server…What’s new in VMware Server 2.0 RC1?

VMware Server 2.0 RC1 was very recently released and, as you would expect with a new major revision, there are many new features. Here are some of those features:

  • Enhanced VMware Infrastructure (VI) Web Access management interface: VMware has replaced the version 1.x “VMware Console” application with a new web-based interface. To me, this is good and bad. The older application console was very nice. It always worked, it was easy to use, and it was consistent. With the new web interface, you could have web browser issues, DNS lookup issues, Java issues, or you could have difficulty understanding where to click. I know that most every application is going to a web-based interface because it does have benefits but there are pros and cons to each. We will take a look at that new web-based interface in the next section.


Figure 1:
New VMware Infrastructure Web Access Management Interface

  • Independent virtual machine console: To me, this is one of the best features. Instead of having to open the virtual machine console in your web browser (inside the VI Web Access interface), you can have a separate desktop icon for each of your guest VMs. You could also use this to administer VMs on other VMware Servers, across the network. Once you launch the console, you have control over the guest’s virtual devices. Here is what it looks like, once launched:


Figure 2:
New standalone console

  • Support for USB 2.0 devices
  • Remote Client devices

Not only can you connect virtual ISO files and physical drives from the VMware Server but you can also connect virtual and physical CD devices that are on a client system, managing a VM guest remotely. Thus, using the VMware client, you could connect your local CD drive to any server that you happen to be managing.


Figure 3:
Ability to access client and server CD devices

  • Ability to add new SCSI disks on the fly without shutting down the guest VM
  • Volume Shadow Copy Service (VSS) support

Previously, if you took a VM snapshot, it was possible that the data from an open application may not be valid. Now, with support for Microsoft’s volume shadow copy service (VSS), VMware will actually communicate with the Guest Windows OS and take a VSS snapshot of the virtual disk, inside the guest to ensure that all data is intact when a snapshot is restored.

  • Virtual Machine Communication Interface (VMCI)
This new interface speeds up virtual machine to host and VM to VM communication.
  • Automatic Startup of VMs
  • Support for Firefox 3 as a web browser
  • Link to Virtual Appliance Marketplace

With this link, you can quickly and easily download virtual appliance from the Internet and import them into VMware Server. In fact, the link should take you to a VMware Server only appliance download section.


Figure 4:
Link to the virtual appliance marketplace

  • 64-bit Guest OS Support
  • Increase Scalability

Support for up to 8 GB of RAM (up from 3.6 GB in Server 1.0) per virtual machine, 10 virtual network interface cards and up to two virtual SMP (vSMP) processors per virtual machine.

What does the new VMware Server 2.0 interface look like?

The new management interface for VMware Server 2.0 is certainly different than version 1.0 and it takes some getting used to. Let’s take a look:


Figure 5:
Inventory Screen in the new VMware Server 2.0 RC1 management interface

In Figure 5, above, you can see the new VMware Server 2.0 RC1 management interface. I pointed out a couple of areas that I noticed as being different. The first arrow points to the Datastores section. VMware Server 2.0 now uses datastores as a common store for virtual machines and images. The next arrow points to VMware Tips section. This area is designed to upsell you to the VMwware Infrastructure Suite.


Figure 6:
Virtual Machines Gust Configuration

In Figure 6, above, you can see the guest VM status & configuration screen. If you click on a virtual guest machine, you will be able to configure its devices, see its resource utilization, view a quick status screen, and issue quick commands for that server.

Is VMware Server ready for “prime time”?

So VMware Server 2.0 offers some great features but it is ready to be used in production? Well, there is a centralized management application for multiple VMware Server systems called VMware Virtual Center for VMware Server. Did you know that you can even purchase support for VMware Server? This makes VMware server a production-ready virtualization platform. But, is it the best virtualization platform? Now that VMware ESXi Server is free, you have an alternative. We will find out what the new VMware Server 2.0 looks like, then move on to how it compares with VMware ESXi Server.

How does VMware Server 2.0 RC1 compare to VMware ESXi Server?

You should keep the differences between VMware Server and VMware ESXi Server in mind. Now that these are both free you have a choice between them but these are also very different products. Let’s list out the unique qualities of each:

VMware Server 2.0

  • Runs on top of your current Windows or Linux OS. That means that you can keep all your existing apps and run VMware Server along with everything else you are doing.
  • While still having good performance, VMware Server’s performance is not as strong as ESXi because the Server runs inside your OS.
  • Can run on any hardware that your current Windows or Linux host OS supports.
  • Ideal for desktop virtualization and server virtualization for the SMB. Ideal for those who do not want have to go through the trouble of using a whole new OS for virtualization.

VMware ESXi Server

  • Runs on the bare metal server hardware. That means that you have to wipe out all of your apps and data on a machine and install ESXi.
  • Greater performance because it runs directly on hardware.
  • Able to run only on certain hardware.
  • Ideal for medium & large enterprise virtualization.

Conclusion

In this article, you learned about the new VMware Server 2.0 RC1 virtualization platform. We discussed the many valuable features of VMware Server 2.0 and you got to see the new management and console applications. Finally, we learned the difference between VMware Server and ESXi Server. VMware Server 2.0 is a significant upgrade from previous versions and an excellent desktop or SMB Server virtualization solution.

Configuring a Virtual Machine Using VMware

Introduction

This article shows how to use VMware ESX Server, the VMware Infrastructure Client (VIC) and the VirtualCenter management console to create a new VM running a host operating system of Windows XP Professional SP 3. We will look at how to plan and prepare for the deployment of an XP ISO file, as well as to show the steps needed to configure a VM for use on your network.

Preparation

To configure a VM, you need to be using a running version of ESX, or you can download and use VMware Server from the VMware Web site. VMware while not extremely difficult to use, can be very confusing to those first learning it. If you are new to VMware, it is highly recommended that you visit the links section and connect to the VMware Web site documentation and download a version that you can work with on your desktop. For those running production systems and/or ESX server, to prepare for a VM install, you need to follow most of the same steps you would when installing an operating system on a physical system – you need to check the host operating systems minimum hardware requirements as an example.

There are a few general items that you need to be aware of when configuring a new VM with VMware. First, when considering a new VM, you need to be aware of your total resources. VMware works off of resource pools and the theory of using slicing. When you create a new VM, resource must be taken for it therefore you must know how much you need and how much you have. For example, in this article we will create a new Windows XP Professional VM. Hypothetically speaking, if we needed this new VM for software testing and the minimum hardware requirements are now maximized, you may run out of resources very quickly. Secondly, you must consider how you will install the host operating system. Since you still need installation media such as CDs, DVDs or an ISO file, it needs to be accessible to the VMware infrastructure and you need to configure it within your new VM. Lastly, you should have a connection to the Internet via your VMware infrastructure to run Windows (or Microsoft) update to patch and repair your guest operating system. Now that you know a few general guidelines, let’s set up prepare to create a VM. Log into the VirtualCenter with the VIC as seen in Figure 1.


Figure 1: Viewing the VIC (VMware Infrastructure Client)

Once logged in, you can then create a Virtual Machine (VM). To create a VM you will need to be logged on with administrative privileges. Now that you are logged in as an administrator you need to do preparation work to get your VM ready to create and then install. First, you need not only the files for the host operating system but for further preparation you may need extra drivers as well. Both the host system files and the drivers will need to be accessible to the VM once it’s created so either have the data ready via CD, DVD or Floppy media. Also make sure that your disks are usable and not damaged.

If you are running a SAN (as in this lab example), then you can use a VMFS based LUN to store your data on. If you do, then you can switch to the ‘Datastores’ view in your VirtualCenter as seen in Figure 2.


Figure 2: Viewing your Datastore

In this article, we will look at using an ISO file stored on a LUN from an attached SAN over Fiber as the guest operating system. Magic ISO Maker and other online tools can help you take a normal installation disk and create an ISO file out of it, or you can also get ISO files from MSDN and Technet.

Now, we will need to upload the needed ISO file on to a datastore. From a LUN that you have available space on (which can be seen in the General section of the VirtualCenter Datastores view) open the Datastore Browser by selecting ‘Browse Datastore…’ In this example we will also upload a set of SCSI drivers we will need for the installation as well. Once the Datastore Browser is opened, upload the ISO file as seen in Figure 3,


Figure 3: Upload the ISO with the Datastore BrowserCreating a Virtual Machine

In this example we will create a Virtual Machine with ESX server. Now that your installation files (and needed drivers) are uploaded then next task is to create a VM to install Windows XP into. To do that we need to create a VM with the needed resources from the resource pool. To create a VM, you first need to create the container that the host system will sit in. Since VMware is essentially the sharing of resources, you will have to configure each one of those resources in order for your install to take place. For example, you will need to configure a way for the VM to find the ISO file on the LUN. To do this, you must fist create a VM. Then, once the VM is created, you will need to map the VM to the LUN to find the ISO file to run the install from. The easiest way to do this is with the Virtual Machine Wizard. To use this Wizard, you can go to File New Virtual Machine…

Once selected, you will invoke the New Virtual Machine Wizard as seen in Figure 4. Now, you can select the needed resources for the VM. When you launch the Wizard, you will go through a series of windows that allow you to select the type of VM you want, the name and location of it (It can reside on one of multiple servers if running VMware is running in a cluster), the datastore where the VM and its associated files will reside, the selection of the name and type of guest operating system as well as for resources such as CPU, Memory (as seen here), the network location and the Virtual Disk Capacity (or size).


Figure 4: Viewing the Virtual Machine Wizard

Once you get to the last screen (Ready to Complete), take note of the small check box you can select on the bottom left side of the dialog box as seen in Figure 5.


Figure 5: Edit the Virtual Machine Settings

Once you have selected all of the resources you need and have configured your VM with the appropriate settings, now its time to click Finish. You can also edit the VM after it’s created but since we selected to Edit the VM settings before the VM finishes creating you can see in Figure 6 that the Hardware is still listed as ‘adding’.


Figure 6: Configuring the VM Hardware

In Figure 7, you can see the different options available to you when configure a VM’s hardware. Now that we have to install a guest operating system into this VM, we need to configure a way for a CD, DVD or an ISO on a LUN to be accessible to begin the installation.


Figure 7: Configure a Datastore ISO File

Once you have finished configuration your hardware, next you can click Finish and your VM will be created and your ISO file attached to being the installation. Take note to select the check box on the ‘Connect at power on’ option in the Device Status section of the New CD/DVD hardware section where you connected your ISO. You need to select ‘connect’ because if you do not then when you ‘power on’ the VM, the file will not be available thus the installation will not start.

Once back in VirtualCenter, taken note of the task pane on the bottom of the screen. Your VM will be started and your progress shown. Sometimes it takes up to a minute for a VM to be created depending on what your selections are, what host its being added to if in a cluster, how many resources are available and how much load is currently on any given system. Once created, you will now be able to right click the VM in the console (if still in Datastore View, switch to Hosts and Clusters) and then ‘power on’ the VM. Here, you can also select ‘Edit Settings’ or many other options. Now, you should switch to the Console tab as seen in Figure 8.


Figure 8: Viewing an Installation on the VMs Console in VirtualCenter

Now, you can start your installation of Windows XP and hopefully not need the drivers listed. With XP (and why this was chosen for this particular article) its likely you will need extra SCSI drivers so if you do, the process is no different then if you were installing most any other Windows operating system – during the installation, press F6 to install advanced SCSI and/or RAID drivers and when given an option, load them off the LUN, a flp file, a CD/DVD or any other form of media you can connect. You may also have to go into the BIOS of the system and change the boot order as well to get the media connected to the installation program. Once the drivers are installed, you will install XP (and update it at Windows update) as if you were installing it on a physical machine on your companies network.

Lastly, it’s always recommended to patch Windows systems. Even though this current ISO was directly downloaded from MSDN with the Service Pack slipstreamed, running an update online still produced needed patches and hotfixes.

You should also install VMware tools as seen in figure 9 as this will also make it much easier to manage your VM within the VirtualCenter. One of the biggest differences is how you switch between working in the VirtualCenter and/or working within a VM. Without the VMware tools installed, you need to press ctrl+alt to switch between. With the toolset installed, you can operate seamlessly between both without having to do any keystroke combinations to disconnect once connected to a VM.


Figure 9:Installing VMware Tools

Summary

In this article we looked at how to create a VM with VMware ESX server, install a guest operating system (Windows XP) and configure needed resources, tools and settings.

Overview of VMware ESX / VMware Infrastructure Advanced Features

Introduction

VMware ESX Server and the various VMware Infrastructure Suite (of which ESX Server is a part of) offer many advanced features. While there are many advanced features of ESX Server, itself, many advanced features that most people associate with ESX Server, are typically optional add-ons (products) that are purchased either individually, or more typically, as part of the VMware Infrastructure Suite (or the “VI Suite”). In this article, you will learn what these advanced features are, how they can help you, and how they are packaged and purchased when you consider VMware ESX Server and the VI Suite. As there are so many advanced features, I have chosen the top 10 advanced features of ESX to cover.

#1 ESX Server & ESXi Server

Even if all that you purchase is the most basic VMware ESXi virtualization package at a cost of $495, you still gain a number of advanced features. Of course, virtualization, in general, offers many benefits, no matter the virtualization package you choose. For example - hardware independence, better utilization of hardware, ease of management, fewer data center infrastructure resources required, and much more. While I cannot go into everything that ESX Server (itself) offers, here are the major advanced features:

  • Hardware level virtualization – no based operating system license is needed, ESXi installs right on your hardware (bare metal installation).
  • VMFS file system – see advanced feature #2, below.
  • SAN Support – connectivity to iSCSI and Fibre Channel (FC) SAN storage, including features like boot from SAN
  • Local SATA storage support.
  • 64 bit guest OS support.
  • Network Virtualization – virtual switches, virtual NICs, QoS & port configuration policies, and VLAN.
  • Enhanced virtual machine performance – virtual machines may perform, in some cases, even better in a VM than on a physical server because of features like transparent page sharing and nested page table.
  • Virtual SMP – see advanced feature #4, below.
  • Support for up to 64GB of RAM for VMs, up to 32 logical CPUs and 256GB of RAM on the host.

#2 VMFS

VMware’s VMFS was created just for VMware virtualization. Thus, it is the highest performance file system available to use in virtualizing your enterprise. While VMFS is included with any edition or package of ESX Server or VI that you choose, VMFS is still listed as a separate product by VMware. This is because it is so unique.

VMFS is a high performance cluster file system allowing multiple systems to access the file system at the same time. VMFS is what gives you a solid platform to perform VMotion and VMHA. With VMFS you can dynamically increase a volume, support distributed journaling, and the addition of a virtual disk on the fly.

#3 Virtual SMP

VMware’s Virtual SMP (or VSMP) is the feature that allows a VMware ESX Server to utilize up to 4 physical processors on the host system, simultaneously. Additionally, with VSMP, processing tasks will be balanced among the various CPUs.

#4 VM High Availability (VMHA)

One of the most amazing capabilities of VMware ESX is VMHA. With 2 ESX Servers, a SAN for shared storage, Virtual Center, and a VMHA license, if a single ESX Server fails, the virtual guests on that server will move over to the other server and restart, within seconds. This feature works regardless of the operating system used or if the applications support it.

#5 VMotion & Storage VMotion

With VMotion, VM guests are able to move from one ESX Server to another with no downtime for the users. VMotion is what makes DRS possible. VMotion also makes maintenance of an ESX server possible, again, without any downtime for the users of those virtual guests. What is required is a shared SAN storage system between the ESX Servers and a VMotion license.

Storage VMotion (or SVMotion) is similar to VMotion in the sense that "something" related to the VM is moved and there is no downtime to the VM guest and end users. However, with SVMotion the VM Guest stays on the server that it resides on but the virtual disk for that VM is what moves. Thus, you could move a VM guest's virtual disks from one ESX server’s local datastore to a shared SAN datastore (or vice versa) with no downtime for the end users of that VM guest. There are a number of restrictions on this. To read more technical details on how it works, please see the VMware ESX Server 3.5 Administrators Guide.

#6 VMware Consolidated Backup (VCB)

VMware Consolidated Backup (or VCB) is a group of Windows command line utilities, installed on a Windows system, that has SAN connectivity to the ESX Server VMFS file system. With VCB, you can perform file level or image level backups and restores of the VM guests, back to the VCB server. From there, you will have to find a way to get those VCB backup files off of the VCB server and integrated into your normal backup process. Many backup vendors integrate with VCB to make that task easier.

#7 VMware Update Manager

VMware Update Manager is a relatively new feature that ties into Virtual Center & ESX Server. With Update Manager, you can perform ESX Server updates and Windows and Linux operating system updates of your VM guests. To perform ESX Server updates, you can even use VMotion and upgrade an ESX Server without ever causing any downtime to the VM guests running on it. Overall, Update Manager is there to patch your host and guest systems to prevent security vulnerabilities from being exploited.

#8 VMware Distributed Resource Scheduler (DRS)

VMware’s Distributed Resource Scheduler (or DRS) is one of the other truly amazing advanced features of ESX Server and the VI Suite. DRS is essentially a load-balancing and resource scheduling system for all of your ESX Servers. If set to fully automatic, DRS can recognize the best allocation of resource across all ESX Server and dynamically move VM guests from one ESX Server to another, using VMotion, without any downtime to the end users. This can be used both for initial placement of VM guests and for “continuous optimization” (as VMware calls it). Additionally, this can be used for ESX Server maintenance.

#9 VMware’s Virtual Center (VC) & Infrastructure Client (VI Client)

I prefer to list the VMware Infrastructure client & Virtual Center as one of the advanced features of ESX Server & the VI Suite. Virtual Center is a required piece of many of the advanced ESX Server features. Also, VC has many advanced features in its own right. When tied with VC, the VI Client is really the interface that a VMware administrator uses to configure, optimize, and administer all of you ESX Server systems.

With the VI Client, you gain performance information, security & role administration, and template-based rollout of new VM guests for the entire virtual infrastructure. If you have more than 1 ESX Server, you need VMware Virtual Center.

#10 VMware Site Recovery Manager (SRM)

Recently announced for sale and expected to be shipping in 30 days, VMware’s Site Recovery Manager is a huge disaster recovery feature. If you have two data centers (primary/protected and a secondary/recovery), VMware ESX Servers at each site, and a SRM supported SAN at each site, you can use SRM to plan, test, and recover your entire VMware virtual infrastructure.

VMware ESX Server vs. the VMware Infrastructure Suite

VMware ESX Server is packaged and purchased in 4 different packages.

  1. VMware ESXi – the slimmed down (yet fully functional) version of ESX server that has no service console. By buying ESXi, you get VMFS and virtual SMP only.
  2. VMware Infrastructure Foundation – (previously called the starter kit, the Foundation package includes ESX or ESXi, VMFS, Virtual SMP, Virtual Center agent, Consolidated backup, and update manager.
  3. VMware Infrastructure Standard – includes ESX or ESXi, VMFS, Virtual SMP, Virtual center agent, consolidated backup, update manager, and VMware HA.
  4. VMware Infrastructure Enterprise – includes ESX or ESXi, VMFS, Virtual SMP, Virtual center agent, consolidated backup, update manager, VMware HA, VMotion, Storage VMotion, and DRS.

You should note that Virtual Center is required for some of the more advanced features and it is purchased separately. Also, there are varying levels of support available for these products. As the length and the priority of your support package increase, so does the cost.

Conclusion

In this article, I covered 10 of the many advanced features of VMware ESX Server & the VMware Infrastructure Suite. You learned what these advanced features are, how they can help you, and how they are packaged & purchased. VMware ESX is certainly the most feature-rich virtualization product available today and, after reading this article, you should have a good understanding of what these advanced features are and the power that they bring to your datacenter.

What is Storage VMotion (SVMotion) and How do you perform a SVMotion using the VI Plugin?

Introduction

In my recent VirtualizationAdmin.com article Overview of VMware ESX / VMware Infrastructure Advanced Features, one of the many features I covered was VMware's Storage VMotion (aka SVMotion). I covered how Storage VMotion is similar to VMotion in the sense that "something" related to the VM is moved and there is no downtime to the VM guest and end users. However, with SVMotion the VM Guest stays on the server that it resides on but the virtual disk for that VM is what moves. Thus, you could move a VM guest's virtual disks from one ESX server's local datastore to a shared SAN datastore (or vice versa) with no downtime for the end users of that VM guest.

There are a number of restrictions on this. To read more technical details on how it works, please see the VMware ESX Server 3.5 Administrators Guide.

Additionally, there are at least 3 ways to perform a SVMotion – from the remote command line, interactively from the command line, and with the SVMotion VI Client Plugin (to see these in video form, checkout SVMotion - watch it happen here (in 3 ways). By far, the easiest way to perform a SVMotion is to use the free VI Client Plugin and that is what we will demonstrate in this article.


Image Source: VMware SVMotion

How do I obtain and install the VI Client Plugin?

The free VI Client Plugin was generously created by Andrew Kutz and it provides a wonderfully needed GUI for SVMotion. I still cannot believe that VMware released and heavily touts this feature but offers no GUI interface for it.

The first step would be for you to download the SVMotion from here: SVMotion VI-Client Plugin.

It is a simple Windows MSI installer and there are no questions asked during the installation (that is the kind I like, that is, as long as I trust the app). When you are done installing it, you will see this window:


Figure 1: SVMotion VI-Client Plugin Installation Complete

After you close this window, open the VI Client (if it was already open then you should close it and reopen it).

Next, Go to the Plugins Option, then Manage Plugins, on the VI Client Toolbar, like this:

Figure 2: Go to the Plugins Option, then Mange-Plugins, on the VI-Client Toolbar

Click on the Installed tab of the Plugins Manager and check the checkbox to Enable the new SVMotion Plugin, as you see below.


Figure 3: Enabling the SVMotion Plugin

Now that the SVMotion Plugin is installed and enabled, if you right-click on a Cluster, an ESX Server, or a VM guest, all the way at the bottom, you should see Migrate Storage. This tells you that SVMotion is ready to happen when you are ready to test it.

Note:
You need to have VMotion configured and working for SVMotion to work. Additionally, there are a ton of caveats about SVMotion in the ESX 3.5 administrator’s guide (page 245) that could cause SVMotion not to work. One final reminder, SVMotion works to move the storage for a VM from a local datastore on an ESX server to a shared datastore (a SAN) and back – SVMotion will not move a VM at all – only the storage for a VM.

How to move the storage for a VMware ESX Guest VM using the SVMotion Plugin (with no downtime)

Now that you have the SVMotion GUI, actually moving the storage of a VMware ESX Server Guest VM, with no downtime for the end users, is quite easy. To do it, in the VI Client, right-click on a cluster, ESX server, or guest VM. Go down to Migrate Storage and you should see a window like this:


Figure 4:
Preparing to use VMware ESX Server SVMotion

Depending on what you clicked on (cluster, host, or VM) and how much storage you have, you may have very little in the window or you may have a lot.

In my case, my test VM called “David D Test” is located on the local storage of an ESX Server (called “storage 6b”) connected to an iSCSI and a FC SAN. To move my Virtual machine’s storage (including the VMX files and VMDK files) from the local storage to the shared iSCSI SAN (called “storage”), all I have to do is to drag the VM from where it is to the new storage, like this:


Figure 5: Moving Storage with SVMotion

Then, I click Apply.

Down in my task window, I see the “Relocate Virtual Machine Storage”, like this:


Figure 6: Relocating Virtual Machine Storage

When the process is done, I see “Completed” in the task window and I see that my storage for this VM has moved from the local storage to the shared iSCSI SAN storage. I can see this in the datastore section of the VM resources, below:


Figure 7: Storage for the VM has moved

And, of course, the most amazing thing about all of this is that the virtual guest operating system was powered on this entire time. As you can see from the graphic above, the status still says “powered on”. Because of this and because of how SVMotion works, there was never any downtime for the end users who may have been accessing this virtual guest.

This feature is great for maintenance of server hardware, ESX Server maintenance, maintenance of disk arrays, rearranging storage, and many more applications. Of course, for some of those applications (like maintenance of server hardware) you would also have to perform a VMotion and move the running guest OS to another physical server.

Conclusion

In this article, I provided an overview of VMware’s Storage VMotion, where to find an indispensible SVMotion plugin for the VI Client, and a step by step demonstration of how SVMotion works to move a VMware ESX Guest VM’s storage, from one datastore to another, without any downtime to the end users. In my opinion, SVMotion is an amazing product and its application and adaptation will just continue to grow and grow - making the life of virtualization admins like us easier and easier (I hope).