{"id":14421,"date":"2026-10-03T23:12:09","date_gmt":"2026-10-03T21:12:09","guid":{"rendered":"https:\/\/irg-net.com\/?p=14421"},"modified":"2026-10-04T00:02:29","modified_gmt":"2026-10-03T22:02:29","slug":"vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator","status":"publish","type":"post","link":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/","title":{"rendered":"VCF 9.1 \u2192 9.1.1: &#8220;Failed to upload NSX bundle&#8221; in the NSX Upgrade Coordinator"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png?resize=300%2C300&#038;ssl=1\" alt=\"\" class=\"wp-image-14405\" style=\"width:246px;height:auto\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png?w=300&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png?resize=150%2C150&amp;ssl=1 150w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Today I wrote a field report from a VMware Cloud Foundation 9.1 to 9.1.1 maintenance upgrade: the order that matters, the error that stopped the NSX Manager upgrade, how to prove the bundle was not the problem, and what got the upgrade moving again.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Abstract<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">In VCF 9.1.1 the NSX Manager upgrade is started from VCF Operations (Build \u2192 Lifecycle), not from the NSX UI \u2013 and only after the Fleet Lifecycle components and SDDC Manager are already on 9.1.1.<\/li>\n\n\n\n<li style=\"font-size:15px\">During the NSX step the upgrade failed with <strong>\u201cNSX Upgrade Coordinator \u2013 Failed to upload NSX bundle\u201d<\/strong>. The SDDC Manager log showed an <strong>HTTP 500<\/strong> returned by one NSX Manager node on POST \/api\/v1\/upgrade\/bundles.<\/li>\n\n\n\n<li style=\"font-size:15px\">The bundle on SDDC Manager was intact (size and SHA-256 matched), disk space was fine, and the NSX cluster was STABLE \u2013 so the problem was on the NSX Manager side.<\/li>\n\n\n\n<li style=\"font-size:15px\">A rolling reboot of the three NSX Managers, one at a time and with a cluster-status check in between, cleared it. The retried upgrade ran through.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Prerequisites: Everything above NSX must already be on 9.1.1<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Before touching NSX, be clear about where you are in the upgrade chain. VCF 9.1.1 is a maintenance release, and the patch order is dependency-driven. The NSX Manager step can only start once the management plane \u201cabove\u201d it is on 9.1.1:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\"><strong>Fleet Lifecycle<\/strong> (the lifecycle services that drive everything else) \u2013 patched first.<\/li>\n\n\n\n<li style=\"font-size:15px\"><strong>VCF services runtime<\/strong> and the other VCF Management components in the order the release notes dictate (VCF Operations is not patched in parallel with others; Identity Broker and Salt RaaS only after the services runtime; Migration Service Engine only after VCF Automation; patching a Software Depot blocks other patches).<\/li>\n\n\n\n<li style=\"font-size:15px\"><strong>SDDC Manager<\/strong> \u2013 must be on 9.1.1 before any workload- or management-domain component is upgraded.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Only then follow the core domain order: <strong>SDDC Manager \u2192 NSX Manager \u2192 vCenter \u2192 ESX \u2192 NSX Edge\/finalize<\/strong>. Do not use \u201cUpgrade All\u201d before you have complied with these dependencies. In our environment, the Software Depot sync had run, Fleet Lifecycle and the services runtime were upgraded, and SDDC Manager was on 9.1.1:<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"993\" height=\"688\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-1.png?resize=993%2C688&#038;ssl=1\" alt=\"\" class=\"wp-image-14424\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-1.png?w=993&amp;ssl=1 993w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-1.png?resize=300%2C208&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-1.png?resize=768%2C532&amp;ssl=1 768w\" sizes=\"auto, (max-width: 993px) 100vw, 993px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<blockquote class=\"wp-block-quote has-text-color has-link-color wp-elements-1 is-layout-flow wp-block-quote-is-layout-flow\" style=\"color:#019204\">\n<p class=\"wp-block-paragraph\"><em><strong>Tip<\/strong>: <strong>Right after the services runtime update, VCF Operations may show an \u201cupstream connect error or disconnect\/reset before headers\u201d message<\/strong>. In our case this was transient while the nodes rotated and it disappeared on its own after a few minutes. Don\u2019t start fixing things while the platform is still settling.<\/em><\/p>\n<\/blockquote>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"172\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-3.png?resize=1024%2C172&#038;ssl=1\" alt=\"\" class=\"wp-image-14426\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-3.png?resize=1024%2C172&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-3.png?resize=300%2C50&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-3.png?resize=763%2C128&amp;ssl=1 763w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-3.png?w=1341&amp;ssl=1 1341w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Confirmation that the prerequisite is met \u2013 VCF Operations \u2192 Build \u2192 Lifecycle \u2192 VCF Instances \u2192 &lt;instance&gt; \u2192 &lt;management domain&gt; \u2192 Component Versions. SDDC Manager is \u201cOn Target\u201d (9.1.1.0); NSX, vCenter and ESX still show \u201cVersion Drift\u201d, i.e. they are the next in line:<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"431\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-5.png?resize=1024%2C431&#038;ssl=1\" alt=\"\" class=\"wp-image-14428\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-5.png?resize=1024%2C431&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-5.png?resize=300%2C126&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-5.png?resize=766%2C322&amp;ssl=1 766w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-5.png?resize=1536%2C646&amp;ssl=1 1536w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-5.png?w=1693&amp;ssl=1 1693w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Pre-Flight: Set up the backups BEFORE! you start &#8211; and start them again right before NSX<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Do not start the upgrade without working backups of both SDDC Manager and NSX.<\/strong> Both must be configured (target, credentials, schedule) before the first component is patched. A configured schedule is not enough on its own \u2013 the last backup might be hours old or, as in our SDDC Manager case, automatic backups may be disabled altogether.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Recommended routine \u2013 two backup runs per component:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li style=\"font-size:15px\"><strong>First backup start:<\/strong> configure the backup target and trigger a manual backup before you patch the very first component (before Fleet Lifecycle \/ SDDC Manager). This also proves that the target is reachable and the credentials work.<\/li>\n\n\n\n<li style=\"font-size:15px\"><strong>Second backup start:<\/strong> immediately before the NSX Manager upgrade, trigger a fresh manual backup of SDDC Manager  and of NSX again, and check that both finish as \u201cSuccessful\u201d. The state you want to be able to roll back to is the one right before NSX is touched \u2013 SDDC Manager is already on 9.1.1 at that point, and the schedule may not have run since.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Where to do it:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\"><strong>SDDC Manager:<\/strong> Operate \u2192 SDDC Manager \u2192 Backup Settings (SFTP target, then trigger the backup manually). In our case the last backup was successful at 12:56 PM, taken manually because automatic backup was disabled.<\/li>\n\n\n\n<li style=\"font-size:15px\"><strong>NSX Manager:<\/strong> System \u2192 Backup &amp; Restore. Configure the SFTP target and a schedule (every 4 hours in our case), then start a manual backup and wait for \u201cLast backup successful\u201d.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Also check the NSX cluster health<\/strong> \u2013 three managers, cluster STABLE, no unexplained alarms. Our only alarms were remote-logging and license-expiry related, which do not block the upgrade.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"339\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-6.png?resize=1024%2C339&#038;ssl=1\" alt=\"\" class=\"wp-image-14429\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-6.png?resize=1024%2C339&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-6.png?resize=300%2C99&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-6.png?resize=767%2C254&amp;ssl=1 767w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-6.png?resize=1536%2C508&amp;ssl=1 1536w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-6.png?w=1689&amp;ssl=1 1689w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><em><strong><sub>SDDC Manager backup: last backup successful<\/sub><\/strong><\/em><\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"359\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-7.png?resize=1024%2C359&#038;ssl=1\" alt=\"\" class=\"wp-image-14430\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-7.png?resize=1024%2C359&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-7.png?resize=300%2C105&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-7.png?resize=768%2C269&amp;ssl=1 768w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-7.png?resize=1536%2C538&amp;ssl=1 1536w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-7.png?w=1675&amp;ssl=1 1675w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><em><strong><sub>NSX Backup &amp; Restore: SFTP target, every 4 hours, last backup successful.<\/sub><\/strong><\/em><\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"626\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-8.png?resize=1024%2C626&#038;ssl=1\" alt=\"\" class=\"wp-image-14431\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-8.png?resize=1024%2C626&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-8.png?resize=300%2C183&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-8.png?resize=767%2C469&amp;ssl=1 767w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-8.png?w=1304&amp;ssl=1 1304w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\"><em><strong><sub>NSX Appliances: three managers, cluster Stable.<\/sub><\/strong><\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Where to start the NSX upgrade:<\/strong> from VCF Operations, not from the NSX UI. If you open System \u2192 Upgrade in NSX, you get this warning: \u201c<strong>This NSX Manager is managed by VCF Operations. Upgrading NSX through this workflow may impact VCF Operations.<\/strong>\u201d Take it seriously and drive the upgrade from Build \u2192 Lifecycle \u2192 VCF Instances \u2192 &lt;instance&gt; \u2192 &lt;domain&gt; \u2192 Upgrades.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"732\" height=\"816\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-9.png?resize=732%2C816&#038;ssl=1\" alt=\"\" class=\"wp-image-14432\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-9.png?w=732&amp;ssl=1 732w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-9.png?resize=269%2C300&amp;ssl=1 269w\" sizes=\"auto, (max-width: 732px) 100vw, 732px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">The Problem<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The NSX upgrade plan was started from VCF Operations. Shortly after the NSX Upgrade Coordinator step began, the task failed with:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>NSX Upgrade Coordinator - Failed to upload NSX bundle.\nReview the LCM log files ... (127.0.0.1:\/var\/log\/vmware\/vcf\/lcm ...)\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #6CB6FF\">NSX<\/span><span style=\"color: #ADBAC7\"> Upgrade Coordinator <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\"> Failed to upload <\/span><span style=\"color: #6CB6FF\">NSX<\/span><span style=\"color: #ADBAC7\"> bundle.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Review the <\/span><span style=\"color: #6CB6FF\">LCM<\/span><span style=\"color: #ADBAC7\"> log files <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> (<\/span><span style=\"color: #6CB6FF\">127.0<\/span><span style=\"color: #ADBAC7\">.0.1:<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">var<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">log<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vmware<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">lcm <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The message tells you where to look, but not what is wrong. \u201cFailed to upload\u201d can mean several quite different things, so the first job is to narrow it down.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Diagnosis<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">On the SDDC Manager appliance the lifecycle logs live in \/var\/log\/vmware\/vcf\/lcm\/. Note that there is no plain lcm.log \u2013 the useful ones are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">lcm-debug.log \u2013 detailed trace, where the real error is<\/li>\n\n\n\n<li style=\"font-size:15px\">lcm-activity.log \u2013 API calls, good for the timeline<\/li>\n\n\n\n<li style=\"font-size:15px\">lcm.err \u2013 errors; in our case only a harmless Spring shutdown trace and syslog noise<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Filtering lcm-debug.log for errors and warnings around the time of the failure:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>cd \/var\/log\/vmware\/vcf\/lcm\ngrep -E \"ERROR|WARN\" lcm-debug.log | grep \"&lt;time window of the failure>\"\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">cd <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">var<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">log<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vmware<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">lcm<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">grep <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">E <\/span><span style=\"color: #96D0FF\">&quot;ERROR|WARN&quot;<\/span><span style=\"color: #ADBAC7\"> lcm<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">debug.log <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> grep <\/span><span style=\"color: #96D0FF\">&quot;&lt;time window of the failure&gt;&quot;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">This returns a lot of noise. None of the following is related to the failure:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>ERROR ... UpgradeServiceImpl getResourceName ...] Resource type is unknown NSX_T_PARALLEL_CLUSTER\nERROR ... BundleManifestHandler registerDedupBundles ...] Error occurred filtering supportedSoftwareType\nERROR ... VCenterBundleMetadataValidator ...] Error verifying signature for upgradeInfo file\n  \/nfs\/vmware\/vcf\/nfs-mount\/bundle\/depot\/local\/tmpDir\/upgrade_info.xml error INVALID_SIGNATURE\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> UpgradeServiceImpl getResourceName <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\">] Resource <\/span><span style=\"color: #6CB6FF\">type<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">is<\/span><span style=\"color: #ADBAC7\"> unknown <\/span><span style=\"color: #6CB6FF\">NSX_T_PARALLEL_CLUSTER<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> BundleManifestHandler registerDedupBundles <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\">] Error occurred filtering supportedSoftwareType<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> VCenterBundleMetadataValidator <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\">] Error verifying signature <\/span><span style=\"color: #F47067\">for<\/span><span style=\"color: #ADBAC7\"> upgradeInfo <\/span><span style=\"color: #F69D50\">file<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">nfs<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vmware<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">nfs<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">mount<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">depot<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">local<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">tmpDir<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">upgrade_info.xml error <\/span><span style=\"color: #6CB6FF\">INVALID_SIGNATURE<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The relevant block starts with the upload failure of the NSX upgrade element (timestamps and IDs shortened, host names replaced):<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>2026-10-03T11:43:49.611Z ERROR vcf_lcm ... upgradeId=\"&lt;upgrade-id>\"\n  resourceType=\"NSX_T_PARALLEL_CLUSTER\" ... class=\"c.v.e.s.l.p.i.nsxt.NsxtPrecheckUtil\"\n  method=\"uploadPayload\"] Payload upload failed:\n  org.springframework.web.client.HttpServerErrorException$InternalServerError\n  \n \n2026-10-03T11:43:49.611Z ERROR vcf_lcm ... class=\"c.v.e.s.l.p.i.nsxt.NsxtUpgradeUtil\"\n  method=\"handleNsxtExceptions\"] Handling NSX Exception\norg.springframework.web.client.HttpServerErrorException$InternalServerError:\n  500 Internal Server Error on POST request for\n  \"https:\/\/&lt;nsx-manager-02>\/api\/v1\/upgrade\/bundles\": &#91;no body&#93;\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #6CB6FF\">2026<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">10<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #FF938A; font-style: italic\">03T11<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">43<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">49.<\/span><span style=\"color: #FF938A; font-style: italic\">611Z<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> vcf_lcm <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> upgradeId<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;&lt;upgrade-id&gt;&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  resourceType<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;NSX_T_PARALLEL_CLUSTER&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">class=<\/span><span style=\"color: #96D0FF\">&quot;c.v.e.s.l.p.i.nsxt.NsxtPrecheckUtil&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  method<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;uploadPayload&quot;<\/span><span style=\"color: #ADBAC7\">] Payload upload failed:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  org.springframework.web.client.HttpServerErrorException<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">InternalServerError<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">2026<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">10<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #FF938A; font-style: italic\">03T11<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">43<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">49.<\/span><span style=\"color: #FF938A; font-style: italic\">611Z<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> vcf_lcm <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">class=<\/span><span style=\"color: #96D0FF\">&quot;c.v.e.s.l.p.i.nsxt.NsxtUpgradeUtil&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  method<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;handleNsxtExceptions&quot;<\/span><span style=\"color: #ADBAC7\">] Handling <\/span><span style=\"color: #6CB6FF\">NSX<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">Exception<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">org.springframework.web.client.HttpServerErrorException<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">InternalServerError:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #6CB6FF\">500<\/span><span style=\"color: #ADBAC7\"> Internal Server Error on <\/span><span style=\"color: #6CB6FF\">POST<\/span><span style=\"color: #ADBAC7\"> request <\/span><span style=\"color: #F47067\">for<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #96D0FF\">&quot;https:\/\/&lt;nsx-manager-02&gt;\/api\/v1\/upgrade\/bundles&quot;<\/span><span style=\"color: #ADBAC7\">: &#91;no body&#93;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The stack trace right below it shows that the call went through the NSX retry helper, i.e. it had already been retried before giving up:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>at NsxtBundleUploadOperations.uploadUpgradeBundle(:72)\n  at NsxtPrecheckUtil.lambda$uploadPayload$11(:1074)\n  at NsxtTransientRetryHelper.execute(:56)\n  at NsxtPrecheckUtil.uploadPayload(:1070)\n  at NsxtUcUpgradeStageRunner.doUpgradeStage(:413)\n  at NsxtParallelClusterPrimitiveImpl.runUpgrade(:702)\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">at NsxtBundleUploadOperations.uploadUpgradeBundle(:<\/span><span style=\"color: #6CB6FF\">72<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  at NsxtPrecheckUtil.<\/span><span style=\"color: #F47067\">lambda<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">uploadPayload<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #6CB6FF\">11<\/span><span style=\"color: #ADBAC7\">(:<\/span><span style=\"color: #6CB6FF\">1074<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  at NsxtTransientRetryHelper.execute(:<\/span><span style=\"color: #6CB6FF\">56<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  at NsxtPrecheckUtil.uploadPayload(:<\/span><span style=\"color: #6CB6FF\">1070<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  at NsxtUcUpgradeStageRunner.doUpgradeStage(:<\/span><span style=\"color: #6CB6FF\">413<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  at NsxtParallelClusterPrimitiveImpl.runUpgrade(:<\/span><span style=\"color: #6CB6FF\">702<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">A few lines further down, the orchestrator records the consequence \u2013 the failing stage and the failed element:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>DEBUG ... NsxtUpgradeUtil buildUpgradeError] Setting Upgrade Error for stage\n  NSX_UPGRADE_STAGE_SET_UPGRADE_PAYLOAD\nERROR ... NsxtParallelClusterPrimitiveImpl runUpgrade] Set the current element\n  &lt;nsx-vip>:UpgradeCoordinator as COMPLETED_WITH_FAILURE\nERROR ... NsxtParallelClusterPrimitiveImpl runUpgrade] Setting the batch upgrade status\n  as COMPLETED_WITH_FAILURE\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #6CB6FF\">DEBUG<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> NsxtUpgradeUtil buildUpgradeError] Setting Upgrade Error <\/span><span style=\"color: #F47067\">for<\/span><span style=\"color: #ADBAC7\"> stage<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #6CB6FF\">NSX_UPGRADE_STAGE_SET_UPGRADE_PAYLOAD<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> NsxtParallelClusterPrimitiveImpl runUpgrade] Set the current element<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">nsx<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">vip<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\">:UpgradeCoordinator <\/span><span style=\"color: #F47067\">as<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">COMPLETED_WITH_FAILURE<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">ERROR<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">...<\/span><span style=\"color: #ADBAC7\"> NsxtParallelClusterPrimitiveImpl runUpgrade] Setting the batch upgrade status<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #F47067\">as<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">COMPLETED_WITH_FAILURE<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">In plain words: SDDC Manager issues POST \/api\/v1\/upgrade\/bundles to NSX Manager node 2 in the stage NSX_UPGRADE_STAGE_SET_UPGRADE_PAYLOAD, the NSX transient-retry helper retries it, and the NSX Manager still answers with an HTTP 500 and no body. That is the whole error the UI condensed into \u201cFailed to upload NSX bundle\u201d.<\/p>\n\n\n\n<p class=\"has-vivid-red-color has-text-color has-link-color wp-elements-2 wp-block-paragraph\"><strong>So the upload does reach NSX. It is NSX that rejects it with an internal server error.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Before blaming NSX, make sure the source is good. The bundle is stored on SDDC Manager below \/nfs\/vmware\/vcf\/nfs-mount\/bundle\/&lt;bundle-id&gt;\/:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>ls -l \/nfs\/vmware\/vcf\/nfs-mount\/bundle\/&lt;bundle-id>\/&lt;bundle-id>\/\nsha256sum \/nfs\/vmware\/vcf\/nfs-mount\/bundle\/&lt;bundle-id>\/&lt;bundle-id>\/*.mub\ndf -h\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">ls <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">l <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">nfs<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vmware<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">nfs<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">mount<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">\/&lt;<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;\/&lt;<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;\/<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">sha256sum <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">nfs<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vmware<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">nfs<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">mount<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">\/&lt;<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;\/&lt;<\/span><span style=\"color: #ADBAC7\">bundle<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;\/*<\/span><span style=\"color: #ADBAC7\">.mub<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">df <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">h<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">The main NSX bundle (.mub, about 6.4 GB) and the pre-check bundle (about 1.15 GB) were present with the expected sizes.<\/li>\n\n\n\n<li style=\"font-size:15px\">The SHA-256 of the .mub matched the checksum from the bundle manifest.<\/li>\n\n\n\n<li style=\"font-size:15px\">The bundle metadata reported a download status of SUCCESS, and there was ample free space on SDDC Manager.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Bundle intact, space available \u2013 the failure was not a download or corruption problem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now check the NSX cluster. Log in to an NSX Manager as admin (SSH\/console) and check the cluster:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>get cluster status\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">get cluster status<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Overall Status was STABLE and all members of all groups were UP, and the UI agreed. Nothing visibly broken, yet one node returned a 500 for the bundle upload.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">The Fix: Rolling reboot of the NSX Managers<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A known pattern for failing NSX bundle uploads is a rolling restart of the NSX Manager nodes \u2013 Broadcom KB 430635 describes bundle-upload failures that are resolved by rebooting the NSX Managers one after another, linked to an issue in the JDK (JDK-8330017) that can show up when the managers have been running for a long time. <strong>Caveat:<\/strong> that KB was written for NSX 9.0.0, and I did not prove that this specific JDK issue is what I hit on 9.1.0.x. I applied the same remediation because the symptom matched and the risk is low when done correctly.<\/p>\n\n\n\n<p class=\"has-vivid-red-color has-text-color has-link-color wp-elements-3 wp-block-paragraph\"><strong>Do it strictly one node at a time:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li style=\"font-size:15px\">Make sure the SDDC Manager and NSX backups from section 2 exist and that you triggered the second (fresh) backup run right before.<\/li>\n\n\n\n<li style=\"font-size:15px\">On NSX Manager 1: run get cluster status \u2013 it must be STABLE with all members UP.<\/li>\n\n\n\n<li style=\"font-size:15px\">Reboot that node (from the NSX CLI: reboot). The CLI broadcasts \u201cThe system will reboot now!\u201d.<\/li>\n\n\n\n<li style=\"font-size:15px\">Wait until the node is back and run get cluster status again from a node. Only continue when the cluster is <strong>STABLE<\/strong> and all members are <strong>UP<\/strong> again.<\/li>\n\n\n\n<li style=\"font-size:15px\">Repeat for NSX Manager 2, then NSX Manager 3.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Never reboot the next manager while the cluster is still re-forming \u2013 with three managers you would lose quorum.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In our case: manager 3 was checked at 13:01 UTC (STABLE, all UP), rebooted, and about ten minutes later the cluster status at 13:10 UTC was again STABLE with every service UP on all three nodes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With the cluster healthy again, retry the failed task from VCF Operations (Build \u2192 Lifecycle \u2192 \u2026 \u2192 Upgrades), re-running the precheck if prompted. This time the bundle upload to NSX succeeded and the NSX Manager upgrade started and ran.<\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-4 wp-block-paragraph\"><strong>Honest note:<\/strong> the rolling reboot fixed the symptom in my environment. I did not capture the NSX-side logs that would prove the exact root cause, so treat KB 430635 as the best matching explanation, not as a confirmed diagnosis. If the error survives the reboots, collect an NSX support bundle and open a case with Broadcom.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s it from this post, if you have any questions, I will love to help but as I said, consider to open a Support Ticket at Broadcom.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Today I wrote a field report from a VMware Cloud Foundation 9.1 to 9.1.1 maintenance upgrade: the order that matters, the error that stopped the NSX Manager upgrade, how to prove the bundle was not the problem, and what got the upgrade moving again. Abstract Prerequisites: Everything above NSX must already be on 9.1.1 Before [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":true,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1,56,51,19],"tags":[],"class_list":["post-14421","post","type-post","status-publish","format-standard","hentry","category-blog","category-cloud-foundation","category-nsx","category-vmware"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>VCF 9.1 \u2192 9.1.1: &quot;Failed to upload NSX bundle&quot; in the NSX Upgrade Coordinator - irgNET<\/title>\n<meta name=\"description\" content=\"See the log evidence, the upgrade order and the rolling NSX Manager reboot that fixed it.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/irg-net.com\/index.php\/vcf-9-1-\u2192-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"VCF 9.1 \u2192 9.1.1: &quot;Failed to upload NSX bundle&quot; in the NSX Upgrade Coordinator - irgNET\" \/>\n<meta property=\"og:description\" content=\"See the log evidence, the upgrade order and the rolling NSX Manager reboot that fixed it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/irg-net.com\/index.php\/vcf-9-1-\u2192-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/\" \/>\n<meta property=\"og:site_name\" content=\"irgNET\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-03T21:12:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-03T22:02:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png\" \/>\n<meta name=\"author\" content=\"H. Cemre G\u00fcnay\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@irg_net\" \/>\n<meta name=\"twitter:site\" content=\"@irg_net\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"H. Cemre G\u00fcnay\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/\"},\"author\":{\"name\":\"H. Cemre G\u00fcnay\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/person\\\/71b46e79e8c12bdc8e610214a6621a66\"},\"headline\":\"VCF 9.1 \u2192 9.1.1: &#8220;Failed to upload NSX bundle&#8221; in the NSX Upgrade Coordinator\",\"datePublished\":\"2026-10-03T21:12:09+00:00\",\"dateModified\":\"2026-10-03T22:02:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/\"},\"wordCount\":1573,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image.png\",\"articleSection\":[\"Blog\",\"Cloud Foundation\",\"NSX\",\"VMware\"],\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/\",\"url\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/\",\"name\":\"VCF 9.1 \u2192 9.1.1: \\\"Failed to upload NSX bundle\\\" in the NSX Upgrade Coordinator - irgNET\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image.png\",\"datePublished\":\"2026-10-03T21:12:09+00:00\",\"dateModified\":\"2026-10-03T22:02:29+00:00\",\"description\":\"See the log evidence, the upgrade order and the rolling NSX Manager reboot that fixed it.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#breadcrumb\"},\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image.png?fit=300%2C300&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/image.png?fit=300%2C300&ssl=1\",\"width\":300,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"VCF 9.1 \u2192 9.1.1: &#8220;Failed to upload NSX bundle&#8221; in the NSX Upgrade Coordinator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#website\",\"url\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/\",\"name\":\"irgNET\",\"description\":\"a virtual Knowledge Base\",\"publisher\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#organization\",\"name\":\"irg-NET\",\"url\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i2.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i2.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1\",\"width\":2048,\"height\":2048,\"caption\":\"irg-NET\"},\"image\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/irg_net\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/h-cemre-g\u00fcnay-2b61601b4\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UC8GknhO5YMAkAoVxppu6aaQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/person\\\/71b46e79e8c12bdc8e610214a6621a66\",\"name\":\"H. Cemre G\u00fcnay\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g\",\"caption\":\"H. Cemre G\u00fcnay\"},\"sameAs\":[\"http:\\\/\\\/192.168.34.155\\\/wordpress\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"VCF 9.1 \u2192 9.1.1: \"Failed to upload NSX bundle\" in the NSX Upgrade Coordinator - irgNET","description":"See the log evidence, the upgrade order and the rolling NSX Manager reboot that fixed it.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/irg-net.com\/index.php\/vcf-9-1-\u2192-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/","og_locale":"en_US","og_type":"article","og_title":"VCF 9.1 \u2192 9.1.1: \"Failed to upload NSX bundle\" in the NSX Upgrade Coordinator - irgNET","og_description":"See the log evidence, the upgrade order and the rolling NSX Manager reboot that fixed it.","og_url":"https:\/\/irg-net.com\/index.php\/vcf-9-1-\u2192-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/","og_site_name":"irgNET","article_published_time":"2026-10-03T21:12:09+00:00","article_modified_time":"2026-10-03T22:02:29+00:00","og_image":[{"url":"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png","type":"","width":"","height":""}],"author":"H. Cemre G\u00fcnay","twitter_card":"summary_large_image","twitter_creator":"@irg_net","twitter_site":"@irg_net","twitter_misc":{"Written by":"H. Cemre G\u00fcnay","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#article","isPartOf":{"@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/"},"author":{"name":"H. Cemre G\u00fcnay","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/person\/71b46e79e8c12bdc8e610214a6621a66"},"headline":"VCF 9.1 \u2192 9.1.1: &#8220;Failed to upload NSX bundle&#8221; in the NSX Upgrade Coordinator","datePublished":"2026-10-03T21:12:09+00:00","dateModified":"2026-10-03T22:02:29+00:00","mainEntityOfPage":{"@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/"},"wordCount":1573,"commentCount":0,"publisher":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#organization"},"image":{"@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#primaryimage"},"thumbnailUrl":"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png","articleSection":["Blog","Cloud Foundation","NSX","VMware"],"inLanguage":"en","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/","url":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/","name":"VCF 9.1 \u2192 9.1.1: \"Failed to upload NSX bundle\" in the NSX Upgrade Coordinator - irgNET","isPartOf":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#primaryimage"},"image":{"@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#primaryimage"},"thumbnailUrl":"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png","datePublished":"2026-10-03T21:12:09+00:00","dateModified":"2026-10-03T22:02:29+00:00","description":"See the log evidence, the upgrade order and the rolling NSX Manager reboot that fixed it.","breadcrumb":{"@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#breadcrumb"},"inLanguage":"en","potentialAction":[{"@type":"ReadAction","target":["https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/"]}]},{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#primaryimage","url":"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png?fit=300%2C300&ssl=1","contentUrl":"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/09\/image.png?fit=300%2C300&ssl=1","width":300,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/irg-net.com\/index.php\/vcf-9-1-%e2%86%92-9-1-1-failed-to-upload-nsx-bundle-in-the-nsx-upgrade-coordinator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/"},{"@type":"ListItem","position":2,"name":"VCF 9.1 \u2192 9.1.1: &#8220;Failed to upload NSX bundle&#8221; in the NSX Upgrade Coordinator"}]},{"@type":"WebSite","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#website","url":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/","name":"irgNET","description":"a virtual Knowledge Base","publisher":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en"},{"@type":"Organization","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#organization","name":"irg-NET","url":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/","logo":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/logo\/image\/","url":"https:\/\/i2.wp.com\/irg-net.com\/wp-content\/uploads\/2021\/06\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1","contentUrl":"https:\/\/i2.wp.com\/irg-net.com\/wp-content\/uploads\/2021\/06\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1","width":2048,"height":2048,"caption":"irg-NET"},"image":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/irg_net","https:\/\/www.linkedin.com\/in\/h-cemre-g\u00fcnay-2b61601b4\/","https:\/\/www.youtube.com\/channel\/UC8GknhO5YMAkAoVxppu6aaQ"]},{"@type":"Person","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/person\/71b46e79e8c12bdc8e610214a6621a66","name":"H. Cemre G\u00fcnay","image":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/secure.gravatar.com\/avatar\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g","caption":"H. Cemre G\u00fcnay"},"sameAs":["http:\/\/192.168.34.155\/wordpress"]}]}},"jetpack_sharing_enabled":true,"jetpack-related-posts":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts\/14421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/comments?post=14421"}],"version-history":[{"count":10,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts\/14421\/revisions"}],"predecessor-version":[{"id":14443,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts\/14421\/revisions\/14443"}],"wp:attachment":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/media?parent=14421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/categories?post=14421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/tags?post=14421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}