 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package scheduler implements the Kubernetes Mesos scheduler.
Index ¶
- type MockScheduler
- func (m *MockScheduler) KillTask(taskId string) error
- func (m *MockScheduler) LaunchTask(task *podtask.T) error
- func (m *MockScheduler) Offers() (f offers.Registry)
- func (m *MockScheduler) Reconcile(task *podtask.T)
- func (m *MockScheduler) Run(done <-chan struct{})
- func (m *MockScheduler) Tasks() (f podtask.Registry)
 
- type Scheduler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MockScheduler ¶ added in v1.2.0
MockScheduler implements SchedulerApi
func (*MockScheduler) KillTask ¶ added in v1.2.0
func (m *MockScheduler) KillTask(taskId string) error
func (*MockScheduler) LaunchTask ¶ added in v1.2.0
func (m *MockScheduler) LaunchTask(task *podtask.T) error
func (*MockScheduler) Offers ¶ added in v1.2.0
func (m *MockScheduler) Offers() (f offers.Registry)
func (*MockScheduler) Reconcile ¶ added in v1.2.0
func (m *MockScheduler) Reconcile(task *podtask.T)
func (*MockScheduler) Run ¶ added in v1.2.0
func (m *MockScheduler) Run(done <-chan struct{})
func (*MockScheduler) Tasks ¶ added in v1.2.0
func (m *MockScheduler) Tasks() (f podtask.Registry)
type Scheduler ¶ added in v1.2.0
type Scheduler interface {
	Tasks() podtask.Registry
	sync.Locker // synchronize changes to tasks, i.e. lock, get task, change task, store task, unlock
	Offers() offers.Registry
	Reconcile(t *podtask.T)
	KillTask(id string) error
	LaunchTask(t *podtask.T) error
	Run(done <-chan struct{})
}
    Scheduler abstracts everything other components of the scheduler need to access from eachother
       Directories
      ¶
      Directories
      ¶
    
    | Path | Synopsis | 
|---|---|
| Package components implements independent aspects of the scheduler which do not use Framework or Scheduler internals, but rely solely on the Scheduler interface. | Package components implements independent aspects of the scheduler which do not use Framework or Scheduler internals, but rely solely on the Scheduler interface. | 
| 
          
            algorithm
            
            
          
           Package algorithm implements the SchedulerAlgorithm | Package algorithm implements the SchedulerAlgorithm | 
| 
          
            algorithm/podschedulers
            
            
          
           Package podschedulers defines an interface (w/ implementations) for matching pods against offers. | Package podschedulers defines an interface (w/ implementations) for matching pods against offers. | 
| 
          
            binder
            
            
          
           Package binder implements the Binder which launched a task and let the executor do the actual binding. | Package binder implements the Binder which launched a task and let the executor do the actual binding. | 
| 
          
            controller
            
            
          
           Package controller implements the scheduling controller which waits for pod events from the queuer (i.e. | Package controller implements the scheduling controller which waits for pod events from the queuer (i.e. | 
| 
          
            deleter
            
            
          
           Package deleter implements the deleter which listens for pod DELETE events from the apiserver and kills tasks for deleted pods. | Package deleter implements the deleter which listens for pod DELETE events from the apiserver and kills tasks for deleted pods. | 
| 
          
            errorhandler
            
            
          
           Package errorhandler implements the ErrorHandler which handles scheduer error and possibly requeue pods for scheduling again. | Package errorhandler implements the ErrorHandler which handles scheduer error and possibly requeue pods for scheduling again. | 
| 
          
            framework
            
            
          
           Package framework implements the Mesos scheduler. | Package framework implements the Mesos scheduler. | 
| 
          
            podreconciler
            
            
          
           Package podreconciler implements pod reconciliation of pods which failed to launch, i.e. | Package podreconciler implements pod reconciliation of pods which failed to launch, i.e. | 
| 
          
            tasksreconciler
            
            
          
           Package taskreconciler implement Mesos task reconciliation. | Package taskreconciler implement Mesos task reconciliation. | 
| Package config provides mechanisms for low-level scheduler tuning. | Package config provides mechanisms for low-level scheduler tuning. | 
| Package constraint exposes Marathon-like constraints for scheduling pods. | Package constraint exposes Marathon-like constraints for scheduling pods. | 
| Package errors contains all scheduler wide used errors | Package errors contains all scheduler wide used errors | 
| Package executorinfo provides a lru-based executor info registry as well as some utility methods. | Package executorinfo provides a lru-based executor info registry as well as some utility methods. | 
| Package ha encapsulates high-availability scheduler concerns. | Package ha encapsulates high-availability scheduler concerns. | 
| Package integration implements integration tests. | Package integration implements integration tests. | 
| Package meta defines framework constants used as keys in k8s annotations that are attached to k8s pods. | Package meta defines framework constants used as keys in k8s annotations that are attached to k8s pods. | 
| Package metrics defines and exposes instrumentation metrics of the scheduler. | Package metrics defines and exposes instrumentation metrics of the scheduler. | 
| Package podtask maps Kubernetes pods to Mesos tasks. | Package podtask maps Kubernetes pods to Mesos tasks. | 
| Package queuer implements a Pod Queuer which stores and yields pods waiting being scheduled. | Package queuer implements a Pod Queuer which stores and yields pods waiting being scheduled. | 
| Package resources contains the Mesos scheduler specific resource functions | Package resources contains the Mesos scheduler specific resource functions | 
| Package service contains the cmd/k8sm-scheduler glue code | Package service contains the cmd/k8sm-scheduler glue code | 
 Click to show internal directories. 
   Click to hide internal directories.