Documentation
¶
Index ¶
- type DefaultProvider
- func (p *DefaultProvider) AssociatePublicIPAddressValue(nodeClass *v1beta1.EC2NodeClass) *bool
- func (p *DefaultProvider) List(ctx context.Context, nodeClass *v1beta1.EC2NodeClass) ([]*ec2.Subnet, error)
- func (p *DefaultProvider) LivenessProbe(_ *http.Request) error
- func (p *DefaultProvider) UpdateInflightIPs(createFleetInput *ec2.CreateFleetInput, ...)
- func (p *DefaultProvider) ZonalSubnetsForLaunch(ctx context.Context, nodeClass *v1beta1.EC2NodeClass, ...) (map[string]*Subnet, error)
- type Provider
- type Subnet
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DefaultProvider ¶ added in v0.36.0
func NewDefaultProvider ¶ added in v0.36.0
func NewDefaultProvider(ec2api ec2iface.EC2API, cache *cache.Cache, availableIPAddressCache *cache.Cache, associatePublicIPAddressCache *cache.Cache) *DefaultProvider
func (*DefaultProvider) AssociatePublicIPAddressValue ¶ added in v0.37.0
func (p *DefaultProvider) AssociatePublicIPAddressValue(nodeClass *v1beta1.EC2NodeClass) *bool
associatePublicIPAddressValue validates whether we know the association value for all subnets AND that all subnets don't have associatePublicIP set. If both of these are true, we set the value explicitly to false For more detail see: https://github.com/aws/karpenter-provider-aws/pull/3814
func (*DefaultProvider) List ¶ added in v0.36.0
func (p *DefaultProvider) List(ctx context.Context, nodeClass *v1beta1.EC2NodeClass) ([]*ec2.Subnet, error)
func (*DefaultProvider) LivenessProbe ¶ added in v0.36.0
func (p *DefaultProvider) LivenessProbe(_ *http.Request) error
func (*DefaultProvider) UpdateInflightIPs ¶ added in v0.36.0
func (p *DefaultProvider) UpdateInflightIPs(createFleetInput *ec2.CreateFleetInput, createFleetOutput *ec2.CreateFleetOutput, instanceTypes []*cloudprovider.InstanceType, subnets []*Subnet, capacityType string)
UpdateInflightIPs is used to refresh the in-memory IP usage by adding back unused IPs after a CreateFleet response is returned
func (*DefaultProvider) ZonalSubnetsForLaunch ¶ added in v0.36.0
func (p *DefaultProvider) ZonalSubnetsForLaunch(ctx context.Context, nodeClass *v1beta1.EC2NodeClass, instanceTypes []*cloudprovider.InstanceType, capacityType string) (map[string]*Subnet, error)
ZonalSubnetsForLaunch returns a mapping of zone to the subnet with the most available IP addresses and deducts the passed ips from the available count
type Provider ¶
type Provider interface { LivenessProbe(*http.Request) error List(context.Context, *v1beta1.EC2NodeClass) ([]*ec2.Subnet, error) AssociatePublicIPAddressValue(*v1beta1.EC2NodeClass) *bool ZonalSubnetsForLaunch(context.Context, *v1beta1.EC2NodeClass, []*cloudprovider.InstanceType, string) (map[string]*Subnet, error) UpdateInflightIPs(*ec2.CreateFleetInput, *ec2.CreateFleetOutput, []*cloudprovider.InstanceType, []*Subnet, string) }
Click to show internal directories.
Click to hide internal directories.