Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller ...
func NewController ¶
func NewController(conf config.Config) *Controller
NewController creates a new autohealer controller.
func (*Controller) GetLeaderElectionLock ¶
func (c *Controller) GetLeaderElectionLock() (resourcelock.Interface, error)
func (*Controller) Start ¶
func (c *Controller) Start(ctx context.Context)
Start starts the autohealing controller.
func (*Controller) UpdateNodeAnnotation ¶
func (c *Controller) UpdateNodeAnnotation(node healthcheck.NodeInfo, annotation string, value string) error
UpdateNodeAnnotation updates the specified node annotation, if value equals empty string, the annotation will be removed. This implements the interface healthcheck.NodeController
type Event ¶
type Event struct { Type EventType Obj interface{} }
Event holds the context of an event
type EventType ¶
type EventType string
EventType type of event associated with an informer
const ( // CreateEvent event associated with new objects in an informer CreateEvent EventType = "CREATE" // UpdateEvent event associated with an object update in an informer UpdateEvent EventType = "UPDATE" // DeleteEvent event associated when an object is removed from an informer DeleteEvent EventType = "DELETE" // LabelNodeRoleMaster specifies that a node is a master // Related discussion: https://github.com/kubernetes/kubernetes/pull/39112 // TODO: remove >= k8s 1.25 LabelNodeRoleMaster = "node-role.kubernetes.io/master" // LabelNodeRoleControlPlane specifies that a node is control-plane LabelNodeRoleControlPlane = "node-role.kubernetes.io/control-plane" )
Click to show internal directories.
Click to hide internal directories.