TFS Lab Management with multiple SCVMM servers

The ALM Rangers recently received a user request to clarify the following concept: “with Team Foundation Server 2013 you can configure a different SCVMM server for each team project collection”. This blog post, created by Richard Fennell, pulls together the discussions with Mathias Olausson, Vijay Machiraju and Richard Fennell from the ALM Rangers Lab Management guidance team.

TFS Lab Management can make use of System Center Virtual Machine Manager (SCVMM) to control Hyper-V based virtual machines.

image If you are not using Hyper-V, i.e: you have ‘Standard environments’ using physical server, VMware or any cloud hosted VMs, then there is no need for SCVMM.

In most scenarios there will only be one SCVMM server involved. This server may be providing VM management for a number of Hyper-V servers in various host groups, but not all of the host groups need to be associated with TFS Lab Management .

Usually TFS is configured to use a single SCVMM host  via the TFS administration console. In this scenario this SCVMM server will be used for the entire TFS server i.e. all the project collections will inherit that SCVMM server.

However, it is conceivable that your organisation might have multi SCVMM hosts and you wish to use different ones for different TFS Team Project Collections. To configure this you have to use the TfsLabConfig command tool.

    TfsLabConfig settings /collection:<team project collection Url>
[[/scvmmservername:<vmm server name>]
[/ipblock:<range of ip addresses allocated for network isolation>
[/dnssuffix:<dns suffix for network isolation>]
[/noprompt] [/Force]]

Using this command it is possible to provide separate SCVMM servers for each TPC. However you must be careful if you are doing this. If you have two or more SCVMM servers that are both configured to be used by Lab Management with a specific Team Foundation Server, then each SCVMM server must be configured to use a unique MAC range. To configure the MAC range, from the Virtual Machine Manager Administration Console, in the lower-left navigation window choose Administration, choose Networking and then open Global Static MAC Address Range.

imageFor more information about how to configure the MAC range, see the following Microsoft Web site. This avoid the same MAC address being set for two different VMs.

Irrespective of if you have one or more SCVMM server you should always have a separate SCVMM host group and library share for each TFS Team Project Collections.

For more tips on Lab Management see the ALM Rangers Lab Management Guide. An update v3.1, covering the above information, will be released shortly.

Author: Willy-P. Schaub

I’m a program manager with the Visual Studio Team Services group. I’m responsible for the ALM Ranger program and other interesting work streams. We provide professional guidance and gap-filling solutions to the developer community for Visual Studio. Come directly to me if you need help with missing guidance or features for Visual Studio Team Services. Since the mid-’80s, I’ve been striving for simplicity and maintainability in software engineering. Reach me on LinkedIn, Twitter @wpschaub, or blog