From c884423b96a6130958d1b9df91371e7c62257d34 Mon Sep 17 00:00:00 2001 From: Nicolas Vazquez Date: Fri, 19 Jul 2024 10:07:38 -0300 Subject: [PATCH] Fix: Use control node guest IP as join IP for external nodes addition --- .../cluster/actionworkers/KubernetesClusterAddWorker.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterAddWorker.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterAddWorker.java index 2853c00fc08..8b694adf1cc 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterAddWorker.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterAddWorker.java @@ -88,7 +88,8 @@ public class KubernetesClusterAddWorker extends KubernetesClusterActionWorker { } attachCksIsoForNodesAdditionToCluster(nodeIds, kubernetesCluster.getId(), mountCksIsoOnVr); stateTransitTo(kubernetesCluster.getId(), KubernetesCluster.Event.AddNodeRequested); - Ternary nodesAddedAndMemory = importNodeToCluster(nodeIds, network, publicIp, mountCksIsoOnVr); + String controlNodeGuestIp = getControlVmPrivateIp(); + Ternary nodesAddedAndMemory = importNodeToCluster(nodeIds, network, publicIp, controlNodeGuestIp, mountCksIsoOnVr); int nodesAdded = nodesAddedAndMemory.first(); updateKubernetesCluster(kubernetesCluster.getId(), nodesAddedAndMemory, manualUpgrade); if (nodeIds.size() != nodesAdded) { @@ -180,7 +181,8 @@ public class KubernetesClusterAddWorker extends KubernetesClusterActionWorker { } } - private Ternary importNodeToCluster(List nodeIds, Network network, IpAddress publicIp, boolean mountCksIsoOnVr) { + private Ternary importNodeToCluster(List nodeIds, Network network, IpAddress publicIp, + String controlNodeGuestIp, boolean mountCksIsoOnVr) { int nodeIndex = 0; Long additionalMemory = 0L; Long additionalCores = 0L; @@ -188,7 +190,7 @@ public class KubernetesClusterAddWorker extends KubernetesClusterActionWorker { UserVmVO vm = userVmDao.findById(nodeId); String k8sControlNodeConfig = null; try { - k8sControlNodeConfig = getKubernetesNodeConfig(publicIp.getAddress().addr(), Hypervisor.HypervisorType.VMware.equals(clusterTemplate.getHypervisorType()), mountCksIsoOnVr); + k8sControlNodeConfig = getKubernetesNodeConfig(controlNodeGuestIp, Hypervisor.HypervisorType.VMware.equals(clusterTemplate.getHypervisorType()), mountCksIsoOnVr); } catch (IOException e) { logAndThrow(Level.ERROR, "Failed to read Kubernetes control node configuration file", e); }