Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

As per the title, really. Haven't been able to find a way to create an SCCM 2007 R3 (System Center Configuration Manager) that will list all Windows 2008 and 2008 R2 systems with the Hyper-V role installed. Any help would be appreciated.

share|improve this question
up vote 2 down vote accepted

Probably the easiest way to get a simple list would be to take advantage of one of the built-in reports, such as the "Services - Computers running a specific service" report. You can then just input a service common to Hyper-V hosts, such as "Hyper-V Virtual Machine Management" (note that I know more about SCCM than Hyper-V this might not be the right service to look for, I just got it from looking at the running services report from a few of our Hyper-V servers).

You should be able to access this through SCCM's web reports with a URL like:


Alternatively if you're trying to create a collection query, the equivalent WQL would be:

select SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.Name, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.Client
from  SMS_R_System
inner join SMS_G_System_SERVICE on SMS_G_System_SERVICE.ResourceID = SMS_R_System.ResourceId
where SMS_G_System_SERVICE.DisplayName like "Hyper-V Virtual Machine Management"
share|improve this answer
Thanks very much, that answers my question! – John Röthlisberger Feb 8 '11 at 17:39

If you just need to know which machines are virtuals, from

select SMS_R_System.Name, SMS_G_System_COMPUTER_SYSTEM.Manufacturer, SMS_R_System.SMSAssignedSites, SMS_R_System.IPAddresses, SMS_R_System.IPSubnets, SMS_R_System.OperatingSystemNameandVersion, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.LastLogonUserDomain, SMS_R_System.LastLogonUserName, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.NetbiosName
from  SMS_R_System
inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID = SMS_R_System.ResourceId
where SMS_G_System_COMPUTER_SYSTEM.Manufacturer in ("VMware, Inc.","Microsoft Corporation")
share|improve this answer
Thanks. Unfortunately that doesn't help me, as what I need is the list of physical Hyper-V hosts. – John Röthlisberger Feb 4 '11 at 10:16

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.