Class BlacklistScheduler
java.lang.Object
org.apache.storm.scheduler.blacklist.BlacklistScheduler
- All Implemented Interfaces:
- INodeAssignmentSentCallBack,- IScheduler
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected IBlacklistStrategystatic final intstatic final intstatic final intprotected intprotected IReporterprotected intprotected intprotected intprotected int
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidcleanup()called once when the system is shutting down, should be idempotent.config()This function returns the scheduler's configuration.voidnodeAssignmentSent(String node, boolean successful) voidprepare(Map<String, Object> conf, StormMetricsRegistry metricsRegistry) voidschedule(Topologies topologies, Cluster cluster) Set assignments for the topologies which needs scheduling.
- 
Field Details- 
DEFAULT_BLACKLIST_SCHEDULER_RESUME_TIMEpublic static final int DEFAULT_BLACKLIST_SCHEDULER_RESUME_TIME- See Also:
 
- 
DEFAULT_BLACKLIST_SCHEDULER_TOLERANCE_COUNTpublic static final int DEFAULT_BLACKLIST_SCHEDULER_TOLERANCE_COUNT- See Also:
 
- 
DEFAULT_BLACKLIST_SCHEDULER_TOLERANCE_TIMEpublic static final int DEFAULT_BLACKLIST_SCHEDULER_TOLERANCE_TIME- See Also:
 
- 
toleranceTimeprotected int toleranceTime
- 
toleranceCountprotected int toleranceCount
- 
resumeTimeprotected int resumeTime
- 
reporter
- 
blacklistStrategy
- 
nimbusMonitorFreqSecsprotected int nimbusMonitorFreqSecs
- 
cachedSupervisors
- 
badSupervisorsToleranceSlidingWindow
- 
sendAssignmentFailureCount
- 
windowSizeprotected int windowSize
- 
blacklistedSupervisorIds
 
- 
- 
Constructor Details- 
BlacklistScheduler
 
- 
- 
Method Details- 
prepare- Specified by:
- preparein interface- IScheduler
 
- 
cleanuppublic void cleanup()Description copied from interface:ISchedulercalled once when the system is shutting down, should be idempotent.- Specified by:
- cleanupin interface- IScheduler
 
- 
scheduleDescription copied from interface:ISchedulerSet assignments for the topologies which needs scheduling. The new assignments is available through `cluster.getAssignments()`- Specified by:
- schedulein interface- IScheduler
- Parameters:
- topologies- all the topologies in the cluster, some of them need schedule. Topologies object here only contain static information about topologies. Information like assignments, slots are all in the `cluster` object.
- cluster- the cluster these topologies are running in. `cluster` contains everything user need to develop a new scheduling logic. e.g. supervisors information, available slots, current assignments for all the topologies etc. User can set the new assignment for topologies using cluster.setAssignmentById()`
 
- 
configDescription copied from interface:ISchedulerThis function returns the scheduler's configuration.- Specified by:
- configin interface- IScheduler
- Returns:
- The scheduler's configuration.
 
- 
getBlacklistSupervisorIds
- 
nodeAssignmentSent- Specified by:
- nodeAssignmentSentin interface- INodeAssignmentSentCallBack
 
 
-