package kubemark
import "k8s.io/kubernetes/pkg/kubemark"
Index ¶
- func GetHollowKubeletConfig(opt *HollowKubletOptions) (*options.KubeletFlags, *kubeletconfig.KubeletConfiguration)
- type FakeProxier
- func (*FakeProxier) OnEndpointsAdd(endpoints *v1.Endpoints)
- func (*FakeProxier) OnEndpointsDelete(endpoints *v1.Endpoints)
- func (*FakeProxier) OnEndpointsSynced()
- func (*FakeProxier) OnEndpointsUpdate(oldEndpoints, endpoints *v1.Endpoints)
- func (*FakeProxier) OnServiceAdd(service *v1.Service)
- func (*FakeProxier) OnServiceDelete(service *v1.Service)
- func (*FakeProxier) OnServiceSynced()
- func (*FakeProxier) OnServiceUpdate(oldService, service *v1.Service)
- func (*FakeProxier) Sync()
- func (*FakeProxier) SyncLoop()
- type HollowKubelet
- func NewHollowKubelet( flags *options.KubeletFlags, config *kubeletconfig.KubeletConfiguration, client *clientset.Clientset, heartbeatClient *clientset.Clientset, cadvisorInterface cadvisor.Interface, imageService internalapi.ImageManagerService, runtimeService internalapi.RuntimeService, containerManager cm.ContainerManager) *HollowKubelet
- func (hk *HollowKubelet) Run()
- type HollowKubletOptions
- type HollowProxy
- func NewHollowProxyOrDie( nodeName string, client clientset.Interface, eventClient v1core.EventsGetter, iptInterface utiliptables.Interface, sysctl utilsysctl.Interface, execer utilexec.Interface, broadcaster record.EventBroadcaster, recorder record.EventRecorder, useRealProxier bool, proxierSyncPeriod time.Duration, proxierMinSyncPeriod time.Duration, ) (*HollowProxy, error)
- func (hp *HollowProxy) Run()
- type KubemarkController
- func NewKubemarkController(externalClient kubeclient.Interface, externalInformerFactory informers.SharedInformerFactory, kubemarkClient kubeclient.Interface, kubemarkNodeInformer informersv1.NodeInformer) (*KubemarkController, error)
- func (kubemarkController *KubemarkController) GetNodeGroupForNode(node string) (string, error)
- func (kubemarkController *KubemarkController) GetNodeGroupSize(nodeGroup string) (int, error)
- func (kubemarkController *KubemarkController) GetNodeGroupTargetSize(nodeGroup string) (int, error)
- func (kubemarkController *KubemarkController) GetNodeNamesForNodeGroup(nodeGroup string) ([]string, error)
- func (kubemarkController *KubemarkController) RemoveNodeFromNodeGroup(nodeGroup string, node string) error
- func (kubemarkController *KubemarkController) Run(stopCh chan struct{})
- func (kubemarkController *KubemarkController) SetNodeGroupSize(nodeGroup string, size int) error
- func (kubemarkController *KubemarkController) WaitForCacheSync(stopCh chan struct{}) bool
Functions ¶
func GetHollowKubeletConfig ¶
func GetHollowKubeletConfig(opt *HollowKubletOptions) (*options.KubeletFlags, *kubeletconfig.KubeletConfiguration)
Builds a KubeletConfiguration for the HollowKubelet, ensuring that the usual defaults are applied for fields we do not override.
Types ¶
type FakeProxier ¶
type FakeProxier struct { proxyconfig.NoopEndpointSliceHandler proxyconfig.NoopNodeHandler }
func (*FakeProxier) OnEndpointsAdd ¶
func (*FakeProxier) OnEndpointsAdd(endpoints *v1.Endpoints)
func (*FakeProxier) OnEndpointsDelete ¶
func (*FakeProxier) OnEndpointsDelete(endpoints *v1.Endpoints)
func (*FakeProxier) OnEndpointsSynced ¶
func (*FakeProxier) OnEndpointsSynced()
func (*FakeProxier) OnEndpointsUpdate ¶
func (*FakeProxier) OnEndpointsUpdate(oldEndpoints, endpoints *v1.Endpoints)
func (*FakeProxier) OnServiceAdd ¶
func (*FakeProxier) OnServiceAdd(service *v1.Service)
func (*FakeProxier) OnServiceDelete ¶
func (*FakeProxier) OnServiceDelete(service *v1.Service)
func (*FakeProxier) OnServiceSynced ¶
func (*FakeProxier) OnServiceSynced()
func (*FakeProxier) OnServiceUpdate ¶
func (*FakeProxier) OnServiceUpdate(oldService, service *v1.Service)
func (*FakeProxier) Sync ¶
func (*FakeProxier) Sync()
func (*FakeProxier) SyncLoop ¶
func (*FakeProxier) SyncLoop()
type HollowKubelet ¶
type HollowKubelet struct { KubeletFlags *options.KubeletFlags KubeletConfiguration *kubeletconfig.KubeletConfiguration KubeletDeps *kubelet.Dependencies }
func NewHollowKubelet ¶
func NewHollowKubelet( flags *options.KubeletFlags, config *kubeletconfig.KubeletConfiguration, client *clientset.Clientset, heartbeatClient *clientset.Clientset, cadvisorInterface cadvisor.Interface, imageService internalapi.ImageManagerService, runtimeService internalapi.RuntimeService, containerManager cm.ContainerManager) *HollowKubelet
func (*HollowKubelet) Run ¶
func (hk *HollowKubelet) Run()
Starts this HollowKubelet and blocks.
type HollowKubletOptions ¶
type HollowKubletOptions struct { NodeName string KubeletPort int KubeletReadOnlyPort int MaxPods int PodsPerCore int NodeLabels map[string]string }
HollowKubletOptions contains settable parameters for hollow kubelet.
type HollowProxy ¶
type HollowProxy struct { ProxyServer *proxyapp.ProxyServer }
func NewHollowProxyOrDie ¶
func NewHollowProxyOrDie( nodeName string, client clientset.Interface, eventClient v1core.EventsGetter, iptInterface utiliptables.Interface, sysctl utilsysctl.Interface, execer utilexec.Interface, broadcaster record.EventBroadcaster, recorder record.EventRecorder, useRealProxier bool, proxierSyncPeriod time.Duration, proxierMinSyncPeriod time.Duration, ) (*HollowProxy, error)
func (*HollowProxy) Run ¶
func (hp *HollowProxy) Run()
type KubemarkController ¶
type KubemarkController struct {
// contains filtered or unexported fields
}
KubemarkController is a simplified version of cloud provider for kubemark. It allows to add and delete nodes from a kubemark cluster and introduces nodegroups by applying labels to the kubemark's hollow-nodes.
func NewKubemarkController ¶
func NewKubemarkController(externalClient kubeclient.Interface, externalInformerFactory informers.SharedInformerFactory, kubemarkClient kubeclient.Interface, kubemarkNodeInformer informersv1.NodeInformer) (*KubemarkController, error)
NewKubemarkController creates KubemarkController using the provided clients to talk to external and kubemark clusters.
func (*KubemarkController) GetNodeGroupForNode ¶
func (kubemarkController *KubemarkController) GetNodeGroupForNode(node string) (string, error)
GetNodeGroupForNode returns the name of the node group to which the node belongs.
func (*KubemarkController) GetNodeGroupSize ¶
func (kubemarkController *KubemarkController) GetNodeGroupSize(nodeGroup string) (int, error)
GetNodeGroupSize returns the current size for the node group as observed.
func (*KubemarkController) GetNodeGroupTargetSize ¶
func (kubemarkController *KubemarkController) GetNodeGroupTargetSize(nodeGroup string) (int, error)
GetNodeGroupTargetSize returns the size of the node group as a sum of current observed size and number of upcoming nodes.
func (*KubemarkController) GetNodeNamesForNodeGroup ¶
func (kubemarkController *KubemarkController) GetNodeNamesForNodeGroup(nodeGroup string) ([]string, error)
GetNodeNamesForNodeGroup returns list of the nodes in the node group.
func (*KubemarkController) RemoveNodeFromNodeGroup ¶
func (kubemarkController *KubemarkController) RemoveNodeFromNodeGroup(nodeGroup string, node string) error
func (*KubemarkController) Run ¶
func (kubemarkController *KubemarkController) Run(stopCh chan struct{})
Run populates the node template needed for creation of kubemark nodes and starts the worker routine for creating new nodes.
func (*KubemarkController) SetNodeGroupSize ¶
func (kubemarkController *KubemarkController) SetNodeGroupSize(nodeGroup string, size int) error
SetNodeGroupSize changes the size of node group by adding or removing nodes.
func (*KubemarkController) WaitForCacheSync ¶
func (kubemarkController *KubemarkController) WaitForCacheSync(stopCh chan struct{}) bool
WaitForCacheSync waits until all caches in the controller are populated.
Source Files ¶
controller.go hollow_kubelet.go hollow_proxy.go
- Version
- v1.19.7
- Published
- Jan 13, 2021
- Platform
- js/wasm
- Imports
- 64 packages
- Last checked
- 1 minute ago –
Tools for package owners.