Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewConfigFetcher ¶
func NewConfigFetcher(options ConfigFetcherOptions, kubeClient kube_client.Interface, recorder kube_record.EventRecorder) *configFetcherImpl
NewConfigFetcher builds a config fetcher from the parameters and dependencies
Types ¶
type Config ¶
type Config struct { Settings // contains filtered or unexported fields }
Config which represents not static but dynamic configuration of cluster-autoscaler which would be updated periodically at runtime
func ConfigFromConfigMap ¶
ConfigFromConfigMap returns the configuration read from a configmap
func (Config) NodeGroupSpecStrings ¶
NodeGroupSpecStrings returns node group specs represented in the form of `<minSize>:<maxSize>:<name>` to be passed to cloudprovider impls.
func (Config) VersionMismatchesAgainst ¶
VersionMismatchesAgainst returns true if versions between two configs don't match i.e. the config should be updated.
type ConfigFetcher ¶
ConfigFetcher fetches the up-to-date dynamic configuration from the apiserver
type ConfigFetcherOptions ¶
ConfigFetcherOptions contains the various options to customize ConfigFetcher
type NodeGroupSpec ¶
type NodeGroupSpec struct { // The name of the autoscaling target Name string `json:"name"` // Min size of the autoscaling target MinSize int `json:"minSize"` // Max size of the autoscaling target MaxSize int `json:"maxSize"` }
NodeGroupSpec represents a specification of a node group to be auto-scaled
func SpecFromString ¶
func SpecFromString(value string) (*NodeGroupSpec, error)
SpecFromString parses a node group spec represented in the form of `<minSize>:<maxSize>:<name>` and produces a node group spec object
func (NodeGroupSpec) String ¶
func (s NodeGroupSpec) String() string
Represents the node group spec in the form of `<minSize>:<maxSize>:<name>`
func (NodeGroupSpec) Validate ¶
func (s NodeGroupSpec) Validate() error
Validate produces an error if there's an invalid field in the node group spec
type Settings ¶
type Settings struct {
NodeGroups []NodeGroupSpec `json:"nodeGroups"`
}
Settings of cluster-autoscaler contained in the latest config, which should be consumed by cluster-autoscaler