Installation
To install the OneFinity Network validator node on your local machine, follow these steps. First, ensure you have configured user permissions, script settings, and keys. The Validator script, which you'll use to manage your node, supports Mainnet, Devnet, and Testnet.
Install Your Node(s)
Run the following commands:
Upon completing the previous step, a menu will appear offering several options. Choose option 1
to proceed with the installation of the node.
NOTE
Alternatively, you can trigger the installation by running this command:
Indicate the number of nodes you want to run, i.e.
1
Indicate the name of your validator, i.e.
OneVal
Exit without starting (we need keys first) by using
14 - quit
Prepare your keysβ:
Create a new folder "VALIDATOR_KEYS" to serve as a local backup when updating:
Generate a certificate file containing your Validator key by running the keygenerator
:
Copy the generated validatorKey.pem
file to the config
folder of your node(s), and repeat for each node.
NOTE
Each node needs its unique validatorKey.pem
file
To ensure your node can restart smoothly after an upgrade, transfer the validatorKey.pem
file, compressed in a ZIP format, to the $HOME/VALIDATOR_KEYS/
directory. It's crucial that each node possesses a distinct validatorKey.pem
file, repeat for each node:
For instructions on backing up and protecting your keys, see the Management section.
Start the node(s)β:
Start the node visual interfaceβ:
After your node is running, monitor its status through the TermUI
interface. Go to $HOME/onefinity-utils
, then launch TermUI
for each node:
NOTE
When setting up your environment, you will start with your first node, named node-0
, which operates as a REST API and listens on port 8080
by default. Following node-0
, you will configure node-1
to run on port 8081
, and you'll continue this pattern for any subsequent nodes, incrementing the port number by one each time.
Update your node(s)β:
To upgrade your node, run the provided script and choose one of the available options.
10 - github_pull
downloads the latest version of the scripts3 - upgrade
7 - start
14 - quit
These are the basic steps. Please carefully read the on-screen instructions and refer to the script's README file. You can also ask questions in the OneFinity Validators chat.
Secure Your Node: Protect Your Private Keys
To ensure you maintain control over your node, it is crucial to safeguard your private keys. Without them, your ability to manage your node effectively is compromised. Additionally, if a third party gains access to your private keys, you could face a significant financial loss. Therefore, it's important to exercise caution and prioritize the security of your keys.
Creating a Safe Backup
It's recommended to store a backup of your private keys in a secure location outside the server running your nodes.
Locate your keys within the folder path:
$HOME/onefinity-nodes/node-0/config
. If you operate multiple nodes (referred to as βn
β nodes), ensure you follow this step for each one.Implement strict access controls and encryption to enhance the security of the backup.
By taking these preventative measures, you can better protect your node and secure your investment.
Choosing a custom configuration tag or branchβ
WARNING
This option should only be used for debugging or testing ahead of a pre-release tag. Use it at your own risk!
The power of the scripts set has been leveraged with a new addition: the possibility to tell the scripts a specified tag or branch (not recommended using a branch due to the fact that an unsigned commit might bring malicious code or configs)
To accomplish this, edit the variables.cfg file
locate the OVERRIDE_CONFIGVER
option and input a value there, something like tags/T1.3.14.0
. The tags/
prefix will tell the scripts to use the tag and not search a branch called T1.3.14.0
. Call the upgrade
command on the scripts to install the desired configuration version.
Resetting the value to ""
will make the scripts to use the released version.
WARNING
The OVERRIDE_CONFIGVER
is not backed up when calling github_pull
operation.
Last updated