Welcome to TechNet Blogs Sign in | Join | Help

Robert Larson

Thoughts and information on Virtualization and other topics

News

  • Virtual Server 2005 R2 Resource Kit Now on the Shelves!


    Welcome to my blog.

    I am an Architect with MS Consulting Services specializing in Infrastructure Optimization and Virtualization. I am also the co-author of the new Virtual Server 2005 R2 Resource Kit.

    In this blog I will talk about various technology subjects that are my passion and also drive me crazy sometimes.

    The information in this weblog is provided "AS IS" with no warranties, and confers no rights. This weblog does not represent the thoughts, intentions, plans or strategies of my employer. It is solely my opinion. Inappropriate comments will be deleted at the authors discretion. All code samples are provided "AS IS" without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.
Virtual Machine Snapshots with Hyper-V

Snapshots are a new feature of Windows Server 2008 Hyper-V. Snapshots are a point in time version of a virtual machine…..what does that mean you ask? It means that you can be running a virtual machine, take a snapshot and at any point you can select a previous snapshot and revert back to that point in time.  You end up with the virtual machine in the EXACT configuration that it was when you took the snapshot…and I mean exact….memory, virtual hardware, processes, state, etc. So you can have a running virtual machine, take a snapshot, change the virtual hardware configuration, format the disk and install a different OS, it does not matter, when you apply the previous snapshot it looks exactly like it did when you took the snapshot.

Snapshots do not affect the running state of the virtual machine, meaning that taking a snapshot does not change the virtual machine hardware, applications, or the currently running processes. It also means that deleting a snapshot does not change the virtual machine either….it just means that you cannot go OOPS and go back to that point in time to get you out of something you just did.

The snapshot files consist of the following:

  • A copy of the VM configuration .xml file
  • Any save state files
  • A differencing disk(.avhd) that is the new working disk for all writes that is the child of the working disk prior to the snapshot.

If you create snapshots one right after each other and never apply a previous snapshot, the you will have a tree with one branch. if you apply a previous snapshot, then you will get another branch to the snapshot tree starting at the applied snapshot.

Creating Snapshots – How does it work?

When you create a new VM in a directory, let’s say D:\TestVM, two sub directories are created – D:\TestVM\Snapshots and D:\TestVM\Virtual Machines. The \Snapshots directory contains nothing, but the \Virtual Machines directory contains the original XML configuration file saved with a unique GUID as the filename with an .xml extension and a directory to house the save state files (.VSV and .bin) memory files. The directory also uses the same GUID as the directory name. I will refer to this as the VMGUID.

Note: All the filenames and directories are actual GUIDs, I am using friendly names to make it easier to write and understand the concept.

The VMGUID.XML file points to the D:\TESTVM\TESTVM.VHD as the current VHD for all writes. Before you do any snapshots, all changes get written to the D:\TESTVM\TESTVM.VHD file and any save state is saved in the D:\TestVM\Virtual Machines\VMGUID directory.

When you create the first snapshot you have two scenarios: [1] You create it with the virtual machine powered down or [2] you create it while the virtual machine is running.

CASE [1] – VM is powered off

  1. It creates two directories in the D:\TestVM\Snapshots\ folder
  • One with a folder name of VMGUID – this is where all the avhd files will be stored for all snapshots (This only happens for the first snapshot)
  • One with a new GUID for a folder name – this is where the memory save state for this snapshot is stored, I will refer to this as SNAPGUID
  • In this case no files are written to D:\TestVM\Snapshots\SNAPGUID here because the VM is powered down and there is no memory state
  1. It also creates a copy of the VM’s XML configuration file with filename SNAP1GUID.XML
  2. It creates a working .avhd files with another GUID and stores it in the D:\TESTVM\Virtual Machines\VMGUID directory. I will refer to this as WORKING.AVHD
  3. The VM’s original VMGUID.XML file is updated to point to the new WORKING.AVHD as current VHD

CASE [2] – VM is powered on

  1. Everything that happens for CASE [1] happens for case [2] except in this case the memory is saved to disk and stored in the D:\TestVM\Snapshots\SNAPGUID folder as a BIN with the actual memory saved and a VSV with supporting process information.

Both Case [1] and [2] proceed the same from here….

From this point on, all writes are written to the WORKING.AVHD file. If you make a bunch of changes and then decide to use Revert (to go back to the point in time of the first snapshot), this is what happens

  1. The WORKING.avhd file is deleted and a new one is created with a different GUID
  2. The VM’s original VMGUID.XML file is updated to point to the new WORKING.AVHD as current VHD
  3. If there was a save state file to load it would be loaded and the VM would be resumed from save state.
  4. If there was no save state file to load, the machine would remain powered down since you took the snapshot when it as powered down.

So you make a bunch of more changes and then take another snapshot, this is what happens

  1. A copy of the current VMGUID.XML files is made, placed in the SNAPSHOTS folder and given a filename with a new GUID, let’s call it SNAP2GUID.XML
  2. A folder is created in the SNAPSHOTS folder using the SNAP2GUID to house the save state files for this snapshot, The VM is save stated to this folder
  3. The current D:\TESSTVM\Snapshots\VMGUID\WORKING.AVHD file is now the point in time state of the VHD (the GUID does not change)
    • Its parent is the original TESTVM.VHD file
  4. A new WORKING.AVHD file is created with a new GUID
    • Its parent is the old WORKING.AVHD file
  5. The VMGUID.XML file is updated to the new WORKING.AVHD

So for each new snapshot in succession

  1. A copy of the current VMGUID.XML is made and placed in the VMs SNAPSHOTS folder, the filename is a unique GUID
  2. A new directory is created in the SNAPSHOTS folder to hold the save state files, the folder name is the same as the GUID in (a) above
  3. A new avhd file is created with a new unique GUID. This becomes the new working avhd file and the existing one becomes the RO parent.
  4. All new writes are made to the new working avhd file

Hope that provides you with a better understanding on what snapshots are and how they are created under the hood…..I will save deleting snapshots for a future post :-)

Robert….

Building a Host Cluster with Hyper-V Beta 1

Well by now you have heard the news that Microsoft shipped Hyper-V Beta 1 early!!

Like many of you I have been testing away and thought I would share the steps for creating a host cluster in Windows 2008 and Hyper-V. For those that have built host clusters in Virtual Server, you will find the process in Windows 2008 and Hyper-V much more streamlined and user friendly. One major improvement is the integration of Hyper-V as a cluster aware application and native support for making a virtual machine highly available.

So what are the 10 steps you have to go through to build a host cluster using iSCSI shared storage?

1) Build nodes with Hyper-V
2) Build Virtual Network Switches in Hyper-V
3) Establish iSCSI Target Quorum and Data drives
4) Use iSCSI initiator on each node to connect to targets
5) Install Failover Clustering on each node
6) Run Validate on the cluster nodes
7) Create Cluster
8) Build a VM to make highly available
9) Make the VM highly available
10) Test it by moving the VM to another node

image

Node1

LAN IP address = 192.168.0.170
Heartbeat IP address = 10.10.10.1

Node2

LAN IP address = 192.168.0.171
Heartbeat IP address = 10.10.10.2

Cluster IP Address = 192.168.0.181

Step 1:

Building the nodes with Windows 2008 Enterprise or Data Center edition is a simple process.  Once you have the OS installed, you need to add the Hyper-V role in Server Manager (and reboot)

Step 2:

Once you reboot and Hyper-V installation completes, you need to launch the Hyper-V management console from the Administration Tools menu on each node.

[Do this on both nodes] On the right hand side, click the Virtual Network Manager, and create a new virtual network switch. For simplicity make it a private network and call it Private. The name must be the same on both nodes.

Step 3:

Go to the iSCSI target (hardware or software based) and build two disks enabled for shared access.  One disk needs to be 500 MB or larger to hold the cluster configuration info, and other disk needs to be big enough to hold the virtual machine, say 10 GB minimum. Be sure to enable the option for shared or cluster access to the disks.

Step 4:

On NODE1 launch the iSCSI initiator software.  Discover the iSCSI target via name or IP address and then establish a connection to the Data and Quorum disks that were established in step3.

image image

Once the disks are connected to Node1, use Disk Management to initialize and format them as NTFS volumes. Assign driver letter Q: to the small disk and a drive letter like S: to the large disk.

Now go to Node2 and use the iSCSI initiator to connect the target disks, you do not need to do anything else.

Step 5:

From Server Manager, install the feature called Failover Clustering on each node. and when done, launch the Failover Clustering Management console .

image

Step 6:

Verify that Node1 has current ownership of the disk resources (although either disk could have ownership) and then launch the Validate process from Node1 specifying Node1 and Node2 are the nodes of the cluster, run all tests.  If issues are identified, the validate report will provide details on what the issue(s) are and how to resolve them.

Click Validate a Configuration

image

Provide the names of the two nodes

image

Execute the validation process

image

Get a report back on the progress, if successful you should see all green checkmarks

image

Step 7:

Once you have completed a successful validate process, you can now build the cluster.  It is a four step process

1) Select Create Cluster from the Failover Cluster Management console.
2) Specify the nodes of the cluster
3) Specify the name and IP address of the cluster
4) Execute the create process

image

image

image

Step 8:

Using the Hyper-V Management console, create a virtual machine called TestVM on Node1 that can be made highly available.  Use Windows 2008 for the operating system.  The integration components are automatically installed for you.

Do not start TestVM, it must be in the powered off state to make it highly available.

Step 9:

Make TestVM highly available. This allows you to have a planned or unplanned migration of a VM between nodes.

Click Configure a Service or Application

image

Select Virtual Machine from the list of available services or applications

image

Select TestVM as the VM to make highly available

image

Execute the process

image

Success!!

Now bring the VM online, right click the VM in the list and select "Bring this service or application online"

image

Step 10:

Once it is online you can test the fail over by moving the VM to Node2.

Right-click the Application and select "Move this service or application to another node", select Node2

image

Watch the process

1) The VM is placed in saved state
2) The resources are moved to Node2
3) The VM is resumed from saved state

image

image

Now the VM has successfully failed from Node1 to Node2.

You have successfully built and tested a 2-node host cluster using Hyper-V.  Note that you can have up to 16 nodes in a Hyper-V host cluster.

Hope this helps you understand Hyper-V host clustering......:-)

Virtualization at IT Forum

Well I am off to Barcelona Spain again to speak at TechEd IT Forum November 12-16th. This will be an exciting show for Virtualization. System Center products will be launching and Microsoft will be making some announcements about Windows Server 2008 virtualization.

System Center products focused on virtualization:

Virtual Machine Manager 2007 - centralized management of your Virtual Server 2005 R2 SP1 pool of hosts, Physical to Virtual migration, Virtual to Virtual Migration, Self Service web portal, VM templates, provisioning, and much more....

Data Protection Manager 2007 - centralized backup to disk or tape, native support for Exchange, SQL, SharePoint, and Virtual Server, delta based backup to reduce network traffic, end user file recovery, and much more

Operations Manager 2007 - SCOM has already been launched, but at the show will be new management packs for VMM and Virtual Server

Viridian announcements - While I cannot blog about the announcements...yet, I think you will really like them. So stay tuned....

There will also be many breakout sessions on Virtualization. There will be a surprise at a couple of the sessions....we will be giving away signed copies of the Virtual Server 2005 R2 Resource Kit , so come attend for a chance to win a copy.

See you there!!

Self Service VM Management with SCVMM

One of the features of VMM that I really like is the power of the Self Service Web Portal (SSWP).  The portal provides an individual user or group of users access to a virtual machines that they own or that they create.  They can see, manage, and interact with virtual machines remotely using the VMRC ActiveX control.

You can create a portal and limit a group of users to specific actions or management capabilities. The use of the SSWP is limited only by your imagination. Here are some examples that I have thought about

1) Remote development environment for internal or outsourced developers.
2) Remote training environment, you can build a view only environment for end users so they can remotely attend a training class and watch the instructor teaching them a new skill from the instructors view-only VM, then switch over to a development VM to try it themselves.
3) Remote admin into a production environment (one you own or a hosted environment)
4) Remote test and Q/A environment
5) Remote proof of concepts for your software applications
and many more....

Enabling the SSWP for end users requires the following steps:

1) Install the Web Portal on a server (I just installed it on the VMM server for test purposes)

2) Create a Host Group and place one or more managed hosts in the host group (only the hosts in the host group are available resources for new VM creation)

3) Create a Self Service Policy (or multiple if you want different ones to apply to different VMs, View Only policy, Manage Policy, Create and Manage Policy)

4) Configure any pre-existing VMs for the policy

5) Build templates for the self services users if you are going to allow them to create virtual machines

Installing the web portal is easy and well documented, so I will not go over it again here.

Creating the host group is pretty easy also, in the VMM Admin Console, go to the Host view, then in the Actions menu on the right hand side, you will see a section called Host Groups, Click New Host Group, give it a name (I called mine SelfServe) and press OK.

image image

Once you have the host group, you can drag and drop one or more managed hosts into the group.  Once you do that, then select the group and then in the Host Group actions, Press New Self-Service Policy.

Provide a name for the policy

SSP-Policy properties

Set the policies that you want to apply to the user or group of users that you selected and save the policy.

If you already have Virtual machines on the host or if you will be pre-creating the virtual machines and not allowing the users to create virtual machines on their own, then you must configure the VM properties to recognize the policy.  When you allow the users to create their own VMs, these values will be automatically set as the VM is created.

If you are creating the VMs for the user, then you must change the owner value of the VM to be owned by the user or group you selected for the policy.  Select the VM and look at it properties. In the Owner box, set the owner.

SSP-VM Owner

Next click the Self-Service Tab and set the policy and the quota value for the VM.

SSP-VM Policy setting

Press OK.

Now you have the host group, self-service policy, and the existing VMs all configured for the policy.

The user can now connect to the Self-Service Portal to access the VMs that they have rights to. When they go to the self service web site, they will be prompted for their credentials, then presented with the screen below. On the left hand side is the list of all the VMs they have rights.  If they select a VM, they will be presented with information on the VM and a menu of actions will be presented on the right hand side. For this VM the policy allows the user to Start, Stop, and view the properties of the VM.

SSP-SelfTest User

As the administrator, if you go to the self service portal, you will see the same screen as a regular user. The administrator will be presented with a troubleshooting screen that allows you to help users of the portal.

SSP-ADmin View

Entering a user name in the box and pressing Enter will allow you to see the same interface the user sees so you can determine any issues they are having.

As you can see, setting up a Self Service Web Portal is not that complicated.

Enjoy!!

Microsoft publishes the Hypercall APIs via the Open Specification Promise

Microsoft announced today with it will be publishing the Hypercall APIs through the Open Specification Promise when Windows Server Virtualization ships. In addition they posted a draft of these interfaces in the form of a Hypervisor top-level functional specification on Microsoft downloads here. This document gives you and view of the external interfaces of the first generation hypervisor from Microsoft and contains the following information:

  • Introduction
  • Basic Data Types, Concepts and Notation
  • Feature and Interface Discovery
  • Hypercall Interface
  • Partition Management
  • Physical Hardware Management
  • Resource Management
  • Guest Physical Address Spaces
  • Intercepts
  • Virtual Processor Management
  • Virtual Processor Execution
  • Virtual MMU and Caching
  • Virtual Interrupt Control
  • Inter-Partition Communication
  • Timers
  • Message Formats
  • Partition Save and Restore
  • Scheduler
  • Event Logging
  • Guest Debugging Support
  • Statistics
  • Booting
  • Appendix

This is really cool and gives you a detailed view of how to interface with the Microsoft hypervisor.

For more information, go to the Virtualization Product team blog entry here

Changes to Virtual Networks in Virtual Server 2005 R2 SP1

In Virtual Server 2005 R2, a virtual network operated like a hub with a switched uplink port.  Traffic on all guests plugged into the network was visible on every port of the virtual network, but that traffic was not visible to anything on the other side of the uplink port because it was switched.  The pro was that it was easy to use Network Monitor to trace what was going on the network.  The con was every guest saw every packet and extra overhead existed.

In Virtual Server 2005 R2 SP1, the virtual network was converted to a switch for all ports. This reduced the traffic that each VM saw and reduced the network overhead, but made it harder to sniff traffic between guests.

There is a solution to the problem though on a per VM basis. To enable the VM to see all the traffic, you need to enable promiscuous mode for the port. There is a setting in the VMC file called allow_promiscuous_mode that by default the value is false. 

This tag exists under the <virtual machines> node and the syntax is

<allow_promiscuous_mode type="boolean">TRUE/FALSE</allow_promiscuous_mode>

Setting the value to TRUE will enable the old behavior from R2.

You will need to do this if you want to load NetMon or other packets sniffer software in the VM and see all the traffic on the virtual network.

New bonus scripts for Virtual Server 2005 R2 Resource Kit

My co-author Janique Carbone has posted two new bonus scripts on her site http://vscommunity.com.

Both scripts have to do with finding out information about differencing disks.

GETVHDParentInfo - Allows you to specify a VHD file on the command line and the script will tell you if the VHD is a differencing disk and then walk the tree of dependencies to show you the entire hierarchy of the parent child relationship

ListDiffDisks - Allows you to point at a Virtual Server host and it will enumerate all the virtual machines and all of their VHDs, telling you which ones are differencing disks and also printing the entire hierarchy of the parent child relationship.

These are posted in the Downloads area and require you to be a registered user of the site to download them.

Enjoy....

Windows 2008 Components Posters

Previously published in the July issue of TechNet Magazine, these are two PDFs of Windows 2008: Operating System components and Active Directory components. The posters explain how they work and detail capabilities.  They are great resources to have up on your office wall (you will need a big printer though).

http://www.microsoft.com/downloads/details.aspx?FamilyID=c2b9e44e-0bbd-47cb-bc09-b3d48be7f867&DisplayLang=en

The Feature Components poster highlights the following components of the Windows Server 2008 operating system:

Terminal Services
Network Access Protection
IIS 7.0
Server Manager
Server Backup
Server Core
BitLocker
Windows Server Virtualization

The Active Directory Poster highlights the following components of Active Directory in Win2008

AD Lightweight Directory Services
AD Federation Services
AD Rights Management Services
Group Policy
AD Management
AD Read-Only Domain Controllers

These are painstakingly created by two Microsoft employees in Australia, Martin and Astrid McClean. These two have been building these posters for years and they have all been great hits, usually causing multiple re-printings.

Great job once again.....

How does the mapping from a virtual network adapter to a physical adapter work?

Adapted from Chapter 7 of the Virtual Server 2005 R2 Resource Kit book from Microsoft Press

So you are trying to figure out how a virtual machine network adapter is mapped to a physical network adapter in the host through a virtual network. Maybe you moved a virtual machine between hosts and it now gives an error about not finding XYZ virtual network and will be binding to the default virtual network.

There are three pieces to this puzzle.

  1. The options.xml configuration file of the Virtual Server host contains the physical network adapters that have the Virtual Machine Network Services (VMNS) bound to them.
  2. The virtual network configuration (.vnc) file has the mapping to the physical adapter
  3. The virtual machine configuration file has the mapping to the virtual networks it is attached.

To trace a virtual machines mappings, open the .vmc file and look for entries for each virtual network adapter that specifies the ID of the virtual_network that the VM it is attached to. You can see by this example, that the id value is 00D67AACDFC2499DBD9222F7A0A29D54. Record this value.

<ethernet_controller id="0">
                <ethernet_card_address type="bytes">0003FF1B6AD5</ethernet_card_address>
                <id type="integer">5</id>
                <virtual_network>
                        <id type="bytes">00D67AACDFC2499DBD9222F7A0A29D54</id>
        <name type="string">Wireless</name>
                </virtual_network>

Now open up the .vnc file for the virtual network that is attached. Search for the ID that you just recorded, then write down the <gateway> value. You will need this to determine which physical adapter it is bound.

<settings>
            <gateway type="integer">22</gateway>
    <id type="bytes">00D67AACDFC2499DBD9222F7A0A29D54</id>

Now open up the options.xml file and search each virtual_gateway entry for a value of id that matches the <gateway> value from the .vnc file.

<virtual_gateway id="7">
        <adapter type="string">\DosDevices\VPCNetS2_{CA746289-F2E6-405A-B7C2-E2595ACA750A}</adapter>
        <id type="integer">22</id>
        <name type="string">Intel(R) PRO/Wireless 3945ABG Network Connection #2</name>
        <type type="integer">2</type>
    </virtual_gateway>

Now look at the name value and you know which physical adapter your virtual machine is attached!

Getting Wireless LAN on Windows 2008 RC0

If you are like me and primarily use a notebook, then you live by wireless.  If you are also trying to test Windows 2008 RC0 then you might be scratching you head on how you get wireless to work.  Windows 2008 has a new feature called the Wireless LAN Service. Until the feature is installed, wireless will not work.

To install the feature:

1) Go to Server Manager

2) Add a new feature

3) Select to add the Wireless LAN Service

4) Finish the installation

5) Install your WIFI drivers if not automatically detected.

 

For the Windows Server Virtualization testers out there, Wireless is not supported and you will not see a working wireless LAN adapter as a valid network interface to create a virtual network....sorry, but how many real servers do you have with wireless adapters?

Looking for Virtualization info..how about some webcasts

Microsoft is holding a series of webcasts to provide information on the virtualization solutions it provides.  If you want to learn about Microsoft Virtualization technology or how to manage the virtualization technology, check these out. There are a couple that already happened, but are available on-demand....enjoy

Virtualization and Windows Server 2008 (Level 300) - On-demand

http://msevents.microsoft.com/cui/WebCastEventDetails.aspx?EventID=1032351359&EventCategory=4&culture=en-US&CountryCode=US

In this webcast, we provide an overview of the virtualization role, the scenarios, and the features that make server virtualization an important pillar of Windows Server 2008. We also cover the longer-term strategy and road map for Microsoft virtualization technologies.

Examining Virtualization with Windows Server 2008 (Level 300)- On-demand

http://msevents.microsoft.com/cui/WebCastEventDetails.aspx?culture=en-US&EventID=1032351234&CountryCode=US

In this session, we examine the Microsoft virtualization ecosystem and how to implement it with Windows Server 2008. Taking an overall view of virtualization, we cover topics including: presentation, application, and server virtualization scenarios and technologies

A 360 View Inside the Virtual World (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352793&Culture=en-US

Monday, October 15, 2007

9:30 AM – 11:00 AM Pacific Time

Join this session for a look at what virtualization is and gain  insight into the overall Microsoft virtualization strategy. Learn about the Microsoft road map for virtualization and examine what workloads make good candidates for virtualization and why you would consider moving these workloads into a virtual world.

Windows Server Virtualization Under the Hood (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352797&Culture=en-US

Wednesday, October 17, 2007 

9:30  AM – 11:00 AM Pacific Time

This session covers the new hypervisor-based architecture. We look at the integrated management for virtual and physical resources, including the Microsoft Management Console (MMC), the new virtual machine creation wizard, the conversion tools, the performance enhancements, and the integration into Group Policy.

Virtualization of Test and Development Environments, and the Impact on Existing Applications (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352800&Culture=en-US

Monday, October 22, 2007 

9:30 AM – 11:00 AM Pacific Time

Tune in as we look at virtualization solutions starting with moving existing applications and infrastructure servers into a virtualized environment. We also look at the impact of virtualizing test and development environments, and some of the tools available that make this process easily manageable.

TechNet Webcast:  Virtualization of Production Workloads Including Active Directory, SQL Server, and Others (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352802&Culture=en-US

Wednesday, October 24, 2007

9:30 AM – 11:00 AM Pacific Time

In this session, we  cover some of the best practices and tips for virtualization of infrastructure workloads, such as the Active Directory directory service, file and print, and Web servers, and the benefits of mixed workload virtualization.

TechNet Webcast:  Optimized and Dynamic Branch Offices with Virtualized Branch Office Servers (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352804&Culture=en-US

Monday, October 29, 2007 

9:30 AM – 11:00 AM Pacific Time

Learn about what you should consider before, during, and after a server consolidation in a branch office, and the role virtualization can play. We provide a comprehensive view of how and where virtualization fits in a branch office, and how it helps simplify administration and creates a dynamic, self-managing branch infrastructure.

TechNet Webcast:  Managing a Virtual Solution with System Center (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352809&Culture=en-US

Wednesday, October 31, 2007 

9:30 AM – 11:00 AM Pacific Time

In this session we cover Microsoft System Center Data Protection Manager for backup and restore, and Microsoft System Center Operations Manager and Virtual Machine Manager for management and performance tuning.

TechNet Webcast:  Creating Business Continuity Solutions Using Windows Virtualization (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352811&Culture=en-US

Monday, November 5, 2007 

9:30 AM – 11:00 AM Pacific Time

In this session, learn how Windows Server virtualization and clustering can be used to create business continuity solutions for Microsoft SQL Server and infrastructure workloads. See how  to use the new features in Windows Server virtualization, such as live backup, health monitoring, quick migration, and guest clustering.

TechNet Webcast:  Introducing SoftGrid to the World (Level 200)

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032352815&Culture=en-US

Wednesday, November 7, 2007

9:30 AM – 11:00 AM Pacific Time

Which to use, Microsoft SoftGrid or Terminal Services? In this session, we look at these solutions, provide details on how they differ, and explain when to use them. We also cover how to install, configure, and use SoftGrid.

Vista and ExpressCards: An Update

I have heard from some people that they are not able to get an Sil3132 based eSATA ExpressCard to see an attached drive. I thought it was just a driver issue until recently I was testing a new Dell Inspiron 1420 notebook and experienced the same issue.  I could get the driver to successfully to install on Vista-32, Vista-64, and Windows 2008 RC0.  But only Windows 2008 RC0 actually saw an attached disk drive.

I tried everything, updated the firmware of the eSATA card, the latest drivers, different cards (but same 3132 chipset). Nothing worked on Vista-32 or Vista-64.

I decided to download Vista SP1 and try that.....Voila, it worked the first time. It even loaded the latest version of the drivers from Windows Update.

I will try and see if I can find a hotfix that addresses this issue and post it, but wanted to let you know that if you are having this problem, try installing Vista SP1 on a new disk and see if that solves it.

Note that I installed Vista SP1 slipstreamed as part of a new install, I have not tried an upgrade in place.

BTW, if you are trying to get a Sil3132 card to work under Windows 2008 RC0 x64, go to www.siliconimage.com and get the latest drivers from their site. Use the Vista-64 drivers, they work fine....so far ;-)

Assembling the Justification for Server Consolidation Project

Adapted from the Virtual Server 2005 R2 Resource Kit - Chapters 12-14

Many companies are looking at server consolidation as a way to reduce their IT infrastructure costs. Making the move requires project justification and projected costs and cost savings before they will be given the budget for the project.

When we wrote the Virtual Server 2005 R2 Resource Kit, we wanted to not only tell you how to deploy, use, manage, and operate the product, but how to assemble a project from envisioning to pilot. This information is adapted from those chapters of the book.

The following is a summary of the first steps of a project that lets you assemble the project justification.

1) Envision the project
2) Discover your infrastructure
3) Analyze the data
4) Determine project costs and cost savings
5) Write a great project proposal

Envisioning the project

Envisioning is all about getting the project team to agree on the project vision, problem statements, goals, scope, issues, risks, and expected end state. This is extremely important so that you can focus on only what is within the scope of the project and so you can accurately explain to the executive sponsor what the project will accomplish.

  • The project vision should be short but easy to understand.
  • The problem statements should explain what issues you are trying to address with the project. They should be quantitative where ever possible so that you can set a goal to reach as part of the project scope. This allows you to get buy-in and then evaluate the projects success.
  • The scope should define what locations, servers, applications, business units, etc are in scope.
  • The risks should focus on potential issues that might arise and how you could mitigate the issue from happening.
  • The issues list tracks the issues that did happen and their resolution status. The list should be maintained for the entire project
  • Expected end state should describe what the team expects the infrastructure, operations, and management should look like at the end of the project.

Discovering your infrastructure

Before you can determine what can be virtualized you need to assemble the data to analyze. This should involve collecting hardware, software, and performance information on every server that is a potential candidate. You also want to assemble the space and power rating information for each server

Hardware inventory should include the configuration information for the processor (speed, #procs, #cores, make, model, stepping), memory (installed), network (# NICs, speed, MAC, IP, make, model), and disk systems (#disks, size, total space, space available).

Software inventory should include the installed applications, version, and update information.

Performance data should collect information for processors, memory, network, and disk. You typically want to collect utilization (max, min, avg) and usage information, and collect it for each component if there are multiple. You want to collect the data over a period of 30 days so that you see the workload signature of the server over an entire business cycle.

Space information is typically how many rack units a server requires. Power rating is combined rating of all the power supplies in the server.

[You will find scripts and reference to tools to assist in the data collection in the Virtual Server 2005 R2 Resource Kit DVD)

Analyzing the data

Once you have the data, you need to determine the following:

1) Determine any exclusions you want to set or have to set due to the limitations of your virtualization solution (for example servers with 64-bit OS for Virtual Server guests)
2) Set your usage or performance criteria for a virtualization candidate (memory - MB, processor - MHz, Disk - GB, NIC - Mb/s)
3) Remove the servers that meet the exclusions
4) Evaluate each machine against the criteria candidate criteria.
5) Group the servers on how they will be consolidated
6) Determine the host configurations you will use and set thresholds
7) Combine the workloads of each group of servers so that you get as close to the thresholds you set without exceeding them. Count the number of required hosts.

So now you should know the number of hosts required for each location.

[You will find sample spreadsheets on the Virtual Server 2005 R2 Resource Kit DVD that will make this a simpler process)

Determine project cost savings

1) Evaluate the hardware from all the virtualization candidates for possible reuse as hosts
2) Combine all the space and power requirements together to determine the amount of space, power, and cooling that can be saved from the project.
3) Determine the capital costs savings from eliminating the physical servers
4) Determine or approximate the cost savings for supporting hardware like KVMs, Monitors, network switches, etc.

Determine the Project Costs

There will be costs in the implementation. You will be deploying new servers, new software, and modifying processes.

1) Determine the cost of the hardware for the Virtual Server hosts (offset by the reusable servers). Do not forget any supporting hardware like disk cabinets, switches, etc..)
2) Determine the cost of Windows 2003 Data Center Edition (you want to use this one so you can freely move virtual machines around), you will need a single license per host.
3) Determine the cost of the virtualization software
       a) Virtual Server - free
       b) SCVMM, SCOM, SCDPM - E-SML license
4) Determine the cost of any consulting services
5) Determine the deployment cost
6) Determine the training cost

Writing the Proposal

Now you have all the information about the virtualization candidates, number of required hosts, cost savings, and project costs, now is the time to assemble the proposal to management. The proposal should include a summary of the vision and scope, the risks, the assessment findings, the project costs, then the project savings.

Hopefully the project savings outweigh the project costs by a hefty factor to make the discussion quick and painless.

For more detailed discussion on these topics, refer to the Virtual Server 2005 R2 Resource Kit from Microsoft Press.

Windows Server Virtualization CTP Available now!

Well it has finally happened. WSV CTP is out the doors on the Windows 2008 RC0 release. I am going to make this a short post so I can go download ;-)

Quick points of Interest

1) You must be running an Intel or AMD processor with virtualization support
2) You must enable the support in the BIOS and then power off you machine and back on for it to take affect.
3) You must enable the XD/NX (eXecute Disable/No Execute) feature in the BIOS
4) You must install the 64-bit version of Windows 2008
5) You must install the WSV role, see link below
6) Recommend that you are running the latest BIOS on your machine to deal with any issues from early versions of processors.
7) Once installed you get an MMC console to manage your VMs! Yeah no more web interface
8) If you have SCVMM managing your Virtual Server 2005 R2 SP1 hosts, you CANNOT manage the WSV host...right now ;-)
9) You need to do the Full Install of Windows 2008 versus the Server Core....a CTP limitation.

Quick links

How to Install - From John Howard's blog get it here

Best place to download - Microsoft Connect site http://connect.microsoft.com (assuming you are already an approved Windows 2008 beta tester)

Ok I am off to download, more postings to come....enjoy!!

Improving Disk I/O for Virtual Machine Demo and Test

If you are like me and work primarily on a notebook computer, having the best performing system for demos and testing can save you time...and since time is so critical to work life balance, wasting time waiting for virtual machines to load, run and shutdown is a waste of valuable time.

If you have not realized this yet, having your virtual machines on a disk separate from the system disk will give much better performance.  Most people use the readily available USB or FireWire attached external disks.  USB 2.0 runs at 480 Mb/sec and FireWire runs at 400 Mb/sec. USB places additional load on your computer processor, FireWire has its own processor. I will stay away from the argument which one is better, because they are both slowpokes compared to the latest technology...keep reading.

ExpressCard is a new expansion card interface standard that the latest notebooks include. ExpressCards operate at 2.5 Gb/s, over 5x faster than USB or FireWire. Check out your notebook to see if you have an ExpressCard interface. The ExpressCard standard is only 34 mm wide (about 2/3 the with of a standard PCMCIA interface).  You machine might have a 34 mm wide slot or it might have a 54 mm wide slot that the 34 mm port is on one side.

So how does this help me you ask?  Combine an ExpressCard slot, an ExpressCard that supports the external SATA (eSATA) interface, and an external SATA II disk in a case with an eSATA port and now you have a disk system with about 5x the speed of what you might be using today.

Most eSATA ExpressCards that I have found using the Silicon Image (www.siliconimage.com) chipset SILI32. This chipset supports two ports in RAID and non-RAID configuration.  I have used two cards on my notebook, one made by SIIG (www.siig.com) and one from Addonics (www.addonics.com) with success.  I have used them with Vista (32 and 64) and Windows 2008 (64 bit) with no issues.

With Vista, you insert the card and the driver is installed automatically from Windows Update. With Windows 2008 you will need to go download the 64 driver from the manufacturers site.

Combine this with the new 7200 and 10,000 RPM drives and you have a sweet super fast external disk subsystem.  You can connect single drives to each port, RAID single drives across the ports on a single card or use an external disk cabinet with port multiplier support to connect multiple drives to a single port.  If you want to lug it around, you could have a 4 disk external cabinet configured as RAID 10.

Now if I could just boot from this device...;-)

More Posts Next page »
Page view tracker