diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java index ccc80daa7d7..052a6e8d3ab 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterManagerImpl.java @@ -1927,7 +1927,7 @@ public class KubernetesClusterManagerImpl extends ManagerBase implements Kuberne String[] keys = getServiceUserKeys(kubernetesCluster); KubernetesClusterScaleWorker scaleWorker = - new KubernetesClusterScaleWorker(kubernetesClusterDao.findById(cmd.getId()), + new KubernetesClusterScaleWorker(kubernetesCluster, nodeToOfferingMap, cmd.getClusterSize(), cmd.getNodeIds(), @@ -1942,7 +1942,7 @@ public class KubernetesClusterManagerImpl extends ManagerBase implements Kuberne /** * Creates a map for the requested node type service offering - * For the node type ALL: Every node is scaled to the same offering + * For the node type DEFAULT: Every node is scaled to the same offering */ protected Map createNodeTypeToServiceOfferingMap(Map idsMapping, Long serviceOfferingId, KubernetesClusterVO kubernetesCluster) { diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesServiceHelperImpl.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesServiceHelperImpl.java index 98dddd310c4..aa39e6800a1 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesServiceHelperImpl.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesServiceHelperImpl.java @@ -167,7 +167,7 @@ public class KubernetesServiceHelperImpl extends AdapterBase implements Kubernet protected void addNodeTypeOfferingEntry(String nodeTypeStr, String serviceOfferingUuid, ServiceOffering serviceOffering, Map mapping) { if (logger.isDebugEnabled()) { - logger.debug(String.format("Node Type: '%s' should use Service Offering ID: '%s'", nodeTypeStr, serviceOfferingUuid)); + logger.debug("Node Type: '{}' should use Service Offering ID: '{}'", nodeTypeStr, serviceOfferingUuid); } KubernetesClusterNodeType nodeType = KubernetesClusterNodeType.valueOf(nodeTypeStr.toUpperCase()); mapping.put(nodeType.name(), serviceOffering.getId()); diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterResourceModifierActionWorker.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterResourceModifierActionWorker.java index 7d96e022a8c..a3bef9cfddb 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterResourceModifierActionWorker.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterResourceModifierActionWorker.java @@ -282,7 +282,7 @@ public class KubernetesClusterResourceModifierActionWorker extends KubernetesClu } ServiceOffering nodeOffering = getServiceOfferingForNodeTypeOnCluster(nodeType, kubernetesCluster); if (logger.isDebugEnabled()) { - logger.debug(String.format("Checking deployment destination for %s nodes on Kubernetes cluster : %s in zone : %s", nodeType.name(), kubernetesCluster.getName(), zone.getName())); + logger.debug("Checking deployment destination for {} nodes on Kubernetes cluster : {} in zone : {}", nodeType.name(), kubernetesCluster.getName(), zone.getName()); } DeployDestination planForNodeType = plan(nodes, zone, nodeOffering, domainId, accountId, hypervisorType); destinationMap.put(nodeType.name(), planForNodeType); diff --git a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterScaleWorker.java b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterScaleWorker.java index 9f0ce848374..ba5241d5be5 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterScaleWorker.java +++ b/plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/actionworkers/KubernetesClusterScaleWorker.java @@ -528,7 +528,8 @@ public class KubernetesClusterScaleWorker extends KubernetesClusterResourceModif } scaleTimeoutTime = System.currentTimeMillis() + KubernetesClusterService.KubernetesClusterScaleTimeout.value() * 1000; final long originalClusterSize = kubernetesCluster.getNodeCount(); - if (serviceOfferingNodeTypeMap.containsKey(DEFAULT.name())) { + boolean hasDefaultOffering = serviceOfferingNodeTypeMap.containsKey(DEFAULT.name()); + if (hasDefaultOffering) { final ServiceOffering existingServiceOffering = serviceOfferingDao.findById(kubernetesCluster.getServiceOfferingId()); if (existingServiceOffering == null) { logAndThrow(Level.ERROR, String.format("Scaling Kubernetes cluster : %s failed, service offering for the Kubernetes cluster not found!", kubernetesCluster.getName())); @@ -536,7 +537,6 @@ public class KubernetesClusterScaleWorker extends KubernetesClusterResourceModif } final boolean autoscalingChanged = isAutoscalingChanged(); - boolean hasDefaultOffering = serviceOfferingNodeTypeMap.containsKey(DEFAULT.name()); Long existingDefaultOfferingId = kubernetesCluster.getServiceOfferingId(); ServiceOffering defaultServiceOffering = serviceOfferingNodeTypeMap.getOrDefault(DEFAULT.name(), null); diff --git a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java index fbf7dd5e69a..7dd2978a5e3 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java +++ b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java @@ -111,23 +111,23 @@ public class CreateKubernetesClusterCmd extends BaseAsyncCreateCmd { @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.SERVICE_OFFERING_ID, type = CommandType.UUID, entityType = ServiceOfferingResponse.class, description = "the ID of the service offering for the virtual machines in the cluster.") - protected Long serviceOfferingId; + private Long serviceOfferingId; @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.NODE_TYPE_OFFERING_MAP, type = CommandType.MAP, description = "(Optional) Node Type to Service Offering ID mapping. If provided, it overrides the serviceofferingid parameter") - protected Map> serviceOfferingNodeTypeMap; + private Map> serviceOfferingNodeTypeMap; @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.NODE_TYPE_TEMPLATE_MAP, type = CommandType.MAP, description = "(Optional) Node Type to Template ID mapping. If provided, it overrides the default template: System VM template") - protected Map> templateNodeTypeMap; + private Map> templateNodeTypeMap; @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.ETCD_NODES, type = CommandType.LONG, description = "(Optional) Number of Kubernetes cluster etcd nodes, default is 0." + "In case the number is greater than 0, etcd nodes are separate from master nodes and are provisioned accordingly") - protected Long etcdNodes; + private Long etcdNodes; @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.ACCOUNT, type = CommandType.STRING, description = "an optional account for the" +