Status da Função de Porta Personalizada

A plataforma Hyper-V e Hyper-V interface de comutador extensível fornecem a infraestrutura para obter informações de status personalizadas para uma porta de comutador extensível. Essas informações são conhecidas como informações de status do recurso de porta.

Definições de status de recurso personalizado para uma propriedade de porta de comutador extensível Hyper-V são registradas na camada de gerenciamento WMI usando definições de classe MOF (formato de objeto gerenciado). Além dos membros da estrutura que definem os atributos da definição de status do recurso de porta personalizada, a classe MOF também deve conter o seguinte:

  • Uma UUID que identifica exclusivamente a definição de status do recurso de porta personalizada.

  • Um GUID que identifica exclusivamente a extensão de comutador extensível. Esse GUID é declarado como o qualificador ExtensionId da classe MOF e deve corresponder ao valor da entrada NetCfgInstanceId declarada no arquivo INF da extensão.

  • Uma cadeia de caracteres descritiva de nome de classe. O nome do fornecedor deve ser incluído na cadeia de caracteres.

O exemplo a seguir apresenta uma classe MOF para a definição de status de recurso personalizado de uma porta de switch extensível.

#pragma namespace("\\\\.\\root\\virtualization\\v2")

[ Dynamic,
  UUID("DAA0B7CC-74DB-41ef-8354-7002F9FA463E"),
  ExtensionId("5CBF81BE-5055-47CD-9055-A76B2B4E369E"), 
  Provider("VmmsWmiInstanceAndMethodProvider"), 
  InterfaceVersion("1"),
  InterfaceRevison("0"),
  Locale(0x409),
  Description("Fabricam, Inc. port custom feature status description.") : Amended,
  DisplayName("Fabricam, Inc.port custom feature status friendly name.") : Amended]
class Fabrikam_CustomPortData  : Msvm_EthernetPortData {
    [ Read,
       Write,
       WmiDataId(1),
      InterfaceVersion("1"),
      InterfaceRevision("0"),
       Description(
         "The current status of custom feature on this port.") : Amended]
     uint32 CurrentStatus = 0 ;
};

As classes MOF para definição de status de recurso personalizado de uma porta são registradas no repositório CIM (common information model) usando o compilador MOF (Mofcomp.exe). Depois de registrada, a classe MOF pode ser configurada por meio de cmdlets do PowerShell e programas de aplicativo baseados em WMI.

O exemplo a seguir mostra os comandos que devem ser inseridos para registrar um arquivo (Fabrikam_CustomPortData.mof) que contém a classe MOF para uma definição de status de recurso de porta personalizada.

net stop vmms
mofcomp -N:root\virtualization\v2 Fabrikam_CustomPortData.mof
net start vmms

Para obter mais informações sobre como usar o compilador MOF, consulte Compilando um arquivo MOF de driver.

O exemplo a seguir mostra como você pode usar a definição de status do recurso de porta personalizada para obter dados de porta. Neste exemplo, a classe MOF Fabrikam_CustomPortData é usada para obter o status da porta de uma partição Hyper-V chamada "TestVm". A extensão Fabrikam, Inc. está habilitada no vSwitch "TestSwitch" e está retornando 123 como status.

PS C:\> $portData = Get-VMSwitchExtensionPortData -VmName TestVm -FeatureId DAA0B7CC-74DB-41ef-8354-7002F9FA463E
# Output the current value
PS C:\> $portData.Data.CurrentStatus
123

Para obter mais informações sobre como as extensões do comutador extensível gerenciam informações de status do recurso de porta, consulte Gerenciando informações de status do recurso de porta personalizada.