Error adding a second node to my proxmox cluster homelab

sysrq

New Member
Apr 25, 2025
15
0
1
Hello.

I just bought a HP Prodesk and i want to add to a newly created cluster (it took the ip of my existent node).

I tried to join through ssh with pvecm add ip, i tried from the web interface with that join information.
In both cases i get this error:

Establishing API connection with host '192.168.1.100'
Login succeeded.
check cluster join API version
No cluster network links passed explicitly, fallback to local node IP '192.168.1.104'
Request addition of this node
An error occurred on the cluster node: can't add existing node 'sysrq'
TASK ERROR: Cluster join aborted!

After pvecm status i get the error:

Error: Corosync config '/etc/pve/corosync.conf' does not exist - is this node part of a cluster?

I already deactivated back-up codes and TOTP.

Can you help me?
 
Last edited:
Just a generic hint: make sure that /etc/hosts has identical content on both/all nodes.

"ssh root@othernode" and "ssh root@nameofthisnode" must work on both/all nodes.
 
Just a generic hint: make sure that /etc/hosts has identical content on both/all nodes.

"ssh root@othernode" and "ssh root@nameofthisnode" must work on both/all nodes.

Hosts output from the first node (the same IP the cluster took upon creation):

GNU nano 7.2 /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.1.100 sysrq.proxmox.ve sysrq

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

I tried to ssh root@ and didn't work on neither of the nodes.

Hosts output from the second node (the one i am trying to add in the cluster):

GNU nano 7.2 /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.1.104 sysrq.xyz.proxmox sysrq

# The following lines are desirable for IPv6 capable hosts

::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

I also edited the link0 IP with the node i wanted to add in the cluster and i get this:

Establishing API connection with host '192.168.1.100'
Login succeeded.
check cluster join API version
Request addition of this node
An error occurred on the cluster node: can't add existing node 'sysrq'
TASK ERROR: Cluster join aborted!


Edit: i somehow added it to the cluster. Tell me if i should add/edit something in hosts, i can't still ssh root from one node to another. Says could not resolve hostname.
 
Last edited:
Sometimes an example is helpful. This is a possible /etc/hosts file, which is identical on all four nodes:

Code:
# /etc/hosts

127.0.0.1 localhost.localdomain localhost

192.0.2.101 pvea.example pvea
192.0.2.102 pveb.example pveb
192.0.2.103 pvec.example pvec
192.0.2.104 pved.example pved

# The following lines are desirable for IPv6 capable hosts

::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

The important point is that each and every node needs to know the other nodes by name. Naming and addresses must be conflict-free and consistent.

Alternatively you may implement and use a "real" DNS-Server, or two...
 
  • Like
Reactions: sysrq
ok, so on both files from the nodes should i have both nodes listed. I will modify the ipv6 to be the same too.

What do you mean by "real" DNS-Server? I use 8.8.8.8 on both. Initially i had my provider DNS on the node, but i had some problems with mail notifications and i changed it to Google.
 
What do you mean by "real" DNS-Server?
We use names in our DNS. If using private IPs or you don’t have a zone set up, or the local DNS doesn’t return private IPs (a custom setting in unbound/pfSense), then the hosts file will be used to find the IPs. The hosts file overrides DNS/is processed first.
 
I edited the hosts on both nodes and now i can ssh from one to another, thank you for the advice!

We use names in our DNS. If using private IPs or you don’t have a zone set up, or the local DNS doesn’t return private IPs (a custom setting in unbound/pfSense), then the hosts file will be used to find the IPs. The hosts file overrides DNS/is processed first.
I'm not sure i understand. On both nodes i have the DNS set to 8.8.8.8, i didn't run in any problems.
 
What do you mean by "real" DNS-Server?
Well, to self-host a DNS server is possible, but usually overkill. The "classic" version is BIND (https://www.isc.org/bind/) but there are several alternatives.

This is a sophisticated topic, don't worry about it - as long as you keep /etc/hosts consistent on all systems in your LAN. (Which was too complicated for me.)

((
I have two redundant "BIND" for my main local domain. I have two Samba "Domain Controllers" for an "Active Directory Domain" and I have three redundant piholes. All are working together doing their specific job. Yes, this is a) total overkill and b) badly constructed. Homelab crazyness... ;-)
))
 
  • Like
Reactions: Johannes S
I’m still a beginner, for now :))

Initially i thought that after adding the new node to the cluster it will take the configuration files from the first node (the one where i created the cluster from).
On the first node i have a locally generated certificate for example, i need to generate another one for the second node?

I have so many questions, that’s why i joined on this forum..
 
On the first node i have a locally generated certificate for example, i need to generate another one for the second node?
I can't give a good answer as I never fiddled manually with any certificates (in PVE context). I just use the automatically generated ones...
 
  • Like
Reactions: sysrq
For load balancing between nodes is there a software/option, or only when i have the third node/qdevice and i enable HA?
 
For load balancing between nodes is there a software/option
No.

There is an external project which claims to do so:

 
  • Like
Reactions: sysrq
No.

There is an external project which claims to do so:

I will look into it, thank you!