Class ProvisionedWorkerPoolProperties

java.lang.Object
co.yellowdog.platform.model.ProvisionedWorkerPoolProperties
All Implemented Interfaces:
WorkerPoolProperties, Serializable

@ValidatedBy(ProvisionedWorkerPoolPropertiesValidator.class) public class ProvisionedWorkerPoolProperties extends Object implements WorkerPoolProperties
Defines properties to determine the behaviour that the Scheduler service should use when managing a provisioned worker pool.
See Also:
  • Method Details

    • builder

      public static ProvisionedWorkerPoolProperties.Builder builder()
    • toBuilder

    • getCreateNodeWorkers

      public NodeWorkerTarget getCreateNodeWorkers()
      How many workers to create on each node.
      Returns:
      how many workers to create on each node
    • getMinNodes

      public Integer getMinNodes()
      The minimum number of nodes that the worker pool can be scaled down to.
      Returns:
      the minimum number of nodes
    • getMaxNodes

      public Integer getMaxNodes()
      The maximum number of nodes that the worker pool can be scaled up to.
      Returns:
      the maximum number of nodes
    • getNodeBootTimeout

      public Duration getNodeBootTimeout()
      The time given for a node to be registered before it is considered to have failed.
      Returns:
      the time given for a node to be registered before it is considered to have failed
    • getIdleNodeShutdown

      public AutoShutdown getIdleNodeShutdown()
      Determines the auto shutdown behaviour applied for idle nodes.
      Returns:
      the auto shutdown behaviour applied for idle nodes
    • getIdlePoolShutdown

      public AutoShutdown getIdlePoolShutdown()
      Determines the auto shutdown behaviour applied for an idle pool.
      Returns:
      the auto shutdown behaviour applied for an idle pool
    • getWorkerTag

      public String getWorkerTag()
      An optional tag value that will be attached to all workers in this pool and used to constrain worker allocation.
      Specified by:
      getWorkerTag in interface WorkerPoolProperties
      Returns:
      an optional tag value
    • getNodeConfiguration

      public WorkerPoolNodeConfiguration getNodeConfiguration()
      Specified by:
      getNodeConfiguration in interface WorkerPoolProperties
    • getMetricsEnabled

      public Boolean getMetricsEnabled()
      Specified by:
      getMetricsEnabled in interface WorkerPoolProperties
    • setCreateNodeWorkers

      public void setCreateNodeWorkers(NodeWorkerTarget createNodeWorkers)
      How many workers to create on each node.
      Parameters:
      createNodeWorkers - how many workers to create on each node
    • setMinNodes

      public void setMinNodes(Integer minNodes)
      The minimum number of nodes that the worker pool can be scaled down to.
      Parameters:
      minNodes - the minimum number of nodes
    • setMaxNodes

      public void setMaxNodes(Integer maxNodes)
      The maximum number of nodes that the worker pool can be scaled up to.
      Parameters:
      maxNodes - the maximum number of nodes
    • setNodeBootTimeout

      public void setNodeBootTimeout(Duration nodeBootTimeout)
      The time given for a node to be registered before it is considered to have failed.
      Parameters:
      nodeBootTimeout - the time given for a node to be registered before it is considered to have failed
    • setIdleNodeShutdown

      public void setIdleNodeShutdown(AutoShutdown idleNodeShutdown)
      Determines the auto shutdown behaviour applied for idle nodes.
      Parameters:
      idleNodeShutdown - the auto shutdown behaviour applied for idle nodes
    • setIdlePoolShutdown

      public void setIdlePoolShutdown(AutoShutdown idlePoolShutdown)
      Determines the auto shutdown behaviour applied for an idle pool.
      Parameters:
      idlePoolShutdown - the auto shutdown behaviour applied for an idle pool
    • setWorkerTag

      public void setWorkerTag(String workerTag)
      An optional tag value that will be attached to all workers in this pool and used to constrain worker allocation.
      Parameters:
      workerTag - an optional tag value
    • setNodeConfiguration

      public void setNodeConfiguration(WorkerPoolNodeConfiguration nodeConfiguration)
    • setMetricsEnabled

      public void setMetricsEnabled(Boolean metricsEnabled)
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object