Documentation
¶
Overview ¶
Package executor includes a mesos executor, which contains a kubelet as its member to manage containers.
Index ¶
- Constants
- func IsUnsupportedUpdate(err error) bool
- type Config
- type Executor
- func (k *Executor) Disconnected(driver bindings.ExecutorDriver)
- func (k *Executor) Done() <-chan struct{}
- func (k *Executor) Error(driver bindings.ExecutorDriver, message string)
- func (k *Executor) FrameworkMessage(driver bindings.ExecutorDriver, message string)
- func (k *Executor) Init(driver bindings.ExecutorDriver)
- func (k *Executor) KillTask(driver bindings.ExecutorDriver, taskId *mesos.TaskID)
- func (k *Executor) LaunchTask(driver bindings.ExecutorDriver, taskInfo *mesos.TaskInfo)
- func (k *Executor) Registered(driver bindings.ExecutorDriver, executorInfo *mesos.ExecutorInfo, ...)
- func (k *Executor) Reregistered(driver bindings.ExecutorDriver, slaveInfo *mesos.SlaveInfo)
- func (k *Executor) Shutdown(driver bindings.ExecutorDriver)
- type NodeInfo
- type Option
- type PodEvent
- type Registry
Constants ¶
const (
PodEventBound podEventType = iota
PodEventUpdated
PodEventDeleted
PodEventIncompatibleUpdate
)
Variables ¶
This section is empty.
Functions ¶
func IsUnsupportedUpdate ¶ added in v1.2.0
func IsUnsupportedUpdate(err error) bool
Types ¶
type Config ¶
type Config struct {
APIClient *clientset.Clientset
Docker dockertools.DockerInterface
ShutdownAlert func()
SuicideTimeout time.Duration
KubeletFinished <-chan struct{} // signals that kubelet Run() died
ExitFunc func(int)
LaunchGracePeriod time.Duration
NodeInfos chan<- NodeInfo
Registry Registry
Options []Option // functional options
}
type Executor ¶ added in v1.2.0
type Executor struct {
// contains filtered or unexported fields
}
KubernetesExecutor is an mesos executor that runs pods in a minion machine.
func (*Executor) Disconnected ¶ added in v1.2.0
func (k *Executor) Disconnected(driver bindings.ExecutorDriver)
Disconnected is called when the executor is disconnected from the slave.
func (*Executor) Done ¶ added in v1.2.0
func (k *Executor) Done() <-chan struct{}
Done returns a chan that closes when the executor is shutting down
func (*Executor) Error ¶ added in v1.2.0
func (k *Executor) Error(driver bindings.ExecutorDriver, message string)
Error is called when some error happens.
func (*Executor) FrameworkMessage ¶ added in v1.2.0
func (k *Executor) FrameworkMessage(driver bindings.ExecutorDriver, message string)
FrameworkMessage is called when the framework sends some message to the executor
func (*Executor) KillTask ¶ added in v1.2.0
func (k *Executor) KillTask(driver bindings.ExecutorDriver, taskId *mesos.TaskID)
KillTask is called when the executor receives a request to kill a task.
func (*Executor) LaunchTask ¶ added in v1.2.0
func (k *Executor) LaunchTask(driver bindings.ExecutorDriver, taskInfo *mesos.TaskInfo)
LaunchTask is called when the executor receives a request to launch a task. The happens when the k8sm scheduler has decided to schedule the pod (which corresponds to a Mesos Task) onto the node where this executor is running, but the binding is not recorded in the Kubernetes store yet. This function is invoked to tell the executor to record the binding in the Kubernetes store and start the pod via the Kubelet.
func (*Executor) Registered ¶ added in v1.2.0
func (k *Executor) Registered(
driver bindings.ExecutorDriver,
executorInfo *mesos.ExecutorInfo,
frameworkInfo *mesos.FrameworkInfo,
slaveInfo *mesos.SlaveInfo,
)
Registered is called when the executor is successfully registered with the slave.
func (*Executor) Reregistered ¶ added in v1.2.0
func (k *Executor) Reregistered(driver bindings.ExecutorDriver, slaveInfo *mesos.SlaveInfo)
Reregistered is called when the executor is successfully re-registered with the slave. This can happen when the slave fails over.
type Option ¶ added in v1.2.0
type Option func(*Executor)
Option is a functional option type for Executor
func StaticPods ¶ added in v1.2.0
func StaticPods(configPath string, f podutil.Filters) Option
StaticPods creates a static pods Option for an Executor
type PodEvent ¶ added in v1.2.0
type PodEvent struct {
// contains filtered or unexported fields
}
func (*PodEvent) FormatShort ¶ added in v1.2.0
func (rp *PodEvent) FormatShort() string
type Registry ¶ added in v1.2.0
type Registry interface {
// Update modifies the registry's iternal representation of the pod; it may also
// modify the pod argument itself. An update may fail because either a pod isn't
// labeled with a task ID, the task ID is unknown, or the nature of the update may
// be incompatible with what's supported in kubernetes-mesos.
Update(pod *api.Pod) (*PodEvent, error)
// Remove the task from this registry, returns an error if the taskID is unknown.
Remove(taskID string) error
// contains filtered or unexported methods
}
Registry is a state store for pod task metadata. Clients are expected to watch() the event stream to observe changes over time.
func NewRegistry ¶ added in v1.2.0
func NewRegistry(client *clientset.Clientset) Registry
Source Files
¶
Directories
¶
Path | Synopsis |
---|---|
Package config contains executor configuration constants.
|
Package config contains executor configuration constants. |
Package messages exposes executor event/message names as constants.
|
Package messages exposes executor event/message names as constants. |
Package service contains the cmd/k8sm-executor glue code.
|
Package service contains the cmd/k8sm-executor glue code. |