Setting Up a Testnet Node

This section will guide you through the process of setting up a testnet node on your system.

Before configuring your node, it's essential to understand what a testnet node is. In the context of Concordium blockchain development, a testnet node is a replica of the main network used for testing purposes. It allows developers to experiment with blockchain functionalities without impacting the main network.

Follow the steps below to set up your testnet node.

Step 1: Choose Deployment Option and Supported Platforms

Decide whether to run the testnet node locally on your machine or with a cloud provider. If running locally, consider the supported platforms:

  • Ubuntu 20.04/22.04

  • Docker

  • Windows 10 or later/Windows Server 2019 or later

  • macOS 10.14 or later

Be prepared for continuous uptime requirements if running locally, or opt for cloud deployment for convenience.

Step 2: Hardware Requirements

Ensure your system meets the following hardware specifications:

  • CPU: Quad-core x64 CPU (e.g., AMD Ryzenโ„ข 5000 series or Intelยฎ Coreโ„ข 11000 series).

  • RAM: Minimum 16 GB.

  • Storage: Minimum 1TB fast SSD (NVMe PCI Express 3.0 4x SSD).

Check out the detailed requirements for the mainnet nodes.

Step 3: Select Deployment Method

You can either:

  • Install the node directly on your system.

  • Use a Docker image available in the documentation.

Docker file configurations can be found in the docker compose file as described in the documentation. Don't forget to set a name for your node with the parameter CONCORDIUM_NODE_COLLECTOR_NODE_NAME.

Step 4: Sync Your Node

Follow the syncing guide based on your chosen platform (Ubuntu, Docker, Windows, or MacOS). This process may take several hours, depending on your system configuration.

Note: It may take hours because your node is freshly started and needs to recover all tghe previous blocks. You should find your node name on the Concordium testnet dashboard. It will take less than a day until your testnet node is fully synced.

Step 5: Monitor Syncing Progress

Check the Concordium testnet dashboard to monitor your node's syncing progress. Wait until the Fin Length (Finalization Length) matches the highest value used by the majority of nodes.

You can continue the development once the height value is the same as in CCDScan.

Note: To allow the network dashboard display nodes in the network and their current status, a node must run collector. The collector is enabled by the default start-up script but can be disabled.

Step 6: Verify Syncing State

Alternatively, use the concordium-client tool to verify the syncing state of your node:

concordium-client consensus status --grpc-port 10001

Ensure that the "last finalized block height" matches the highest value used by the majority of nodes:

Step 7: Configure Network Settings (Optional)

Enable inbound connections on port 8889 (testnet) for optimal network participation on your instance. You can allow inbound connections from any IPv4 and IPv6 address by selecting and ::/0 on the port 8889.

Note: This step is not mandatory but recommended for better network performance. Feel free to skip this step if you are not feeling confident editing the inbound connection rules of your instance.

Step 8: Check Node Status

Verify that your node collector is up and running on CCDScan. Look for your node's name in the dashboard's network section.

Last updated