Problems Setting up Block Producer

No change in behavior.

ok, if u type journalctl -e -f -u cnode do u see any errors after u restarted the node?

-- Reboot --
Apr 25 14:17:14 s1-desktop systemd[1]: Started Cardano Node.
Apr 25 14:17:15 s1-desktop cnode[1298]: ERROR: You specified 12788 as your EKG port, but it looks like the cardano-node (PID: 1606 ) is not listening on this port. Please update the config or kill the conflicting process first.
Apr 25 14:17:15 s1-desktop cnode[1298]: WARN: A prior running Cardano node was not cleanly shutdown, socket file still exists. Cleaning up.
Apr 25 14:17:15 s1-desktop cnode[2074]: Listening on http://127.0.0.1:12798

For reference I have also tried doing a mv db db_backup; mkdir db and rebooting. I am getting the same problem. gLiveView stays on starting eternally with next to no cpu or ram usage.

-- Reboot --
Apr 25 20:04:20 s1-desktop systemd[1]: Started Cardano Node.
Apr 25 20:04:21 s1-desktop cnode[2199]: Listening on http://127.0.0.1:12798
● cnode.service - Cardano Node
     Loaded: loaded (/etc/systemd/system/cnode.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-04-25 20:04:20 CDT; 8min ago
   Main PID: 1303 (bash)
      Tasks: 18 (limit: 38291)
     Memory: 197.0M
     CGroup: /system.slice/cnode.service
             β”œβ”€1303 bash /opt/cardano/cnode/scripts/cnode.sh
             └─2199 /home/s1/.cabal/bin/cardano-node +RTS -N4 -RTS run --topology /opt/cardano/cnode/files/topology.json --config /opt/cardano/cnode/files/config.json --database-path /opt/cardano/cnode/db --socket-path /opt/cardano/cnode/sockets/node0.socket --port 10106 --host-addr 0.0.0.0

Apr 25 20:04:20 s1-desktop systemd[1]: Started Cardano Node.
Apr 25 20:04:21 s1-desktop cnode[2199]: Listening on http://127.0.0.1:12798

Pretty sure I found my problem. Just to test things, I pulled the default topology.json file down and rebooted. gLive shows the cnode started syncing immediately.
The port that cnode uses on my BP is 10106, in the topology file it was 10110. Would that be the source of my problem?

Note:
I know that I have shared username and ports on this forum. I am planning that once I have this working to change both of those.

nope, the port from topology file is the port used by the remote server (Relay)

So the breakdown is in the relay/producer commo. When I get home I will posted the topology files for both. Anything else obvious to check?

you should check also the Relay if is running and it is fully sync before to connect your Producer.

And the port used by Relay should be set inside Producer topology file

So cnode on the relay is running on 10404.
cnode on the block producer is running on 10106.
I had it set in the topology file to communicate with the block producer on port 10410.
What does the topology file need to be setup for on the block producer, 10410?

Relay - port 10404
BP - port 10106

on BP topology file u must set relay IP + port 10404
On relay topology file u must set BP IP + port 10106

Got it. That was likely the issue. I will let the block producer resync and then give that a shot and report back. Thank you so much for your time Alex, you have been amazingly helpful!

1 Like

Apparently, it just took a while for the relay to come up. I’m not used to it taking more than 2 minutes for gLive to pick it up. I am going to reboot both the block producer and relay and wait 15 minutes and see if they come up healthy.

They both came up healthy! One concern is that my block producer has 7 incoming connections. The one outgoing connection is to my relay. But I thought I should only have one incoming connection and that would be my relay node as well.


cat topology.json output

{
  "Producers": [
    {
	    "addr": "Relay IP Address",
	    "port": 10404,
	    "valency": 2
    }
  ]
}

press P on glive and check the IP for incoming connections

When I do my block producer shows 17 incoming connections. The first of which is my relay. The others are random ones scattered around the world. My relay the first one is my block producer and then other Ip’s scattered around the world. My block producer has only one entry in my topology file and that is the private, internal network ip of the relay.
My relay has been populated by the topologyUpdater script and I added my custom peer into the script and I see my block producer in the topology file for the relay. I don’t understand why I have these other incoming connections on my block producer.

Do u run topology updater script on BP?
Also block all incoming peers except ur relay (configure ufw)