ec2

package
v0.0.0-...-7983b3b Latest Latest
Warning

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

Go to latest
Published: Apr 8, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (

	// CloudProviderName contains the inventory name of for EC2
	CloudProviderName = "AWS"
)

declare these as vars not const to ease testing

Functions

func GetClusterName

func GetClusterName(ctx context.Context) (string, error)

GetClusterName returns the name of the cluster containing the current EC2 instance

func GetHostname

func GetHostname(ctx context.Context) (string, error)

GetHostname fetches the hostname for current host from the EC2 metadata API

func GetInstanceID

func GetInstanceID(ctx context.Context) (string, error)

GetInstanceID fetches the instance id for current host from the EC2 metadata API

func GetLocalIPv4

func GetLocalIPv4() ([]string, error)

GetLocalIPv4 gets the local IPv4 for the currently running host using the EC2 metadata API. Returns a []string to implement the HostIPProvider interface expected in pkg/process/util

func GetNTPHosts

func GetNTPHosts(ctx context.Context) []string

GetNTPHosts returns the NTP hosts for EC2 if it is detected as the cloud provider, otherwise an empty array. Docs: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/set-time.html#configure_ntp

func GetNetworkID

func GetNetworkID(ctx context.Context) (string, error)

GetNetworkID retrieves the network ID using the EC2 metadata endpoint. For EC2 instances, the the network ID is the VPC ID, if the instance is found to be a part of exactly one VPC.

func GetPublicIPv4

func GetPublicIPv4(ctx context.Context) (string, error)

GetPublicIPv4 gets the public IPv4 for the currently running host using the EC2 metadata API.

func GetTags

func GetTags(ctx context.Context) ([]string, error)

GetTags grabs the host tags from the EC2 api

func HostnameProvider

func HostnameProvider(ctx context.Context, options map[string]interface{}) (string, error)

HostnameProvider gets the hostname

func IsDefaultHostname

func IsDefaultHostname(hostname string) bool

IsDefaultHostname returns whether the given hostname is a default one for EC2

func IsDefaultHostnameForIntake

func IsDefaultHostnameForIntake(hostname string) bool

IsDefaultHostnameForIntake returns whether the given hostname is a default one for EC2 for the intake

func IsRunningOn

func IsRunningOn(ctx context.Context) bool

IsRunningOn returns true if the agent is running on AWS

func IsWindowsDefaultHostname

func IsWindowsDefaultHostname(hostname string) bool

IsWindowsDefaultHostname returns whether the given hostname is a Windows default one for EC2 (starts with 'ec2amaz-')

Types

type Subnet

type Subnet struct {
	ID   string
	Cidr string
}

Subnet stores information about an AWS subnet

func GetSubnetForHardwareAddr

func GetSubnetForHardwareAddr(ctx context.Context, hwAddr net.HardwareAddr) (subnet Subnet, err error)

GetSubnetForHardwareAddr returns info about the subnet associated with a hardware address (mac address) on the current host

Jump to

Keyboard shortcuts

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