How to Add an External Quorum Node to an Enterprise Ethereum Network

·

Enterprise Ethereum networks built on Quorum often require integrating nodes from different environments. This guide provides a clear, step-by-step approach for connecting an external Quorum node to an existing Quorum network, enabling hybrid or multi-cloud blockchain setups.


Prerequisites for Adding an External Node

Before starting, make sure you have the following:


Step-by-Step Guide to Adding an External Node

Step 1: Access Your Network Dashboard

Navigate to your blockchain management console. Locate the Quorum network you want to expand and select the Add Node option. If you don’t have an existing network, you’ll need to create one first.

Step 2: Register the External Node

A dialog box will appear prompting you to enter node details:

Once created, the node will appear in your node list with a status indicating it’s pending configuration.

Step 3: Configure the External Node

Click on the new node’s name to access its Configuration Page. Here, you will find the necessary parameters and details required to configure the external node instance.

Step 4: Gather Required Node Information

On the external node’s host machine, collect the following connection details:

Step 5: Input Connection Details

Return to the Configuration Page in your dashboard. Click the Edit button, input all the gathered information accurately, and submit the form.

Step 6: Add as a Consensus Node (Optional)

If the node should participate in block validation, you must manually add it to the consensus group. This typically involves connecting to an existing consensus node and using its RPC API to propose the new node as a validator.


Important Note on Network Updates

The configuration information displayed on your dashboard will update automatically whenever there are changes to the network. However, you are responsible for manually applying these updates to your external node's local configuration files. Failure to synchronize these settings can lead to connection loss or consensus failures.

👉 Explore more strategies for node synchronization


How to Set Up an External Test Node

For testing and development purposes, you can quickly set up a Quorum node on an Ubuntu system using the following method.

Note: This setup is not recommended for production environments due to security and performance considerations.

Step 1: Install Docker and Docker-Compose

Update your system and install the necessary containerization tools using the terminal:

sudo apt update && sudo apt install docker.io
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && sudo chmod 755 /usr/local/bin/docker-compose

Step 2: Install and Initialize the Quorum Node

Download and execute the automated installation bootstrap script:

wget https://baas-sdk.oss-cn-hangzhou.aliyuncs.com/bootstrap-1.0.0.sh -O bootstrap.sh && chmod 755 bootstrap.sh && ./bootstrap.sh

During execution, the script will prompt you to input the configuration parameters obtained from your network’s Configuration Page. Paste the values into the corresponding fields.

Step 3: Manage Your Test Node (Optional Commands)

Use the bootstrap script to control your node:


Frequently Asked Questions

Q: What is the main benefit of adding an external Quorum node?
A: Adding external nodes allows organizations to create a hybrid blockchain architecture, integrating on-premise systems, other cloud providers, or partner nodes into a single, cohesive Quorum network without being locked into a single vendor.

Q: Can an external node become a consensus node?
A: Yes, but it requires manual intervention. An administrator must use the RPC interface of an existing consensus node to formally propose and vote the external node into the validator set, ensuring network integrity.

Q: Why do I need to manually update the external node's configuration?
A: The external node operates outside the primary managed service environment. While the central dashboard reflects network changes, the external node has no automated mechanism to receive these updates, making manual synchronization necessary to maintain connectivity and consensus.

Q: Are the ports like RpcPort and WSPort mandatory?
A: No, they are optional. The RPC port is needed if you intend to interact with the node directly via RPC calls, and the Websocket port is required for real-time event listening. For a basic peer-to-peer node, only the essential ports (P2pPort, TMPort) are strictly required.

Q: Is this process specific to a single cloud provider?
A: No, the general principles of adding an external node to a Quorum network are universal. The steps involve gathering connection details and configuring the node to join the network's peer-to-peer layer, which is consistent across most implementations.

Q: What is the most common point of failure when adding an external node?
A: The most common issues are network-related, such as firewall rules blocking the necessary P2P or transaction manager ports, or inaccuracies in the entered public keys and IP addresses. Double-checking all values is crucial.