Skip to content

Latest commit

 

History

History
173 lines (114 loc) · 5.5 KB

NODE.md

File metadata and controls

173 lines (114 loc) · 5.5 KB

Continuum Node Operator

A guide for Node Operators to run Continuum Node

Substrate version Twitter URL Medium

Development Note: It is still a WIP.

1. Running an Archive Node

An archive node stores the history of past blocks. Most of times, an archive node is used as RPC endpoint. RPC plays a vital role on our network: it connects users and dApps to the blockchain through WebSocket and HTTP endpoints. Here is a public RPC endpoint for Continuum RPC Node

wss://continuum-rpc-1.metaverse.network/wss

DApp projects need to run their own RPC node as archive to the retrieve necessary blockchain data and not to rely on public infrastructure. Public endpoints respond slower because of the large amount of users connected and are rate limited.

Requirements

Machine

  • Storage space will increase as the network grows.
  • Archive nodes may require a larger server, depending on the amount and frequency of data requested by a dApp.
Component Requirement
System Ubuntu 20.04
CPU 8 cores
Memory 16 GB
Hard Disk 500 GB SSD (NVMe preferable)

Ports

The Continuum node runs in parachain configuration, meaning they will listen at different ports by default for both the parachain and the embedded relay chain.

Description Parachain Port Relaychain Port Custom Port Flag
P2P 30333 30334 --port
RPC 9944 9945 --rpc-port
Prometheus 9615 9616 --prometheus-port

For all types of nodes, ports 30333 and 30334 need to be opened for incoming traffic at the Firewall. Collator nodes should not expose WS and RPC ports to the public.


Installation

There are 2 different ways to run an Continuum node:

Using Binary - run the node from binary file and set it up as systemd service

Using Docker - run the node within a Docker container

2. Building from source

Window users: please use this tutorial to setup your build environment

Linux-based machine

Clone MNet Blockchain code

Go to BitCountry team repo, clone the repo from correct commit hash.

# clone the code locally

git clone https://github.com/bit-country/Metaverse-Network.git

# change directory

cd Metaverse-Network

# select correct `continuum-release-0.0.2` branch

git checkout continuum-release-0.0.2

**Install Make

sudo apt-get install build-essential

Install Rust

curl https://sh.rustup.rs -sSf | sh

Build environment

make init
``1

After initializing you can then start building by using the cargo command:

```sh
cargo build --release --features=with-continuum-runtime

In case your build fails, please use this command first:

sudo apt install cmake git clang libclang-dev build-essential

Once the build has finished you will have the metaverse-node binary available in the target/release folder. You can start a node for Continuum Chain from the root of the directory like so:

./target/release/metaverse-node --chain continuum --rpc-methods=unsafe --rpc-cors=all --ws-external --rpc-external --ws-max-connections=100000 --name continuum-rpc-1  --bootnodes /ip4/34.126.180.57/tcp/30333/p2p/12D3KooWRDYGTk7gyz54qLDi8dcJTjEaPe6qRuvY8wankNyi1zKq  --telemetry-url 'wss://telemetry.polkadot.io/submit/ 0' -- --execution wasm --chain polkadot

3. Using Docker

We publish the latest version to the Docker Hub that can be pulled and ran locally to connect to the network. In order to do this first make sure that you have Docker installed locally. How to install and run Docker

Downloading the docker image

docker pull bitcountry/continuum-collator-node:b2d0ea7

Running the docker image

You can test if the docker image is running by using the following command, but the node id and the chain data will be deleted after you shut down the docker container:

docker run bitcountry/continuum-collator-node:latest --chain continuum

Now, it's time to set up your node to connect to Continuum Bootnode, you need to choose which folder you would like to store your chain data. Ensure the folder exists and you have write permission for the folder.

Assuming the example path you want to use locally is path/to/continuumDb/continuum-node, the command would be:

docker run --network=host -v /continuumDb/continuum-node:/continuum-db bitcountry/continuum-collator-node:latest -d /continuum-db --chain continuum --bootnodes /ip4/34.126.180.57/tcp/30333/p2p/12D3KooWRDYGTk7gyz54qLDi8dcJTjEaPe6qRuvY8wankNyi1zKq --telemetry-url 'wss://telemetry.polkadot.io/submit/ 0'  -- --execution wasm --chain polkadot