elb

package
v2.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Aug 28, 2019 License: BSD-3-Clause Imports: 13 Imported by: 0

Documentation

Overview

Package elb provides an updater for an ELB frontend to attach nginx to.

Index

Constants

View Source
const ElbTag = "sky.uk/KubernetesClusterFrontend"

ElbTag is the tag key used for identifying ELBs to attach to for a cluster.

View Source
const IngressClassTag = "sky.uk/KubernetesClusterIngressClass"

IngressClassTag is the tag key used for identifying ELBs to attach to for a given ingress controller.

Variables

This section is empty.

Functions

func FindFrontEndElbs

func FindFrontEndElbs(awsElb ELB, frontendTagValue string) (map[string]LoadBalancerDetails, error)

FindFrontEndElbs supports finding ELBs without ingress class for backwards compatibility with feed-dns, which does not support multiple ingress controllers

func FindFrontEndElbsWithIngressClassName

func FindFrontEndElbsWithIngressClassName(awsElb ELB, frontendTagValue string, ingressClassValue string) (map[string]LoadBalancerDetails, error)

FindFrontEndElbsWithIngressClassName finds all ELBs tagged with frontendTagValue and ingressClassValue

func New

func New(region string, frontendTagValue string, ingressClassTagValue string, expectedNumber int, drainDelay time.Duration) (controller.Updater, error)

New creates a new ELB frontend

Types

type EC2Metadata

type EC2Metadata interface {
	Available() bool
	Region() (string, error)
	GetInstanceIdentityDocument() (ec2metadata.EC2InstanceIdentityDocument, error)
}

EC2Metadata interface to allow mocking of the real calls to AWS

type ELB

ELB interface to allow mocking of real calls to AWS as well as cutting down the methods from the real interface to only the ones we use

type LoadBalancerDetails

type LoadBalancerDetails struct {
	Name         string
	DNSName      string
	HostedZoneID string
	Scheme       string
}

LoadBalancerDetails stores all the elb information we use.

Directories

Path Synopsis
Package status provides an updater for an ELB frontend to update ingress statuses.
Package status provides an updater for an ELB frontend to update ingress statuses.

Jump to

Keyboard shortcuts

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