Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AllocatorAWS ¶
type AllocatorAWS struct {
AWSReleaseExcessIPs bool
ExcessIPReleaseDelay int
AWSEnablePrefixDelegation bool
ENITags map[string]string
ENIGarbageCollectionTags map[string]string
ENIGarbageCollectionInterval time.Duration
AWSUsePrimaryAddress bool
EC2APIEndpoint string
AWSMaxResultsPerCall int32
ParallelAllocWorkers int64
LimitIPAMAPIBurst int
LimitIPAMAPIQPS float64
// contains filtered or unexported fields
}
AllocatorAWS is an implementation of IPAM allocator interface for AWS ENI
func (*AllocatorAWS) Init ¶
func (a *AllocatorAWS) Init(ctx context.Context, logger *slog.Logger, aMetrics ec2shim.MetricsAPI) error
Init sets up ENI limits based on given options
func (*AllocatorAWS) Start ¶
func (a *AllocatorAWS) Start(ctx context.Context, getterUpdater ipam.CiliumNodeGetterUpdater, iMetrics ipam.MetricsAPI) (allocator.NodeEventHandler, error)
Start kicks of ENI allocation, the initial connection to AWS APIs is done in a blocking manner, given that is successful, a controller is started to manage allocation based on CiliumNode custom resources
type Metrics ¶
type Metrics struct {
APIDuration metric.Vec[metric.Observer]
RateLimit metric.Vec[metric.Observer]
}
Metrics holds the metrics for the AWS EC2 API client.
func NewMetrics ¶
func NewMetrics() *Metrics
NewMetrics returns the metrics for the AWS EC2 API client.
func (*Metrics) ObserveAPICall ¶
ObserveAPICall records the duration of an API call.
Click to show internal directories.
Click to hide internal directories.