manager

package
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Feb 13, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// TagKeyDeleteKey is the key for the tag that indicates which service this target group belongs to
	TagKeyDeleteKey = "targetgroup-senpai-delete-key"
	// TagKeyClusterName is the key for the tag that indicates which cluster this target group belongs to
	TagKeyClusterName = "targetgroup-senpai-cluster-name"
	// TagKeyName is the key for the Name tag
	TagKeyName = "Name"

	// Health Check Annotation Keys
	AnnotationHealthCheckType               = "targetgroup-senpai.drumato.com/healthcheck-type"
	AnnotationHealthCheckPath               = "targetgroup-senpai.drumato.com/healthcheck-path"
	AnnotationHealthCheckPort               = "targetgroup-senpai.drumato.com/healthcheck-port"
	AnnotationHealthCheckInterval           = "targetgroup-senpai.drumato.com/healthcheck-interval"
	AnnotationHealthCheckTimeout            = "targetgroup-senpai.drumato.com/healthcheck-timeout"
	AnnotationHealthCheckHealthyThreshold   = "targetgroup-senpai.drumato.com/healthcheck-healthy-threshold"
	AnnotationHealthCheckUnhealthyThreshold = "targetgroup-senpai.drumato.com/healthcheck-unhealthy-threshold"

	// Proxy Protocol Annotation Keys
	AnnotationDisableProxyProtocolV2 = "targetgroup-senpai.drumato.com/disable-proxy-protocol-v2"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ELBv2Client

type ELBv2Client interface {
	CreateTargetGroup(ctx context.Context, params *elasticloadbalancingv2.CreateTargetGroupInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.CreateTargetGroupOutput, error)
	DescribeTargetGroups(ctx context.Context, params *elasticloadbalancingv2.DescribeTargetGroupsInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.DescribeTargetGroupsOutput, error)
	DescribeTags(ctx context.Context, params *elasticloadbalancingv2.DescribeTagsInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.DescribeTagsOutput, error)
	ModifyTargetGroup(ctx context.Context, params *elasticloadbalancingv2.ModifyTargetGroupInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.ModifyTargetGroupOutput, error)
	RegisterTargets(ctx context.Context, params *elasticloadbalancingv2.RegisterTargetsInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.RegisterTargetsOutput, error)
	DeregisterTargets(ctx context.Context, params *elasticloadbalancingv2.DeregisterTargetsInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.DeregisterTargetsOutput, error)
	DeleteTargetGroup(ctx context.Context, params *elasticloadbalancingv2.DeleteTargetGroupInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.DeleteTargetGroupOutput, error)
	ModifyTargetGroupAttributes(ctx context.Context, params *elasticloadbalancingv2.ModifyTargetGroupAttributesInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.ModifyTargetGroupAttributesOutput, error)
	DescribeTargetGroupAttributes(ctx context.Context, params *elasticloadbalancingv2.DescribeTargetGroupAttributesInput, optFns ...func(*elasticloadbalancingv2.Options)) (*elasticloadbalancingv2.DescribeTargetGroupAttributesOutput, error)
}

ELBv2Client defines the interface for ELBv2 operations needed by the manager

type Manager

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

func NewManager

func NewManager(
	cfg config.Config, c client.Client,
	elbv2Client ELBv2Client,
	logger *slog.Logger,
) *Manager

func (*Manager) RunOnce

func (m *Manager) RunOnce(ctx context.Context) error

func (*Manager) Start

func (m *Manager) Start(ctx context.Context) error

type NodePortTargetNodes

type NodePortTargetNodes map[string][]corev1.Node

<namespace>/<service name>: <nodes>

type ServiceHealthCheckConfig added in v0.2.0

type ServiceHealthCheckConfig struct {
	Type               string
	Path               string
	Port               int32
	IntervalSeconds    int32
	TimeoutSeconds     int32
	HealthyThreshold   int32
	UnhealthyThreshold int32
}

ServiceHealthCheckConfig holds the parsed health check configuration for a service

Jump to

Keyboard shortcuts

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