{"id":23,"date":"2018-12-10T10:04:21","date_gmt":"2018-12-10T15:04:21","guid":{"rendered":"https:\/\/blog.markdepalma.com\/?p=23"},"modified":"2019-02-11T07:50:47","modified_gmt":"2019-02-11T12:50:47","slug":"ova-deployment-issues-in-vcenter-6-5","status":"publish","type":"post","link":"https:\/\/blog.markdepalma.com\/?p=23","title":{"rendered":"OVA deployment issues in vCenter 6.5+"},"content":{"rendered":"<p>A team member was recently tasked with deploying a number of OVA templates provided by a vendor. There was difficulty with the OVA deployment failing after sitting on &#8220;Validating&#8221; for a long time. This would usually happen after selecting a compute resource in vCenter. The vendor stated they have seen this numerous times with vCenter 6.5 clients. They advised to remove a host from the cluster and deploy directly to that host. Being a person that cannot accept hacky workarounds I decided to dive into it. We are currently on vCenter 6.7 U1 with 6.5 ESXi U3 hosts. I extracted the OVA and started looking into the OVF XML. Everything looked to be formatted correctly, but I still felt vCenter wasn&#8217;t liking something in the XML. I began troubleshooting by commenting out entire <strong>&lt;ProductSections&gt;<\/strong> elements of the XML. Commenting out the first set of options did not work, but the second did. Looking closer at the second showed a very long <strong>&#8216;ValueMap&#8217;<\/strong> string for the time zone selector in the <strong>ovf:qualifiers<\/strong> attribute. The most likely scenario was this this causing the issue with its length and complexity. I decided to clear out the entire\u00a0<strong>ovf:qualifiers<\/strong> attribute (empty quotes) and hard code the value to be <strong>&#8216;America\/New_York&#8217;<\/strong>. I then saved the OVF, initiated a new deployment (selecting all VMDKs, the OVF, but excluding the MF file as that would cause a checksum error), and hitting next&#8230; VOILA! I was able to successfully deploy this OVF without any errors. I also performed the same action for all of the other vendor templates.<\/p>\n<p>Original time zone property:<a href=\"https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-31 size-full\" src=\"https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1.jpg\" alt=\"\" width=\"1452\" height=\"73\" srcset=\"https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1.jpg 1452w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1-300x15.jpg 300w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1-768x39.jpg 768w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1-1024x51.jpg 1024w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneOrig-1-624x31.jpg 624w\" sizes=\"auto, (max-width: 1452px) 100vw, 1452px\" \/><\/a><\/p>\n<p>Modified time zone property:<a href=\"https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-35 size-full\" src=\"https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod.jpg\" alt=\"\" width=\"1041\" height=\"93\" srcset=\"https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod.jpg 1041w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod-300x27.jpg 300w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod-768x69.jpg 768w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod-1024x91.jpg 1024w, https:\/\/blog.markdepalma.com\/wp-content\/uploads\/2018\/12\/TimeZoneMod-624x56.jpg 624w\" sizes=\"auto, (max-width: 1041px) 100vw, 1041px\" \/><\/a><\/p>\n<p>I didn&#8217;t dig further, but I imagine the vendor&#8217;s standalone host hack worked because the web GUI on the host has different code (maybe missing a bug) than vCenter. I&#8217;d also like to note that this could be accomplished by using the <strong>Import-VApp<\/strong> PowerCLI PowerShell cmdlet (without modifying any files), but you&#8217;d also have to create a\u00a0<strong>OvfConfiguration<\/strong>\u00a0hashtable object to pass as a parameter which may be more work than it is worth.<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A team member was recently tasked with deploying a number of OVA templates provided by a vendor. There was difficulty with the OVA deployment failing after sitting on &#8220;Validating&#8221; for a long time. This would usually happen after selecting a compute resource in vCenter. The vendor stated they have seen this numerous times with vCenter [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[61],"tags":[10,11,12,13,14,9,15],"class_list":["post-23","post","type-post","status-publish","format-standard","hentry","category-vmware","tag-esx","tag-esxi","tag-ova","tag-ovf","tag-vcenter","tag-vmware","tag-xml"],"_links":{"self":[{"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=\/wp\/v2\/posts\/23","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=23"}],"version-history":[{"count":15,"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=\/wp\/v2\/posts\/23\/revisions"}],"predecessor-version":[{"id":124,"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=\/wp\/v2\/posts\/23\/revisions\/124"}],"wp:attachment":[{"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=23"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=23"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.markdepalma.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=23"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}