Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AutoprovisioningNodeGroupListProcessor ¶
type AutoprovisioningNodeGroupListProcessor struct { }
AutoprovisioningNodeGroupListProcessor adds autoprovisioning candidates to consider in scale-up.
func (*AutoprovisioningNodeGroupListProcessor) Process ¶
func (p *AutoprovisioningNodeGroupListProcessor) Process(context *context.AutoscalingContext, nodeGroups []cloudprovider.NodeGroup, nodeInfos map[string]*schedulercache.NodeInfo, unschedulablePods []*apiv1.Pod) ([]cloudprovider.NodeGroup, map[string]*schedulercache.NodeInfo, error)
Process processes lists of unschedulable and sheduled pods before scaling of the cluster.
type AutoprovisioningNodeGroupManager ¶
type AutoprovisioningNodeGroupManager struct { }
AutoprovisioningNodeGroupManager is responsible for creating/deleting autoprovisioned node groups.
func (*AutoprovisioningNodeGroupManager) CreateNodeGroup ¶
func (p *AutoprovisioningNodeGroupManager) CreateNodeGroup(context *context.AutoscalingContext, nodeGroup cloudprovider.NodeGroup) (cloudprovider.NodeGroup, errors.AutoscalerError)
CreateNodeGroup creates autoprovisioned node group.
type NoOpNodeGroupListProcessor ¶
type NoOpNodeGroupListProcessor struct { }
NoOpNodeGroupListProcessor is returning pod lists without processing them.
func (*NoOpNodeGroupListProcessor) Process ¶
func (p *NoOpNodeGroupListProcessor) Process(context *context.AutoscalingContext, nodeGroups []cloudprovider.NodeGroup, nodeInfos map[string]*schedulercache.NodeInfo, unschedulablePods []*apiv1.Pod) ([]cloudprovider.NodeGroup, map[string]*schedulercache.NodeInfo, error)
Process processes lists of unschedulable and sheduled pods before scaling of the cluster.
type NodeGroupListProcessor ¶
type NodeGroupListProcessor interface { Process(context *context.AutoscalingContext, nodeGroups []cloudprovider.NodeGroup, nodeInfos map[string]*schedulercache.NodeInfo, unschedulablePods []*apiv1.Pod) ([]cloudprovider.NodeGroup, map[string]*schedulercache.NodeInfo, error) }
NodeGroupListProcessor processes lists of NodeGroups considered in scale-up.
func NewAutoprovisioningNodeGroupListProcessor ¶
func NewAutoprovisioningNodeGroupListProcessor() NodeGroupListProcessor
NewAutoprovisioningNodeGroupListProcessor creates an instance of NodeGroupListProcessor.
func NewDefaultNodeGroupListProcessor ¶
func NewDefaultNodeGroupListProcessor() NodeGroupListProcessor
NewDefaultNodeGroupListProcessor creates an instance of NodeGroupListProcessor.
type NodeGroupManager ¶
type NodeGroupManager interface {
CreateNodeGroup(context *context.AutoscalingContext, nodeGroup cloudprovider.NodeGroup) (cloudprovider.NodeGroup, errors.AutoscalerError)
}
NodeGroupManager is responsible for creating/deleting node groups.
func NewAutoprovisioningNodeGroupManager ¶
func NewAutoprovisioningNodeGroupManager() NodeGroupManager
NewAutoprovisioningNodeGroupManager creates an instance of NodeGroupManager.
func NewDefaultNodeGroupManager ¶
func NewDefaultNodeGroupManager() NodeGroupManager
NewDefaultNodeGroupManager creates an instance of NodeGroupManager.