plugin

package
v1.32.0-rc.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 5, 2024 License: Apache-2.0 Imports: 23 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Plugin

type Plugin struct {
	// contains filtered or unexported fields
}

func NewDRAPluginClient

func NewDRAPluginClient(pluginName string) (*Plugin, error)

NewDRAPluginClient returns a wrapper around those gRPC methods of a DRA driver kubelet plugin which need to be called by kubelet. The wrapper handles gRPC connection management and logging. Connections are reused across different NewDRAPluginClient calls.

func (*Plugin) NodePrepareResources added in v1.31.0

func (*Plugin) NodeUnprepareResources added in v1.31.0

type RegistrationHandler

type RegistrationHandler struct {
	// contains filtered or unexported fields
}

RegistrationHandler is the handler which is fed to the pluginwatcher API.

func NewRegistrationHandler

func NewRegistrationHandler(kubeClient kubernetes.Interface, getNode func() (*v1.Node, error)) *RegistrationHandler

NewPluginHandler returns new registration handler.

Must only be called once per process because it manages global state. If a kubeClient is provided, then it synchronizes ResourceSlices with the resource information provided by plugins.

func (*RegistrationHandler) DeRegisterPlugin

func (h *RegistrationHandler) DeRegisterPlugin(pluginName string)

DeRegisterPlugin is called when a plugin has removed its socket, signaling it is no longer available.

func (*RegistrationHandler) RegisterPlugin

func (h *RegistrationHandler) RegisterPlugin(pluginName string, endpoint string, supportedServices []string, pluginClientTimeout *time.Duration) error

RegisterPlugin is called when a plugin can be registered.

DRA uses the version array in the registration API to enumerate all gRPC services that the plugin provides, using the "<gRPC package name>.<service name>" format (e.g. "v1beta1.DRAPlugin"). This allows kubelet to determine in advance which version to use resp. which optional services the plugin supports.

func (*RegistrationHandler) ValidatePlugin

func (h *RegistrationHandler) ValidatePlugin(pluginName string, endpoint string, supportedServices []string) error

ValidatePlugin is called by kubelet's plugin watcher upon detection of a new registration socket opened by DRA plugin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL