Producing Node Setup

Producing Node Setup

📘

System contracts required

These instructions assume you want to launch a producing node on a network with system contracts loaded. These instructions will not work on a default development node using native functionality, or one without system contracts loaded.

Goal

This section describes how to set up a producing node within the ARISEN network. A producing node, as its name implies, is a node that is configured to produce blocks in an ARISEN based blockchain. This functionality if provided through the producer_plugin as well as other aos Plugins.

Before you begin

Install the ARISEN software before starting this section.
It is assumed that aos, arisecli, and awallet are accessible through the path. If you built ARISEN using shell scripts, make sure to run the Install Script.
Know how to pass aos options to enable or disable functionality.

Steps

Please follow the steps below to set up a producing node:

  • Register your account as a producer
  • Set Producer Name
  • Set the Producer's signature-provider
  • Define a peers list
  • Load the Required Plugins

1. Register your account as a producer

In order for your account to be eligible as a producer, you will need to register the account as a producer:

arisecli system regproducer accountname1 EOS1234534... http://producer.site Antarctica

2. Set Producer Name

Set the producer-name option in config.ini to your account, as follows:

# config.ini:

# ID of producer controlled by this node (e.g. inita; may specify multiple times) (arisen::producer_plugin)
producer-name = youraccount

3. Set the Producer's signature-provider

You will need to set the private key for your producer. The public key should have an authority for the producer account defined above.

signature-provider is defined with a 3-field tuple:

  • public-key - A valid ARISEN public key in form of a string.
  • provider-spec - It's a string formatted like :
  • provider-type - KEY or awallet

Using a Key:

# config.ini:

signature-provider = PUBLIC_SIGNING_KEY=KEY:PRIVATE_SIGNING_KEY

//Example
//signature-provider = RSN6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEY:5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

Using awallet:

You can also use awallet instead of hard-defining keys.

# config.ini:

signature-provider = AWALLET:<data>   

//Example
//RSN6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEOSD:https://127.0.0.1:88888

4. Define a peers list

# config.ini:

# Default p2p port is 9876
p2p-peer-address = 123.255.78.9:9876

5. Load the Required Plugins

In your config.ini, confirm the following plugins are loading or append them if necessary.

# config.ini:

plugin = arisen::chain_plugin
plugin = arisen::producer_plugin