[Tech Preview] Multinode Dashboard Binaries

A new command has been added:

storagenode info --json --config-dir <insert your storage node config dir here> \
| multinode add --config-dir <insert your multinode config dir here> -

If you are running the multinode dashboard on a different machine you can pipe the output into a file, transfer it and than import it into the multinode dashboard. Checkout the --help output for usage examples.

my identity isn’t in the default location nor in a folder named identity.
tried the
storagenode info --json --config-dir <insert your storage node config dir here>
and that works, but it doesn’t find the identity.

so i did
storagenode info --json --config-dir <insert your storage node config dir here> --identity-dir <storagenode identity dir here>

and it just keeps saying…

{“error”: "file or directory not found: open identity/identity.cert:

i assume because there is a mistake and it will only work if identity.cert is located in a folder called identity…

made a copy of the identity folder not named identity to a folder called identity.
and it did work…

but it only seems to work if i’m actually located in the folder containing the identity folder…

this stuff is still really finicky to go through.
can’t we just get it made so we can copy directly from the storagenode webdash’s and paste into the multinode dashboard… one clean action OS agnostic and just plain copy paste

With the amount of people who made their node dashboard public (despite being warned against doing that) no, I don’t think that’s an option unfortunately.

1 Like

maybe they would just do so we didn’t have to copy paste stuff multiple times for each node.
just being able to take the output from the storagenode info command.

and directly copy paste into the multinode at one time, rather than two,
would already greatly reduce the amount of time it takes to add new nodes…

i totally agree about the webdash, i just didn’t consider that because i consider it unsafe and would never host it towards an “unsafe” network, if there is such a thing lol

I’m a pessimist, so I think that’s the only kind of network that exists. :slight_smile:

Yeah, enabling you to just copy the json would help. But at that point, isn’t piping it to the multinode add command as @littleskunk showed easier than having to copy paste anything to begin with? I noticed that this suggestion was even included in the help output of the storagenode info command.

my main problem becomes that there are different machines involved, but i remote in or such… so moving stuff around is just a bother…

did end up finding a workable solution that didn’t totally make my fingers cramp up before i was done lol

This one command generates api key for multinode and works on all my nodes (i used default directory structure). Just paste on command prompt and done :slight_smile:

"c:\Program Files\Storj\Storage Node\storagenode.exe" issue-apikey --log.output stdout --config-dir "C:\Program Files\Storj\Storage Node" --identity-dir "C:\Users\VM1\AppData\Roaming\Storj\Identity\storagenode"

Hello @CryptoDude ,
Welcome to the forum!

You are right, this is the correct command. You also may try a new command info, it will generate not only the API key, but also shows the public address and port and NodeID.
If you add --json, the result maybe later used with multinode.exe add command.


11 posts were split to a new topic: Nodes web api controller: illegal base64 data at input byte xx

This. Can we get darkmode?

Sure. Just open a PR and we will merge it.

Is this how you would like to get called? I would like to get treated with respect. If you have something to say please try again without insults.


Why should anyone contribute a PR when Storj is a for profit company and there exists no mechanisms to recognise external contributions? You think SNO’s should help someone else make a profit at no benefit to themselves?

1 Like

Yes I think so because that was how I ended up working on this project. I started to contribute for free. My storage node payout was incentive enough. A short time later I was hired. My contribution helped me to get an exciting job.

What helped me a lot in the early days was a great mentor. I want to give back some love. If any of you would like to contribute I am happy to help. For a dark mode I can go and find the corresponding commit for the storage node dashboard. That should allow someone from the community to replicate it for the multinode dashboard.


I’m very glad it worked for you personally. But, I am in general far more suspicious of the motives of corporates. It certainly doesn’t help the situation the complete lack of progress on community programs so far by Storj. It appear also to “not be a priority”.

first of all I would like to thank you for the multinode dashboard project. It is really helpful for me and I appreciate the time and effort that went into it. It is a big improvement over opening the dashboard for each node. But I still see a lot of room for improvement before it can replace the regular dashboard.

I set up the multinode dashboard today using Docker which worked great. (storjlabs/multinode:latest)

Necessary before useful:

  • Documentation. Yes, it’s just a technical preview. The documentation on how to set up a storagenode is very good. I would like to see something similar with a step-by-step guide.
  • Messages: When doing something like adding a new node. Especially if you entered wrong information, there is no warning that something went wrong. A “snack bar / toast” would suffice. How To Create a Snackbar / Toast
  • Notifications from the normal dashboard are missing.
  • Loading animations are missing.
    • When opening a page.
    • When using Refresh (F5), the screen stays blank for a few seconds.
    • Adding a node or updating a name from a node. Sometimes it takes a few seconds.
  • The Bandwidth & Disk page loads slowly for me (41 seconds). Yes, there is a lot of data being retrieved and processed. I would like to have a progress bar that shows from how many nodes the data has already been retrieved from. For processing the data, it would be sufficient to set the progress bar to indeterminate.
  • It would be great if there was a view that didn’t combine all the nodes into one graph, but a graph where there was a line for each node. That way you could see if one node is performing worse than others.
  • Changing a node: I would like to change all values of a node. Especially the “Public IP Address”.
  • QUIC: Status if “Misconfigured” is missing.
  • Redirects are missing:
  • Logs: Now that it is secure through the API key. Please allow on the dashboard that I can see the logs directly on the dashboard. It is very tedious to log in to different storagenodes to see the logs.
    • From all storagenodes together or for one storagenode.
    • Simple filters to select info, warnings and/or errors.
    • Time period in which I want to see the logs.
  • Health: I would like to see on the normal dashboard or on the multinode dashboard immediately if everything is ok or if something is wrong.
    • I used to look on the normal dashboard if there is any kind of traffic under “Bandwidth Used This Month”. If there is nothing there for a day, it is clear that something is wrong. Yes, this happened to me a couple of times when I changed the firewall rules. Storagenode was still in “online” status, but traffic was blocked. → Red alert.
    • It should show that a newer version is available. → Yellow alert.
      • If the version is older than the last supported version → Red alert.
    • Status “offline” → Red alert
    • Suspension or Audit or Online will get a lower value and in the normal dashboard the text will show yellow or red → Yellow or Red alert.
    • Display the above messages in the notifications so that you have an overview of what happend.
# add nodes from json file containing array of nodes data
$ multinode add nodes.json

How would such an array of multiple nodes look like to get properly imported?

storagenode info --config-dir <insert your storage node config dir here>

But redirect to the file:

storagenode info --config-dir <insert your storage node config dir here> --json > node1.json

Then add them all to the array:

jq '.' -s node1.json node2.json node3.json > nodes.json

now you should be able to import them:

multinode add nodes.json

Or using some bash:

for n in node{1..10}.json; do
    multinode add $n
1 Like

I see. Haven’t tried it yet, but I guess it is basically the same format like when you export the nodes table as json from the sql database?

No. The command info with option --json generates specific format, which can be imported to multinode dashboard.
When you form an array from such jsons, this array can be consumed by multinode add command at once.
None of these are related to nodes table, maybe only some values.