Welcome to MSDN Blogs Sign in | Join | Help

If you are interested in this feature, it’s assumed you are familiar with the basic concept of a VLAN. Therefore I’ll focus just on using VLAN IDs with Hyper-V here. A VLAN ID is the integer which uniquely identifies a node as belonging to a particular VLAN. As per the 802.1Q specification, the VLAN ID itself is encapsulated within the Ethernet frame, which is how multiple VMs using the same physical NIC can communication on different VLANs simultaneously.

 

Firstly, you need physical NICs which support VLAN tagging and you need to enable the feature. However, you should generally not set the VLAN ID at the physical NIC, it should be set on either the Virtual Switch or the individual Virtual Machine’s configuration. The VLAN ID on the Virtual Switch is what the Host or Parent Partition uses. The VLAN ID setting on the individual Virtual Machine’s settings is what each VM will use.

 

VLAN ID setting at the Host’s Virtual Switch

 

 

 

VLAN ID setting at the Virtual Machine

 

 

 

When creating an External network in Hyper-V, a virtual network switch is created and bound to the selected physical adapter. A new virtual network adapter is created in the parent partition and connected to the virtual network switch. Child partitions can be bound to the virtual network switch by using virtual network adapters. The diagram below illustrates the architecture.

 

 

 

In addition to the above scenarios, Hyper-V also supports the use of VLANs and VLAN IDs with the virtual network switch and virtual network adapters. Hyper-V leverages 802.1q VLAN trunking to achieve this objective. To utilize this functionality, a virtual network switch must be created on the host and bound to a physical network adapter that supports 802.1q VLAN tagging. VLAN IDs are configured in two places:

·         The virtual network switch itself which sets the VLAN ID the parent partition’s virtual network adapter will use

·         The virtual network adapter of each guest which will sets the VLAN ID the guest will use

 

The diagram below illustrates an example of using a single physical NIC in the host which is connected to an 802.1q trunk on the physical network carrying three VLANs (5, 10, 20). The design objective in this example are:

·         An 802.1q trunk carrying 3 VLANs (5, 10, 20) is connected to a physical adapter in the host

·         A single virtual switch is created and bound to the physical adapter

·         The VLAN ID of the virtual switch is configured to 5 which would allow the virtual NIC in the parent to communicate on VLAN 5

·         The VLAN ID of the virtual NIC in Child Partition #1 is set to 10 allowing it to communicate on VLAN 10

·         The VLAN ID of the virtual NIC in Child Partition #2 is set to 20 allowing it to communicate on VLAN 20

 

The expected behavior is that there is a single virtual switch, the parent and two children can only talk on their respective VLANs, and they can’t talk to eachother. 

 

 

Ok, at this point I'm honestly impressed with the dedication Microsoft has shown for interop in the past couple years. Ever wonder how to get Macs working on your Windows network? Ever want to have your *nix boxes authenticating with Active Directory? This is for you.

The December 2008 issue of TechNet
Magazine
is now available online. And
it's filled with information about interop.

Find out how to integrate Linux clients
with Active Directory, Manage Macs in
a Windows environment, and more.

Since it's October 1st, I thought this may be a timely post. Not-so-coincidentally, I'm one of the authors in this issue. :-)  (please forgive the shameless self-promotion)

Virtualization: An Introduction to Hyper-V in Windows Server 2008

The introduction of Hyper-V makes virtualization an even more compelling solution for IT environments. Get an overview of today’s virtualization market and see how Hyper-V improves the manageability, reliability, and security of virtualization Rajiv Arunkundram

Virtualization: Manage Your Virtual Environments with VMM 2008

System Center Virtual Machine Manager provides a consolidated interface for managing your virtual infrastructure. The latest version adds support for Windows Server 2008 Hyper-V, as well as for VMware virtual machines. Explore the new features and get an overview of using VMM to centralize your management tasks. Edwin Yuen

Virtualization: Getting Started with Microsoft Application Virtualization

Microsoft Application Virtualization (App-V) allows you to deliver virtualized desktops to client systems throughout your organization. This simplifies system management and liberates employees from their desktops. Take a close look at how App-V works and discover how you can deploy it in your organization. Anthony Kinney

Virtualization: Achieving High Availability for Hyper-V

Consolidating servers onto fewer physical machines has many advantages, but it is extremely important that you plan for your systems to be highly available. Here’s a guide to using Windows Server 2008 Failover Clustering to bring high availability to your Hyper-V virtual machines. Steven Ekren

Virtualization: Backup and Disaster Recovery for Server Virtualization

Virtualization brings significant changes to disaster recovery. Here’s an introduction to how the Microsoft virtualization platform factors into your disaster recovery plan, as well as a deeper look into backup and restore options and considerations for Windows Server 2008 Hyper-V. Adam Fazio

Virtualization: Essential Tools for Planning Your Virtual Infrastructure

Is your infrastructure ready for virtualization? The Microsoft Assessment and Planning Toolkit, a network-wide infrastructure assessment tool, can help you better understand your IT infrastructure and determine whether your systems are ready for upgrade or migration to a variety of technologies, including virtualization. Jay Sauls and Baldwin Ng
Columns
From the Editor: It’s a Virtual(ized) World
Joshua Hoffman
Letters: Readers Speak Out
Toolbox: New Products for IT Pros
Greg Steen
SQL Q&A: Large Transaction Logs, When to Use Repair, and More
In this installment, Paul Randal answers questions about backing up and restoring, looks at the differences between log shipping and database mirroring, and explains why the Repair function should only be used as a last resort. Paul S. Randal
Utility Spotlight: Offline Virtual Machine Servicing Tool
Virtual machines that are stored offline don’t automatically receive the necessary updates to keep them safe and compliant. This, in turn, can pose a risk to your entire IT environment. Find out how the free Offline Virtual Machine Servicing Tool lets you automate the process of updating virtual machines. Peter Skjøtt Larsen and Suveen Kumar Reddy Vuppala
Windows PowerShell: The Power of Profiles
Ever wish Windows PowerShell would launch with a work environment tailored to your needs? Don Jones demonstrates how you can use profiles to customize the Windows PowerShell shell. Don Jones
Hey, Scripting Guy!: Famous Last Words
The Scripting Guys discuss Socrates and revisit the topic of querying an XML file . This time, however, the XML file is structured so that rather than using child nodes, additional property values are configured as attributes. The Microsoft Scripting Guys
The Desktop Files: Customizing Windows Deployment Services
Wes Miller delves into Windows Deployment Services, showing you how you can customize and configure WDS to meet the needs of your organization. Wes Miller
Security Watch: Revisiting the 10 Immutable Laws of Security, Part 1
It's been about 8 years since "The 10 Immutable Laws of Security" were first published, and a lot has changed since then. This month, Jesper Johansson kicks off a three-part series in which he analyzes the laws from today's perspective to see if they still hold true. Jesper M. Johansson
Field Notes: High-Capacity Color Bar Code
Gavin Jancke has developed a new bar code, using colors and triangles, that has much higher data capacity than traditional black and white bar codes. Take a closer look at these high-capacity color barcodes. Gavin Jancke
Windows Confidential: Work Harder, Not Smarter
Raymond Chen looks at the skewed relationship bugs have to errors, and explains why it's important that programmers suffer as well as give results. Raymond Chen

(last updated 9/26/08 - THIS LIST IS NO LONGER BEING MAINTAINED - please check TechNet for the latest proudct documenation) 

My current project involves being the only dedicated technical resource on the Virtualization RDP Team. While this is fun, it's also pushes the limits of my organizational skills (if you can call them that). Maybe the most time consuming daily activity is researching and dispensing information both internally to MS folks and to RDP customers and partners. I thought it would be useful to organize and maintain this list of resources online. Particularly with first and second revision products, such as Hyper-V & SCVMM, formalized documentation is slow to trickle out, but the closer to RTM we get the faster it comes.

These resources are not to help form an opinion or make a decision, they are focused on helping people with planning, development, and deployment of their Microsoft Virtualization initiatives.

Please let me know of anything valuable I'm not aware of, broken links, etc.

Web Sites

Microsoft.com/Virtualization - Resources

Microsoft.com/WindowsServer2008 - Virtualization and Server Consolidation

TechNet Library - Hyper-V

NEW: Hyper-V Planning and Deployment Guide

TechNet Library - Windows Server 2008

System Center Virtual Machine Manager 2008 Beta site

TechNet - System Center Virtual Machine Manager 2007

Failover Clustering Resource Center

Posts / Articles / Whitepapers

Step-by-Step Guide to Getting Started with Hyper-V

Server Core Installation Option of Windows Server 2008 Step-By-Step Guide

Performance Tuning Guidelines for Windows Server 2008

Infrastructure Planning and Design Guide

MSDN and TechNet Powered by Hyper-V

MS IT Showcase: Identifying Server Candidates for Virtualization

Virtualization Strategy Provides Tools, Processes, and Compliance Capabilities to Enhance Business Support and Drive Adoption

TechNet Magazine October 2008: Virtualization

   Clustering & HA

   Step-by-Step Guide for Testing Hyper-V and Failover Clustering

   Failover Cluster Step-by-Step Guide: Configuring a Two-Node File Server Failover Cluster

   Building a Host Cluster with Hyper-V Beta 1

   HYPER-V QUICK MIGRATION & VMWARE LIVE MIGRATION PART 1...

   SNW Demo: Windows Server 2008 Core, Hyper-V and Failover Clustering - with screenshots

   Storage & Virtual Disks

   Storage options for Windows Server 2008 Hyper-V

   More on Storage Options for Windows Server 2008 Hyper-V

   Boot from SCSI in Virtual Server vs. Boot from IDE in Windows Server virtualization

   Backups

   Backup and Disaster Recovery for Server Virtualization

   Symantec Backup Exec for Windows available with Hyper-V support

   Interim Backup Solution for Hyper-V

   Invoking diskshadow to back up a Virtual Machine from a Hyper-V Host

   VM Snapshots

   Virtual Machine Snapshotting under Hyper-V

   Virtual Machine Snapshots with Hyper-V

   Getting Undo Functionality with Hyper-V Snapshots

   Hyper-V and Snapshots Part 1 and Part 2

   Dev

   PowerShell Management Library for Hyper-V

   Creating an awesome developer sandbox using Hyper-V (Part 1)

   Workloads & Applications

   Active Directory in Hyper-V environments, Part 1 , Part 2, Part 3

   Exchange 2007: To Hyper-V or not to Hyper-V?

Blogs

Virtualization Team Blog

Windows Server Team Blog

HyperVoria - Hyper-V blog w/ forums

Cheng - SCVMM Program Manager

Ben Armstrong - virtual_pc_guy

Jose Barreto - Storage Architect

Rakeshm - SCVMM program manager

Robert Larson - MCS Architect

Mike Sterling - Hyper-V PM

Communities

TechNet Forums - Virtualization / Hyper-V

TechNet Forums - Virtual Machine Manager

Events

getVIRTUALnow - Register for a Microsoft Virtualization Launch event

Virtualization Congress 2008

Microsoft TechEd

Microsoft Management Summit

Webcasts/Podcasts

TechNet Edge - Virtualization

Transitioning to Windows Virtualization

TechNet Webcast: High Availability with Hyper-V (Level 300)

TechNet Webcast: A 360 View Inside the Virtual World (Level 200)

TechNet Webcast: Windows Server Virtualization Under the Hood (Level 200)

TechNet Webcast: Assess Your Server IT Infrastructure for Windows Server 2008 Migration and Virtualization (Level 300)

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

TechNet Webcast: Using Virtual Machine Manager and Windows PowerShell to Deploy HP Windows Server 2008 Academy Labs (Level 300)

Downloads

Hyper-V RTM

Release Notes for Hyper-V

System Center Virtual Machine Manager 2008 Beta

Update for SCVMM 2008 Beta to work with Hyper-V RC1 & RTM

Linux Integration Components for Hyper-V

Microsoft Assessment and Planning Solution Accelerator

Virtualization ROI Tool

VMC to Hyper-V Import Tool Available

Hyper-V Updates

KB956710 - Hyper-V update : 24 proc et 192 VM possible

KB956589 - Resolve potential issues when you manage Hyper-V with SCVMM

KB956774 - Resolve the scenario where a BITS client cannot handle files that have paths that contain the volume GUID in Windows Server 2008.

KB956697 - Resolve an issue in which the Hyper-V Volume Shadow Copy Service (VSS) does not back up virtual machines properly

KB951308 - Increased functionality and virtual machine control in the Windows Server 2008 Failover Cluster Management console for the Hyper-V role

KB953828 - The NLB host does not converge as expected on Windows Server 2008 Hyper-V virtual machines

KB953585 - Error message when you try to start a Hyper-V virtual machine on a Windows Server 2008 computer that uses the NUMA architecture

KB950182 - A computer that is running an x86-based version of Windows Server 2008 or an x86-based version of Windows Vista may use fewer processors than expected if the number of cores on a socket is not a power of 2

I was browsing the blogoshpere today and ran across some posts that erked me. So I emailed the below to Bink over at HyperVoria and he posted it, and I figured I may as well post it too.

The Virtualization RDP (Microsoft Rapid Deployment Program) has over 100 customers running Hyper-V & SCVMM 2008 in production. Some of these are very large enterprises. The evidence produced from these deployments will be available at the Virtualization Launch event. https://www.getvirtualnow.com/main.aspx

 

A couple early public case studies

One question that bubbles up around any product’s v.1 RTM is “is it (Hyper-V) ready for the enterprise”? In addition to the case studies produced by RDP program, here are just a couple examples if you’re ever faced with this question, or if you’re just curious about how far Hyper-V can be pushed.

·         Collectively, the TechNet and MSDN websites handle over 4 million hits per month and have been running 100% on Hyper-V since April 2008. Read about the implementation at Microsoft.com Operations Virtualizes MSDN and TechNet on Hyper-V.

·         Microsoft.com is one of the heaviest traffic websites on the internet, at 15,000 requests per second, 1.2 billion page views per month, and 280M worldwide unique users per month as well as supporting ~5000 content contributors from within the company. On June 5th the Operations Team turned up a full sixteen VM cluster hosting www.microsoft.com on Hyper-V. Read more at Microsoft.com Powered by Hyper-V

Here's a simple script for moving mailboxes, I talked about how to schedule an Exchange 2007 script in the last post. Here's what it does:

  • Reads user aliases from a text file in the local directory (MoveMbx1.txt)
  • Moves the mailboxes to a specified Server & Mailbox Store using 10 threads and suppressing the annoying "are you sure?" prompt
  • Puts today date in a variable in format YYYYMMDD
  • Get Exchange Migration Logs that have the above date in their name
  • Emails the logs in plain text

Yes, we could certainly do more sophisticated things, such as find the smallest Mailbox Store and move users there, or format the XML logs better, but hey, I ran out of time. :-)  Just copy the below to a .ps1 file.

 

 

#############################
#                           #
#  Exchange 2007 Migration  #
#  Move-mailbox script      #
#  Date & Author            #
#                           #
#############################

# NOTE: to run PowerShell scripts, you need to set the PS execution poloicy "set-executionpolicy unrestricted"

 

# load the list of users - this must be 1 user alias per line
# the user list file must be in the same directory as this script

 

$users = get-content MoveMbx1.txt

# move em to a specific target database using 10 threads

$users | move-mailbox -TargetDatabase "MailboxServer\StorageGroup01\MailboxStore01" -MaxThreads 10 -confirm:$false

 

# put today's date in a variable

$date=get-date -uformat "%Y%m%d"

 

# read today's migration log and store it as $EMailBody

$EmailBody = get-content "C:\Program Files\Microsoft\Exchange Server\Logging\MigrationLogs\*$date*.xml"

 

# when done, send us an email with the log text

$SmtpClient = new-object system.net.mail.smtpClient
$MailMessage = New-Object system.net.mail.mailmessage
$SmtpClient.Host = "smtpserver.domain.com"
$mailmessage.from = ("<emailaddress>@domain.com")
$mailmessage.To.add("<emailaddress>@domain.com")
$mailmessage.Subject = “MoveMbx1.ps1 script has completed”
$mailmessage.Body = $EmailBody
$smtpclient.Send($mailmessage)

 

 

Because this information was so unbelievably hard to track down I thought I'd post this. This is so strange to me, I mean, isn't the idea of most scripting to run jobs unattended at specific times? Whew!

Basically, the process is you have to call powershell.exe, then load the Exchange extensions, then pass it the command that calls the script. You're supposed to be able to use -noexit so you can watch it run, and call exshell.psc1 directly via the run line -psconsolefile "C:\Program Files\Microsoft\Exchange Server\Bin\exshell.psc1", but I could not get it work using either of these. SO, we run the task starting in the Exchange bin directory as below.

Run: powershell -psconsolefile exshell.psc1 -command "& {c:\yourscript.ps1}"

Start in: "C:\Program Files\Microsoft\Exchange Server\Bin"

Run as: <account with rights to do whatever is in your script>

 

Adam’s unofficial Exchange 2003 troubleshooting tips

 

All items are listed in the order in which I usually reference/perform them. This is general guidance based on my 8 years working with Exchange, not prescriptive Microsoft Guidance.

 

As always, for the fastest, most methodical approach to fixing a problem and finding the cause, call Premier Support! Those guys do nothing but troubleshoot all day & night, we’ll never be as good as them!

 

Exchange troubleshooting

 

·         Always consider the most basic things first - networking, name-resolution, AD, services running, databases mounted, etc.

·         Turn on Diagnostic logging for the suspect component

·         Look in the Event Log (Exchange uses the Application Log) (lookup events in the KB or eventide.net, search the Exchange Newsgroups or your favorite forum)

·         Setup a Perfmon to capture historical & real-time performance data (see Troubleshooting Microsoft Exchange Server Performance doc)

·         Cmd-line: netstat -na  to view all active connections to/from the server

·         Look at mail-flow using Message Tracking Center in ESM - for example look at the last hour of message flow, is it extremely higher than usual?

·         Look at active POP/IMAP/MAPI sessions via Virtual Servers in ESM & EXMON

·         Most client performance problems are Exchange being Disk I/O bound or Memory bound. CPU & Network are very very rarely the cause.

·         Use ProcessExplorer by sysinternals to see a particular process and/or thread’s CPU, disk I/O, network sessions, etc.

 

Documentation  (there are dozens more, but these I use most often)

 

Microsoft Exchange Server 2003 Technical Reference Guide

http://www.microsoft.com/downloads/details.aspx?FamilyID=3768246d-c9ed-45d8-bece-a666143cba4e&DisplayLang=en

 

Troubleshooting Microsoft Exchange Server Performance

http://www.microsoft.com/downloads/details.aspx?FamilyId=8679F6BD-7FF0-41F5-BDD0-C09019409FC0&displaylang=en

 

Microsoft Exchange Server 2003 Transport and Routing Guide

http://www.microsoft.com/downloads/details.aspx?familyid=C092B7A7-9034-4401-949C-B29D47131622&displaylang=en

 

Microsoft Exchange Server 2003 High Availability Guide

http://www.microsoft.com/downloads/details.aspx?familyid=FE6A573C-11FF-4CB6-BE2E-9B6F2164C54A&displaylang=en

 

Microsoft Exchange Server 2003 Performance and Scalability Guide