Nodes

KompiTech Blockchain Platform provides an easy to use interface to manage the lifecycle of the Hyperledger Fabric nodes.

Note

Before manipulating any Fabric resource make sure you’re logged in, have your organization selected properly and Hyperledger Fabric is selected from the Blockchain menu.

Peers

A Fabric blockchain network is comprised primarily of a set of peer nodes (or, simply, peers). Peers are a fundamental element of the network because they host ledgers and chaincodes (smart contracts). Recall that a ledger immutably records all the transactions generated by chaincodes.

KompiTech Blockchain Platform runs the peer in three separate containers:

  • Peer - Main container for processing transactions.

  • Couch DB - Caching database for query requests.

  • Docker - Docker environment for chaincode containers managed by peer.

Create Peer

  1. Navigate to Resources option in the side menu.

  2. Make sure the Peers tab is selected.

  3. Click the + Peer button in the upper right corner.

  4. Fill in the form with details and click the Create button.

Fields description

  • Name - Name of the peer will be used when constructing its URL.

  • Fabric version - Version of the Fabric used for this peer.

  • Additional User certificates - List of additional admin certificates to be added to the peer.

  • Location - Region of the data center where the peer containers will be started.

  • Additional CA Certificates - List of additional CA certificates to be added to the peer.

Peer sizing fields

  • CPU - Value in milliseconds. (1000m means one full vCPU time.)

  • Memory - Value in megabytes.

  • Storage capacity - Size of peer volume in gigabytes where ledger and chaincode files are stored.

Note

After a channel is created the cmcc chaincode is automatically installed by the KompiTech Blockchain Platform to handle channel configuration updates.

Update Peer

Currently, two things can be updated on the peer node:

  • Fabric version

  • CPU and memory sizing

  1. Navigate to Resources option in the side menu.

  2. Make sure the Peers tab is selected.

  3. Open the detail of the peer you want to update.

  4. Click the Edit button in the upper right corner.

  5. Modify the values in the form.

  6. Click the Save button at the bottom of the page.

Increase Peer Storage capacity

Currently, there’s no direct way of increasing the storage capacity of the peer. However, it can be achieved by re-creating the peer.

  1. Create a temporary peer node with same or bigger storage capacity and same parameters (excluding name) as the peer you want to re-create.

  2. Join the temporary peer to the same channels as the peer you want to re-create.

  3. Wait until the temporary peer is able to process transactions.

  4. Delete the peer you want to re-create.

  5. Create a peer node with bigger storage capacity and the same parameters as you deleted in step 4.

  6. Wait until the new peer is able to process transactions.

  7. Delete the temporary peer.

Delete Peer

Warning

By deleting a peer all data on its volume containing ledger and chaincode packages will be deleted. If you don’t want to lose all the data on the peer make sure another peer is connected to the same channels and has all ledger data synced.

  1. Navigate to Resources option in the side menu.

  2. Make sure the Peers tab is selected.

  3. Open the detail of the peer you want to delete.

  4. Click the Delete button in the upper right corner.

  5. Confirm the deletion by clicking Yes.

Orderers

Fabric features a kind of a node called an orderer (it’s also known as an “ordering node”) that performs transactions ordering, which along with other orderer nodes forms an ordering service. Because Fabric’s design relies on deterministic consensus algorithms, any block a peer validates as generated by the ordering service is guaranteed to be final and correct. Ledgers cannot fork the way they do in many other distributed blockchains.

In addition to their ordering role, orderers also maintain the list of organizations (consortium) that are allowed to create channels.

Create Orderer

  1. Navigate to Resources option in the side menu.

  2. Make sure the Orderers tab is selected.

  3. Click the + Orderer button in the upper right corner.

  4. Fill in the form with details and click the Create button.

Fields description

  • Name - Name of the orderer will be used when constructing its URL.

  • Fabric version - Version of Fabric used for this orderer.

  • Additional User certificates - List of additional admin certificates to be added to the orderer.

  • Location - Region of the data center where the orderer will be started.

  • Additional CA Certificates - List of additional CA certificates to be added to the orderer.

Orderer sizing fields

  • CPU - Value in milliseconds. (1000m means one full vCPU time.)

  • Memory - Value in megabytes.

  • Storage capacity - Size of orderer volume in gigabytes where the channel information is stored.

Update Orderer

Currently, there are only two things that can be updated on the orderer node:

  • Version

  • CPU and memory sizing

  1. Navigate to Resources option in the side menu.

  2. Make sure the Orderers tab is selected.

  3. Open the detail of the orderer you want to update.

  4. Click the Edit button in the upper right corner.

  5. Modify the values in the form.

  6. Click the Save button at the bottom of the page.

Delete Orderer

Warning

By deleting orderer all data on its volume containing channel information will be deleted. If you don’t want to lose all the data on the orderer make sure there is at least one other orderer in the Raft cluster and the system channel with the one you want to delete.

  1. Navigate to Resources option in the side menu.

  2. Make sure the Orderers tab is selected.

  3. Open the detail of the orderer you want to delete.

  4. Click the Delete button in the upper right corner.

  5. Confirm the deletion by clicking Yes.