To lay out the requirements for the initial RChain test net.
Goals
The test net is very much akin to a beta system, where users can interact with features before they hit production.
To demonstrate progress on the project to the community.
Create an environment where dApp developers can begin testing their applications.
Machine Requirements
Number of nodes
The initial test net should comprise of approximately 12 nodes. This is an arbitrary number.
System footprint
Physical Ubuntu Linux Nodes - 3
Physical Centos Linux Nodes - 3
AWS Nodes - 3
Docker Nodes - 3
Physical machine requirements
4 GB RAM
2 Cores
Physical storage - default is fine - 50 GB Henry Till I don't think we need much - please confirm.
Network Topology
The AWS instances will obviously be running remote to the other physical machines, in as much as it is possible, it's desirable to have the all the nodes be geographically disperse. This may not be possible initially, but this is a goal we should strive towards. This is where the RChain community could help with testing later on.
Deployment of Software Updates
The RChain software is available in Debian, rpm packages and Docker images. These nodes must be configured using these packages and images. The packages have a built in update mechanism. Updates on each node will take place in the following fashion:
Debian:
apt-get update
RPM:
rpm -U
Docker
docker pull rchain/rnode
Timing of Updates:
The test net will be updated after every release. Releases generally take place on Thursdays. Updates to the test net will take place on Monday mornings. The reason for this, is to ensure that the development team is available to support any possible issues that users may encounter after the update is deployed.
Data and State on the Test net:
The RChain platform is still very much under development. There are no guarantees on data stored on the test net. An update may require that the history on the network be wiped. In this event, contract authors would need to re-deploy their contracts, and restart any tests that were in flight.
Addressing issues & Support:
dApp developers that encounter an issue or unexpected behavior while working with the test net should file a bug in Jira. ToDo: Create a component in Core for test net related issues and triage workflow.