Insight view to config.yaml

As there is no any wiki about config.yaml, I desided to write small article information about it to acumulate information to one topic. I will write about rows that I know somehow what are they do, so don’t be shy and add some of your knolege olso.
Lets make it row by row.

preflight.database-check: true - this row turn on today by default, and it check before node start then your databeses have some level in integrity.

console.address: - this row is comented by default and have value localhost:14002, this is the place that you need to configure if you want see dashboard not only on same pc but for example in your local network. Need to delet # mark and put your local PC IP(not external IP) and port. Don’t forget to add inbound rule to firewall on PC.

contact.external-address: *.*.*.*:28967 - this is your external adress and port, here can be DNS and Port if you dont have fixed IP. This is addressand port that Sattelite and client will contact with your node. This port need to be opened on Firewall of router and made NAT rule to node PC. Also open in PC firewal. This port can be changed to some other.

identity.cert-path: C:\Identity8\storagenode\identity.cert
identity.key-path: C:\Identity8\storagenode\identity.key - this two rown are path to your node identity, if you have more than 1 node on PC as i have, choose this paths very carefuly that you dont use same identity to diferent nodes, it will end with DQ of boath nodes, very soon.

log.output: winfile:///C:\Program Files\Storj8\Storage Node\\storagenode.log - this is path to file with logs, it can be in any place you want. this is your email place, if node is suspended or DQ you will be notified by this email.

operator.wallet: 0x00000000000000000000000000000000000 this is best option here, this is Ether account where you will receve money for your node.

server.address: :37000 - this is port number on local PC that node will listen for Sattelite and Clients incoming connection. It shold be unic per PC, so if you have more than 1 node, each node have to have own port number. Router NAT shold be configured to PC IP and this port number, Default is 28967, but as I have more than one node here in PC i chosed other. I alway make external port and this port the same number, then it it much esier to mantance it if you have lot of nodes.

server.private-address: - this is port nuber for Node internal use, in windows GUI app it shold be Unic on PC, default is 7778.

storage.allocated-bandwidth: 20 TB- this option regulates how much trafic you can use in MOnth, but this function is depricated so no use any more.

storage.allocated-disk-space: 3.4 TB - how much discspade on HDD you allow to use, remeber it Maximum size, shold be 10% less than HDD real size.

storage.path: E:\ - this is path to your sorage HDD

Storage2.Database-Dir: F:\Storj8 - this is path to databases, by default there is no this fieture in config, and databases are on storagenode HDD, but i use separete place for thim on NVMe, node work and respond much faster but it has own risk, if NVMe is dead then node also will be lost.

Filestore.write-buffer-size: 1 MiB - this is also not default feature, this configure Buffer size in RAM. by default it is 128k so if file peace is 1Mb then it will need to write to it 8 times, but it dedicate this RAM ammount to every ingress piece in download, so if there is intencive ingres, significant RAM ammount will be consumed, Even with 1MiB buffer we will see signifcant reduction of write IOPS

storage2.monitor.minimum-disk-space: 500.0 GB - this feature is will make posible to use HDD smaller than 500GB, but this small size HDD is not profitable tu use, electrisity will cost more. But if you have spare 500 GB and you plane in future make biger node, you can start from it and then copy data to new node. As you start erlier then more data will get. Oldes is Node more money it make as after 9 months Heald amount will be 0% then earn more.


Quick clarification, the wallet address is for a Storj coin address or an Etherium address? I thought payouts are in Storj?

storj is Etherium token, so you need Etherium address in walet that suport Storj token

1 Like

Okay, since I’m only two months in I’m just using Binance Storj address for deposits which works. But how exactly does that work if it needs an etherium address? How would I know if a wallet, or an online exchange if I wanted to roll that way, is a valid address to use?

Hey cool @vadim thank you!
When this thread is a littel more ripe, are you interested in collaborating on a tutorial article ? I would love to boost it for visibility, since it cold help a lot of other people :slight_smile:

1 Like

if storj in wallet providor supported list then all is OK. By the way, Binance wallet is not the pest secure thing, as you dont own privet key from this wallet, if someone hack binance your money can be gone forever. As hapened with lot of other exchanges.

I can try, but my grammar is bad, realy bad.I hope people will help, also will add some options.

I’m sure many people can help on that matter indeed @Vadim, it could be a collaborative work :slight_smile:

I know Binance is not secure, but for the trivial amount of Storj I’ll be earning in the short term, and my plan to cash it out consistently once I start earning more, the convenience is worth the risk for me. That being said, if I use a different wallet or provider or whatever, as long as they support Storj, I can use the Etherium address from that new wallet and I will receive Storj through that Etherium address?

I use my Ether walet, it support lot of things, even if it not support something by default, you can add contract addres and it start to suport. and use Uniswap to exchange to Ether directly from wallet to my wallet. Coinbase toFIAT

I think you are very easy to understand! but also, we can enhance your grammar and help with editing – I and @knowledge or anyone else on the team would be happy to help there!


I’d add that these port configurations are only relevant for windows nodes and unix binary but not for docker. With docker they don’t have to be unique on a PC since they are isolated within their container.


I made correction, thnaks.


By the way, I made the topic a wiki, so anyone with trust level at least Member can edit it


I don’t see this option in my config.yaml file, but can I just add that line in regardless?


Also, if I get a chunk less than 4Mib, will it write it from RAM after it’s fully downloaded?

yes, but it will consume significantly more ram, be carefule plese, in end of all i made 2 MiB only.
Lot of files that about 2 MiB size only, Default is 128k so you will get benefit alreadu from 1MiB even.
For Example e made 2MiB but i have minimum 16GB ram in PC.

Very good.
Suggestion to add that units can be in decimal or binary units.
And suggestion to add or link to explanation how to calculate correct size: Disk filled, and now what?

I use 1MiB now, RAM difference is not big with that. Average piece size for uploads is ~750kB at the moment.

This ram ammount will be dedicated to every downloading peace, so if ingress rize lot, then RAM ammount will rize significantly, it just for information.

Yes of course, I tried it first with 4MiB and even with currently low ingress, my RAM usage was significantly higher (~100MB per node). With 1MiB it is only ~50MB per node, which is not much higher than the default of 128KiB.
If the ingress rises a lot, then the RAM usage will of course rise a lot too. I think 1MiB is a rather safe choice. I wouldn’t go higher unless you have >=16GB of RAM.
Also I wanted to say that the average piece size of 720kB fits good into 1MiB so most pieces are probably covered by it.

1 Like