Documentation
¶
Index ¶
- func IsStartupTaintRemoved(node *v1.Node, machine *v1alpha5.Machine) (*v1.Taint, bool)
- func NewController(clk clock.Clock, kubeClient client.Client, ...) corecontroller.Controller
- func PopulateMachineDetails(machine, retrieved *v1alpha5.Machine)
- func RequestedResourcesRegistered(node *v1.Node, machine *v1alpha5.Machine) (v1.ResourceName, bool)
- type Controller
- type Initialization
- type Launch
- type Liveness
- type Registration
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsStartupTaintRemoved ¶
IsStartupTaintRemoved returns true if there are no startup taints registered for the provisioner, or if all startup taints have been removed from the node
func NewController ¶
func NewController(clk clock.Clock, kubeClient client.Client, cloudProvider cloudprovider.CloudProvider) corecontroller.Controller
func PopulateMachineDetails ¶
func RequestedResourcesRegistered ¶
RequestedResourcesRegistered returns true if there are no extended resources on the node, or they have all been registered by device plugins
Types ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller is a Machine Lifecycle controller that manages the lifecycle of the machine up until its termination The controller is responsible for ensuring that new Machines get launched, that they have properly registered with the cluster as nodes and that they are properly initialized, ensuring that Machines that do not have matching nodes after some liveness TTL are removed
func (*Controller) Builder ¶
func (c *Controller) Builder(ctx context.Context, m manager.Manager) corecontroller.Builder
func (*Controller) Name ¶
func (*Controller) Name() string
type Initialization ¶
type Initialization struct {
// contains filtered or unexported fields
}
func (*Initialization) Reconcile ¶
func (i *Initialization) Reconcile(ctx context.Context, machine *v1alpha5.Machine) (reconcile.Result, error)
Reconcile checks for initialization based on if: a) its current status is set to Ready b) all the startup taints have been removed from the node c) all extended resources have been registered This method handles both nil provisioners and nodes without extended resources gracefully.