Skip to main content
Version: Pre-Release

Operator Tips & Tricks

Insert key to Keystore:

This might be useful if you decided to switch domains or already have the secret phrase. Read more about switching domain in the next section.

To insert the key, use the following command:

target/production/subspace-node domain key insert \
--base-path NODE_DATA_PATH --domain-id DOMAIN_ID --keystore-suri "<Secret phrase>"

The command above will insert the keypair in the subfolder of NODE_DATA_PATH/domains/DOMAIN_ID/keystore.

suri is the secret phrase of the operator key.

Switch domains

Any Operator can switch domain they operate on anytime. In order to switch domain:

  1. Proceed to PolkadotJS
  2. Make sure to select the correct network at the top-left corner.
  3. Select the account you want to use in using the selected account.
  4. Select domains under submit the following extrinsic and choose switchDomain(operatorId, newDomainId) in the dropdown.
  5. Add your operatorId and newDomainId to the corresponding fields.

Staking-24

note

Only the account who registered Operator can swith the domain.

note

You need to move your keypair to a new location, if you switch domains. Follow the insert key to keystore section.

note

Stake of your Nominators won't be released, but will be moved to the new domain as well.


Register an operator using PolkadotJS interface (alternative way)

Alternatively, you can use PolkadotJS to register an operator on the domain. To register an operator on the domain:

  1. Proceed to PolkadotJS
  2. Make sure to select the correct network at the top-left corner.
  3. Navigate to Developer -> Extrinsics.
  4. Select the account you want to use in using the selected account.
  5. Select domains under submit the following extrinsic and choose registerOperator(domainID, amount, config) in the dropdown.
  6. Enter the domainId to be registered on.
  7. Enter the desired staking amount in the amount field.
  8. Put your public signing key at the signingKey field.
note

In the example below, 1 TSSC is selected for staking. 18 zeros are added because of the u128 type, so make sure to put 1000000000000000000 instead.

Staking-5

info

Make sure to use the signing key generated on the previous Create operator key step

  1. Enter minimumNominatorStake - in the example, it's set to 1 TSSC.
  2. Enter nominatorTax - in the example, it's set to 5%.
  3. Sign and submit the transaction to register an operator.

Staking-6

info

Make sure to select Submit Transaction since the transaction needs to be signed.

Once registered, the operator has to wait until the domain epoch is complete to start operating for the domain, participate in bundle production, and receive rewards.

Once the domain epoch is finished, the operator can produce bundles from the new epoch.

Any operator can add more stake by using the same functionality.

Useful commands

Running both validator (farmer) and operator nodes at the same time

tip

To run both operator and validator at the same time, provide requrired flags for both roles when starting your node.

target/production/subspace-node run `
--chain gemini-3h `
--farmer `
--name your_node_name `
-- `
--domain-id your_domain_id `
--operator-id your_operator_id `
--listen-on /ip4/0.0.0.0/tcp/40333 `
--bootstrap-nodes /dns/bootstrap-0.nova.gemini-3h.subspace.network/tcp/30334/p2p/12D3KooWBm1PHFHAP9mA6LNd72uFimyPoo6ixjdfgajzizXDYND2 `
--bootstrap-nodes /dns/bootstrap-1.nova.gemini-3h.subspace.network/tcp/30334/p2p/12D3KooWD3Q8JpAPoXR67ZQ1H1nXfPqCgPHCvWVcGxNKbfFmuPnu `
--bootstrap-nodes /dns/bootstrap-2.nova.gemini-3h.subspace.network/tcp/30334/p2p/12D3KooWEYs5yikat5NanzN7c2Sb4ngxJoCro9vXMULM2ZYVWW9H

You should see the node start successfully and begin syncing.

Staking-28

Switching to another server

To ensure the minimum downtime during your switch, we propose the following:

  1. Sync a new operator node using a throwaway key. You can generate a new key, just not insert it into your keystore.
  2. Stop the original node and rename the keystore (or whatever you feel comfortable doing to prevent you accidentally starting the original node up with the original signing key).
  3. Update the keystore on the new node with the original signing key.
  4. Restart the new operator node.