Documentation ¶
Overview ¶
Package controller contains code for syncing cloud instances with minion registry
Index ¶
- Variables
- type NodeController
- func (s *NodeController) CloudNodes() (*api.NodeList, error)
- func (s *NodeController) DoCheck(node *api.Node) []api.NodeCondition
- func (s *NodeController) DoChecks(nodes *api.NodeList) *api.NodeList
- func (s *NodeController) PopulateIPs(nodes *api.NodeList) (*api.NodeList, error)
- func (s *NodeController) RegisterNodes(nodes *api.NodeList, retryCount int, retryInterval time.Duration) error
- func (s *NodeController) Run(period time.Duration, syncNodeList bool)
- func (s *NodeController) StaticNodes() (*api.NodeList, error)
- func (s *NodeController) SyncCloud() error
- func (s *NodeController) SyncNodeStatus() error
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type NodeController ¶
type NodeController struct {
// contains filtered or unexported fields
}
func NewNodeController ¶
func NewNodeController( cloud cloudprovider.Interface, matchRE string, nodes []string, staticResources *api.NodeResources, kubeClient client.Interface, kubeletClient client.KubeletHealthChecker, registerRetryCount int, podEvictionTimeout time.Duration) *NodeController
NewNodeController returns a new node controller to sync instances from cloudprovider. TODO: NodeController health checker should be a separate package other than kubeletclient, node health check != kubelet health check.
func (*NodeController) CloudNodes ¶
func (s *NodeController) CloudNodes() (*api.NodeList, error)
CloudNodes constructs and returns api.NodeList from cloudprovider. If error occurs, an empty NodeList will be returned with a non-nil error info.
func (*NodeController) DoCheck ¶
func (s *NodeController) DoCheck(node *api.Node) []api.NodeCondition
DoCheck performs health checking for given node.
func (*NodeController) DoChecks ¶
func (s *NodeController) DoChecks(nodes *api.NodeList) *api.NodeList
DoChecks performs health checking for given list of nodes.
func (*NodeController) PopulateIPs ¶
PopulateIPs queries IPs for given list of nodes.
func (*NodeController) RegisterNodes ¶
func (s *NodeController) RegisterNodes(nodes *api.NodeList, retryCount int, retryInterval time.Duration) error
RegisterNodes registers the given list of nodes, it keeps retrying for `retryCount` times.
func (*NodeController) Run ¶
func (s *NodeController) Run(period time.Duration, syncNodeList bool)
Run creates initial node list and start syncing instances from cloudprovider if any. It also starts syncing cluster node status.
func (*NodeController) StaticNodes ¶
func (s *NodeController) StaticNodes() (*api.NodeList, error)
StaticNodes constructs and returns api.NodeList for static nodes. If error occurs, an empty NodeList will be returned with a non-nil error info.
func (*NodeController) SyncCloud ¶
func (s *NodeController) SyncCloud() error
SyncCloud synchronizes the list of instances from cloudprovider to master server.
func (*NodeController) SyncNodeStatus ¶
func (s *NodeController) SyncNodeStatus() error
SyncNodeStatus synchronizes cluster nodes status to master server.