[pve-devel] [PATCH stable5 manager 2/6] 5to6: attempt to resolve corosync rings
Fabian Grünbichler
f.gruenbichler at proxmox.com
Mon Jul 8 13:54:05 CEST 2019
and only fail if unable to
Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
(backported from commit 669211d8bbb0857275669068fcbf62560782b888)
use local copy of resolve_hostname_like_corosync instead of
pve-cluster's.
Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---
PVE/CLI/pve5to6.pm | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/PVE/CLI/pve5to6.pm b/PVE/CLI/pve5to6.pm
index 7d23ac3c..f84a8c1b 100644
--- a/PVE/CLI/pve5to6.pm
+++ b/PVE/CLI/pve5to6.pm
@@ -434,8 +434,17 @@ sub check_cluster_corosync {
my $verify_ring_ip = sub {
my $key = shift;
my $ring = $entry->{$key};
- if (defined($ring) && !PVE::JSONSchema::pve_verify_ip($ring, 1)) {
- log_fail("$key '$ring' of node '$cs_node' is not an IP address, consider replacing it with the currently resolved IP address.");
+ if (defined($ring)) {
+ my ($resolved_ip, undef) = $resolve_hostname_like_corosync->($ring, $conf);
+ if (defined($resolved_ip)) {
+ if ($resolved_ip ne $ring) {
+ log_warn("$key '$ring' of node '$cs_node' resolves to '$resolved_ip'.\n Consider replacing it with the currently resolved IP address.");
+ } else {
+ log_pass("$key is configured to use IP address '$ring'");
+ }
+ } else {
+ log_fail("unable to resolve $key '$ring' of node '$cs_node' to an IP address according to Corosync's resolve strategy - cluster will fail with Corosync 3.x/kronosnet!");
+ }
}
};
$verify_ring_ip->('ring0_addr');
--
2.20.1
More information about the pve-devel
mailing list