Skip to main content

Advanced Usage

Controllers and Nodes​

A key feature of audius-ctl is the ability to interact with and control multiple Nodes from a single "Controller". Any computer or virtual machine can be a Controller, a laptop, a shared Virtual Private Server for your team, or even the VM running a Node itself. Only one Controller is needed, but Node Operators can configure as many Controllers as they would like.

Node Operators manage all of their Nodes, or a subset of their Nodes, from a single command line utility. Rather than needing to access each Node directly to issue commands, a single "controller" machine, using configuration profiles, is able to issue commands to several Nodes over ssh.

Audius Control Utility​

Installing and configuring audius-ctl on the Controller includes the command line utility audius-ctl

Suggested Configuration​

Flexible Options

While it is recommended to use an additional machine as a controller, any machine can operate as a controller.

Controller on Node​

In this example, this Service Provider has elected to use the machine marked VM 1 to both run a node and serve as the controller for all of their other nodes.

Multiple Controllers​

description text goes here

Using a Virtual Private Server​

Keep private keys secure by requiring users interacting with Audius Nodes to log in to a Virtual Private Server and issue commands from audius-ctl there.


Downing a Node​

If for some reason you want to down an Audius Node, use the following command:

audius-ctl down
All together now

This command will down ALL of the Audius Nodes specified in the configuration. To down a single node, pass the URL as an additional argument, like this:

audius-ctl down content-1.example.com

The same can be done with the up command when you are ready to start the Audius Node again.


Content Node​

Storage Configuration​

Content nodes support s3 compatible blob storage as an alternative to SSD storage.

Enter your information into each field for each Audius Content Node you will be running.

audius-ctl configuration file with AWS storage config
network:
deployOn: mainnet
nodes:
content-1.example.com: # <--- THE URL OF YOUR CONTENT NODE
type: content
privateKey: abc123 # <--- UNIQUE PRIV KEY USED BY THIS NODE TO SIGN RESPONSES
wallet: 0xABC123 # <--- UNIQUE WALLET ADDRESS OF ABOVE PRIV KEY
rewardsWallet: 0xABC123 # <--- ADDRESS OF WALLET HOLDING STAKED TOKENS
storage:
storageUrl: s3://my-s3-bucket
awsAccessKeyId: abc123
awsSecretAccessKey: 321cba
awsRegion: us-west-2