Documentation ¶
Index ¶
- Constants
- func New(configuration *runtime.Unknown, handle framework.FrameworkHandle) (framework.Plugin, error)
- type CSISchedulerPlugin
- func (c CSISchedulerPlugin) Filter(pc *framework.PluginContext, pod *v1.Pod, nodeName string) *framework.Status
- func (c CSISchedulerPlugin) Name() string
- func (c CSISchedulerPlugin) Reserve(pc *framework.PluginContext, p *v1.Pod, nodeName string) *framework.Status
- func (c CSISchedulerPlugin) Score(pc *framework.PluginContext, p *v1.Pod, nodeName string) (int, *framework.Status)
- func (c CSISchedulerPlugin) Unreserve(pc *framework.PluginContext, 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(pc *framework.PluginContext, pod *v1.Pod, nodeName string) *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(pc *framework.PluginContext, p *v1.Pod, nodeName string) *framework.Status
Reserve does reservation of ACs
func (CSISchedulerPlugin) Score ¶
func (c CSISchedulerPlugin) Score(pc *framework.PluginContext, p *v1.Pod, nodeName string) (int, *framework.Status)
Score does balancing across the nodes for better performance. Nodes with more ACs should have highest scores
func (CSISchedulerPlugin) Unreserve ¶
func (c CSISchedulerPlugin) Unreserve(pc *framework.PluginContext, p *v1.Pod, nodeName string)
Unreserve un-reserver ACs
Click to show internal directories.
Click to hide internal directories.