Multiple nodes install windows 7

Ok.
I created 4 batch files
which do
create node
authorize node
setup node
run node

[https://dropmefiles.com/957Dk]

BUT storagenode.exe does not create trust-cache.json file and Orders directory.

AND storagenode.exe is giving me the error:
run storagenode.exe --config-dir=“D:\STORJ\STORJNODE11\Config” run
2021-05-07T18:00:02.713+0300 INFO Configuration loaded {“Location”: “D:\STORJ\STORJNODE11\Config\config.yaml”}
2021-05-07T18:00:02.739+0300 INFO Operator email {“Address”: “email@gmail.com”}
2021-05-07T18:00:02.745+0300 INFO Operator wallet {“Address”: “0x0000000000000000000000000000000000”}
2021-05-07T18:00:02.749+0300 INFO db database does not exists {“database”: “info”}
2021-05-07T18:00:02.754+0300 INFO db database does not exists {“database”: “bandwidth”}
2021-05-07T18:00:02.757+0300 INFO db database does not exists {“database”: “orders”}
2021-05-07T18:00:02.760+0300 INFO db database does not exists {“database”: “piece_expiration”}
2021-05-07T18:00:02.765+0300 INFO db database does not exists {“database”: “pieceinfo”}
2021-05-07T18:00:02.776+0300 INFO db database does not exists {“database”: “piece_spaced_used”}
2021-05-07T18:00:02.781+0300 INFO db database does not exists {“database”: “reputation”}
2021-05-07T18:00:02.791+0300 INFO db database does not exists {“database”: “storage_usage”}
2021-05-07T18:00:02.797+0300 INFO db database does not exists {“database”: “used_serial”}
2021-05-07T18:00:02.801+0300 INFO db database does not exists {“database”: “satellites”}
2021-05-07T18:00:02.806+0300 INFO db database does not exists {“database”: “notifications”}
2021-05-07T18:00:02.813+0300 INFO db database does not exists {“database”: “heldamount”}
2021-05-07T18:00:02.817+0300 INFO db database does not exists {“database”: “pricing”}
2021-05-07T18:00:02.821+0300 INFO db database does not exists {“database”: “secret”}
Error: Error creating revocation database: revocation database error: could not parse DB URL D:\STORJ\STORJNODE11\revocations.db
storj.io/storj/private/revocation.OpenDB:30
storj.io/storj/private/revocation.OpenDBFromCfg:23
main.cmdRun:169
storj.io/private/process.cleanup.func1.4:363
storj.io/private/process.cleanup.func1:381
github.com/spf13/cobra.(*Command).execute:852
github.com/spf13/cobra.(*Command).ExecuteC:960
github.com/spf13/cobra.(*Command).Execute:897
storj.io/private/process.ExecWithCustomConfig:88
storj.io/private/process.ExecCustomDebug:70
main.main:385
runtime.main:204

newer version https://dropmefiles.com/EOST4

Too complicated :slight_smile:
Finally found a setup command

What do you mean?
storagenode.exe setup?
If I accidently deleted all folders in storage.path
Can I use this command to create it again?

Then your node will be disqualified.
But yes, you can restore folders and file storage-dir-verification with it, if config.yaml would be deleted too.

Why? What good of deleting settings?

I waited to create node 12 hours.
identity.exe create MyNode -
took over 12 hours 4 cores 3Ghz. I gave up.
there is something wrong with binary.

Generated 909158400 keys; best difficulty so far: 352021-05-08T02:28:01.934+0300 INFO Got a signal from the OS: “interrupt”
Generated 909158500 keys; best difficulty so far: 35Error: node ID error: context canceled

working version
https://dropmefiles.com/6fEqb

Now you can create your nodes like a killing spree :rofl: :rofl: :rofl:

I would need some help reading sc reports and filtering it.

–server.private-address string private address to listen on (default “127.0.0.1:7778”)

–server.address string public address to listen on (default “:7777”)

–contact.external-address string the public address of the node, useful for nodes behind NAT

I don’t understand this.
what does it mean “–server.private-address” ?

can port be the same as for --server.address?

If I do not start the node which is authorized with token of same email, as other running nodes, and same payment address as other nodes - will it affect my total payment or rating?

Can I rid of disk space check?
2021-05-08T18:59:43.779+0300 ERROR piecestore:monitor Total disk space is less than required minimum {"bytes": 500000000000}
ok just did it…

The another question:
If I connect HDD partition into NTFS folder, why do I still have space requirements error?

This is address and port for CLI dashboard. It cannot be the same as server.address.
The contact.external-address is address and port, advertised to the satellites. This address will be used by satellites and customers to contact your node.

The email address is unrelated to the node’s reputation, only audits score, suspension score and online score. Each node is independent of each other.

The mounted folder do not report the free space correctly, so you will get this error. Why you do not want to use a native way for Windows to mount disks to letters?

1 Like

Because I want config to be in uniform way.
In order for nodes to be easily plugable and transferable to other PCs.
Within same local network or with out.

storagenode.exe setup did not uncomment orders location in config.yaml
And I had errors about disk space requirements not met , having over 700GB free space though… (disk is mounted to separate letter)
Allocated: 5GB
Advertise: 500GB

I had to decrease size to
Allocated: 100GB
Advertise: 100GB

And only then node started.
I started it as program, not service.

Because Windows reports free space on mounted disk (which has letter assigned). In your case I think it’s C:\ and it has not more than 100GB free, or at least it doesn’t have 500GB of free space.

No, it is actuall O:\ drive and it has 744GB FREE space.

If you mount the drive as usual, is it coming to the same issue?

It did, at least till I changed size from 500GB to 100GB
Directory O:\STORJ\STORJNODE08\Data
I think it is because Allocated was set to only 5GB - too small.
For now I think starting with 30GB is ok.

Found some mistakes in batch files.
fixed.
v4 is here = https://dropmefiles.com/Pn1b9

I have generated 4 nodes with script and they are running in my home network.
Now I’m interested if storagenode can work with relative paths. :thinking:
because for detachability this is absolutely necessary.

And the other question what is it storagenode-updater.exe actually does?
Does it update data strcture or it updates the binary only?

Relative paths could not work.
storagenode-updater updates binaries (storagenode and itself). The migration is performed by storagenode.
The special purpose of the updater is updating nodes accordingly rolling update procedure, it tracks cursor on https://version.storj.io/ to update a binary only when NodeID would match the cursor. This allows us to do not shutdown a whole network, if we would introduce a bug. We will have a time to fix an issue before it would be too late.

Finally ENHANCED version for better detachability
https://dropmefiles.com/jUjve

Put binaries into Bin folder into your nodes dedicated Folder.

Unpack batch nearby.

Put auth token into Tokens\01.txt file (it may be any text file. 01 is not related to node nmber)
Adjust settings in batch/main.config.txt accordingly to your layout.

It all should look like this:

D:\STORJ

\ Bin \ *.exe
\ Tokens \ *.txt
\ batch \ *.bat

Run in a sequence:
create
authorize
setup
gen_install

You will see aside with STORJNODE__ folder, the
install_STORJNODE__.bat
and
remove_STORJNODE__.bat
files will apper.

install for:

  1. storagennode and storagenode-updater services registering
  2. Starting services
  3. Firewall port opening

remove for:

  1. Stopping services.
  2. storagennode and storagenode-updater services unregistering
  3. removing Firewall rules and port closing.

Simple as THAT!

Though you will have to manually do replacement of configuration and data files locations in config.yalm.
And of course, external IP address too!

Script for autoreplacement is yet to be written.

You should not create more than 1 node on a partition for the reason of updater services are targetting same binary.
Thus there certainly inconsistencies will occur.
The obvous solution is to Copy Bin \ *.exe forder per node.

Now you can easlily detach your node and transfer it to another windows based machine in a matter of minutes.
And finally forget about windows system folders nightmares.

1 Like

ANOTHER ENHANCED version 6 script for better detachability
https://dropmefiles.com/l7qws

Put binaries into Bin folder which should be inside of your nodes’ dedicated Folder.

Unpack batch nearby.

Put auth token into Tokens\01.txt file (it may be any text file. 01 is not related to node number)
Adjust settings in batch/main.config.txt accordingly to your layout.

It all should look like this:

D:\STORJ

\ Bin \ *.exe
\ Tokens \ *.txt
\ batch \ *.bat

Run in a sequence:
create
authorize
setup
gen_install

You will see aside with STORJNODE__ folder, the
commands_STORJNODE__.bat
files will apper.

install for:

  1. storagennode and storagenode-updater services registering
  2. Starting services
  3. Firewall port opening

remove for:

  1. Stopping services.
  2. storagennode and storagenode-updater services unregistering
  3. removing Firewall rules and port closing.

adjust for:

  1. Adjusting node to new location
  2. Adjusting paths in the config.yaml file

test for:

  1. Testing settings before applying the adjust command

eval for:

  1. Running node as program withoug service installation.

update for:

  1. Manual update of the storagenode.exe binary

Simple as THAT!

settings.txt file contans adjustable sittings
options.txt file contains “expandable” winbatch scripts

Dont forget to create Bin folder nearby your node folder if you are going to use dedicated binaries.

You should not create more than 1 node on a partition for the reason of updater services are targetting same binary.
Thus there certainly inconsistencies will occur.
The obvous solution is to Copy Bin \ *.exe forder per node.

Now you can easlily detach your node and transfer it to another windows based machine in a matter of minutes.
And finally forget about windows system folders nightmares.

I don’t see any reason for storagenode daemon to update itself.
storagenode-updater.exe weights more than storagenode itself.
Why? What it does?

42 Mb for updater? There must be the whole remote OS in there!
Is it?

If it all was designed for 1 node per IP and daemon itself eats up hundred times less memory than required for running a node, - why can’t it just update itself?

It makes the sense too little…

in windows App cant update itself, to copy new file service need to stop, and if it stop it cant copy itself , because it not work any more. Thats why external updater.
I designed my own updater, that update all servises in windows that has file name storagenode.exe