Documentation
¶
Overview ¶
Package aws contains the provider implementation for AWS.
Package aws contains the provider implementation for AWS.
Index ¶
- func NewMeterProvider() (*metric.MeterProvider, error)
- func NewProvider(defaultTTL, defaultCleanupInterval time.Duration, clusterID, vpcID string) (provider.Provider, error)
- func RetrieveVPCID() (string, error)
- type AddressIDFilter
- type ClusterIDFilter
- type ExternalIPNameFilter
- type FilterOption
- type ManagedFilter
- type NodeNameFilter
- type SecurityGroupIDFilter
- type TagKey
- type VPCFilter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewMeterProvider ¶ added in v0.13.0
func NewMeterProvider() (*metric.MeterProvider, error)
NewMeterProvider creates a new OpenTelemetry MeterProvider with Prometheus exporter and registers it with the global metrics registry.
func NewProvider ¶
func NewProvider(defaultTTL, defaultCleanupInterval time.Duration, clusterID, vpcID string) (provider.Provider, error)
NewProvider instantiate a Provider implementation for AWS
func RetrieveVPCID ¶ added in v0.13.0
retrieveVPCID retrieves the VPC ID of the instance. It first checks if the VPC ID is already cached. If not, it attempts to get an IMDSv2 token. If the token retrieval fails, it falls back to IMDSv1. It then retrieves the MAC address and uses it to get the VPC ID.
Types ¶
type AddressIDFilter ¶ added in v0.13.0
type AddressIDFilter struct {
AddressID string
}
AddressIDFilter is a filter option to filter by address ID.
func WithAddressID ¶ added in v0.13.0
func WithAddressID(addressID string) AddressIDFilter
func (AddressIDFilter) Filter ¶ added in v0.13.0
func (f AddressIDFilter) Filter() types.Filter
type ClusterIDFilter ¶ added in v0.13.0
type ClusterIDFilter struct {
ClusterID string
}
ClusterIDFilter is a filter option to filter by environment ID.
func WithClusterID ¶ added in v0.13.0
func WithClusterID(clusterID string) ClusterIDFilter
func (ClusterIDFilter) Filter ¶ added in v0.13.0
func (f ClusterIDFilter) Filter() types.Filter
type ExternalIPNameFilter ¶ added in v0.13.0
type ExternalIPNameFilter struct {
ExternalIPName string
}
ExternalIPNameFilter is a filter option to filter by ExternalIP name.
func WithExternalIPName ¶ added in v0.13.0
func WithExternalIPName(externalIPName string) ExternalIPNameFilter
func (ExternalIPNameFilter) Filter ¶ added in v0.13.0
func (f ExternalIPNameFilter) Filter() types.Filter
type FilterOption ¶ added in v0.13.0
FilterOption is a filter option for AWS API calls.
type ManagedFilter ¶ added in v0.13.0
type ManagedFilter struct{}
ManagedFilter is a filter option to get resources managed by kubestatic.
func Managed ¶ added in v0.13.0
func Managed() ManagedFilter
func (ManagedFilter) Filter ¶ added in v0.13.0
func (f ManagedFilter) Filter() types.Filter
type NodeNameFilter ¶ added in v0.13.0
type NodeNameFilter struct {
NodeName string
}
NodeNameFilter is a filter option to get resources associated with a specific node name.
func WithNodeName ¶ added in v0.13.0
func WithNodeName(nodeName string) NodeNameFilter
func (NodeNameFilter) Filter ¶ added in v0.13.0
func (f NodeNameFilter) Filter() types.Filter
type SecurityGroupIDFilter ¶ added in v0.13.0
type SecurityGroupIDFilter struct {
SecurityGroupID string
}
SecurityGroupIDFilter is a filter option to filter by security group ID.
func WithSecurityGroupID ¶ added in v0.13.0
func WithSecurityGroupID(securityGroupID string) SecurityGroupIDFilter
func (SecurityGroupIDFilter) Filter ¶ added in v0.13.0
func (f SecurityGroupIDFilter) Filter() types.Filter
type TagKey ¶ added in v0.13.0
type TagKey string
TagKey represents an AWS tag key.
const ( TagKeyDomain = "kubestatic.quortex.io" // Tag key domain TagKeyManaged TagKey = TagKeyDomain + "/managed" // Tag key for kubestatic managed resources TagKeyNodeName TagKey = TagKeyDomain + "/node-name" // Tag key for node name TagKeyInstanceID TagKey = TagKeyDomain + "/instance-id" // Tag key for instance ID TagKeyExternalIPName TagKey = TagKeyDomain + "/external-ip-name" // Tag key for external IP name TagKeyClusterID TagKey = TagKeyDomain + "/cluster-id" // Tag key for cluster ID )