Documentation
¶
Index ¶
- type RmPodActuator
- func (rm RmPodActuator) Effect(_ *common.State, _ map[string]common.Profile)
- func (rm RmPodActuator) Group() string
- func (rm RmPodActuator) Name() string
- func (rm RmPodActuator) NextState(state *common.State, goal *common.State, profiles map[string]common.Profile) ([]common.State, []float64, []planner.Action)
- func (rm RmPodActuator) Perform(state *common.State, plan []planner.Action)
- type RmPodConfig
- type ScaleOutActuator
- func (scale ScaleOutActuator) Effect(state *common.State, profiles map[string]common.Profile)
- func (scale ScaleOutActuator) Group() string
- func (scale ScaleOutActuator) Name() string
- func (scale ScaleOutActuator) NextState(state *common.State, goal *common.State, profiles map[string]common.Profile) ([]common.State, []float64, []planner.Action)
- func (scale ScaleOutActuator) Perform(state *common.State, plan []planner.Action)
- type ScaleOutConfig
- type ScaleOutEffect
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RmPodActuator ¶
type RmPodActuator struct {
// contains filtered or unexported fields
}
RmPodActuator is an actuator that can remove particular PODs.
func NewRmPodActuator ¶
func NewRmPodActuator(core kubernetes.Interface, tracer controller.Tracer, cfg RmPodConfig) *RmPodActuator
NewRmPodActuator initializes a new actuator.
func (RmPodActuator) Group ¶
func (rm RmPodActuator) Group() string
func (RmPodActuator) Name ¶
func (rm RmPodActuator) Name() string
type RmPodConfig ¶
type RmPodConfig struct { LookBack int `json:"look_back"` MinPods int `json:"min_pods"` Port int `json:"port"` Endpoint string `json:"endpoint"` MongoEndpoint string `json:"mongo_endpoint"` PluginManagerEndpoint string `json:"plugin_manager_endpoint"` PluginManagerPort int `json:"plugin_manager_port"` }
RmPodConfig represents the configuration for this actuator.
type ScaleOutActuator ¶
type ScaleOutActuator struct {
// contains filtered or unexported fields
}
ScaleOutActuator is an actuator supporting horizontal scaling.
func NewScaleOutActuator ¶
func NewScaleOutActuator(apps kubernetes.Interface, tracer controller.Tracer, cfg ScaleOutConfig) *ScaleOutActuator
NewScaleOutActuator initializes a new actuator.
func (ScaleOutActuator) Group ¶
func (scale ScaleOutActuator) Group() string
func (ScaleOutActuator) Name ¶
func (scale ScaleOutActuator) Name() string
type ScaleOutConfig ¶
type ScaleOutConfig struct { PythonInterpreter string `json:"interpreter"` Script string `json:"analytics_script"` MaxPods int `json:"max_pods"` LookBack int `json:"look_back"` MaxProActiveScaleOut int `json:"max_proactive_scale_out"` ProActiveLatencyFactor float64 `json:"proactive_latency_factor"` Port int `json:"port"` Endpoint string `json:"endpoint"` MongoEndpoint string `json:"mongo_endpoint"` PluginManagerEndpoint string `json:"plugin_manager_endpoint"` PluginManagerPort int `json:"plugin_manager_port"` }
ScaleOutConfig describes the configuration for this actuator.
type ScaleOutEffect ¶
type ScaleOutEffect struct { // TODO: make private again once refactored. // Never ever think about making these non-public! Needed for marshalling this struct. ThroughputRange []float64 ReplicaRange []int Popt []float64 TrainingFeatures []string TargetFeature string Image string }
ScaleOutEffect describes the data that is stored in the knowledge base.
Click to show internal directories.
Click to hide internal directories.