Hyperledger Fabric upgrades and support

Upgrading a Fabric network is a rolling change to orderers, peers and channel capabilities that can disrupt a consortium if sequenced badly. This page explains what the work includes, what drives its cost, and what support covers after go-live.

On this page

What Fabric upgrades involve and when teams call for help

A Fabric upgrade is not a single change on a single server. Each member organization runs its own orderers and peers and must replace the binaries on every node it operates. The upgrade guide describes four steps: back up the ledger and MSPs, upgrade orderer binaries in a rolling fashion, upgrade peer binaries in a rolling fashion, then update the application channel capability levels. The final step changes channel-wide behavior, so its timing is a consortium decision as much as a technical one.

Upgrades usually start from one of four triggers. The first is a move onto a supported line, such as adopting v2.5 LTS or a 3.x release. The second is a security patch. The 3.x and 2.5 LTS lines receive patch releases in parallel, as the v3.1.5 and v2.5.16 releases published on June 18, 2026 show, so patches can arrive on either line. The third is a planned capability change, which should be confirmed in writing by every member before it is made. The fourth is an end of support decision, for which you should confirm the published support dates for your line with the Fabric maintainers before you set a plan.

Many teams with a single in-house Fabric operator keep routine patch work internal. Patch releases on a line the team already runs, rehearsed on a test network first, fit that pattern well. Two areas are often outsourced. The first multi-organization upgrade needs coordinated windows across organizations, agreed capability levels and a rehearsed rollback for each node. The post go-live support window matters too, because faults tend to surface once real transactions flow. Outsource the steps your team has not yet rehearsed in your own environment.

Client applications can be upgraded separately from the network, because the Fabric Gateway client API is compatible with both v2.5 and v3.0. Confirm that your SDK versions, chaincode builds and custom images match the release you plan to run. Prerequisites such as Kafka ordering migration, the legacy chaincode lifecycle and the 2.5 to 3.x path are covered on the migration page, so check that page before scheduling any upgrade work.

What the upgrade and support work includes

The work runs from line selection through production cutover and handover. Each package has a defined output that your team can review before the next one starts.

Version and line selection

Decide whether each network stays on the 2.5 LTS line or moves to 3.x, and record the reasons in writing. The Fabric documentation names 2.5 as the long-term support release for production, while 3.x adds BFT ordering and Ed25519 MSP signing and removes Solo, Kafka and the v1.x lifecycle. Confirm the current patch level on both lines before the decision is signed.

Chaincode compatibility review

Inventory every chaincode package, its language runtime and the lifecycle version it was approved under. Confirm that all channels already use the v2.x lifecycle, because v3.0 removes the v1.x legacy lifecycle and networks must migrate first. Test each package against the target line in the rehearsal and record any package that needs a rebuild.

Client application upgrades

The Fabric Gateway client API works with both v2.5 and v3.0, so applications can move on their own schedule. Confirm each application's SDK version and its connection settings, then decide whether clients move before, during or after the network change. Track client cutover in its own change record so a client fault is not confused with a network fault.

CA, operations and HSM dependencies

Fabric CA, the operations service and any HSM are verified alongside the peers and orderers. Check the CA database backend and the mutual TLS client certificates that protect operations endpoints. If MSP keys sit in an HSM, confirm a PKCS#11 build, because prebuilt Docker images do not include PKCS#11 and custom images need retesting for each target release.

Rehearsal, sequence and rollback

Run the full procedure on a non-production copy of the network first. Production then follows four steps: back up the ledger and MSPs, roll orderer binaries, roll peer binaries, and update channel capability levels. Agree rollback criteria before the window opens, covering health check failures, endorsement or ordering errors, and which steps can be reversed without a restore.

Runbook, evidence and handover

Deliverables include an upgrade runbook, backup and restore evidence showing a tested restore, and a change record for each node. After go-live, support covers monitoring through the operations service, patch tracking on the chosen line, and handover of runbooks to your operators. Confirm the support period and response expectations in the written scope.

What drives upgrade cost and duration

This table lists the factors that change how much work and coordination a Fabric upgrade needs, with practical ways to keep each one under control.

DriverWhy it mattersHow to keep it down
Organizations and nodes in change windowsEvery member organization must approve, and every orderer and peer must be upgraded in a rolling sequence, so effort grows with membership and node count.Agree a standard change window and runbook once, and keep the number of nodes per organization to what resilience requires.
Channels and capability levelsEach application channel has its own capability level that must be raised after binaries are upgraded, and each channel needs its own verification.Keep channel count small, group workloads by channel where the business allows, and plan capability updates as one reviewed step.
Chaincode count and custom builders or imagesChaincode packages and external builders may need retesting against the new peer, and custom images must be rebuilt for every release.Track chaincode versions in a shared inventory, pin external builder versions, and limit custom image changes to what the HSM setup truly needs.
HSM-backed MSP keysPrebuilt Docker images are not built with PKCS#11, so HSM-backed peers and orderers need custom images that must be rebuilt, retested and signed off for each upgrade.Build and test the custom image pipeline before the upgrade window, and confirm HSM vendor client compatibility with the target release.
Client applications and release cadenceThe Gateway client API works with both v2.5 and v3.0, so clients can move separately, but every application team adds coordination and testing.Upgrade clients on their own schedule after the network is stable, and agree a compatibility test suite that all application teams run.
Environments to rehearseEach environment such as development, test, staging and production needs its own rehearsal of backup, binary upgrade and capability update.Keep environments built from the same deployment code, and reuse the same runbook and scripts in every rehearsal.
Governance steps before approvalMembers usually need documented change requests, impact reviews and sign-off through consortium governance before any node changes, which can take longer than the technical work.Pre-approve a change template with the consortium, define who votes on what, and set a fixed schedule for governance decisions.

Upgrade and support phases and their outputs

The sequence moves a Fabric network to its chosen release line with a recorded decision, a tested runbook, consortium approval and a verified result at each stage.

  1. Assess the current version and target line

    Inventory every orderer, peer, Fabric CA and client application with its binary version, channel capability levels and chaincode lifecycle. Confirm that Kafka ordering has already moved to Raft and that all channels use the v2.x lifecycle, since v3.0 removed both. The output is a version and gap assessment that the consortium signs off before planning begins.

  2. Record the 2.5 LTS or 3.x decision

    Compare the 2.5 LTS line, which the Fabric documentation describes as the long-term support release for production users, with the 3.x line. Consider whether you need the BFT ordering service or Ed25519 MSP signing added in v3.0. Check the Fabric releases page on the decision date, because both lines receive patch releases. The output is a decision record naming the target version, the reasons and a review date.

  3. Rehearse the upgrade on production-like data

    Restore a recent backup of the ledger and MSPs into an isolated environment that matches the production topology. Run the full rolling sequence, then the chaincode and client application tests. Record errors, timings and any manual steps. The output is a rehearsal report listing each deviation from the runbook and how it was resolved. Ask your consortium how it will schedule rehearsals in its own environment.

  4. Obtain consortium change approval

    Each member organization reviews the rehearsal report, the rollback plan and the proposed upgrade window, then approves the change in writing. Confirm that every organization operating an orderer or peer has named an owner for its node. The output is a signed change plan that fixes the node order, the backup points and the go or no-go criteria.

  5. Upgrade orderers and peers in rolling order

    Back up the ledger and MSPs before each node changes. Upgrade orderer binaries one node at a time so the Raft majority stays available, then upgrade peers organization by organization. Follow the rehearsed runbook and check each node's /healthz and /version output before moving on. The output is a runbook execution log with a health check result for every node.

  6. Update capability levels and verify channels

    After every binary runs the new version, raise the application channel capability levels as the upgrade guide describes, one channel at a time. Confirm that endorsement, ledger queries and chaincode invocations succeed from each organization's client application. The output is post-change verification results for each channel, with the capability level recorded.

  7. Run hypercare and hand over support

    Keep heightened monitoring and on-call cover for a period the consortium agrees in advance, watching operations service metrics, logs and certificate expiry dates. Close open issues, then transfer the runbook, alert thresholds and contacts to steady-state support, which covers patching, backups and certificate renewal. The output is a support handover document signed by each member's operations owner.

What teams keep in-house and what they outsource

This table shows which parts of a Fabric upgrade and support program each party usually owns, and the skills each part requires, so you can decide where to staff internally and where to bring in a partner.

Work areaUsual ownerSkills required
Consortium governance and change approvalIn-house, each member organizationGovernance of channel policies and endorsement rules, change records, decision authority per member, familiarity with Fabric lifecycle and capability levels
Node operation and accessIn-house, each member organizationFabric operations on peers and orderers, Linux administration, Kubernetes or VM operations, access control for MSP and TLS keys
Upgrade planning and rehearsalOften outsourced for a first upgrade, then handed overFabric release management, reading upgrade notes for 2.5 LTS and 3.x, building a test network that mirrors production, Go or Node.js familiarity for client changes
Production change execution across organizationsShared, with a partner coordinatingRolling orderer and peer upgrades in agreed order, Linux and container operations, coordinated maintenance windows, rollback procedures across members
Backup design and restore testingOften outsourced, then handed overLedger and MSP backup design, PostgreSQL or file-level backup tooling for CA databases, restore drills, PKI and certificate handling
Support retainers after go-livePartner or internal, decided by staffing depthFabric operations service monitoring, PKI and certificate renewal, chaincode and client application troubleshooting, on-call coverage across time zones
Chaincode and client application changesIn-house, with partner review where neededChaincode in Go or Node.js, Fabric Gateway client API, testing against both 2.5 and 3.x during transition

What usually goes wrong during Fabric upgrades

Most Fabric upgrade incidents trace back to a few predictable gaps: unverified backups, out-of-order steps, version drift and assumptions built for the old release. Each card names the check that prevents it.

Upgrading without a verified backup

Teams often take a ledger and MSP backup but never restore it. Before each orderer or peer change, restore the backup into an isolated test environment and confirm the node starts, joins its channels and reports the expected block height. Set a written go or no-go criterion so a failed restore stops the change window.

Channel capability update out of sequence

Channel capability levels should change only after every orderer and peer on the channel runs the new binaries. Applying the update early can block nodes that still run the old release. Record which organizations have upgraded, and make the capability update a separate, approved step with its own sign-off.

Mixed binary versions beyond the release notes

A rolling upgrade passes through a period where orderers and peers run different versions. Only the version combinations listed in the release notes are supported during that window. Inventory every node's version before each step, and do not extend the mixed period past what the upgrade guide allows.

Chaincode and client incompatibilities found late

Chaincode built against the old shim, and client applications built on older SDKs, can fail only after the network moves. Test endorsement and invocation of every production chaincode on a staging network at the target version. Client applications can be upgraded separately, but the Gateway client compatibility must be confirmed for each release pair.

Custom images and monitoring left on the old release

Custom peer or orderer images, such as those built for PKCS#11 HSM access, must be rebuilt on the new base image, or they will not start. Operations service endpoints, health checks and Prometheus scrape rules can also break without an error. Rebuild the images and run a monitoring check on every node after each change.

Ordering quorum lost during a rolling step

A Raft cluster keeps working only while a majority of its nodes are available. If an orderer is already down before the rolling restart begins, the next restart can remove quorum. Confirm every orderer is healthy and reachable before each step, and pause the change if any node is missing.

How the upgrade differs by starting point

A network that stays on the 2.5 LTS line receives patch releases only, such as v2.5.16, which was published on June 18, 2026 alongside v3.1.5. The sequence is the same four steps used for any upgrade, but the goal is to stay compatible with the current line.

  • Check the target patch on the Fabric releases page before you schedule the window.
  • Back up the ledger and MSPs on every node, then roll orderers before peers, one node at a time.
  • Confirm that channel capability levels stay where they are, since a patch should not require a capability change.
  • Confirm that Fabric Gateway client applications on your side remain compatible with 2.5.
  • Agree in writing who watches the patch feed, who approves each window and how long a patch can wait.

What the client needs to provide

Before an upgrade or support engagement starts, each member organization needs to name an owner for its orderer and peer nodes. That owner answers configuration questions, approves changes to their node, and can act during the change window. The consortium also agrees one change window that every member accepts, because a rolling upgrade of orderers and then peers only works when members can be reached during the same period. Ask each member to confirm its window in writing.

The team doing the work needs an accurate picture of the network as it is today. Provide the current inventory of Fabric versions on every orderer and peer, the channel capability levels of each application channel, and the versions of chaincode and client applications, including any client built on the Fabric Gateway client API. Access to non-production copies of the network, with ledger and MSP data close to production, lets the team rehearse each step. Confirm which Fabric release notes each member has reviewed and accepts before testing begins.

Backups and observability are inputs too. Each member should confirm where ledger and MSP backups are stored, that restores have been tested by someone other than the person who made the backup, and who can run a restore. The team also needs read access to the operations service health checks, logs and Prometheus metrics for every node, plus the alert routes that page the right owner. Without these, the team cannot verify a step before moving to the next one.

The first upgrade usually takes the most consortium time, because members have to agree on the sequence, the rollback trigger and the test evidence they will accept. Decide before go-live who answers at night, who approves a rollback, and who signs the go or no-go decision for each step. Record these roles in the support model. A named decision maker who can say no is more useful than a committee that meets after the window closes.

Frequently asked questions about Fabric upgrades and support

Should we stay on Hyperledger Fabric 2.5 LTS or move to 3.x?

Stay on 2.5 LTS if you need the line the Fabric documentation names for production users today and have no 3.x-only requirement. Move to 3.x when a requirement sits there, such as BFT ordering based on SmartBFT or Ed25519 MSP signing. Either way, Kafka ordering must be migrated to Raft and all channels must use the v2.x lifecycle before the upgrade. Both lines receive patch releases in parallel, so the choice turns on features and migration readiness.

Can one organization upgrade its own Fabric nodes without the consortium?

Yes for the binaries on nodes that organization operates, but network-wide steps need the consortium. Each organization can upgrade the orderer and peer binaries it runs, one node at a time, as the rolling upgrade steps describe. Channel capability levels are different: they govern rules for every member of a channel, so the channel's organizations must agree before anyone changes them. Agree the sequence, backups and rollback with the consortium before the first node changes, since mixed versions run during the rollout.

How long does a Hyperledger Fabric upgrade take?

The duration depends on your topology, so ask for a timeline built from your node count and channel list, since no generic figure is reliable. The main drivers are the number of orderers and peers, the number of channels and chaincode definitions to check, any prerequisite migrations, and how many organizations must coordinate their own rolling steps. HSM-backed keys, custom images and monitoring changes add verification work. The four documented steps are backup, orderer binaries, peer binaries and channel capability updates, and each repeats across nodes and environments.

What must our team provide before a Fabric upgrade engagement starts?

Your team must provide access, current state and decision owners before work begins, and the written scope will list the exact items. Expect to supply an inventory of orderer and peer versions, channel configurations, chaincode definitions and lifecycle status, plus the Fabric CA and MSP layout. Access to nodes, backup storage and HSM or key management details is needed to test backups before the first change. Named people from each consortium organization must approve maintenance windows and channel capability decisions.

Can an in-house team run a Fabric upgrade without outside help?

Yes, if the team has operated Fabric before, has tested backup and restore, and has the time and an organizational peer to coordinate with. The upgrade follows documented steps, so the skill gap is usually in preparation: confirming Kafka and legacy lifecycle migrations are complete, checking custom images and PKCS#11 builds, and reviewing channel policies. A dry run on a non-production copy lets the team practice the sequence before production. Independent review of the plan is another option if the team wants a second check before the change window.

How do we compare upgrade quotes and post go-live support terms?

Compare quotes line by line against the same written scope, including the topology, channels, environments and each upgrade step. Check whether post go-live support covers the agreed work, such as health checks and metrics review after the change, and whether a retainer for ongoing support, patch upgrades or continuous testing is priced separately. Ask who performs backups and restore tests, which assumptions the quote relies on and what changes trigger a new estimate. DeployOpen does not publish prices, so each quote follows from the written scope.

How DeployOpen scopes, delivers and supports Fabric upgrades

DeployOpen plans and carries out Hyperledger Fabric upgrades inside the infrastructure you control, starting from a written scope that names the release line, the nodes and the channels in play. Support after the upgrade can be set up as a retainer that covers patch releases and later changes.

How we scope

  • Engagements are fixed-scope, with the upgrade path, nodes, channels and deliverables agreed in writing before work starts.
  • We inventory every orderer, peer, Fabric CA and client application, and confirm which Fabric release each one runs today.
  • We check prerequisites such as Kafka ordering moved to Raft and all channels on the v2.x lifecycle before any binary changes.

How we build

  • We back up the ledger and MSPs for each node and verify that the backups can be restored in a test environment first.
  • We upgrade orderer binaries and then peer binaries one node at a time, checking health and logs before moving to the next node.
  • We update application channel capability levels only after all nodes run the target release, and we test client applications against the Fabric Gateway client API.

How we hand over

  • You receive a runbook with the upgrade sequence, rollback points, backup locations and the checks run at each step.
  • We document the release line you chose, including whether you stay on 2.5 LTS or move to 3.x, and the reasons behind that choice.
  • We walk your operators through the operations service health checks, version endpoints and alerts used to confirm the upgrade.

How we support

  • Ongoing support, upgrades and continuous testing are available as retainers, which can cover patch releases on your chosen line.
  • Support scope is agreed in writing, so you can confirm which patch releases, reviews and on-call hours are included before you sign.
  • Ask for a quote based on your written scope, including what recurs each year and which items are one-time work.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.