What is a Streamr Node?
Streamr nodes are the component of the Streamr network that is responsible for processing and forwarding data streams. Streamr is a decentralized platform for real-time data sharing that enables users to create, publish, and subscribe to data streams. The Streamr network is made up of a decentralized network of nodes that individuals or organizations around the world run.
Streamr nodes are responsible for several vital functions within the Streamr network, including:
- Receiving and forwarding data streams: Nodes receive them from publishers and deliver them to subscribers who subscribe to those streams.
- Processing data streams: Nodes can also perform processing tasks on data streams, such as aggregating, filtering, or enriching the data.
- Storing data streams: Nodes can store data streams in a decentralized, distributed database known as the Streamr Data Marketplace.
- Enabling real-time data exchange: The Streamr network uses WebSocket technology to enable real-time data exchange between nodes, allowing subscribers to receive updates to data streams in near real-time.
Overall, Streamr nodes play a critical role in the operation of the Streamr network, helping to ensure the reliability, scalability, and security of the platform.
How to Setup a Streamr Node – VPS method
I am in the process of updating this guide.
VPS System Requirements
- 1 vCPU
- 512 MB memory
- 500 gb bandwidth
In this example we’re using Racknerd, which is the low cost VPS service I recommend, but you can use any services with similar specifications.
Step 1 – Choose a VPS provider
First, you will need to choose a VPS provider that offers the resources and capabilities required to run a Streamr node. Some popular options include Racknerd, Upcloud, and DigitalOcean. You will need to sign up for a VPS services, I am providing my affiliate links for Racknerd, and DigitalOcean. Racknerd is very low cost, but locations are limited. Digital Ocean has many sites around the world to host, for a slightly higher fee.
Step 2 – Create a VPS instance
The package you choose should meet the above minimum system requirements. Anything above that will allow for a smooth installation and operation. The operating system to select is Ubuntu 20.04. Docker is required to get our Streamr node up running. If Docker is not already pre-installed, you will want to follow these steps to install it. Once your VPS instance is created, you will be assigned an IP address, username and password. We’ll be using those to login in the next step.
Install Docker commands:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
Step 3 – Login to VPS using PuTTy
To login, we’re going to use Putty. Open the application up and enter the IP address of you assigned service, use the default port 22, and ensure connection type is SSH. Click the Open button, and a terminal window will open up. In here you will type in the username, which is typically ‘root’ and the password you were assigned.
Download PuTTy here for free.
Step 4 – Download and extract the Streamr node software
To set up a Streamr node, you will need to download and extract the Streamr node software. This can be done using the wget command to download the software and the tar command to extract it.
Install streamr commands
Create a directory for your Streamr node:
mkdir ~/.streamrDocker
Run the installation wizard:
docker run -it -v $(cd ~/.streamrDocker; pwd):/root/.streamr streamr/broker-node:latest bin/config-wizard
*Please remember to store and keep your private key in a safe place we its provided*
Step 4 – Start the Streamr Node
Now that your have installed the software you can start your Streamr node with this command:
docker run -it -p 7170:7170 -p 7171:7171 -p 1883:1883 -v $(cd ~/.streamrDocker; pwd):/root/.streamr streamr/broker-node:latest
Video: How to Setup a Streamr Node using Racknerd