{"id":508,"date":"2026-09-04T02:40:43","date_gmt":"2026-09-04T00:40:43","guid":{"rendered":"https:\/\/nutanix.ma\/?p=508"},"modified":"2026-09-04T02:43:31","modified_gmt":"2026-09-04T00:43:31","slug":"nutanix-prism-element-lcm-upgrade-step-by-step","status":"publish","type":"post","link":"https:\/\/nutanix.ma\/index.php\/2026\/09\/04\/nutanix-prism-element-lcm-upgrade-step-by-step\/","title":{"rendered":"Upgrading a Nutanix Cluster with LCM Step by Step"},"content":{"rendered":"<p>Upgrading a Nutanix cluster is one of those jobs that looks intimidating the first time and routine the tenth. Life Cycle Manager (LCM) does most of the heavy lifting \u2014 dependency resolution, rolling reboots, VM evacuation \u2014 but the order you do things in, and what you check before you press Apply, is still on you. This is the full sequence from a recent engagement, run entirely from Prism Element: inventory, then NCC, Foundation, AOS, firmware and finally AHV. Screenshots are from the actual cluster, with customer identifiers, addresses and dates redacted; version numbers are left intact because they&#8217;re the useful part.<\/p>\n<h2>Before you start<\/h2>\n<p>Nutanix&#8217;s own recommendations for LCM updates are short and worth following to the letter. The ones that matter most in practice:<\/p>\n<ul>\n<li><strong>Do it in a maintenance window.<\/strong> Even though workloads live-migrate, users can see latency during the upgrade \u2014 noticeably so on clusters that only have 1GbE uplinks.<\/li>\n<li><strong>Non-production first.<\/strong> Run the same sequence on a test or secondary cluster before touching production. The cluster in this walkthrough is a test environment for exactly that reason.<\/li>\n<li><strong>Check the compatibility matrix.<\/strong> Nutanix publishes upgrade paths and interoperability (&#8220;what works with what&#8221;) on the portal. Check it before you start, not when LCM warns you.<\/li>\n<li><strong>Prism Central before Prism Element.<\/strong> If the cluster is registered to Prism Central, PC must be on a compatible version <em>before<\/em> you upgrade AOS on the cluster. LCM will remind you \u2014 we&#8217;ll see that screen later \u2014 but it&#8217;s better to have already done it.<\/li>\n<li><strong>Deal with VMs that can&#8217;t live-migrate.<\/strong> Anything that can&#8217;t move needs to be powered off or reconfigured before a host-reboot update (hypervisor, firmware), or the update stalls trying to evacuate the host. VMs with <code>ha_priority=-1<\/code> should be set as agent VMs so LCM handles them correctly.<\/li>\n<li><strong>Silence email alerts temporarily.<\/strong> A rolling upgrade generates a flood of expected alerts. Disable email alerting in Prism for the window and re-enable it afterwards.<\/li>\n<li><strong>One operation at a time.<\/strong> Wait for each LCM task to complete fully before starting the next. Don&#8217;t queue, don&#8217;t overlap.<\/li>\n<\/ul>\n<h2>Step 1 \u2014 Run the inventory<\/h2>\n<p>Everything in LCM starts with an inventory. It scans the cluster, refreshes the available version list from the Nutanix portal, and runs bundle and version compatibility checks. Until this has completed, the Updates tab is either empty or stale.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-00.webp\" alt=\"LCM Inventory completed in Prism Element showing inventory, version refresh and compatibility check tasks\"\/><figcaption>Inventory complete \u2014 LCM now knows what&#8217;s installed and what&#8217;s available.<\/figcaption><\/figure>\n<h2>Step 2 \u2014 Review what LCM found<\/h2>\n<p>The Updates tab lists everything with a newer version. On this cluster that was AHV, AOS (6.10.1.7 offered as the LTS target against 6.10.1.5 installed), Foundation 5.9.0.2 against 5.7.1, and NCC 5.1.2 against 5.1.1. Note the banner at the top: Nutanix releases software into LCM in incremental phases, so a version you know exists may not appear immediately \u2014 in which case you download it from the portal and use Direct Uploads.<\/p>\n<p>The order we&#8217;re going to follow keeps the tooling ahead of the platform: NCC and Foundation first, then AOS, then firmware, then the hypervisor.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-01.webp\" alt=\"LCM Updates tab listing available software updates for AHV, AOS, Foundation and NCC with NCC selected\"\/><figcaption>Six updates available. NCC goes first.<\/figcaption><\/figure>\n<h2>Step 3 \u2014 NCC<\/h2>\n<p>Nutanix Cluster Check is the health-check framework, and upgrading it first means every subsequent precheck runs against the latest set of checks. Selecting NCC and clicking View Upgrade Plan brings up the review dialog. Read the impact statement every time: for NCC it&#8217;s simply that the Cluster Health Service restarts, with no workload impact.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-02.webp\" alt=\"Review Upgrade Plan dialog for the NCC update noting the Cluster Health Service restart\"\/><figcaption>Reviewing the NCC plan \u2014 service restart only.<\/figcaption><\/figure>\n<p>Every LCM run follows the same two stages. Precheck runs an LCM framework check and a module check; Install downloads the bundle, applies it, then runs bundle and version compatibility checks again. NCC finishes in a few minutes.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-03.webp\" alt=\"LCM update successful screen after the NCC upgrade showing precheck and install stages\"\/><figcaption>NCC done. Return to Updates and the list has shrunk by one.<\/figcaption><\/figure>\n<h2>Step 4 \u2014 Foundation<\/h2>\n<p>Back on the Updates tab, something worth noticing: after the NCC update and its inventory refresh, LCM is now offering AHV 10.0.1.1 where it previously showed only an el8 build. This is the staged release model in action \u2014 what&#8217;s available can change between runs, which is another reason to re-check the list after each update rather than planning everything from the first screenshot.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-04.webp\" alt=\"LCM Updates tab after the NCC update with AHV, AOS and Foundation updates remaining\"\/><figcaption>Five remaining \u2014 and a newer AHV target has appeared.<\/figcaption><\/figure>\n<p>Foundation is the imaging and node-expansion tool, and AOS upgrades depend on it. Its plan review notes a Genesis service restart, again with no disruption to workloads.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-05.webp\" alt=\"Review Upgrade Plan dialog for the Foundation update noting the Genesis service restart\"\/><figcaption>Foundation 5.7.1 \u2192 5.9.0.2.<\/figcaption><\/figure>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-06.webp\" alt=\"LCM update successful screen after the Foundation upgrade\"\/><figcaption>Foundation complete.<\/figcaption><\/figure>\n<h2>Step 5 \u2014 AOS<\/h2>\n<p>With the tooling current, the AOS upgrade. By this point LCM had auto-populated AOS 7.0.1.6 as the target, moving the cluster from the 6.10 line onto 7.x. LCM auto-selects the latest available version to resolve dependencies, but you can pick a different one from the dropdown if your compatibility matrix or Prism Central version says you should \u2014 check before accepting the default.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-07.webp\" alt=\"LCM Updates tab showing AOS 7.0.1.6 available against installed 6.10.1.5\"\/><figcaption>AOS 7.0.1.6 offered against 6.10.1.5 installed.<\/figcaption><\/figure>\n<p>The AOS plan review has two steps. The first is the impact statement: each Controller VM is rebooted in turn, one at a time, with no effect on user workloads \u2014 the cluster stays up because the other CVMs carry the storage path while each one restarts.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-08.webp\" alt=\"Review Upgrade Plan step one for the AOS update noting each CVM reboots one at a time\"\/><figcaption>AOS plan, step one \u2014 rolling CVM reboots.<\/figcaption><\/figure>\n<p>The second step is the one people click through and shouldn&#8217;t. It&#8217;s the explicit warning: <strong>if this cluster is registered with Prism Central, upgrade Prism Central first<\/strong> to a compatible version. Running AOS ahead of PC is one of the most common ways to end up with a cluster PC can&#8217;t manage. If you haven&#8217;t done it yet, cancel here and go do it.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-09.webp\" alt=\"Review Upgrade Plan step two warning to upgrade Prism Central first if the cluster is registered\"\/><figcaption>Step two \u2014 the Prism Central compatibility warning. Don&#8217;t skip it.<\/figcaption><\/figure>\n<h2>Step 6 \u2014 Firmware<\/h2>\n<p>Once AOS is on the new version, the Firmware Updates view lists what&#8217;s outstanding on each node. Here that was HBA firmware (to 31.00.00.00) and BMC firmware via Redfish (to 01.01.10) across all three nodes. The Redfish path lets BMC updates happen without booting the node into a separate environment, so BMC went first.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-10.webp\" alt=\"LCM Firmware Updates tab listing HBA and BMC Redfish firmware updates for three nodes\"\/><figcaption>Six firmware updates across three nodes \u2014 HBAs and BMCs.<\/figcaption><\/figure>\n<p>The BMC plan puts each CVM into maintenance mode and shuts its services down in turn; workloads aren&#8217;t disrupted.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-11.webp\" alt=\"Review Upgrade Plan dialog for BMC Redfish firmware on three nodes\"\/><figcaption>BMC 01.01.06 \u2192 01.01.10 on all three nodes.<\/figcaption><\/figure>\n<p>Then the HBAs. This is the heaviest operation in the whole sequence, and the plan review says so: each node boots into a separate update utility, one node at a time, may reboot multiple times, and disk checks run before and after. Workloads migrate automatically \u2014 but read the line about making sure the cluster has enough compute and storage to run with one node offline. On a three-node cluster that&#8217;s the entire safety margin.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-12.webp\" alt=\"LCM Firmware Updates tab with three HBA updates remaining\"\/><figcaption>Three HBA updates remaining.<\/figcaption><\/figure>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-13.webp\" alt=\"Review Upgrade Plan dialog for HBA firmware explaining that each node boots into a utility one at a time\"\/><figcaption>HBA 25.00.00.00 \u2192 31.00.00.00. Each node boots into the update utility in turn.<\/figcaption><\/figure>\n<p>Budget real time for this stage. Where the software updates each took minutes, the firmware pass on this cluster ran for well over an hour end to end, because every node has to be evacuated, rebooted into the utility, updated, checked and brought back before the next one starts.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-14.webp\" alt=\"LCM update successful screen after the firmware upgrade\"\/><figcaption>Firmware complete on all nodes.<\/figcaption><\/figure>\n<h2>Step 7 \u2014 AHV<\/h2>\n<p>Last, the hypervisor. With everything underneath it current, AHV 10.0.1.1 is offered for all three hosts.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-15.webp\" alt=\"LCM Updates tab showing AHV 10.0.1.1 available for three entities\"\/><figcaption>AHV 10.0.1.1 available for three hosts.<\/figcaption><\/figure>\n<p>The AHV plan is another rolling host reboot with automatic workload migration \u2014 with one important exception called out in the dialog: on a single-node cluster, workloads <em>will<\/em> be disrupted, because there&#8217;s nowhere for them to go. On three or more nodes, users shouldn&#8217;t notice beyond the latency mentioned earlier.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/nutanix.ma\/wp-content\/uploads\/2026\/09\/prism-element-lcm-upgrade-16.webp\" alt=\"Review Upgrade Plan dialog for the AHV hypervisor update noting rolling node reboots\"\/><figcaption>AHV plan \u2014 rolling host reboots, workloads migrate automatically.<\/figcaption><\/figure>\n<h2>Afterwards<\/h2>\n<p>Once the last update finishes, run a fresh inventory to confirm the Updates tab is clear and nothing new has appeared, re-enable the email alerts you silenced, and run a full NCC health check. If the cluster uses a Witness VM, upgrade that too \u2014 its version is independent of AOS and PC and can be done at any point.<\/p>\n<p>The whole sequence on a three-node cluster is comfortably a half-day maintenance window, dominated by the firmware stage. It&#8217;s also almost entirely hands-off once you&#8217;ve reviewed each plan \u2014 which is exactly why the reviewing is the part worth doing carefully.<\/p>\n<p>If you&#8217;d like help sequencing an upgrade across several clusters, or have a Prism Central and Prism Element combination you&#8217;re not sure about, <a href=\"https:\/\/nutanix.ma\/index.php\/contact-me\/\">get in touch<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Upgrading a Nutanix cluster is one of those jobs that looks intimidating the first time and routine the tenth. Life Cycle Manager (LCM) does most of the heavy lifting \u2014 dependency resolution, rolling reboots, VM evacuation \u2014 but the order you do things in, and what you check before you press Apply, is still on [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-508","post","type-post","status-publish","format-standard","hentry","category-nutanix"],"_links":{"self":[{"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/posts\/508","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/comments?post=508"}],"version-history":[{"count":2,"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/posts\/508\/revisions"}],"predecessor-version":[{"id":510,"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/posts\/508\/revisions\/510"}],"wp:attachment":[{"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/media?parent=508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/categories?post=508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nutanix.ma\/index.php\/wp-json\/wp\/v2\/tags?post=508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}