public interface DynamicCluster extends AbstractGroup, Cluster, MemberReplaceable
Cluster
of entities that can dynamically increase or decrease the number of members.
When quarantine is enabled:
Group
for nodes that failed to start correctly.
Advanced users will wish to examine the configuration for the DynamicCluster.NodePlacementStrategy
and
DynamicCluster.ZoneFailureDetector
interfaces and their implementations, which are used here to control
the placement of nodes in particular availability zones and locations when the cluster is resized.
DynamicGroup
,
DynamicFabric
Modifier and Type | Interface and Description |
---|---|
static interface |
DynamicCluster.NodePlacementStrategy |
static interface |
DynamicCluster.ZoneFailureDetector |
Entity.AdjunctSupport<T extends EntityAdjunct>, Entity.EnricherSupport, Entity.GroupSupport, Entity.PolicySupport, Entity.SensorSupport
BrooklynObject.RelationSupport<T extends BrooklynObject>, BrooklynObject.SubscriptionSupport, BrooklynObject.TagSupport
Configurable.ConfigurationSupport
Startable.RestartEffectorBody, Startable.StartEffectorBody, Startable.StopEffectorBody
Resizable.InsufficientCapacityException
FIRST, GROUP_MEMBERS, MEMBER_DELEGATE_CHILDREN, MEMBER_DELEGATE_NAME_FORMAT, RUNNING_QUORUM_CHECK, UP_QUORUM_CHECK
GROUP_SIZE, MEMBER_ADDED, MEMBER_REMOVED
INITIAL_SIZE
RESTART, SERVICE_UP, START, STOP
REPLACE_MEMBER
Modifier and Type | Method and Description |
---|---|
Entity |
addNode(Location loc,
java.util.Map<?,?> extraFlags) |
java.util.Collection<Entity> |
resizeByDelta(int delta)
Changes the cluster size by the given number.
|
void |
setMemberSpec(EntitySpec<?> memberSpec) |
void |
setRemovalStrategy(<any> val) |
void |
setZoneFailureDetector(DynamicCluster.ZoneFailureDetector val) |
void |
setZonePlacementStrategy(DynamicCluster.NodePlacementStrategy val) |
getFirst, setMembers, setMembers
addChild, addChild, addMember, addMemberChild, addMemberChild, getCurrentSize, getMembers, hasMember, removeMember
addFeed, clearParent, enrichers, getApplication, getApplicationId, getAttribute, getChildren, getConfig, getCreationTime, getDisplayName, getEntityType, getIconUrl, getId, getLocations, getParent, groups, invoke, policies, relations, removeChild, sensors, setDisplayName, setParent
getCatalogItemId, getCatalogItemIdSearchPath, subscriptions, tags
config, getConfig
restart, start, stop
getCurrentSize, resize
replaceMember
static final MethodEffector<java.util.Collection<Entity>> RESIZE_BY_DELTA
static final ConfigKey<java.lang.String> RESTART_MODE
static final ConfigKey<java.lang.Boolean> QUARANTINE_FAILED_ENTITIES
static final ConfigKey<<any>> QUARANTINE_FILTER
static final AttributeSensor<Lifecycle> SERVICE_STATE_ACTUAL
static final BasicNotificationSensor<Entity> ENTITY_QUARANTINED
static final AttributeSensor<QuarantineGroup> QUARANTINE_GROUP
static final ConfigKey<java.lang.Integer> INITIAL_QUORUM_SIZE
static final ConfigKey<EntitySpec<?>> MEMBER_SPEC
static final ConfigKey<EntitySpec<?>> FIRST_MEMBER_SPEC
static final ConfigKey<<any>> REMOVAL_STRATEGY
static final ConfigKey<java.util.Map> CUSTOM_CHILD_FLAGS
static final ConfigKey<java.lang.Boolean> ENABLE_AVAILABILITY_ZONES
static final ConfigKey<DynamicCluster.ZoneFailureDetector> ZONE_FAILURE_DETECTOR
static final ConfigKey<DynamicCluster.NodePlacementStrategy> ZONE_PLACEMENT_STRATEGY
static final ConfigKey<java.util.Collection<java.lang.String>> AVAILABILITY_ZONE_NAMES
static final ConfigKey<java.lang.Integer> NUM_AVAILABILITY_ZONES
static final ConfigKey<java.lang.Integer> CLUSTER_MEMBER_ID
static final ConfigKey<java.lang.Integer> MAX_SIZE
static final ConfigKey<java.lang.Integer> MAX_CONCURRENT_CHILD_COMMANDS
static final AttributeSensor<java.util.List<Location>> SUB_LOCATIONS
static final AttributeSensor<java.util.Set<Location>> FAILED_SUB_LOCATIONS
static final AttributeSensor<java.lang.Boolean> CLUSTER_MEMBER
static final AttributeSensor<Entity> CLUSTER
static final AttributeSensor<java.lang.Boolean> CLUSTER_ONE_AND_ALL_MEMBERS_UP
java.util.Collection<Entity> resizeByDelta(int delta)
delta
- number of nodes to add or remove#grow(int)
void setRemovalStrategy(<any> val)
void setZonePlacementStrategy(DynamicCluster.NodePlacementStrategy val)
void setZoneFailureDetector(DynamicCluster.ZoneFailureDetector val)
void setMemberSpec(EntitySpec<?> memberSpec)