Hi all,
Main question: is multinode dashboard maintained, does it have any sense to keep try to launch it?
Earlier, i had bug when some node was offline, dashboard page was blank, now even when all nodes are online it is blank(Tried to pull new image / rm old container / created new one, resulted in blank page always).
Here is command im using to launch it:
docker run -d --restart unless-stopped
-p 15002:15002/tcp
–mount type=bind,source=“/opt/multinode/”,destination=/app/config
–name multinode storjlabs/multinode:latest
Docker has access to opt folder, cause after container launch i see that it adds 2 files related to DB connection.
Here is logs after container launch:
i believe this one is somehow related to cert (im using nginx proxy manager/lets encrypt cert to get access to dashboard), strange that browser tells that everything is ok with it.
You need to check logs of all your nodes to figure out, which one could publish the same port (-e ADDRESS option for docker or contact.external-address: in the config.yaml for nodes installed as a service).
No, if the IP is different, I have 2 nodes on port 14002 and two on port 14003, different machines, and the MND works
The ports to the outside must be different, 28967, 28968…
but if you are on a single IP you necessarily have to change them, but you have 4 IP’s….
No need to setup everything from scratch. It could be a mentioned problem with MND itself, like when you registered the node with IP1:28967, then changed it to IP1:28968, and started a new one on a previously used IP1:28967.
But MND would think that IP1:28967 is still belongs to the node1. In that case you need to re-add this node, i.e. remove from the MND and add it back but with correct IP and port.
MND uses the node’s port, not the Single Node Dashboard’s port.
oh dear… rlly, i did a swap for some nodes between locations A<>B.
i will need to setup it from scratch cause i cant make any changes in nodes list, MND page is blank, cant do anything with it…
It you want any features or find bugs in the multinode UI. Please add it here I will gradually work on them.
Currently I am little occupied so I am inactive to the community.
Interesting, tried to add node on completely new multinode setup:
In multinode container log i found next:
2024-10-31T20:05:06Z ERROR console:endpoint controllers/nodes.go:76 could not add node {"error": "nodes: rpc: tcp connector failed: rpc: tls peer certificate verification: tlsopts: peer ID did not match requested ID", "errorVerbose": "nodes: rpc: tcp connector failed: rpc: tls peer certificate verification: tlsopts: peer ID did not match requested ID\n\tstorj.io/common/rpc.HybridConnector.DialContext.func1:190"}
storj.io/storj/multinode/console/controllers.(*Nodes).Add
/go/src/storj.io/storj/multinode/console/controllers/nodes.go:76
net/http.HandlerFunc.ServeHTTP
/usr/local/go/src/net/http/server.go:2171
github.com/gorilla/mux.(*Router).ServeHTTP
/go/pkg/mod/github.com/gorilla/mux@v1.8.0/mux.go:210
net/http.serverHandler.ServeHTTP
/usr/local/go/src/net/http/server.go:3142
net/http.(*conn).serve
/usr/local/go/src/net/http/server.go:2044
Node online, dashboard accessible, and im pretty sure that everything is ok with it.
In same time second node from this machine was successfully added.
node 1 port = 28967(default)
node 2 port = 28968
Checked configs files for both nodes and this param same:
# the public address of the node, useful for nodes behind NAT
contact.external-address: ""
This may mean, that you still have an old node in the database, which was with a different identity, but with the same external address and port as a new one.
In that case the provided NodeID and the external address and port doesn’t match. I.e. you copied NodeID from the one node, but provided either API key or external address and port from another one.
By the way, if your multinode dashboard resides in the same LAN, you may use the local IP instead of external one. Just make sure that you specified a correct port, NodeID and API key.
I would recommend to use
docker exec -it storagenode /app/bin/storagenode info --config-dir config --identity-dir identity
and
docker ps storagenode
to see the external port (it would be on the left side of the port mapping).