org.openspaces.grid.gsm.strategy
Class AbstractCapacityScaleStrategyBean
java.lang.Object
org.openspaces.grid.gsm.strategy.AbstractScaleStrategyBean
org.openspaces.grid.gsm.strategy.AbstractCapacityScaleStrategyBean
- All Implemented Interfaces:
- Runnable, Bean, ContainersSlaEnforcementEndpointAware, ElasticMachineProvisioningAware, GridServiceAgentFailureDetectionConfigAware, GridServiceContainerConfigAware, MachinesStateBackupAware, ElasticProcessingUnitMachineIsolationAware, MachinesSlaEnforcementEndpointAware, ProcessingUnitAware, RebalancingSlaEnforcementEndpointAware, ElasticScaleStrategyEventStorageAware, ScaleStrategyBean
- Direct Known Subclasses:
- AutomaticCapacityScaleStrategyBean, ManualCapacityPerZonesScaleStrategyBean, ManualCapacityScaleStrategyBean
public abstract class AbstractCapacityScaleStrategyBean
- extends AbstractScaleStrategyBean
- implements GridServiceContainerConfigAware, GridServiceAgentFailureDetectionConfigAware, RebalancingSlaEnforcementEndpointAware, ContainersSlaEnforcementEndpointAware, MachinesSlaEnforcementEndpointAware
A class for code reuse between ManualCapacityScaleStrategyBean
and AutomaticCapacityScaleStrategyBean
- Since:
- 9.0.0
- Author:
- itaif
Methods inherited from class org.openspaces.grid.gsm.strategy.AbstractScaleStrategyBean |
agentProvisioningCompletedEvent, agentProvisioningInProgressEvent, capacityPlanningCompletedEvent, capacityPlanningCompletedEvent, capacityPlanningInProgressEvent, capacityPlanningInProgressEvent, containerProvisioningCompletedEvent, containerProvisioningInProgressEvent, destroy, enforceSla, getAdmin, getContainerNumberOfCpuCores, getDiscoveredMachinesCache, getElasticMachineProvisioningOrNull, getIsolation, getLogger, getMachineProvisioning, getMaximumNumberOfInstances, getMinimumNumberOfMachines, getPollingIntervalSeconds, getProcessingUnit, getProperties, getRemoteApi, getSchemaConfig, isScaleInProgress, machineProvisioningCompletedEvent, machineProvisioningInProgressEvent, puInstanceProvisioningCompletedEvent, puInstanceProvisioningInProgressEvent, run, setAdmin, setElasticMachineProvisioning, setElasticProcessingUnitMachineIsolation, setElasticScaleStrategyEventStorage, setMachineDiscoveryQuiteMode, setMachinesStateBackup, setProcessingUnit, setProcessingUnitSchema, setProperties, validateAllProcessingUnitsRecoveredStateOnEsmStart |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractCapacityScaleStrategyBean
public AbstractCapacityScaleStrategyBean()
setMachinesSlaEnforcementEndpoint
public void setMachinesSlaEnforcementEndpoint(MachinesSlaEnforcementEndpoint machinesService)
- Specified by:
setMachinesSlaEnforcementEndpoint
in interface MachinesSlaEnforcementEndpointAware
setContainersSlaEnforcementEndpoint
public void setContainersSlaEnforcementEndpoint(ContainersSlaEnforcementEndpoint containersService)
- Specified by:
setContainersSlaEnforcementEndpoint
in interface ContainersSlaEnforcementEndpointAware
setRebalancingSlaEnforcementEndpoint
public void setRebalancingSlaEnforcementEndpoint(RebalancingSlaEnforcementEndpoint relocationService)
- Specified by:
setRebalancingSlaEnforcementEndpoint
in interface RebalancingSlaEnforcementEndpointAware
setAgentFailureDetectionConfig
public void setAgentFailureDetectionConfig(org.openspaces.admin.internal.pu.elastic.GridServiceAgentFailureDetectionConfig agentFailureDetectionConfig)
- Specified by:
setAgentFailureDetectionConfig
in interface GridServiceAgentFailureDetectionConfigAware
getDefaultZones
protected ZonesConfig getDefaultZones()
setPlannedCapacity
protected void setPlannedCapacity(CapacityRequirementsPerZones plannedCapacity)
setPlannedCapacity
protected void setPlannedCapacity(ScaleStrategyCapacityRequirementConfig newPlannedCapacityForDefaultZone)
- Call once in order to modify the behavior of
enforcePlannedCapacity()
Uses the default machine provisioning zone as the zone to start machines in.
setPlannedCapacity
protected boolean setPlannedCapacity(CapacityRequirementsPerZonesConfig newPlannedCapacity)
- Call once in order to modify the behavior of
enforcePlannedCapacity()
- Returns:
- false if planned has not changed, true if plan changed
getPlannedCapacity
protected CapacityRequirementsPerZonesConfig getPlannedCapacity()
setScaleStrategyConfig
protected void setScaleStrategyConfig(ScaleStrategyConfig scaleStrategy)
setGridServiceContainerConfig
public void setGridServiceContainerConfig(org.openspaces.admin.internal.pu.elastic.GridServiceContainerConfig containersConfig)
- Specified by:
setGridServiceContainerConfig
in interface GridServiceContainerConfigAware
getGridServiceContainerConfig
public org.openspaces.admin.internal.pu.elastic.GridServiceContainerConfig getGridServiceContainerConfig()
afterPropertiesSet
public void afterPropertiesSet()
- Description copied from interface:
Bean
- Invoked by a bean factory after it has set all bean properties. This method allows the bean
instance to perform non-blocking initialization, which is only possible when all bean properties have been
set and to throw an exception in the event of misconfiguration.
- Specified by:
afterPropertiesSet
in interface Bean
- Overrides:
afterPropertiesSet
in class AbstractScaleStrategyBean
- See Also:
BeanConfigurationException
,
BeanInitializationException
enforcePlannedCapacity
protected void enforcePlannedCapacity()
throws SlaEnforcementInProgressException
- Throws:
SlaEnforcementInProgressException
getPlannedZones
protected Set<ZonesConfig> getPlannedZones()
calcRoundedTotalMemoryInMB
protected long calcRoundedTotalMemoryInMB()
isUndeploying
protected boolean isUndeploying()
- Specified by:
isUndeploying
in class AbstractScaleStrategyBean
- Returns:
- true if this is an undeployment strategy (pu is undeploying)
recoverStateOnEsmStart
protected void recoverStateOnEsmStart()
throws MachinesSlaEnforcementInProgressException,
SomeProcessingUnitsHaveNotCompletedStateRecoveryException,
NeedToWaitUntilAllGridServiceAgentsDiscoveredException,
UndeployInProgressException
- Specified by:
recoverStateOnEsmStart
in class AbstractScaleStrategyBean
- Throws:
MachinesSlaEnforcementInProgressException
SomeProcessingUnitsHaveNotCompletedStateRecoveryException
NeedToWaitUntilAllGridServiceAgentsDiscoveredException
UndeployInProgressException
getRecoveredStateOnEsmStart
protected MachinesSlaEnforcementState.RecoveryState getRecoveredStateOnEsmStart(ProcessingUnit otherPu)
- Specified by:
getRecoveredStateOnEsmStart
in class AbstractScaleStrategyBean
getAllocatedCapacity
public CapacityRequirementsPerZones getAllocatedCapacity()
throws MachinesSlaEnforcementInProgressException
- Throws:
MachinesSlaEnforcementInProgressException
isGridServiceAgentZonesAware
protected boolean isGridServiceAgentZonesAware()
Copyright © GigaSpaces.