[SOLVED] Adding a new node to an existing cluster with redundant links

trent--

Member
Mar 19, 2021
19
0
6
Hello,

I am trying to join a new node to an existing cluster.

The cluster has redundant links. The /etc/corosync/corosync.conf file on an existing node looks like this :

Code:
logging {
  debug: off
  to_syslog: yes
}

nodelist {
  node {
    name: pve1
    nodeid: 3
    quorum_votes: 1
    ring0_addr: [REDACTED]
    ring1_addr: [REDACTED]
  }
  node {
    name: pve2
    nodeid: 2
    quorum_votes: 1
    ring0_addr: [REDACTED]
    ring1_addr: [REDACTED]
  }
  node {
    name: pve3
    nodeid: 1
    quorum_votes: 1
    ring0_addr: [REDACTED]
    ring1_addr: [REDACTED]
  }
}

quorum {
  provider: corosync_votequorum
}

totem {
  cluster_name: cluster1
  config_version: 4
  interface {
    linknumber: 1
  }
  ip_version: ipv4-6
  link_mode: passive
  secauth: on
  version: 2
}

When adding the new node, I get the following error :

Code:
$ > pvecm add pve1.domain.com
Please enter superuser (root) password for 'pve1.domain.com': ********************
Establishing API connection with host 'pve1.domain.com'
Login succeeded.
check cluster join API version
No cluster network links passed explicitly, fallback to local node IP '[REDACTED IP ADDRESS]'
Request addition of this node
An error occured on the cluster node: invalid corosync.conf
! node 'pve1' has 'ring0_addr', but there is no interface number 0 configured
! node 'pve2' has 'ring0_addr', but there is no interface number 0 configured
! node 'pve3' has 'ring0_addr', but there is no interface number 0 configured
Cluster join aborted!

I guess this is due to the cluster not finding information about the new node's private network address (aka ring1_addr), although I'm confused by the error messages referencing ring0_addr on the existing nodes.

What do you think about this ?
 
Do you have NICs with those subnets configured on the new node? Then you can use the --link[n] parameter to define the IP addresses that should be used for link0 and link1.

For example:
Code:
pvecm add pve1.domain.com --link0 <ip on link0> --link1 <ip on link1>

Or do it via the GUI where it will let you select the networks you want to use as well.

Edit: See the manual page for pvecm for all the possible parameters: https://pve.proxmox.com/pve-docs/pvecm.1.html
 
Thank you @aaron , I had to use the --link0 and --link1 options to specify the IP addresses for the new node, and I was also missing this part in /etc/corosync/corosync.conf on the existing nodes :

Code:
  interface {
    linknumber: 0
  }

It had only the lines for linknumber: 1, I duplicated them for linknumber: 0
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!