Documentation
¶
Index ¶
- Constants
- func New(configuration *runtime.Unknown, handle framework.FrameworkHandle) (framework.Plugin, error)
- type CSISchedulerPlugin
- func (c CSISchedulerPlugin) Filter(ctx context.Context, state *framework.CycleState, pod *v1.Pod, ...) *framework.Status
- func (c CSISchedulerPlugin) Name() string
- func (c CSISchedulerPlugin) Reserve(ctx context.Context, state *framework.CycleState, p *v1.Pod, nodeName string) *framework.Status
- func (c CSISchedulerPlugin) Score(ctx context.Context, state *framework.CycleState, p *v1.Pod, nodeName string) (int64, *framework.Status)
- func (c CSISchedulerPlugin) ScoreExtensions() framework.ScoreExtensions
- func (c CSISchedulerPlugin) Unreserve(ctx context.Context, state *framework.CycleState, p *v1.Pod, nodeName string)
Constants ¶
View Source
const (
// Name is the name of the plugin used in Registry and configurations.
Name = "CSISchedulerPlugin"
)
Variables ¶
This section is empty.
Functions ¶
Types ¶
type CSISchedulerPlugin ¶
type CSISchedulerPlugin struct {
// contains filtered or unexported fields
}
CSISchedulerPlugin is a plugin that does placement decision based on information in AC CRD
func (CSISchedulerPlugin) Filter ¶
func (c CSISchedulerPlugin) Filter(ctx context.Context, state *framework.CycleState, pod *v1.Pod, nodeInfo *schedulernodeinfo.NodeInfo) *framework.Status
Filter filters out nodes which don't have ACs match to PVCs
func (CSISchedulerPlugin) Name ¶
func (c CSISchedulerPlugin) Name() string
Name returns name of plugin
func (CSISchedulerPlugin) Reserve ¶
func (c CSISchedulerPlugin) Reserve(ctx context.Context, state *framework.CycleState, p *v1.Pod, nodeName string) *framework.Status
Reserve does reservation of ACs
func (CSISchedulerPlugin) Score ¶
func (c CSISchedulerPlugin) Score(ctx context.Context, state *framework.CycleState, p *v1.Pod, nodeName string) (int64, *framework.Status)
Score does balancing across the nodes for better performance. Nodes with more ACs should have highest scores
func (CSISchedulerPlugin) ScoreExtensions ¶
func (c CSISchedulerPlugin) ScoreExtensions() framework.ScoreExtensions
ScoreExtensions returns a ScoreExtensions interface if it implements one, or nil if does not.
func (CSISchedulerPlugin) Unreserve ¶
func (c CSISchedulerPlugin) Unreserve(ctx context.Context, state *framework.CycleState, p *v1.Pod, nodeName string)
Unreserve un-reserver ACs
Click to show internal directories.
Click to hide internal directories.