public class ElasticStatefulProcessingUnitDeployment extends AbstractElasticProcessingUnitDeployment implements ElasticStatefulDeploymentTopology, AdvancedStatefulDeploymentTopology
ElasticStatefulProcessingUnitDeployment
Constructor and Description |
---|
ElasticStatefulProcessingUnitDeployment(File processingUnit)
Constructs a stateful processing unit deployment based on the specified processing unit file
path (points either to a processing unit jar/zip file or a directory).
|
ElasticStatefulProcessingUnitDeployment(String processingUnit)
Constructs a stateful processing unit deployment based on the specified processing unit name
(should exists under the
[GS ROOT]/deploy directory. |
Modifier and Type | Method and Description |
---|---|
ElasticStatefulProcessingUnitDeployment |
addCommandLineArgument(String vmInputArgument)
Will add a JVM level argument when the process is executed using pure JVM.
|
ElasticStatefulProcessingUnitDeployment |
addContextProperty(String key,
String value)
Defines a context deploy time property overriding any
${...} defined within a
processing unit configuration. |
ElasticStatefulProcessingUnitDeployment |
addDependencies(ProcessingUnitDetailedDependencies<? extends ProcessingUnitDependency> detailedDependencies)
Postpones deployment of processing unit instances until the specified dependencies are met.
|
ElasticStatefulProcessingUnitDeployment |
addDependency(String requiredProcessingUnitName)
Postpones deployment of processing unit instances deployment until the specified processing
unit deployment is complete.
|
ElasticStatefulProcessingUnitDeployment |
addEnvironmentVariable(String name,
String value)
Defines an environment variable that will be passed to forked process.
|
ElasticStatefulProcessingUnitDeployment |
commandLineArgument(String vmInputArgument)
Will add a JVM level argument when the process is executed using pure JVM.
|
ElasticStatefulProcessingUnitConfig |
create()
Converts this fluent API object to a lazy implementation of ProcessingUnitConfig
|
ElasticStatefulProcessingUnitDeployment |
dedicatedMachineProvisioning(ElasticMachineProvisioningConfig config)
Configure the server side bean that starts and stops machines automatically.
|
ElasticStatefulProcessingUnitDeployment |
environmentVariable(String name,
String value)
Sets an environment variable that will be passed to forked process.
|
protected ElasticStatefulProcessingUnitConfig |
getConfig() |
ElasticStatefulProcessingUnitDeployment |
highlyAvailable(boolean highlyAvailable)
Specifies if the space should duplicate each information on two different machines.
|
ElasticStatefulProcessingUnitDeployment |
maxMemoryCapacity(int maxMemoryCapacity,
MemoryUnit unit)
Specifies an estimate of the maximum memory capacity for this processing unit.
|
ElasticStatefulProcessingUnitDeployment |
maxMemoryCapacity(String maxMemoryCapacity)
Specifies an estimate of the minimum memory capacity for this processing unit.
|
ElasticStatefulProcessingUnitDeployment |
maxNumberOfCpuCores(int maxNumberOfCpuCores)
Specifies an estimate for the maximum total number of cpu cores used by this processing
unit.
|
protected ElasticStatefulProcessingUnitDeployment |
maxProcessingUnitInstancesFromSamePartitionPerMachine(int maxProcessingUnitInstancesFromSamePartitionPerMachine) |
ElasticStatefulProcessingUnitDeployment |
memoryCapacityPerContainer(int memoryCapacityPerContainer,
MemoryUnit unit)
Specifies the the heap size per container (operating system process) For example:
memoryCapacityPerContainer(256,MemoryUnit.MEGABYTES) is equivalent to
commandLineArgument("-Xmx256m").commandLineArgument("-Xms256m")
|
ElasticStatefulProcessingUnitDeployment |
memoryCapacityPerContainer(String memoryCapacityPerContainer)
Specifies the the heap size per container (operating system process) For example:
memoryCapacityPerContainer("256m") is equivalent to commandLineArgument("-Xmx256m").commandLineArgument("-Xms256m")
|
ElasticStatefulProcessingUnitDeployment |
minNumberOfCpuCoresPerMachine(double minNumberOfCpuCoresPerMachine)
Deprecated.
|
ElasticStatefulProcessingUnitDeployment |
name(String name)
Sets the processing unit name that will be deployed.
|
ElasticStatefulProcessingUnitDeployment |
numberOfBackupsPerPartition(int numberOfBackupsPerPartition)
Overrides the number of backup processing unit instances per partition.
|
ElasticStatefulProcessingUnitDeployment |
numberOfPartitions(int numberOfPartitions)
Defines the number of processing unit partitions.
|
ElasticStatefulProcessingUnitDeployment |
overrideCommandLineArguments()
Will cause JVM options added using
AbstractElasticProcessingUnitDeployment.commandLineArgument(String) to override all the
vm arguments that the JVM will start by default with. |
ElasticStatefulProcessingUnitDeployment |
publicMachineProvisioning(ElasticMachineProvisioningConfig config)
Configure the server side bean that starts and stops machines automatically.
|
ElasticStatefulProcessingUnitDeployment |
scale(EagerScaleConfig strategy)
Enables the specified scale strategy, and disables all other scale strategies.
|
ElasticStatefulProcessingUnitDeployment |
scale(ManualCapacityScaleConfig strategy)
Enables the specified scale strategy, and disables all other scale strategies.
|
ElasticStatefulProcessingUnitDeployment |
secured(boolean secured)
Will deploy a secured processing unit.
|
ElasticStatefulProcessingUnitDeployment |
sharedMachineProvisioning(String sharingId,
ElasticMachineProvisioningConfig config)
Configure the server side bean that starts and stops machines automatically.
|
ElasticStatefulProcessingUnitDeployment |
singleMachineDeployment()
Allows deployment of the processing unit on a single machine, by lifting the limitation for
primary and backup processing unit instances from the same partition to be deployed on
different machines.
|
ElasticStatefulProcessingUnitDeployment |
userDetails(String userName,
String password)
Advanced: Sets the security user details for authentication and authorization of the
processing unit.
|
ElasticStatefulProcessingUnitDeployment |
userDetails(UserDetails userDetails)
Advanced: Sets the security user details for authentication and authorization of the
processing unit.
|
ElasticStatefulProcessingUnitDeployment |
useScriptToStartContainer()
Will cause the
GridServiceContainer to be started using a
script and not a pure Java process. |
addContextPropertyDefault, getElasticProperties, scale, sharedMachineProvisioning
public ElasticStatefulProcessingUnitDeployment(String processingUnit)
[GS ROOT]/deploy
directory.public ElasticStatefulProcessingUnitDeployment(File processingUnit)
public ElasticStatefulProcessingUnitDeployment maxMemoryCapacity(int maxMemoryCapacity, MemoryUnit unit)
ElasticStatefulDeploymentTopology
maxMemoryCapacity
in interface ElasticStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment maxMemoryCapacity(String maxMemoryCapacity)
ElasticStatefulDeploymentTopology
maxMemoryCapacity
in interface ElasticStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment highlyAvailable(boolean highlyAvailable)
ElasticStatefulDeploymentTopology
highlyAvailable
in interface ElasticStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment numberOfBackupsPerPartition(int numberOfBackupsPerPartition)
AdvancedStatefulDeploymentTopology
numberOfBackupsPerPartition
in interface AdvancedStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment numberOfPartitions(int numberOfPartitions)
AdvancedStatefulDeploymentTopology
ElasticStatefulDeploymentTopology.maxMemoryCapacity(String)
and ElasticStatefulDeploymentTopology.maxNumberOfCpuCores(int)
.
This is an advanced property.numberOfPartitions
in interface AdvancedStatefulDeploymentTopology
protected ElasticStatefulProcessingUnitDeployment maxProcessingUnitInstancesFromSamePartitionPerMachine(int maxProcessingUnitInstancesFromSamePartitionPerMachine)
public ElasticStatefulProcessingUnitDeployment maxNumberOfCpuCores(int maxNumberOfCpuCores)
ElasticStatefulDeploymentTopology
maxNumberOfCpuCores
in interface ElasticStatefulDeploymentTopology
@Deprecated public ElasticStatefulProcessingUnitDeployment minNumberOfCpuCoresPerMachine(double minNumberOfCpuCoresPerMachine)
public ElasticStatefulProcessingUnitDeployment memoryCapacityPerContainer(int memoryCapacityPerContainer, MemoryUnit unit)
ElasticDeploymentTopology
memoryCapacityPerContainer
in interface ElasticDeploymentTopology
memoryCapacityPerContainer
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment memoryCapacityPerContainer(String memoryCapacityPerContainer)
ElasticDeploymentTopology
memoryCapacityPerContainer
in interface ElasticDeploymentTopology
memoryCapacityPerContainer
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment singleMachineDeployment()
AdvancedStatefulDeploymentTopology
singleMachineDeployment
in interface AdvancedStatefulDeploymentTopology
public ElasticStatefulProcessingUnitDeployment scale(EagerScaleConfig strategy)
EagerScaleTopology
scale
in interface EagerScaleTopology
EagerScaleConfig
,
EagerScaleConfigurer
public ElasticStatefulProcessingUnitDeployment scale(ManualCapacityScaleConfig strategy)
ManualCapacityScaleTopology
scale
in interface ManualCapacityScaleTopology
ManualCapacityScaleConfig
,
ManualCapacityScaleConfigurer
public ElasticStatefulProcessingUnitDeployment name(String name)
ElasticDeploymentTopology
name
in interface ElasticDeploymentTopology
name
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment addContextProperty(String key, String value)
ElasticDeploymentTopology
${...}
defined within a
processing unit configuration.addContextProperty
in interface ElasticDeploymentTopology
addContextProperty
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment secured(boolean secured)
ProcessingUnitDeploymentTopology
secured
in interface ProcessingUnitDeploymentTopology
secured
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment userDetails(UserDetails userDetails)
ProcessingUnitDeploymentTopology
userDetails
in interface ProcessingUnitDeploymentTopology
userDetails
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment userDetails(String userName, String password)
ProcessingUnitDeploymentTopology
userDetails
in interface ProcessingUnitDeploymentTopology
userDetails
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment useScriptToStartContainer()
AbstractElasticProcessingUnitDeployment
GridServiceContainer
to be started using a
script and not a pure Java process.useScriptToStartContainer
in interface ElasticDeploymentTopology
useScriptToStartContainer
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment overrideCommandLineArguments()
AbstractElasticProcessingUnitDeployment
AbstractElasticProcessingUnitDeployment.commandLineArgument(String)
to override all the
vm arguments that the JVM will start by default with.overrideCommandLineArguments
in interface ElasticDeploymentTopology
overrideCommandLineArguments
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment commandLineArgument(String vmInputArgument)
AbstractElasticProcessingUnitDeployment
-Xmx512m
.commandLineArgument
in interface ElasticDeploymentTopology
commandLineArgument
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment addCommandLineArgument(String vmInputArgument)
ElasticDeploymentTopology
-Xmx512m
.addCommandLineArgument
in interface ElasticDeploymentTopology
public ElasticStatefulProcessingUnitDeployment environmentVariable(String name, String value)
AbstractElasticProcessingUnitDeployment
environmentVariable
in interface ElasticDeploymentTopology
environmentVariable
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment addEnvironmentVariable(String name, String value)
ElasticDeploymentTopology
addEnvironmentVariable
in interface ElasticDeploymentTopology
public ElasticStatefulProcessingUnitDeployment dedicatedMachineProvisioning(ElasticMachineProvisioningConfig config)
ElasticDeploymentTopology
The machines returned by the 'machine provisioner' will be dedicated to the instances of this processing unit. In other words, this processing unit will not share the machines with other processing units.
See also DiscoveredMachineProvisioningConfig
for configuring deployment on
a non-virtualized environment. Machines are discovered if 'Grid Service Agents' are running
on them.
dedicatedMachineProvisioning
in interface ElasticDeploymentTopology
dedicatedMachineProvisioning
in class AbstractElasticProcessingUnitDeployment
ElasticDeploymentTopology.sharedMachineProvisioning(String, ElasticMachineProvisioningConfig)
public ElasticStatefulProcessingUnitDeployment publicMachineProvisioning(ElasticMachineProvisioningConfig config)
ElasticDeploymentTopology
The machines returned by the 'machine provisioner' will be shared by any other instance using publicMachineProvisioning or any non-elastic processing unit instance.
publicMachineProvisioning
in interface ElasticDeploymentTopology
publicMachineProvisioning
in class AbstractElasticProcessingUnitDeployment
public ElasticStatefulProcessingUnitDeployment sharedMachineProvisioning(String sharingId, ElasticMachineProvisioningConfig config)
ElasticDeploymentTopology
The machines returned by the 'machine provisioner' will be shared by other processing unit instances with the same sharingId.
See also DiscoveredMachineProvisioningConfig
for
configuring deployment on a non-virtualized environment. Machines are discovered if 'Grid
Service Agents' are running on them.
sharedMachineProvisioning
in interface ElasticDeploymentTopology
ElasticDeploymentTopology.dedicatedMachineProvisioning(ElasticMachineProvisioningConfig)
public ElasticStatefulProcessingUnitDeployment addDependency(String requiredProcessingUnitName)
ProcessingUnitDeploymentTopology
addDependency
in interface ProcessingUnitDeploymentTopology
public ElasticStatefulProcessingUnitDeployment addDependencies(ProcessingUnitDetailedDependencies<? extends ProcessingUnitDependency> detailedDependencies)
ProcessingUnitDeploymentTopology
addDependencies
in interface ProcessingUnitDeploymentTopology
addDependencies
in class AbstractElasticProcessingUnitDeployment
ProcessingUnitDeploymentDependenciesConfigurer
public ElasticStatefulProcessingUnitConfig create()
ProcessingUnitDeploymentTopology
create
in interface ProcessingUnitDeploymentTopology
protected ElasticStatefulProcessingUnitConfig getConfig()
getConfig
in class AbstractElasticProcessingUnitDeployment
Copyright © GigaSpaces.