Documentation ¶
Overview ¶
Package provider has the interfaces used by the the cli implementing a node
Index ¶
Constants ¶
View Source
const ( // OperatingSystemLinux is the configuration value for defining Linux. OperatingSystemLinux = "Linux" // OperatingSystemWindows is the configuration value for defining Windows. OperatingSystemWindows = "Windows" )
Variables ¶
View Source
var ( // ValidOperatingSystems defines the group of operating systems // that can be used as a kubelet node. ValidOperatingSystems = OperatingSystems{ OperatingSystemLinux: true, OperatingSystemWindows: true, } )
Functions ¶
This section is empty.
Types ¶
type InitConfig ¶
type InitConfig struct { ConfigPath string NodeName string OperatingSystem string InternalIP string DaemonPort int32 KubeClusterDomain string ResourceManager *manager.ResourceManager }
InitConfig is the config passed to initialize a registered provider.
type InitFunc ¶
type InitFunc func(InitConfig) (Provider, error)
type OperatingSystems ¶
func (OperatingSystems) Names ¶
func (o OperatingSystems) Names() []string
type PodMetricsProvider ¶
type PodMetricsProvider interface {
GetStatsSummary(context.Context) (*statsv1alpha1.Summary, error)
}
PodMetricsProvider is an optional interface that providers can implement to expose pod stats
type Provider ¶
type Provider interface { node.PodLifecycleHandler // GetContainerLogs retrieves the logs of a container by name from the provider. GetContainerLogs(ctx context.Context, namespace, podName, containerName string, opts api.ContainerLogOpts) (io.ReadCloser, error) // RunInContainer executes a command in a container in the pod, copying data // between in/out/err and the container's stdin/stdout/stderr. RunInContainer(ctx context.Context, namespace, podName, containerName string, cmd []string, attach api.AttachIO) error // ConfigureNode enables a provider to configure the node object that // will be used for Kubernetes. ConfigureNode(context.Context, *v1.Node) }
Provider contains the methods required to implement a virtual-kubelet provider.
Errors produced by these methods should implement an interface from github.com/virtual-kubelet/virtual-kubelet/errdefs package in order for the core logic to be able to understand the type of failure.
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
Store is used for registering/fetching providers
func (*Store) Exists ¶
Exists returns if there is an init function registered under the provided name
Click to show internal directories.
Click to hide internal directories.