| 
 | Brooklyn | |||||||
| FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | METHOD | DETAIL: FIELD | METHOD | |||||||
brooklyn.entity.trait.Startablebrooklyn.entity.rebind.Rebindable
brooklyn.entity.Entity
brooklyn.entity.Group
brooklyn.entity.group.Cluster
brooklyn.entity.group.DynamicCluster
brooklyn.entity.trait.Changeable
brooklyn.entity.basic.AbstractGroup
brooklyn.entity.trait.Identifiable
brooklyn.entity.trait.Resizable
@ImplementedBy(DynamicClusterImpl.class) public interface DynamicCluster extends AbstractGroup, Cluster
A cluster of entities that can dynamically increase or decrease the number of entities. When quarantine is enabled:
| Nested Class Summary | |
|---|---|
| interface | DynamicCluster.NodePlacementStrategy | 
| interface | DynamicCluster.ZoneFailureDetector | 
| Fields inherited from interface Cluster | |
|---|---|
| INITIAL_SIZE | 
| Fields inherited from interface Resizable | |
|---|---|
| RESIZE | 
| Fields inherited from interface Startable | |
|---|---|
| RESTART, SERVICE_UP, START, STOP | 
| Method Summary | |
|---|---|
| java.lang.String | replaceMember(java.lang.String memberId)@param memberId | 
| void | setFactory(EntityFactory factory) | 
| void | setMemberSpec(EntitySpec memberSpec) | 
| void | setRemovalStrategy(Function val) | 
| void | setRemovalStrategy(groovy.lang.Closure val)@deprecated since 0.6.0; use setRemovalStrategy(Function), along with GroovyJavaMethods#functionFromClosure(Closure)#functionFromClosure(Closure) | 
| void | setZoneFailureDetector(DynamicCluster.ZoneFailureDetector val) | 
| void | setZonePlacementStrategy(DynamicCluster.NodePlacementStrategy val) | 
| Methods inherited from interface AbstractGroup | |
|---|---|
| setMembers, setMembers | 
| Methods inherited from interface Entity | |
|---|---|
| addChild, addChild, addEnricher, addGroup, addPolicy, clearParent, getApplication, getApplicationId, getAttribute, getChildren, getConfig, getConfig, getCreationTime, getDisplayName, getEnrichers, getEntityType, getGroups, getIconUrl, getId, getLocations, getParent, getPolicies, getRebindSupport, invoke, removeChild, removeEnricher, removePolicy, setParent | 
| Methods inherited from interface Identifiable | |
|---|---|
| getId | 
| Methods inherited from interface Rebindable | |
|---|---|
| getRebindSupport | 
| Field Detail | 
|---|
Collection.class, "dynamiccluster.availabilityZones", "availability zones to use (if non-null, overrides other configuration)", null); public ConfigKey AVAILABILITY_ZONE_NAMES
Map.class, "dynamiccluster.customChildFlags", "Additional flags to be passed to children when they are being created", ImmutableMap.of()); public static final ConfigKey CUSTOM_CHILD_FLAGS
"dynamiccluster.zone.enable", "Whether to use availability zones, or just deploy everything into the generic location", false); public ConfigKey ENABLE_AVAILABILITY_ZONES
public static final BasicNotificationSensor ENTITY_QUARANTINED
EntityFactory.class, "dynamiccluster.factory", "factory for creating new cluster members", null); public static final ConfigKey FACTORY
public AttributeSensor FAILED_SUB_LOCATIONS
"cluster.initial.quorumSize", public ConfigKey INITIAL_QUORUM_SIZE
EntitySpec.class, "dynamiccluster.memberspec", "entity spec for creating new cluster members", null); public static final ConfigKey MEMBER_SPEC
"dynamiccluster.numAvailabilityZones", "number of availability zones to use (will attempt to auto-discover this number)", 3); public ConfigKey NUM_AVAILABILITY_ZONES
Boolean.class, "dynamiccluster.quarantineFailedEntities", "If true, will quarantine entities that fail to start; if false, will get rid of them (i.e. delete them)", false); public static final ConfigKey QUARANTINE_FAILED_ENTITIES
public static final AttributeSensor QUARANTINE_GROUP
Function.class, "dynamiccluster.removalstrategy", "strategy for deciding what to remove when down-sizing", null); public static final ConfigKey REMOVAL_STRATEGY
public static final MethodEffector REPLACE_MEMBER
public static final AttributeSensor SERVICE_STATE
public AttributeSensor SUB_LOCATIONS
ZoneFailureDetector.class, "dynamiccluster.zone.failureDetector", "Zone failure detector", new ProportionalZoneFailureDetector(2, Duration.ONE_HOUR, 0.9)); public ConfigKey ZONE_FAILURE_DETECTOR
NodePlacementStrategy.class, "dynamiccluster.zone.placementStrategy", "Node placement strategy", new BalancingNodePlacementStrategy()); public ConfigKey ZONE_PLACEMENT_STRATEGY
| Method Detail | 
|---|
public String replaceMember(@EffectorParam(name="memberId", description="The entity id of a member to be replaced") String memberId); public java.lang.String replaceMember(gy(Function, Entity> val); java.lang.String memberId) 
public void setFactory(EntityFactory factory)
public void setMemberSpec(EntitySpec memberSpec)
public void setRemovalStrategy(Function val)
public void setRemovalStrategy(groovy.lang.Closure val)
public void setZoneFailureDetector(DynamicCluster.ZoneFailureDetector val)
public void setZonePlacementStrategy(DynamicCluster.NodePlacementStrategy val)
Brooklyn Multi-Cloud Application Management Platform 
 brooklyncentral.github.com. Apache License. © 2012.