ipamd

package
v1.6.1 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2020 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetConfigForDebug

func GetConfigForDebug() map[string]interface{}

GetConfigForDebug returns the active values of the configuration env vars (for debugging purposes).

func UseCustomNetworkCfg

func UseCustomNetworkCfg() bool

UseCustomNetworkCfg returns whether Pods needs to use pod specific configuration or not.

Types

type IPAMContext

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

IPAMContext contains node level control information

func New

func New(k8sapiClient k8sapi.K8SAPIs, eniConfig *eniconfig.ENIConfigController) (*IPAMContext, error)

New retrieves IP address usage information from Instance MetaData service and Kubelet then initializes IP address pool data store

func (*IPAMContext) RunRPCHandler

func (c *IPAMContext) RunRPCHandler() error

RunRPCHandler handles request from gRPC

func (*IPAMContext) ServeIntrospection

func (c *IPAMContext) ServeIntrospection()

ServeIntrospection sets up ipamd introspection endpoints

func (*IPAMContext) ServeMetrics

func (c *IPAMContext) ServeMetrics()

ServeMetrics sets up ipamd metrics and introspection endpoints

func (*IPAMContext) StartNodeIPPoolManager

func (c *IPAMContext) StartNodeIPPoolManager()

StartNodeIPPoolManager monitors the IP pool, add or del them when it is required.

type LoggingHandler

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

LoggingHandler is a object for handling http request

func (LoggingHandler) ServeHTTP

func (lh LoggingHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)

type ReconcileCooldownCache

type ReconcileCooldownCache struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

ReconcileCooldownCache keep track of recently freed IPs to avoid reading stale EC2 metadata

func (*ReconcileCooldownCache) Add

func (r *ReconcileCooldownCache) Add(ips []string)

Add sets a timestamp for the list of IPs added that says how long they are not to be put back in the data store.

func (*ReconcileCooldownCache) RecentlyFreed

func (r *ReconcileCooldownCache) RecentlyFreed(ip string) (found, recentlyFreed bool)

RecentlyFreed checks if this IP was recently freed.

func (*ReconcileCooldownCache) Remove

func (r *ReconcileCooldownCache) Remove(ip string)

Remove removes an IP from the cooldown cache.

type UnmanagedENISet

type UnmanagedENISet struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

UnmanagedENISet keeps a set of ENI IDs for ENIs tagged with "node.k8s.amazonaws.com/no_manage"

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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