implantação ovf no ambiente VMWare com propriedade guestinfo

implantação ovf no ambiente VMWare com propriedade guestinfo

Estou tentando implantar uma VM usando a configuração ovf e meu objetivo é passar o valor-chave fornecido pelo usuário no ambiente OVF para a VM usando o vmware guestinfo. A seguir estão as configurações/atributos que adicionei ao meu arquivo ovf

<ProductSection ovf:required="false">
            <Info>Virtual Appliance</Info>
            <Property ovf:userConfigurable="true" ovf:type="string"
                      ovf:key="guestinfo.hello" ovf:value="">
              <Label>hello</Label>
              <Description>enter some string</Description>
            </Property>
</ProductSection>
....
<VirtualHardwareSection ovf:transport="com.vmware.guestInfo">
....

Depois de implantar a VM, posso verificar a propriedade no ambiente OVF em Opções de vApp da VM. Aqui está o que eu vejo

<?xml version="1.0" encoding="UTF-8"?>
<Environment
 xmlns="http://schemas.dmtf.org/ovf/environment/1"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:oe="http://schemas.dmtf.org/ovf/environment/1"
 xmlns:ve="http://www.vmware.com/schema/ovfenv"
 oe:id=""
 ve:vCenterId="vm-11260">
<PlatformSection>
  <Kind>VMware ESXi</Kind>
  <Version>6.0.0</Version>
  <Vendor>VMware, Inc.</Vendor>
  <Locale>en</Locale>
</PlatformSection>
<PropertySection>
     <Property oe:key="guestinfo.hello" oe:value="world"/>
</PropertySection>
<ve:EthernetAdapterSection>
  <ve:Adapter ve:mac="00:50:56:b2:d2:8a" ve:network="VLAN1804- 
10.22.162.0/25" ve:unitNumber="7"/>
  <ve:Adapter ve:mac="00:50:56:b2:83:ea" ve:network="VLAN1804- 
10.22.162.0/25" ve:unitNumber="8"/>
</ve:EthernetAdapterSection>
</Environment>

Finalmente, quando eu faço login na caixa e tento obter a propriedade guestinfo usando vmtoolsd cmd

vmtoolsd --cmd "info-obter olá"

estou obtendo

"Nenhum valor encontrado"

Preciso ajudar a depurar esse problema. Não tenho certeza se estou faltando alguma coisa na minha configuração do OVF. Desde já, obrigado. Eu aprecio sua ajuda!

Responder1

Acho que não há uma maneira direta de obter a chave especificamente, mas consigo executar vmtoolsd --cmd "info-get guestinfo.ovfenv"na minha caixa e a saída é

<?xml version="1.0" encoding="UTF-8"?>
<Environment
 xmlns="http://schemas.dmtf.org/ovf/environment/1"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:oe="http://schemas.dmtf.org/ovf/environment/1"
 xmlns:ve="http://www.vmware.com/schema/ovfenv"
 oe:id=""
 ve:vCenterId="vm-xxxx">
<PlatformSection>
  <Kind>VMware ESXi</Kind>
  <Version>6.0.0</Version>
  <Vendor>VMware, Inc.</Vendor>
  <Locale>en</Locale>
</PlatformSection>
<PropertySection>
     <Property oe:key="guestinfo.hello" oe:value="world"/>
</PropertySection>
<ve:EthernetAdapterSection>
  <ve:Adapter ve:mac="00:50:56:b2:d2:8a" ve:network="VLAN1804- 
xxx.xxx.xxx.0/25" ve:unitNumber="7"/>
  <ve:Adapter ve:mac="00:50:56:b2:83:ea" ve:network="VLAN1804- 
xxx.xxx.xxx.0/25" ve:unitNumber="8"/>
</ve:EthernetAdapterSection>
</Environment>

que é o que vejo no ambiente OVF para o vm no vcenter. Supondo que esta seja uma maneira de obter o valor-chave da VM usando vmtools

informação relacionada