termination

package
v1.1.1 Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2024 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	DurationSeconds = opmetrics.NewPrometheusSummary(
		crmetrics.Registry,
		prometheus.SummaryOpts{
			Namespace:  metrics.Namespace,
			Subsystem:  metrics.NodeSubsystem,
			Name:       "termination_duration_seconds",
			Help:       "The time taken between a node's deletion request and the removal of its finalizer",
			Objectives: metrics.SummaryObjectives(),
		},
		[]string{metrics.NodePoolLabel},
	)
	NodesDrainedTotal = opmetrics.NewPrometheusCounter(
		crmetrics.Registry,
		prometheus.CounterOpts{
			Namespace: metrics.Namespace,
			Subsystem: metrics.NodeSubsystem,
			Name:      "drained_total",
			Help:      "The total number of nodes drained by Karpenter",
		},
		[]string{metrics.NodePoolLabel},
	)
	NodeLifetimeDurationSeconds = opmetrics.NewPrometheusHistogram(
		crmetrics.Registry,
		prometheus.HistogramOpts{
			Namespace: metrics.Namespace,
			Subsystem: metrics.NodeSubsystem,
			Name:      "lifetime_duration_seconds",
			Help:      "The lifetime duration of the nodes since creation.",
			Buckets: []float64{

				(time.Minute * 15).Seconds(),
				(time.Minute * 30).Seconds(),
				(time.Minute * 45).Seconds(),

				time.Hour.Seconds(),
				(time.Hour * 2).Seconds(),
				(time.Hour * 4).Seconds(),
				(time.Hour * 6).Seconds(),
				(time.Hour * 8).Seconds(),
				(time.Hour * 10).Seconds(),
				(time.Hour * 12).Seconds(),
				(time.Hour * 16).Seconds(),
				(time.Hour * 20).Seconds(),

				dayDuration.Seconds(),
				(dayDuration * 2).Seconds(),
				(dayDuration * 3).Seconds(),
				(dayDuration * 5).Seconds(),
				(dayDuration * 10).Seconds(),
				(dayDuration * 15).Seconds(),
				(dayDuration * 20).Seconds(),
				(dayDuration * 25).Seconds(),
				(dayDuration * 30).Seconds(),
			},
		},
		[]string{metrics.NodePoolLabel},
	)
)

Functions

This section is empty.

Types

type Controller

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

Controller for the resource

func NewController

func NewController(clk clock.Clock, kubeClient client.Client, cloudProvider cloudprovider.CloudProvider, terminator *terminator.Terminator, recorder events.Recorder) *Controller

NewController constructs a controller instance

func (*Controller) Reconcile

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

func (*Controller) Register added in v0.37.0

func (c *Controller) Register(_ context.Context, m manager.Manager) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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