1 Reply Latest reply on Jul 5, 2013 5:37 AM by johnrix

    CoresPerSocket

    johnrix Lurker

      Hi all,

       

      I need to build a VM using VMWare Studio and install software that has license restrictions on the number of sockets that are allowed. Specifically, it allows a maximum of 4 sockets. My VMWare Studio profile includes 6 virtual processors, but when I build the system, it exposes these as 6 individual sockets as opposed to any kind of aggregation of cores into fewer sockets. Consequently, the system requirements check in the software installer fails. I've found the following is saved in OVF files created manually through VMWare (note the CoresPerSocket line at the end):

       

            <Item>
              <rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>
              <rasd:Description>Number of Virtual CPUs</rasd:Description>
              <rasd:ElementName>16 virtual CPU(s)</rasd:ElementName>
              <rasd:InstanceID>1</rasd:InstanceID>
              <rasd:ResourceType>3</rasd:ResourceType>
              <rasd:VirtualQuantity>16</rasd:VirtualQuantity>
              <vmw:CoresPerSocket ovf:required="false">4</vmw:CoresPerSocket>
            </Item>
      

       

      but I don't know how to configure my VMWare Studio build profile to do this for me. Has anybody encountered this problem and know a good solution?

       

      Thanks,
      John

        • 1. Re: CoresPerSocket
          johnrix Lurker

          I never found a way to do this within the build profile in advance of building the machine, so as a workaround, I dropped my profile's vCPU count to 4 to meet the license restriction, then altered the CPU configuration via a PostOutputCreation step, along the lines of that posted here: http://communities.vmware.com/thread/431997

           

          My resulting script looks like this:

           

                                          <vadk:Script vadk:name="Virtual Hardware Fix" vadk:enabled="true">
                                          # Avaya specific script that will:
                                          #   Update any vmx-07 entry to vmx-08
                                          #   Rebuild the manifest
                                          # Move to the OVF directory
                                          cd `dirname $1`
                                          # Update Virtual Hardware Type
                                          sed -i -e &quot;s/vmx-07/vmx-08/&quot; $1
                                          # Update the CPU configuration to 8 cores with 4 cores per socket
          sed -i -e &quot;/ResourceType&gt;3&lt;/ {
          N
          s/VirtualQuantity&gt;4/VirtualQuantity&gt;8/
          a\
                  &lt;vmw:CoresPerSocket ovf:required=\&quot;false\&quot;&gt;4&lt;/vmw:CoresPerSocket&gt;
          }&quot; $1
                                          # Rebuild the manifest file
                                          sha=`sha1sum $1 | awk &apos;{print $1}&apos;`
                                          ovf=$(basename $1)
                                          shafile=$(basename $1 .ovf).mf
                                          sed -i -e &quot;s/^SHA1($ovf)=.*/SHA1($ovf)=$sha/&quot; $shafile
                                          </vadk:Script>
          
          

           

          Hopefully somebody may find this helpful!