Get your node running
A few weeks ago I sent out a survey to understand what issues core contributors might run into when setting up a node. Thanks to everyone who filled out the survey! (N=17)
It turns out, most CC’s that filled out the survey are happy to set up a node . If you want to take a break from holiday gatherings in the coming period, here’s your chance!
Budget has been set aside to support 10 Core contributors to set up a node, by reimbursing purchase of a dedicated device.
How it works
- The first 10 CC’s to request order approval from PeopleOps can go ahead and order on Amazon using this order list (vetted by @Petty). Ping in #PeopleOps: “I’m setting up a node by V1 and need a device”
- Only orders with approval, that stick to the order list can be expensed through Expensify
- The device needs to be configured to act as a node
*If you want to set up a node that requires a static IP address that you don’t already have, you might incur costs from your ISP. These costs cannot be expensed.
**Be mindful that the more nodes are set up the better for Status as a network. If you have a device that you can repurpose, please leave a slot for someone else to order
Setting up
- The survey results showed some concerns about setting up a node, especially as a non-dev. A manual is forthcoming! @Luis and @jakubgs are working on making this as easy as possible. Target audience for this manual is anyone. Keep an eye on this thread for a link to the manual.
- We suggest to start with a basic node for personal messaging use (a.k.a Node S). Obviously you’re free to jump straight to running a full node. We suggest to start small as the majority of those who filled out the survey either does not have a static IP address or doesn’t know. Starting with Node S is a way to familiarize yourself without getting into ISP bureaucracy.
FAQ (from survey)
-
What OS do I need?
- You will need a device that can run Linux. With the following software dependencies:
- golang >= v1.13
- docker
- docker-compose
- jq
- git
- make
- You will need a device that can run Linux. With the following software dependencies:
-
My internet connection can be spotty. Does that matter? How?
- A spotty internet connection will interfere with the connections made to peers by your node. If you lose connection, you will constantly try to establish new links to peers in the network. Not only does this increase your bandwidth and computation of the node, but it also decreases your ability to stay up to date on the network and serve information to any clients that are connected. For an S node this is not a big deal.
-
I can’t guarantee uninterrupted uptime. Does that matter?
- When your client is down, it will not be able to pass information to other peers in the network, or serve requested information to clients that are connected who would like to read messages. For an S node this is not a big deal.
-
I’m concerned about the costs of running an Ethereum full node (L). What are my options?
- The selected device and peripherals sums up to $263. While you would need this set for an Ethereum full node, there are more cost effective options for the messaging only nodes (S and M).
-
What is energy consumption of S, M and L nodes?
- We need to measure this when more people are set up. The amount of energy will depend on the machine that is running the software. The referenced machines (NanoPC T4) are small form factor machines that are meant to always be on and have a small power footprint compared to a desktop or laptop machine.
- The bandwidth will be more substantial and can vary depending on the size of the network. Standard amounts of bandwidth that are required will need to measured by those running a node.
Types of nodes (for reference)
For reference this is a rough distinction of the types of nodes:
S - Messaging only, for personal use
Send and receive messages messages with your own client on the same network.
Requires PC configuration and stable internet connection.
M - Messaging only, for yourself and others
Send and receive messages messages with your own client as well as allowing others to do the same using your node.
Requires PC configuration and stable internet connection, router configuration and admin stuff to purchase a static IP from your ISP (Availability and cost will differ, please check with your ISP).
L - Messaging and transactions for yourself and others (Ethereum full node)
Send and receive messages messages and transactions with your own client as well as allowing others to do the same using your node.
Requires PC configuration and stable internet connection, router configuration and admin stuff to purchase a static IP from your ISP (Availability and cost will differ, please check with your ISP). + significant storage space which is available on a device provided by Status.
None - Connect to someone else’s node and use Status as you do today.
Lastly…
Here’s a quote to inspire why it’s important for us to run Status locally so we can experiment with network restrictions and learn how to support others.
Posted #Public on Status on Nov 26 by someone from Iran looking for solutions to communicate while the Internet was blocked in the country:
This is the story : the government shutdown the internet but it does not mean that people don’t have access to internet. The government just disconnected the country gateway from outside world but the internet inside the country is working for servers and services that are hosted inside the country. As soon as the connection from outside world disconnects, all messaging apps stop working, telegram, whatsapp etc… And no one trust apps that are hosted inside the country.
Let’s assume we run couple of mail servers on data centers inside the country, and we knew that the government owns these data centers and can monitor traffic inbound and outbound and also has access to the servers, is there any way that they know those mail servers are running to support STATUS? And any way to trace users location or IPs? more than 60 million people are looking for a solution in this situation and they are concerned about their safety and privacy since leaking any information could cause death penalty.