inflightchecks

package
v0.0.0-...-d7985ca Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2023 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewController

func NewController(clk clock.Clock, kubeClient client.Client, recorder events.Recorder,
	provider cloudprovider.CloudProvider) corecontroller.Controller

Types

type Check

type Check interface {
	// Check performs the inflight check, this should return a list of slice discovered, or an empty
	// slice if no issues were found
	Check(ctx context.Context, node *v1.Node, provisioner *v1alpha5.Provisioner, pdbs *deprovisioning.PDBLimits) ([]Issue, error)
}

func NewFailedInit

func NewFailedInit(clk clock.Clock, provider cloudprovider.CloudProvider) Check

func NewNodeShape

func NewNodeShape(provider cloudprovider.CloudProvider) Check

func NewTermination

func NewTermination(kubeClient client.Client) Check

type Controller

type Controller struct {
	// contains filtered or unexported fields
}

func (*Controller) Builder

func (*Controller) Name

func (c *Controller) Name() string

func (*Controller) Reconcile

func (c *Controller) Reconcile(ctx context.Context, node *v1.Node) (reconcile.Result, error)

type FailedInit

type FailedInit struct {
	// contains filtered or unexported fields
}

FailedInit detects nodes that fail to initialize within an hour and reports the reason for the initialization failure

func (FailedInit) Check

func (f FailedInit) Check(ctx context.Context, n *v1.Node, provisioner *v1alpha5.Provisioner, pdbs *deprovisioning.PDBLimits) ([]Issue, error)

type Issue

type Issue struct {
	// contains filtered or unexported fields
}

type NodeShape

type NodeShape struct {
	// contains filtered or unexported fields
}

NodeShape detects nodes that have launched with 10% or less of any resource than was expected.

func (*NodeShape) Check

func (n *NodeShape) Check(ctx context.Context, node *v1.Node, provisioner *v1alpha5.Provisioner, pdbs *deprovisioning.PDBLimits) ([]Issue, error)

type Termination

type Termination struct {
	// contains filtered or unexported fields
}

Termination detects nodes that are stuck terminating and reports why.

func (*Termination) Check

func (t *Termination) Check(ctx context.Context, node *v1.Node, provisioner *v1alpha5.Provisioner, pdbs *deprovisioning.PDBLimits) ([]Issue, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL