# Packages
No description provided by the author
Package exec scans and loads networking plugins that are installed under /usr/libexec/kubernetes/kubelet-plugins/net/exec/ The layout convention for a plugin is: plugin-name/ (plugins have to be directories first) plugin-name/plugin-name (executable that will be called out, see Vendoring Note for more nuances) plugin-name/<other-files> where, 'executable' has the following requirements: - should have exec permissions - should give non-zero exit code on failure, and zero on success - the arguments will be <action> <pod_namespace> <pod_name> <docker_id_of_infra_container> whereupon, <action> will be one of: - init, called when the kubelet loads the plugin - setup, called after the infra container of a pod is created, but before other containers of the pod are created - teardown, called before the pod infra container is killed - status, called at regular intervals and is supposed to return a json formatted output indicating the pod's IPAddress(v4/v6).
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Functions
GetPodIP gets the IP of the pod by inspecting the network info inside the pod's network namespace.
InitNetworkPlugin inits the plugin that matches networkPluginName.
No description provided by the author
# Constants
TODO: Consider making this value configurable.
No description provided by the author
Indicates the plugin handles Kubernetes bandwidth shaping annotations internally.
Called when the node's Pod CIDR is known when using the controller manager's --allocate-node-cidrs=true option.
No description provided by the author
UseDefaultMTU is a marker value that indicates the plugin should determine its own MTU It is the zero value, so a non-initialized value will mean "UseDefault".
# Structs
No description provided by the author
PodNetworkStatus stores the network status of a pod (currently just the primary IP address) This struct represents version "v1beta1".
# Interfaces
Host is an interface that plugins can use to access the kubelet.
LegacyHost implements the methods required by network plugins that were directly invoked by the kubelet.
NamespaceGetter is an interface to retrieve namespace information for a given sandboxID.
Plugin is an interface to network plugins for the kubelet.