Multiple public networks can be defined in the ceph.conf. The networks need to be routed to each other.
On first service start the Ceph MON will register itself with one of the IPs configured locally, matching one of the public networks defined in the ceph.conf. Signed-off-by: Alwin Antreich <a.antre...@proxmox.com> --- PVE/API2/Ceph/MON.pm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/PVE/API2/Ceph/MON.pm b/PVE/API2/Ceph/MON.pm index 3baeac52..5128fea2 100644 --- a/PVE/API2/Ceph/MON.pm +++ b/PVE/API2/Ceph/MON.pm @@ -33,11 +33,19 @@ my $find_mon_ip = sub { } $pubnet //= $cfg->{global}->{public_network}; + my $public_nets = [ PVE::Tools::split_list($pubnet) ]; + warn "Multiple ceph public networks detected on $node: $pubnet\n". + "Networks must be capable of routing to each other.\n" if scalar(@$public_nets) > 1; + if (!$pubnet) { return $overwrite_ip // PVE::Cluster::remote_node_ip($node); } - my $allowed_ips = PVE::Network::get_local_ip_from_cidr($pubnet); + my $allowed_ips; + foreach my $net (@$public_nets) { + push @$allowed_ips, @{ PVE::Network::get_local_ip_from_cidr($net) }; + } + die "No active IP found for the requested ceph public network '$pubnet' on node '$node'\n" if scalar(@$allowed_ips) < 1; -- 2.20.1 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel