Upgrading Hyperledger Fabric version¶
Pre-requisites¶
Hyperledger Fabric image versions, which are compatible with the target fabric version need to be known.
For example, for Fabric v1.4.8, these are the image tags of the supporting docker images
Fabric component | Fabric image tag |
---|---|
kafka | 0.4.18 |
zookeeper | 0.4.18 |
couchDB | 0.4.18 |
orderer | 1.4.8 |
peer | 1.4.8 |
ca | 1.4.4 |
NOTE: This change only upgrades the docker images, any other configuration changes is not covered by this guide. Please refer to Fabric documentation for any specific configuration changes.
Modifying image versions¶
The network.yaml here should be updated with the required version tag under network.version
for upgrading the base images of CA, orderer and peer.
For example:
# yaml-language-server: $schema=../../../../platforms/network-schema.json
# This is a sample configuration file for setting up initial Fabric network with 1 RAFT Orderer and 5 Nodes.
network:
# Network level configuration specifies the attributes required for each organization
# to join an existing network.
type: fabric
version: 2.2.2 # currently tested 1.4.8, 2.2.2 and 2.5.4
upgrade: false # true : To upgrading Hyperledger Fabric version from 1.4.x to 2.2.x
frontend: enabled #Flag for frontend to enabled for nodes/peers
2 files need to be edited in order to support version change for kafka, zookeeper and couchDB
File | Fabric entity | Key |
---|---|---|
orderer vars | kafka | kafka_image |
orderer vars | zookeeper | zookeeper_image |
peer vars | couchDB | couchdb_image |
Executing Ansible playbook¶
The playbook site.yaml (ReadMe) can be run after the configuration file (for example: network.yaml for Fabric) has been updated.
Verify network deployment¶
For instructions on how to troubleshoot network, read our troubleshooting guide