types

package
v1.71.0 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2022 License: Apache-2.0 Imports: 2 Imported by: 886

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcceleratorCount added in v1.21.0

type AcceleratorCount struct {

	// The maximum number of accelerators. If this parameter is not specified, there is
	// no maximum limit.
	Max *int32

	// The minimum number of accelerators. If this parameter is not specified, there is
	// no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.

type AcceleratorCountRequest added in v1.21.0

type AcceleratorCountRequest struct {

	// The maximum number of accelerators. To specify no maximum limit, omit this
	// parameter. To exclude accelerator-enabled instance types, set Max to 0.
	Max *int32

	// The minimum number of accelerators. To specify no minimum limit, omit this
	// parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0.

type AcceleratorManufacturer added in v1.21.0

type AcceleratorManufacturer string
const (
	AcceleratorManufacturerNvidia            AcceleratorManufacturer = "nvidia"
	AcceleratorManufacturerAmd               AcceleratorManufacturer = "amd"
	AcceleratorManufacturerAmazonWebServices AcceleratorManufacturer = "amazon-web-services"
	AcceleratorManufacturerXilinx            AcceleratorManufacturer = "xilinx"
)

Enum values for AcceleratorManufacturer

func (AcceleratorManufacturer) Values added in v1.21.0

Values returns all known values for AcceleratorManufacturer. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AcceleratorName added in v1.21.0

type AcceleratorName string
const (
	AcceleratorNameA100          AcceleratorName = "a100"
	AcceleratorNameV100          AcceleratorName = "v100"
	AcceleratorNameK80           AcceleratorName = "k80"
	AcceleratorNameT4            AcceleratorName = "t4"
	AcceleratorNameM60           AcceleratorName = "m60"
	AcceleratorNameRadeonProV520 AcceleratorName = "radeon-pro-v520"
	AcceleratorNameVu9p          AcceleratorName = "vu9p"
	AcceleratorNameInferentia    AcceleratorName = "inferentia"
	AcceleratorNameK520          AcceleratorName = "k520"
)

Enum values for AcceleratorName

func (AcceleratorName) Values added in v1.21.0

func (AcceleratorName) Values() []AcceleratorName

Values returns all known values for AcceleratorName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AcceleratorTotalMemoryMiB added in v1.21.0

type AcceleratorTotalMemoryMiB struct {

	// The maximum amount of accelerator memory, in MiB. If this parameter is not
	// specified, there is no maximum limit.
	Max *int32

	// The minimum amount of accelerator memory, in MiB. If this parameter is not
	// specified, there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of total accelerator memory, in MiB.

type AcceleratorTotalMemoryMiBRequest added in v1.21.0

type AcceleratorTotalMemoryMiBRequest struct {

	// The maximum amount of accelerator memory, in MiB. To specify no maximum limit,
	// omit this parameter.
	Max *int32

	// The minimum amount of accelerator memory, in MiB. To specify no minimum limit,
	// omit this parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of total accelerator memory, in MiB.

type AcceleratorType added in v1.21.0

type AcceleratorType string
const (
	AcceleratorTypeGpu       AcceleratorType = "gpu"
	AcceleratorTypeFpga      AcceleratorType = "fpga"
	AcceleratorTypeInference AcceleratorType = "inference"
)

Enum values for AcceleratorType

func (AcceleratorType) Values added in v1.21.0

func (AcceleratorType) Values() []AcceleratorType

Values returns all known values for AcceleratorType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AccessScopeAnalysisFinding added in v1.25.0

type AccessScopeAnalysisFinding struct {

	// The finding components.
	FindingComponents []PathComponent

	// The ID of the finding.
	FindingId *string

	// The ID of the Network Access Scope analysis.
	NetworkInsightsAccessScopeAnalysisId *string

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string
	// contains filtered or unexported fields
}

Describes a finding for a Network Access Scope.

type AccessScopePath added in v1.25.0

type AccessScopePath struct {

	// The destination.
	Destination *PathStatement

	// The source.
	Source *PathStatement

	// The through resources.
	ThroughResources []ThroughResourcesStatement
	// contains filtered or unexported fields
}

Describes a path.

type AccessScopePathRequest added in v1.25.0

type AccessScopePathRequest struct {

	// The destination.
	Destination *PathStatementRequest

	// The source.
	Source *PathStatementRequest

	// The through resources.
	ThroughResources []ThroughResourcesStatementRequest
	// contains filtered or unexported fields
}

Describes a path.

type AccountAttribute

type AccountAttribute struct {

	// The name of the account attribute.
	AttributeName *string

	// The values for the account attribute.
	AttributeValues []AccountAttributeValue
	// contains filtered or unexported fields
}

Describes an account attribute.

type AccountAttributeName

type AccountAttributeName string
const (
	AccountAttributeNameSupportedPlatforms AccountAttributeName = "supported-platforms"
	AccountAttributeNameDefaultVpc         AccountAttributeName = "default-vpc"
)

Enum values for AccountAttributeName

func (AccountAttributeName) Values added in v0.29.0

Values returns all known values for AccountAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AccountAttributeValue

type AccountAttributeValue struct {

	// The value of the attribute.
	AttributeValue *string
	// contains filtered or unexported fields
}

Describes a value of an account attribute.

type ActiveInstance

type ActiveInstance struct {

	// The health status of the instance. If the status of either the instance status
	// check or the system status check is impaired, the health status of the instance
	// is unhealthy. Otherwise, the health status is healthy.
	InstanceHealth InstanceHealthStatus

	// The ID of the instance.
	InstanceId *string

	// The instance type.
	InstanceType *string

	// The ID of the Spot Instance request.
	SpotInstanceRequestId *string
	// contains filtered or unexported fields
}

Describes a running instance in a Spot Fleet.

type ActivityStatus

type ActivityStatus string
const (
	ActivityStatusError              ActivityStatus = "error"
	ActivityStatusPendingFulfillment ActivityStatus = "pending_fulfillment"
	ActivityStatusPendingTermination ActivityStatus = "pending_termination"
	ActivityStatusFulfilled          ActivityStatus = "fulfilled"
)

Enum values for ActivityStatus

func (ActivityStatus) Values added in v0.29.0

func (ActivityStatus) Values() []ActivityStatus

Values returns all known values for ActivityStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AddIpamOperatingRegion added in v1.25.0

type AddIpamOperatingRegion struct {

	// The name of the operating Region.
	RegionName *string
	// contains filtered or unexported fields
}

Add an operating Region to an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions. For more information about operating Regions, see Create an IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) in the Amazon VPC IPAM User Guide.

type AddPrefixListEntry

type AddPrefixListEntry struct {

	// The CIDR block.
	//
	// This member is required.
	Cidr *string

	// A description for the entry. Constraints: Up to 255 characters in length.
	Description *string
	// contains filtered or unexported fields
}

An entry for a prefix list.

type AddedPrincipal added in v1.56.0

type AddedPrincipal struct {

	// The Amazon Resource Name (ARN) of the principal.
	Principal *string

	// The type of principal.
	PrincipalType PrincipalType

	// The ID of the service.
	ServiceId *string

	// The ID of the service permission.
	ServicePermissionId *string
	// contains filtered or unexported fields
}

Describes a principal.

type AdditionalDetail added in v1.33.0

type AdditionalDetail struct {

	// The information type.
	AdditionalDetailType *string

	// The path component.
	Component *AnalysisComponent
	// contains filtered or unexported fields
}

Describes an additional detail for a path analysis.

type Address

type Address struct {

	// The ID representing the allocation of the address for use with EC2-VPC.
	AllocationId *string

	// The ID representing the association of the address with an instance in a VPC.
	AssociationId *string

	// The carrier IP address associated. This option is only available for network
	// interfaces which reside in a subnet in a Wavelength Zone (for example an EC2
	// instance).
	CarrierIp *string

	// The customer-owned IP address.
	CustomerOwnedIp *string

	// The ID of the customer-owned address pool.
	CustomerOwnedIpv4Pool *string

	// Indicates whether this Elastic IP address is for use with instances in
	// EC2-Classic (standard) or instances in a VPC (vpc).
	Domain DomainType

	// The ID of the instance that the address is associated with (if any).
	InstanceId *string

	// The name of the unique set of Availability Zones, Local Zones, or Wavelength
	// Zones from which Amazon Web Services advertises IP addresses.
	NetworkBorderGroup *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the Amazon Web Services account that owns the network interface.
	NetworkInterfaceOwnerId *string

	// The private IP address associated with the Elastic IP address.
	PrivateIpAddress *string

	// The Elastic IP address.
	PublicIp *string

	// The ID of an address pool.
	PublicIpv4Pool *string

	// Any tags assigned to the Elastic IP address.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an Elastic IP address, or a carrier IP address.

type AddressAttribute added in v0.31.0

type AddressAttribute struct {

	// [EC2-VPC] The allocation ID.
	AllocationId *string

	// The pointer (PTR) record for the IP address.
	PtrRecord *string

	// The updated PTR record for the IP address.
	PtrRecordUpdate *PtrUpdateStatus

	// The public IP address.
	PublicIp *string
	// contains filtered or unexported fields
}

The attributes associated with an Elastic IP address.

type AddressAttributeName added in v0.31.0

type AddressAttributeName string
const (
	AddressAttributeNameDomainName AddressAttributeName = "domain-name"
)

Enum values for AddressAttributeName

func (AddressAttributeName) Values added in v0.31.0

Values returns all known values for AddressAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AddressFamily added in v1.25.0

type AddressFamily string
const (
	AddressFamilyIpv4 AddressFamily = "ipv4"
	AddressFamilyIpv6 AddressFamily = "ipv6"
)

Enum values for AddressFamily

func (AddressFamily) Values added in v1.25.0

func (AddressFamily) Values() []AddressFamily

Values returns all known values for AddressFamily. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AddressTransfer added in v1.65.0

type AddressTransfer struct {

	// The Elastic IP address transfer status.
	AddressTransferStatus AddressTransferStatus

	// The allocation ID of an Elastic IP address.
	AllocationId *string

	// The Elastic IP address being transferred.
	PublicIp *string

	// The ID of the account that you want to transfer the Elastic IP address to.
	TransferAccountId *string

	// The timestamp when the Elastic IP address transfer was accepted.
	TransferOfferAcceptedTimestamp *time.Time

	// The timestamp when the Elastic IP address transfer expired. When the source
	// account starts the transfer, the transfer account has seven hours to allocate
	// the Elastic IP address to complete the transfer, or the Elastic IP address will
	// return to its original owner.
	TransferOfferExpirationTimestamp *time.Time
	// contains filtered or unexported fields
}

Details on the Elastic IP address transfer. For more information, see Transfer Elastic IP addresses (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro) in the Amazon Virtual Private Cloud User Guide.

type AddressTransferStatus added in v1.65.0

type AddressTransferStatus string
const (
	AddressTransferStatusPending  AddressTransferStatus = "pending"
	AddressTransferStatusDisabled AddressTransferStatus = "disabled"
	AddressTransferStatusAccepted AddressTransferStatus = "accepted"
)

Enum values for AddressTransferStatus

func (AddressTransferStatus) Values added in v1.65.0

Values returns all known values for AddressTransferStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Affinity

type Affinity string
const (
	AffinityDefault Affinity = "default"
	AffinityHost    Affinity = "host"
)

Enum values for Affinity

func (Affinity) Values added in v0.29.0

func (Affinity) Values() []Affinity

Values returns all known values for Affinity. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AllocationState

type AllocationState string
const (
	AllocationStateAvailable                AllocationState = "available"
	AllocationStateUnderAssessment          AllocationState = "under-assessment"
	AllocationStatePermanentFailure         AllocationState = "permanent-failure"
	AllocationStateReleased                 AllocationState = "released"
	AllocationStateReleasedPermanentFailure AllocationState = "released-permanent-failure"
	AllocationStatePending                  AllocationState = "pending"
)

Enum values for AllocationState

func (AllocationState) Values added in v0.29.0

func (AllocationState) Values() []AllocationState

Values returns all known values for AllocationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AllocationStrategy

type AllocationStrategy string
const (
	AllocationStrategyLowestPrice                  AllocationStrategy = "lowestPrice"
	AllocationStrategyDiversified                  AllocationStrategy = "diversified"
	AllocationStrategyCapacityOptimized            AllocationStrategy = "capacityOptimized"
	AllocationStrategyCapacityOptimizedPrioritized AllocationStrategy = "capacityOptimizedPrioritized"
	AllocationStrategyPriceCapacityOptimized       AllocationStrategy = "priceCapacityOptimized"
)

Enum values for AllocationStrategy

func (AllocationStrategy) Values added in v0.29.0

Values returns all known values for AllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AllocationType added in v1.57.0

type AllocationType string
const (
	AllocationTypeUsed AllocationType = "used"
)

Enum values for AllocationType

func (AllocationType) Values added in v1.57.0

func (AllocationType) Values() []AllocationType

Values returns all known values for AllocationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AllowedPrincipal

type AllowedPrincipal struct {

	// The Amazon Resource Name (ARN) of the principal.
	Principal *string

	// The type of principal.
	PrincipalType PrincipalType

	// The ID of the service.
	ServiceId *string

	// The ID of the service permission.
	ServicePermissionId *string

	// The tags.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a principal.

type AllowsMultipleInstanceTypes

type AllowsMultipleInstanceTypes string
const (
	AllowsMultipleInstanceTypesOn  AllowsMultipleInstanceTypes = "on"
	AllowsMultipleInstanceTypesOff AllowsMultipleInstanceTypes = "off"
)

Enum values for AllowsMultipleInstanceTypes

func (AllowsMultipleInstanceTypes) Values added in v0.29.0

Values returns all known values for AllowsMultipleInstanceTypes. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AlternatePathHint added in v0.31.0

type AlternatePathHint struct {

	// The Amazon Resource Name (ARN) of the component.
	ComponentArn *string

	// The ID of the component.
	ComponentId *string
	// contains filtered or unexported fields
}

Describes an potential intermediate component of a feasible path.

type AnalysisAclRule added in v0.31.0

type AnalysisAclRule struct {

	// The IPv4 address range, in CIDR notation.
	Cidr *string

	// Indicates whether the rule is an outbound rule.
	Egress *bool

	// The range of ports.
	PortRange *PortRange

	// The protocol.
	Protocol *string

	// Indicates whether to allow or deny traffic that matches the rule.
	RuleAction *string

	// The rule number.
	RuleNumber *int32
	// contains filtered or unexported fields
}

Describes a network access control (ACL) rule.

type AnalysisComponent added in v0.31.0

type AnalysisComponent struct {

	// The Amazon Resource Name (ARN) of the component.
	Arn *string

	// The ID of the component.
	Id *string

	// The name of the analysis component.
	Name *string
	// contains filtered or unexported fields
}

Describes a path component.

type AnalysisLoadBalancerListener added in v0.31.0

type AnalysisLoadBalancerListener struct {

	// [Classic Load Balancers] The back-end port for the listener.
	InstancePort *int32

	// The port on which the load balancer is listening.
	LoadBalancerPort *int32
	// contains filtered or unexported fields
}

Describes a load balancer listener.

type AnalysisLoadBalancerTarget added in v0.31.0

type AnalysisLoadBalancerTarget struct {

	// The IP address.
	Address *string

	// The Availability Zone.
	AvailabilityZone *string

	// Information about the instance.
	Instance *AnalysisComponent

	// The port on which the target is listening.
	Port *int32
	// contains filtered or unexported fields
}

Describes a load balancer target.

type AnalysisPacketHeader added in v0.31.0

type AnalysisPacketHeader struct {

	// The destination addresses.
	DestinationAddresses []string

	// The destination port ranges.
	DestinationPortRanges []PortRange

	// The protocol.
	Protocol *string

	// The source addresses.
	SourceAddresses []string

	// The source port ranges.
	SourcePortRanges []PortRange
	// contains filtered or unexported fields
}

Describes a header. Reflects any changes made by a component as traffic passes through. The fields of an inbound header are null except for the first component of a path.

type AnalysisRouteTableRoute added in v0.31.0

type AnalysisRouteTableRoute struct {

	// The destination IPv4 address, in CIDR notation.
	DestinationCidr *string

	// The prefix of the Amazon Web Service.
	DestinationPrefixListId *string

	// The ID of an egress-only internet gateway.
	EgressOnlyInternetGatewayId *string

	// The ID of the gateway, such as an internet gateway or virtual private gateway.
	GatewayId *string

	// The ID of the instance, such as a NAT instance.
	InstanceId *string

	// The ID of a NAT gateway.
	NatGatewayId *string

	// The ID of a network interface.
	NetworkInterfaceId *string

	// Describes how the route was created. The following are the possible values:
	//
	// *
	// CreateRouteTable - The route was automatically created when the route table was
	// created.
	//
	// * CreateRoute - The route was manually added to the route table.
	//
	// *
	// EnableVgwRoutePropagation - The route was propagated by route propagation.
	Origin *string

	// The state. The following are the possible values:
	//
	// * active
	//
	// * blackhole
	State *string

	// The ID of a transit gateway.
	TransitGatewayId *string

	// The ID of a VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a route table route.

type AnalysisSecurityGroupRule added in v0.31.0

type AnalysisSecurityGroupRule struct {

	// The IPv4 address range, in CIDR notation.
	Cidr *string

	// The direction. The following are the possible values:
	//
	// * egress
	//
	// * ingress
	Direction *string

	// The port range.
	PortRange *PortRange

	// The prefix list ID.
	PrefixListId *string

	// The protocol name.
	Protocol *string

	// The security group ID.
	SecurityGroupId *string
	// contains filtered or unexported fields
}

Describes a security group rule.

type AnalysisStatus added in v0.31.0

type AnalysisStatus string
const (
	AnalysisStatusRunning   AnalysisStatus = "running"
	AnalysisStatusSucceeded AnalysisStatus = "succeeded"
	AnalysisStatusFailed    AnalysisStatus = "failed"
)

Enum values for AnalysisStatus

func (AnalysisStatus) Values added in v0.31.0

func (AnalysisStatus) Values() []AnalysisStatus

Values returns all known values for AnalysisStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ApplianceModeSupportValue added in v0.29.0

type ApplianceModeSupportValue string
const (
	ApplianceModeSupportValueEnable  ApplianceModeSupportValue = "enable"
	ApplianceModeSupportValueDisable ApplianceModeSupportValue = "disable"
)

Enum values for ApplianceModeSupportValue

func (ApplianceModeSupportValue) Values added in v0.29.0

Values returns all known values for ApplianceModeSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ArchitectureType

type ArchitectureType string
const (
	ArchitectureTypeI386     ArchitectureType = "i386"
	ArchitectureTypeX8664    ArchitectureType = "x86_64"
	ArchitectureTypeArm64    ArchitectureType = "arm64"
	ArchitectureTypeX8664Mac ArchitectureType = "x86_64_mac"
	ArchitectureTypeArm64Mac ArchitectureType = "arm64_mac"
)

Enum values for ArchitectureType

func (ArchitectureType) Values added in v0.29.0

Values returns all known values for ArchitectureType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ArchitectureValues

type ArchitectureValues string
const (
	ArchitectureValuesI386     ArchitectureValues = "i386"
	ArchitectureValuesX8664    ArchitectureValues = "x86_64"
	ArchitectureValuesArm64    ArchitectureValues = "arm64"
	ArchitectureValuesX8664Mac ArchitectureValues = "x86_64_mac"
	ArchitectureValuesArm64Mac ArchitectureValues = "arm64_mac"
)

Enum values for ArchitectureValues

func (ArchitectureValues) Values added in v0.29.0

Values returns all known values for ArchitectureValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AssignedPrivateIpAddress

type AssignedPrivateIpAddress struct {

	// The private IP address assigned to the network interface.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes the private IP addresses assigned to a network interface.

type AssociatedNetworkType

type AssociatedNetworkType string
const (
	AssociatedNetworkTypeVpc AssociatedNetworkType = "vpc"
)

Enum values for AssociatedNetworkType

func (AssociatedNetworkType) Values added in v0.29.0

Values returns all known values for AssociatedNetworkType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AssociatedRole added in v0.29.0

type AssociatedRole struct {

	// The ARN of the associated IAM role.
	AssociatedRoleArn *string

	// The name of the Amazon S3 bucket in which the Amazon S3 object is stored.
	CertificateS3BucketName *string

	// The key of the Amazon S3 object ey where the certificate, certificate chain, and
	// encrypted private key bundle is stored. The object key is formated as follows:
	// role_arn/certificate_arn.
	CertificateS3ObjectKey *string

	// The ID of the KMS customer master key (CMK) used to encrypt the private key.
	EncryptionKmsKeyId *string
	// contains filtered or unexported fields
}

Information about the associated IAM roles.

type AssociatedTargetNetwork

type AssociatedTargetNetwork struct {

	// The ID of the subnet.
	NetworkId *string

	// The target network type.
	NetworkType AssociatedNetworkType
	// contains filtered or unexported fields
}

Describes a target network that is associated with a Client VPN endpoint. A target network is a subnet in a VPC.

type AssociationStatus

type AssociationStatus struct {

	// The state of the target network association.
	Code AssociationStatusCode

	// A message about the status of the target network association, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a target network association.

type AssociationStatusCode

type AssociationStatusCode string
const (
	AssociationStatusCodeAssociating       AssociationStatusCode = "associating"
	AssociationStatusCodeAssociated        AssociationStatusCode = "associated"
	AssociationStatusCodeAssociationFailed AssociationStatusCode = "association-failed"
	AssociationStatusCodeDisassociating    AssociationStatusCode = "disassociating"
	AssociationStatusCodeDisassociated     AssociationStatusCode = "disassociated"
)

Enum values for AssociationStatusCode

func (AssociationStatusCode) Values added in v0.29.0

Values returns all known values for AssociationStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AthenaIntegration added in v1.4.0

type AthenaIntegration struct {

	// The location in Amazon S3 to store the generated CloudFormation template.
	//
	// This member is required.
	IntegrationResultS3DestinationArn *string

	// The schedule for adding new partitions to the table.
	//
	// This member is required.
	PartitionLoadFrequency PartitionLoadFrequency

	// The end date for the partition.
	PartitionEndDate *time.Time

	// The start date for the partition.
	PartitionStartDate *time.Time
	// contains filtered or unexported fields
}

Describes integration options for Amazon Athena.

type AttachmentStatus

type AttachmentStatus string
const (
	AttachmentStatusAttaching AttachmentStatus = "attaching"
	AttachmentStatusAttached  AttachmentStatus = "attached"
	AttachmentStatusDetaching AttachmentStatus = "detaching"
	AttachmentStatusDetached  AttachmentStatus = "detached"
)

Enum values for AttachmentStatus

func (AttachmentStatus) Values added in v0.29.0

Values returns all known values for AttachmentStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AttributeBooleanValue

type AttributeBooleanValue struct {

	// The attribute value. The valid values are true or false.
	Value *bool
	// contains filtered or unexported fields
}

Describes a value for a resource attribute that is a Boolean value.

type AttributeValue

type AttributeValue struct {

	// The attribute value. The value is case-sensitive.
	Value *string
	// contains filtered or unexported fields
}

Describes a value for a resource attribute that is a String.

type AuthorizationRule

type AuthorizationRule struct {

	// Indicates whether the authorization rule grants access to all clients.
	AccessAll *bool

	// The ID of the Client VPN endpoint with which the authorization rule is
	// associated.
	ClientVpnEndpointId *string

	// A brief description of the authorization rule.
	Description *string

	// The IPv4 address range, in CIDR notation, of the network to which the
	// authorization rule applies.
	DestinationCidr *string

	// The ID of the Active Directory group to which the authorization rule grants
	// access.
	GroupId *string

	// The current state of the authorization rule.
	Status *ClientVpnAuthorizationRuleStatus
	// contains filtered or unexported fields
}

Information about an authorization rule.

type AutoAcceptSharedAssociationsValue added in v0.31.0

type AutoAcceptSharedAssociationsValue string
const (
	AutoAcceptSharedAssociationsValueEnable  AutoAcceptSharedAssociationsValue = "enable"
	AutoAcceptSharedAssociationsValueDisable AutoAcceptSharedAssociationsValue = "disable"
)

Enum values for AutoAcceptSharedAssociationsValue

func (AutoAcceptSharedAssociationsValue) Values added in v0.31.0

Values returns all known values for AutoAcceptSharedAssociationsValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AutoAcceptSharedAttachmentsValue

type AutoAcceptSharedAttachmentsValue string
const (
	AutoAcceptSharedAttachmentsValueEnable  AutoAcceptSharedAttachmentsValue = "enable"
	AutoAcceptSharedAttachmentsValueDisable AutoAcceptSharedAttachmentsValue = "disable"
)

Enum values for AutoAcceptSharedAttachmentsValue

func (AutoAcceptSharedAttachmentsValue) Values added in v0.29.0

Values returns all known values for AutoAcceptSharedAttachmentsValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AutoPlacement

type AutoPlacement string
const (
	AutoPlacementOn  AutoPlacement = "on"
	AutoPlacementOff AutoPlacement = "off"
)

Enum values for AutoPlacement

func (AutoPlacement) Values added in v0.29.0

func (AutoPlacement) Values() []AutoPlacement

Values returns all known values for AutoPlacement. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AvailabilityZone

type AvailabilityZone struct {

	// For Availability Zones, this parameter has the same value as the Region name.
	// For Local Zones, the name of the associated group, for example us-west-2-lax-1.
	// For Wavelength Zones, the name of the associated group, for example
	// us-east-1-wl1-bos-wlz-1.
	GroupName *string

	// Any messages about the Availability Zone, Local Zone, or Wavelength Zone.
	Messages []AvailabilityZoneMessage

	// The name of the network border group.
	NetworkBorderGroup *string

	// For Availability Zones, this parameter always has the value of
	// opt-in-not-required. For Local Zones and Wavelength Zones, this parameter is the
	// opt-in status. The possible values are opted-in, and not-opted-in.
	OptInStatus AvailabilityZoneOptInStatus

	// The ID of the zone that handles some of the Local Zone or Wavelength Zone
	// control plane operations, such as API calls.
	ParentZoneId *string

	// The name of the zone that handles some of the Local Zone or Wavelength Zone
	// control plane operations, such as API calls.
	ParentZoneName *string

	// The name of the Region.
	RegionName *string

	// The state of the Availability Zone, Local Zone, or Wavelength Zone. This value
	// is always available.
	State AvailabilityZoneState

	// The ID of the Availability Zone, Local Zone, or Wavelength Zone.
	ZoneId *string

	// The name of the Availability Zone, Local Zone, or Wavelength Zone.
	ZoneName *string

	// The type of zone. The valid values are availability-zone, local-zone, and
	// wavelength-zone.
	ZoneType *string
	// contains filtered or unexported fields
}

Describes Availability Zones, Local Zones, and Wavelength Zones.

type AvailabilityZoneMessage

type AvailabilityZoneMessage struct {

	// The message about the Availability Zone, Local Zone, or Wavelength Zone.
	Message *string
	// contains filtered or unexported fields
}

Describes a message about an Availability Zone, Local Zone, or Wavelength Zone.

type AvailabilityZoneOptInStatus

type AvailabilityZoneOptInStatus string
const (
	AvailabilityZoneOptInStatusOptInNotRequired AvailabilityZoneOptInStatus = "opt-in-not-required"
	AvailabilityZoneOptInStatusOptedIn          AvailabilityZoneOptInStatus = "opted-in"
	AvailabilityZoneOptInStatusNotOptedIn       AvailabilityZoneOptInStatus = "not-opted-in"
)

Enum values for AvailabilityZoneOptInStatus

func (AvailabilityZoneOptInStatus) Values added in v0.29.0

Values returns all known values for AvailabilityZoneOptInStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AvailabilityZoneState

type AvailabilityZoneState string
const (
	AvailabilityZoneStateAvailable   AvailabilityZoneState = "available"
	AvailabilityZoneStateInformation AvailabilityZoneState = "information"
	AvailabilityZoneStateImpaired    AvailabilityZoneState = "impaired"
	AvailabilityZoneStateUnavailable AvailabilityZoneState = "unavailable"
)

Enum values for AvailabilityZoneState

func (AvailabilityZoneState) Values added in v0.29.0

Values returns all known values for AvailabilityZoneState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type AvailableCapacity

type AvailableCapacity struct {

	// The number of instances that can be launched onto the Dedicated Host depending
	// on the host's available capacity. For Dedicated Hosts that support multiple
	// instance types, this parameter represents the number of instances for each
	// instance size that is supported on the host.
	AvailableInstanceCapacity []InstanceCapacity

	// The number of vCPUs available for launching instances onto the Dedicated Host.
	AvailableVCpus *int32
	// contains filtered or unexported fields
}

The capacity information for instances that can be launched onto the Dedicated Host.

type BareMetal added in v1.21.0

type BareMetal string
const (
	BareMetalIncluded BareMetal = "included"
	BareMetalRequired BareMetal = "required"
	BareMetalExcluded BareMetal = "excluded"
)

Enum values for BareMetal

func (BareMetal) Values added in v1.21.0

func (BareMetal) Values() []BareMetal

Values returns all known values for BareMetal. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type BaselineEbsBandwidthMbps added in v1.21.0

type BaselineEbsBandwidthMbps struct {

	// The maximum baseline bandwidth, in Mbps. If this parameter is not specified,
	// there is no maximum limit.
	Max *int32

	// The minimum baseline bandwidth, in Mbps. If this parameter is not specified,
	// there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the Amazon EC2 User Guide.

type BaselineEbsBandwidthMbpsRequest added in v1.21.0

type BaselineEbsBandwidthMbpsRequest struct {

	// The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this
	// parameter.
	Max *int32

	// The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this
	// parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the Amazon EC2 User Guide.

type BatchState

type BatchState string
const (
	BatchStateSubmitted                     BatchState = "submitted"
	BatchStateActive                        BatchState = "active"
	BatchStateCancelled                     BatchState = "cancelled"
	BatchStateFailed                        BatchState = "failed"
	BatchStateCancelledRunning              BatchState = "cancelled_running"
	BatchStateCancelledTerminatingInstances BatchState = "cancelled_terminating"
	BatchStateModifying                     BatchState = "modifying"
)

Enum values for BatchState

func (BatchState) Values added in v0.29.0

func (BatchState) Values() []BatchState

Values returns all known values for BatchState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type BgpStatus added in v0.31.0

type BgpStatus string
const (
	BgpStatusUp   BgpStatus = "up"
	BgpStatusDown BgpStatus = "down"
)

Enum values for BgpStatus

func (BgpStatus) Values added in v0.31.0

func (BgpStatus) Values() []BgpStatus

Values returns all known values for BgpStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type BlobAttributeValue

type BlobAttributeValue struct {
	Value []byte
	// contains filtered or unexported fields
}

type BlockDeviceMapping

type BlockDeviceMapping struct {

	// The device name (for example, /dev/sdh or xvdh).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *EbsBlockDevice

	// To omit the device from the block device mapping, specify an empty string. When
	// this property is specified, the device is removed from the block device mapping
	// regardless of the assigned value.
	NoDevice *string

	// The virtual device name (ephemeralN). Instance store volumes are numbered
	// starting from 0. An instance type with 2 available instance store volumes can
	// specify mappings for ephemeral0 and ephemeral1. The number of available instance
	// store volumes depends on the instance type. After you connect to the instance,
	// you must mount the volume. NVMe instance store volumes are automatically
	// enumerated and assigned a device name. Including them in your block device
	// mapping has no effect. Constraints: For M3 instances, you must specify instance
	// store volumes in the block device mapping for the instance. When you launch an
	// M3 instance, we ignore any instance store volumes specified in the block device
	// mapping for the AMI.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping, which defines the EBS volumes and instance store volumes to attach to an instance at launch.

type BootModeType added in v0.31.0

type BootModeType string
const (
	BootModeTypeLegacyBios BootModeType = "legacy-bios"
	BootModeTypeUefi       BootModeType = "uefi"
)

Enum values for BootModeType

func (BootModeType) Values added in v0.31.0

func (BootModeType) Values() []BootModeType

Values returns all known values for BootModeType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type BootModeValues added in v0.31.0

type BootModeValues string
const (
	BootModeValuesLegacyBios BootModeValues = "legacy-bios"
	BootModeValuesUefi       BootModeValues = "uefi"
)

Enum values for BootModeValues

func (BootModeValues) Values added in v0.31.0

func (BootModeValues) Values() []BootModeValues

Values returns all known values for BootModeValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type BundleTask

type BundleTask struct {

	// The ID of the bundle task.
	BundleId *string

	// If the task fails, a description of the error.
	BundleTaskError *BundleTaskError

	// The ID of the instance associated with this bundle task.
	InstanceId *string

	// The level of task completion, as a percent (for example, 20%).
	Progress *string

	// The time this task started.
	StartTime *time.Time

	// The state of the task.
	State BundleTaskState

	// The Amazon S3 storage locations.
	Storage *Storage

	// The time of the most recent update for the task.
	UpdateTime *time.Time
	// contains filtered or unexported fields
}

Describes a bundle task.

type BundleTaskError

type BundleTaskError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes an error for BundleInstance.

type BundleTaskState

type BundleTaskState string
const (
	BundleTaskStatePending            BundleTaskState = "pending"
	BundleTaskStateWaitingForShutdown BundleTaskState = "waiting-for-shutdown"
	BundleTaskStateBundling           BundleTaskState = "bundling"
	BundleTaskStateStoring            BundleTaskState = "storing"
	BundleTaskStateCancelling         BundleTaskState = "cancelling"
	BundleTaskStateComplete           BundleTaskState = "complete"
	BundleTaskStateFailed             BundleTaskState = "failed"
)

Enum values for BundleTaskState

func (BundleTaskState) Values added in v0.29.0

func (BundleTaskState) Values() []BundleTaskState

Values returns all known values for BundleTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type BurstablePerformance added in v1.21.0

type BurstablePerformance string
const (
	BurstablePerformanceIncluded BurstablePerformance = "included"
	BurstablePerformanceRequired BurstablePerformance = "required"
	BurstablePerformanceExcluded BurstablePerformance = "excluded"
)

Enum values for BurstablePerformance

func (BurstablePerformance) Values added in v1.21.0

Values returns all known values for BurstablePerformance. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ByoipCidr

type ByoipCidr struct {

	// The address range, in CIDR notation.
	Cidr *string

	// The description of the address range.
	Description *string

	// The state of the address pool.
	State ByoipCidrState

	// Upon success, contains the ID of the address pool. Otherwise, contains an error
	// message.
	StatusMessage *string
	// contains filtered or unexported fields
}

Information about an address range that is provisioned for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP).

type ByoipCidrState

type ByoipCidrState string
const (
	ByoipCidrStateAdvertised                         ByoipCidrState = "advertised"
	ByoipCidrStateDeprovisioned                      ByoipCidrState = "deprovisioned"
	ByoipCidrStateFailedDeprovision                  ByoipCidrState = "failed-deprovision"
	ByoipCidrStateFailedProvision                    ByoipCidrState = "failed-provision"
	ByoipCidrStatePendingDeprovision                 ByoipCidrState = "pending-deprovision"
	ByoipCidrStatePendingProvision                   ByoipCidrState = "pending-provision"
	ByoipCidrStateProvisioned                        ByoipCidrState = "provisioned"
	ByoipCidrStateProvisionedNotPubliclyAdvertisable ByoipCidrState = "provisioned-not-publicly-advertisable"
)

Enum values for ByoipCidrState

func (ByoipCidrState) Values added in v0.29.0

func (ByoipCidrState) Values() []ByoipCidrState

Values returns all known values for ByoipCidrState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CancelBatchErrorCode

type CancelBatchErrorCode string
const (
	CancelBatchErrorCodeFleetRequestIdDoesNotExist        CancelBatchErrorCode = "fleetRequestIdDoesNotExist"
	CancelBatchErrorCodeFleetRequestIdMalformed           CancelBatchErrorCode = "fleetRequestIdMalformed"
	CancelBatchErrorCodeFleetRequestNotInCancellableState CancelBatchErrorCode = "fleetRequestNotInCancellableState"
	CancelBatchErrorCodeUnexpectedError                   CancelBatchErrorCode = "unexpectedError"
)

Enum values for CancelBatchErrorCode

func (CancelBatchErrorCode) Values added in v0.29.0

Values returns all known values for CancelBatchErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CancelCapacityReservationFleetError added in v1.19.0

type CancelCapacityReservationFleetError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes a Capacity Reservation Fleet cancellation error.

type CancelSpotFleetRequestsError

type CancelSpotFleetRequestsError struct {

	// The error code.
	Code CancelBatchErrorCode

	// The description for the error code.
	Message *string
	// contains filtered or unexported fields
}

Describes a Spot Fleet error.

type CancelSpotFleetRequestsErrorItem

type CancelSpotFleetRequestsErrorItem struct {

	// The error.
	Error *CancelSpotFleetRequestsError

	// The ID of the Spot Fleet request.
	SpotFleetRequestId *string
	// contains filtered or unexported fields
}

Describes a Spot Fleet request that was not successfully canceled.

type CancelSpotFleetRequestsSuccessItem

type CancelSpotFleetRequestsSuccessItem struct {

	// The current state of the Spot Fleet request.
	CurrentSpotFleetRequestState BatchState

	// The previous state of the Spot Fleet request.
	PreviousSpotFleetRequestState BatchState

	// The ID of the Spot Fleet request.
	SpotFleetRequestId *string
	// contains filtered or unexported fields
}

Describes a Spot Fleet request that was successfully canceled.

type CancelSpotInstanceRequestState

type CancelSpotInstanceRequestState string
const (
	CancelSpotInstanceRequestStateActive    CancelSpotInstanceRequestState = "active"
	CancelSpotInstanceRequestStateOpen      CancelSpotInstanceRequestState = "open"
	CancelSpotInstanceRequestStateClosed    CancelSpotInstanceRequestState = "closed"
	CancelSpotInstanceRequestStateCancelled CancelSpotInstanceRequestState = "cancelled"
	CancelSpotInstanceRequestStateCompleted CancelSpotInstanceRequestState = "completed"
)

Enum values for CancelSpotInstanceRequestState

func (CancelSpotInstanceRequestState) Values added in v0.29.0

Values returns all known values for CancelSpotInstanceRequestState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CancelledSpotInstanceRequest

type CancelledSpotInstanceRequest struct {

	// The ID of the Spot Instance request.
	SpotInstanceRequestId *string

	// The state of the Spot Instance request.
	State CancelSpotInstanceRequestState
	// contains filtered or unexported fields
}

Describes a request to cancel a Spot Instance.

type CapacityAllocation added in v1.57.0

type CapacityAllocation struct {

	// The usage type. used indicates that the instance capacity is in use by instances
	// that are running in the Capacity Reservation.
	AllocationType AllocationType

	// The amount of instance capacity associated with the usage. For example a value
	// of 4 indicates that instance capacity for 4 instances is currently in use.
	Count *int32
	// contains filtered or unexported fields
}

Information about instance capacity usage for a Capacity Reservation.

type CapacityReservation

type CapacityReservation struct {

	// The Availability Zone in which the capacity is reserved.
	AvailabilityZone *string

	// The Availability Zone ID of the Capacity Reservation.
	AvailabilityZoneId *string

	// The remaining capacity. Indicates the number of instances that can be launched
	// in the Capacity Reservation.
	AvailableInstanceCount *int32

	// Information about instance capacity usage.
	CapacityAllocations []CapacityAllocation

	// The Amazon Resource Name (ARN) of the Capacity Reservation.
	CapacityReservationArn *string

	// The ID of the Capacity Reservation Fleet to which the Capacity Reservation
	// belongs. Only valid for Capacity Reservations that were created by a Capacity
	// Reservation Fleet.
	CapacityReservationFleetId *string

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// The date and time at which the Capacity Reservation was created.
	CreateDate *time.Time

	// Indicates whether the Capacity Reservation supports EBS-optimized instances.
	// This optimization provides dedicated throughput to Amazon EBS and an optimized
	// configuration stack to provide optimal I/O performance. This optimization isn't
	// available with all instance types. Additional usage charges apply when using an
	// EBS- optimized instance.
	EbsOptimized *bool

	// The date and time at which the Capacity Reservation expires. When a Capacity
	// Reservation expires, the reserved capacity is released and you can no longer
	// launch instances into it. The Capacity Reservation's state changes to expired
	// when it reaches its end date and time.
	EndDate *time.Time

	// Indicates the way in which the Capacity Reservation ends. A Capacity Reservation
	// can have one of the following end types:
	//
	// * unlimited - The Capacity Reservation
	// remains active until you explicitly cancel it.
	//
	// * limited - The Capacity
	// Reservation expires automatically at a specified date and time.
	EndDateType EndDateType

	// Deprecated.
	EphemeralStorage *bool

	// Indicates the type of instance launches that the Capacity Reservation accepts.
	// The options include:
	//
	// * open - The Capacity Reservation accepts all instances
	// that have matching attributes (instance type, platform, and Availability Zone).
	// Instances that have matching attributes launch into the Capacity Reservation
	// automatically without specifying any additional parameters.
	//
	// * targeted - The
	// Capacity Reservation only accepts instances that have matching attributes
	// (instance type, platform, and Availability Zone), and explicitly target the
	// Capacity Reservation. This ensures that only permitted instances can use the
	// reserved capacity.
	InstanceMatchCriteria InstanceMatchCriteria

	// The type of operating system for which the Capacity Reservation reserves
	// capacity.
	InstancePlatform CapacityReservationInstancePlatform

	// The type of instance for which the Capacity Reservation reserves capacity.
	InstanceType *string

	// The Amazon Resource Name (ARN) of the Outpost on which the Capacity Reservation
	// was created.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the Capacity Reservation.
	OwnerId *string

	// The Amazon Resource Name (ARN) of the cluster placement group in which the
	// Capacity Reservation was created. For more information, see  Capacity
	// Reservations for cluster placement groups
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-cpg.html) in the Amazon
	// EC2 User Guide.
	PlacementGroupArn *string

	// The date and time at which the Capacity Reservation was started.
	StartDate *time.Time

	// The current state of the Capacity Reservation. A Capacity Reservation can be in
	// one of the following states:
	//
	// * active - The Capacity Reservation is active and
	// the capacity is available for your use.
	//
	// * expired - The Capacity Reservation
	// expired automatically at the date and time specified in your request. The
	// reserved capacity is no longer available for your use.
	//
	// * cancelled - The
	// Capacity Reservation was cancelled. The reserved capacity is no longer available
	// for your use.
	//
	// * pending - The Capacity Reservation request was successful but
	// the capacity provisioning is still pending.
	//
	// * failed - The Capacity Reservation
	// request has failed. A request might fail due to invalid request parameters,
	// capacity constraints, or instance limit constraints. Failed requests are
	// retained for 60 minutes.
	State CapacityReservationState

	// Any tags assigned to the Capacity Reservation.
	Tags []Tag

	// Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can
	// have one of the following tenancy settings:
	//
	// * default - The Capacity
	// Reservation is created on hardware that is shared with other Amazon Web Services
	// accounts.
	//
	// * dedicated - The Capacity Reservation is created on single-tenant
	// hardware that is dedicated to a single Amazon Web Services account.
	Tenancy CapacityReservationTenancy

	// The total number of instances for which the Capacity Reservation reserves
	// capacity.
	TotalInstanceCount *int32
	// contains filtered or unexported fields
}

Describes a Capacity Reservation.

type CapacityReservationFleet added in v1.19.0

type CapacityReservationFleet struct {

	// The strategy used by the Capacity Reservation Fleet to determine which of the
	// specified instance types to use. For more information, see For more information,
	// see  Allocation strategy
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#allocation-strategy)
	// in the Amazon EC2 User Guide.
	AllocationStrategy *string

	// The ARN of the Capacity Reservation Fleet.
	CapacityReservationFleetArn *string

	// The ID of the Capacity Reservation Fleet.
	CapacityReservationFleetId *string

	// The date and time at which the Capacity Reservation Fleet was created.
	CreateTime *time.Time

	// The date and time at which the Capacity Reservation Fleet expires.
	EndDate *time.Time

	// Indicates the type of instance launches that the Capacity Reservation Fleet
	// accepts. All Capacity Reservations in the Fleet inherit this instance matching
	// criteria. Currently, Capacity Reservation Fleets support open instance matching
	// criteria only. This means that instances that have matching attributes (instance
	// type, platform, and Availability Zone) run in the Capacity Reservations
	// automatically. Instances do not need to explicitly target a Capacity Reservation
	// Fleet to use its reserved capacity.
	InstanceMatchCriteria FleetInstanceMatchCriteria

	// Information about the instance types for which to reserve the capacity.
	InstanceTypeSpecifications []FleetCapacityReservation

	// The state of the Capacity Reservation Fleet. Possible states include:
	//
	// *
	// submitted - The Capacity Reservation Fleet request has been submitted and Amazon
	// Elastic Compute Cloud is preparing to create the Capacity Reservations.
	//
	// *
	// modifying - The Capacity Reservation Fleet is being modified. The Fleet remains
	// in this state until the modification is complete.
	//
	// * active - The Capacity
	// Reservation Fleet has fulfilled its total target capacity and it is attempting
	// to maintain this capacity. The Fleet remains in this state until it is modified
	// or deleted.
	//
	// * partially_fulfilled - The Capacity Reservation Fleet has
	// partially fulfilled its total target capacity. There is insufficient Amazon EC2
	// to fulfill the total target capacity. The Fleet is attempting to asynchronously
	// fulfill its total target capacity.
	//
	// * expiring - The Capacity Reservation Fleet
	// has reach its end date and it is in the process of expiring. One or more of its
	// Capacity reservations might still be active.
	//
	// * expired - The Capacity
	// Reservation Fleet has reach its end date. The Fleet and its Capacity
	// Reservations are expired. The Fleet can't create new Capacity Reservations.
	//
	// *
	// cancelling - The Capacity Reservation Fleet is in the process of being
	// cancelled. One or more of its Capacity reservations might still be active.
	//
	// *
	// cancelled - The Capacity Reservation Fleet has been manually cancelled. The
	// Fleet and its Capacity Reservations are cancelled and the Fleet can't create new
	// Capacity Reservations.
	//
	// * failed - The Capacity Reservation Fleet failed to
	// reserve capacity for the specified instance types.
	State CapacityReservationFleetState

	// The tags assigned to the Capacity Reservation Fleet.
	Tags []Tag

	// The tenancy of the Capacity Reservation Fleet. Tenancies include:
	//
	// * default -
	// The Capacity Reservation Fleet is created on hardware that is shared with other
	// Amazon Web Services accounts.
	//
	// * dedicated - The Capacity Reservation Fleet is
	// created on single-tenant hardware that is dedicated to a single Amazon Web
	// Services account.
	Tenancy FleetCapacityReservationTenancy

	// The capacity units that have been fulfilled.
	TotalFulfilledCapacity *float64

	// The total number of capacity units for which the Capacity Reservation Fleet
	// reserves capacity. For more information, see Total target capacity
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity)
	// in the Amazon EC2 User Guide.
	TotalTargetCapacity *int32
	// contains filtered or unexported fields
}

Information about a Capacity Reservation Fleet.

type CapacityReservationFleetCancellationState added in v1.19.0

type CapacityReservationFleetCancellationState struct {

	// The ID of the Capacity Reservation Fleet that was successfully cancelled.
	CapacityReservationFleetId *string

	// The current state of the Capacity Reservation Fleet.
	CurrentFleetState CapacityReservationFleetState

	// The previous state of the Capacity Reservation Fleet.
	PreviousFleetState CapacityReservationFleetState
	// contains filtered or unexported fields
}

Describes a Capacity Reservation Fleet that was successfully cancelled.

type CapacityReservationFleetState added in v1.19.0

type CapacityReservationFleetState string
const (
	CapacityReservationFleetStateSubmitted          CapacityReservationFleetState = "submitted"
	CapacityReservationFleetStateModifying          CapacityReservationFleetState = "modifying"
	CapacityReservationFleetStateActive             CapacityReservationFleetState = "active"
	CapacityReservationFleetStatePartiallyFulfilled CapacityReservationFleetState = "partially_fulfilled"
	CapacityReservationFleetStateExpiring           CapacityReservationFleetState = "expiring"
	CapacityReservationFleetStateExpired            CapacityReservationFleetState = "expired"
	CapacityReservationFleetStateCancelling         CapacityReservationFleetState = "cancelling"
	CapacityReservationFleetStateCancelled          CapacityReservationFleetState = "cancelled"
	CapacityReservationFleetStateFailed             CapacityReservationFleetState = "failed"
)

Enum values for CapacityReservationFleetState

func (CapacityReservationFleetState) Values added in v1.19.0

Values returns all known values for CapacityReservationFleetState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationGroup

type CapacityReservationGroup struct {

	// The ARN of the resource group.
	GroupArn *string

	// The ID of the Amazon Web Services account that owns the resource group.
	OwnerId *string
	// contains filtered or unexported fields
}

Describes a resource group to which a Capacity Reservation has been added.

type CapacityReservationInstancePlatform

type CapacityReservationInstancePlatform string
const (
	CapacityReservationInstancePlatformLinuxUnix                        CapacityReservationInstancePlatform = "Linux/UNIX"
	CapacityReservationInstancePlatformRedHatEnterpriseLinux            CapacityReservationInstancePlatform = "Red Hat Enterprise Linux"
	CapacityReservationInstancePlatformSuseLinux                        CapacityReservationInstancePlatform = "SUSE Linux"
	CapacityReservationInstancePlatformWindows                          CapacityReservationInstancePlatform = "Windows"
	CapacityReservationInstancePlatformWindowsWithSqlServer             CapacityReservationInstancePlatform = "Windows with SQL Server"
	CapacityReservationInstancePlatformWindowsWithSqlServerEnterprise   CapacityReservationInstancePlatform = "Windows with SQL Server Enterprise"
	CapacityReservationInstancePlatformWindowsWithSqlServerStandard     CapacityReservationInstancePlatform = "Windows with SQL Server Standard"
	CapacityReservationInstancePlatformWindowsWithSqlServerWeb          CapacityReservationInstancePlatform = "Windows with SQL Server Web"
	CapacityReservationInstancePlatformLinuxWithSqlServerStandard       CapacityReservationInstancePlatform = "Linux with SQL Server Standard"
	CapacityReservationInstancePlatformLinuxWithSqlServerWeb            CapacityReservationInstancePlatform = "Linux with SQL Server Web"
	CapacityReservationInstancePlatformLinuxWithSqlServerEnterprise     CapacityReservationInstancePlatform = "Linux with SQL Server Enterprise"
	CapacityReservationInstancePlatformRhelWithSqlServerStandard        CapacityReservationInstancePlatform = "RHEL with SQL Server Standard"
	CapacityReservationInstancePlatformRhelWithSqlServerEnterprise      CapacityReservationInstancePlatform = "RHEL with SQL Server Enterprise"
	CapacityReservationInstancePlatformRhelWithSqlServerWeb             CapacityReservationInstancePlatform = "RHEL with SQL Server Web"
	CapacityReservationInstancePlatformRhelWithHa                       CapacityReservationInstancePlatform = "RHEL with HA"
	CapacityReservationInstancePlatformRhelWithHaAndSqlServerStandard   CapacityReservationInstancePlatform = "RHEL with HA and SQL Server Standard"
	CapacityReservationInstancePlatformRhelWithHaAndSqlServerEnterprise CapacityReservationInstancePlatform = "RHEL with HA and SQL Server Enterprise"
)

Enum values for CapacityReservationInstancePlatform

func (CapacityReservationInstancePlatform) Values added in v0.29.0

Values returns all known values for CapacityReservationInstancePlatform. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationOptions

type CapacityReservationOptions struct {

	// Indicates whether to use unused Capacity Reservations for fulfilling On-Demand
	// capacity. If you specify use-capacity-reservations-first, the fleet uses unused
	// Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand
	// capacity. If multiple instance pools have unused Capacity Reservations, the
	// On-Demand allocation strategy (lowest-price or prioritized) is applied. If the
	// number of unused Capacity Reservations is less than the On-Demand target
	// capacity, the remaining On-Demand target capacity is launched according to the
	// On-Demand allocation strategy (lowest-price or prioritized). If you do not
	// specify a value, the fleet fulfils the On-Demand capacity according to the
	// chosen On-Demand allocation strategy.
	UsageStrategy FleetCapacityReservationUsageStrategy
	// contains filtered or unexported fields
}

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity. This strategy can only be used if the EC2 Fleet is of type instant. For more information about Capacity Reservations, see On-Demand Capacity Reservations (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-reservations.html) in the Amazon EC2 User Guide. For examples of using Capacity Reservations in an EC2 Fleet, see EC2 Fleet example configurations (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-examples.html) in the Amazon EC2 User Guide.

type CapacityReservationOptionsRequest

type CapacityReservationOptionsRequest struct {

	// Indicates whether to use unused Capacity Reservations for fulfilling On-Demand
	// capacity. If you specify use-capacity-reservations-first, the fleet uses unused
	// Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand
	// capacity. If multiple instance pools have unused Capacity Reservations, the
	// On-Demand allocation strategy (lowest-price or prioritized) is applied. If the
	// number of unused Capacity Reservations is less than the On-Demand target
	// capacity, the remaining On-Demand target capacity is launched according to the
	// On-Demand allocation strategy (lowest-price or prioritized). If you do not
	// specify a value, the fleet fulfils the On-Demand capacity according to the
	// chosen On-Demand allocation strategy.
	UsageStrategy FleetCapacityReservationUsageStrategy
	// contains filtered or unexported fields
}

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity. This strategy can only be used if the EC2 Fleet is of type instant. For more information about Capacity Reservations, see On-Demand Capacity Reservations (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-reservations.html) in the Amazon EC2 User Guide. For examples of using Capacity Reservations in an EC2 Fleet, see EC2 Fleet example configurations (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-examples.html) in the Amazon EC2 User Guide.

type CapacityReservationPreference

type CapacityReservationPreference string
const (
	CapacityReservationPreferenceOpen CapacityReservationPreference = "open"
	CapacityReservationPreferenceNone CapacityReservationPreference = "none"
)

Enum values for CapacityReservationPreference

func (CapacityReservationPreference) Values added in v0.29.0

Values returns all known values for CapacityReservationPreference. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationSpecification

type CapacityReservationSpecification struct {

	// Indicates the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	// * open - The instance can run in any open Capacity Reservation that
	// has matching attributes (instance type, platform, Availability Zone).
	//
	// * none -
	// The instance avoids running in a Capacity Reservation even if one is available.
	// The instance runs as an On-Demand Instance.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the target Capacity Reservation or Capacity Reservation group.
	CapacityReservationTarget *CapacityReservationTarget
	// contains filtered or unexported fields
}

Describes an instance's Capacity Reservation targeting option. You can specify only one parameter at a time. If you specify CapacityReservationPreference and CapacityReservationTarget, the request fails. Use the CapacityReservationPreference parameter to configure the instance to run as an On-Demand Instance or to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). Use the CapacityReservationTarget parameter to explicitly target a specific Capacity Reservation or a Capacity Reservation group.

type CapacityReservationSpecificationResponse

type CapacityReservationSpecificationResponse struct {

	// Describes the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	// * open - The instance can run in any open Capacity Reservation that
	// has matching attributes (instance type, platform, Availability Zone).
	//
	// * none -
	// The instance avoids running in a Capacity Reservation even if one is available.
	// The instance runs in On-Demand capacity.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the targeted Capacity Reservation or Capacity Reservation
	// group.
	CapacityReservationTarget *CapacityReservationTargetResponse
	// contains filtered or unexported fields
}

Describes the instance's Capacity Reservation targeting preferences. The action returns the capacityReservationPreference response element if the instance is configured to run in On-Demand capacity, or if it is configured in run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). The action returns the capacityReservationTarget response element if the instance explicily targets a specific Capacity Reservation or Capacity Reservation group.

type CapacityReservationState

type CapacityReservationState string
const (
	CapacityReservationStateActive    CapacityReservationState = "active"
	CapacityReservationStateExpired   CapacityReservationState = "expired"
	CapacityReservationStateCancelled CapacityReservationState = "cancelled"
	CapacityReservationStatePending   CapacityReservationState = "pending"
	CapacityReservationStateFailed    CapacityReservationState = "failed"
)

Enum values for CapacityReservationState

func (CapacityReservationState) Values added in v0.29.0

Values returns all known values for CapacityReservationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationTarget

type CapacityReservationTarget struct {

	// The ID of the Capacity Reservation in which to run the instance.
	CapacityReservationId *string

	// The ARN of the Capacity Reservation resource group in which to run the instance.
	CapacityReservationResourceGroupArn *string
	// contains filtered or unexported fields
}

Describes a target Capacity Reservation or Capacity Reservation group.

type CapacityReservationTargetResponse

type CapacityReservationTargetResponse struct {

	// The ID of the targeted Capacity Reservation.
	CapacityReservationId *string

	// The ARN of the targeted Capacity Reservation group.
	CapacityReservationResourceGroupArn *string
	// contains filtered or unexported fields
}

Describes a target Capacity Reservation or Capacity Reservation group.

type CapacityReservationTenancy

type CapacityReservationTenancy string
const (
	CapacityReservationTenancyDefault   CapacityReservationTenancy = "default"
	CapacityReservationTenancyDedicated CapacityReservationTenancy = "dedicated"
)

Enum values for CapacityReservationTenancy

func (CapacityReservationTenancy) Values added in v0.29.0

Values returns all known values for CapacityReservationTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CarrierGateway added in v0.29.0

type CarrierGateway struct {

	// The ID of the carrier gateway.
	CarrierGatewayId *string

	// The Amazon Web Services account ID of the owner of the carrier gateway.
	OwnerId *string

	// The state of the carrier gateway.
	State CarrierGatewayState

	// The tags assigned to the carrier gateway.
	Tags []Tag

	// The ID of the VPC associated with the carrier gateway.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a carrier gateway.

type CarrierGatewayState added in v0.29.0

type CarrierGatewayState string
const (
	CarrierGatewayStatePending   CarrierGatewayState = "pending"
	CarrierGatewayStateAvailable CarrierGatewayState = "available"
	CarrierGatewayStateDeleting  CarrierGatewayState = "deleting"
	CarrierGatewayStateDeleted   CarrierGatewayState = "deleted"
)

Enum values for CarrierGatewayState

func (CarrierGatewayState) Values added in v0.29.0

Values returns all known values for CarrierGatewayState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CertificateAuthentication

type CertificateAuthentication struct {

	// The ARN of the client certificate.
	ClientRootCertificateChain *string
	// contains filtered or unexported fields
}

Information about the client certificate used for authentication.

type CertificateAuthenticationRequest

type CertificateAuthenticationRequest struct {

	// The ARN of the client certificate. The certificate must be signed by a
	// certificate authority (CA) and it must be provisioned in Certificate Manager
	// (ACM).
	ClientRootCertificateChainArn *string
	// contains filtered or unexported fields
}

Information about the client certificate to be used for authentication.

type CidrAuthorizationContext

type CidrAuthorizationContext struct {

	// The plain-text authorization message for the prefix and account.
	//
	// This member is required.
	Message *string

	// The signed authorization message for the prefix and account.
	//
	// This member is required.
	Signature *string
	// contains filtered or unexported fields
}

Provides authorization for Amazon to bring a specific IP address range to a specific Amazon Web Services account using bring your own IP addresses (BYOIP). For more information, see Configuring your BYOIP address range (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#prepare-for-byoip) in the Amazon Elastic Compute Cloud User Guide.

type CidrBlock

type CidrBlock struct {

	// The IPv4 CIDR block.
	CidrBlock *string
	// contains filtered or unexported fields
}

Describes an IPv4 CIDR block.

type ClassicLinkDnsSupport

type ClassicLinkDnsSupport struct {

	// Indicates whether ClassicLink DNS support is enabled for the VPC.
	ClassicLinkDnsSupported *bool

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes the ClassicLink DNS support status of a VPC.

type ClassicLinkInstance

type ClassicLinkInstance struct {

	// A list of security groups.
	Groups []GroupIdentifier

	// The ID of the instance.
	InstanceId *string

	// Any tags assigned to the instance.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide. Describes a linked EC2-Classic instance.

type ClassicLoadBalancer

type ClassicLoadBalancer struct {

	// The name of the load balancer.
	Name *string
	// contains filtered or unexported fields
}

Describes a Classic Load Balancer.

type ClassicLoadBalancersConfig

type ClassicLoadBalancersConfig struct {

	// One or more Classic Load Balancers.
	ClassicLoadBalancers []ClassicLoadBalancer
	// contains filtered or unexported fields
}

Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers the running Spot Instances with these Classic Load Balancers.

type ClientCertificateRevocationListStatus

type ClientCertificateRevocationListStatus struct {

	// The state of the client certificate revocation list.
	Code ClientCertificateRevocationListStatusCode

	// A message about the status of the client certificate revocation list, if
	// applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a client certificate revocation list.

type ClientCertificateRevocationListStatusCode

type ClientCertificateRevocationListStatusCode string
const (
	ClientCertificateRevocationListStatusCodePending ClientCertificateRevocationListStatusCode = "pending"
	ClientCertificateRevocationListStatusCodeActive  ClientCertificateRevocationListStatusCode = "active"
)

Enum values for ClientCertificateRevocationListStatusCode

func (ClientCertificateRevocationListStatusCode) Values added in v0.29.0

Values returns all known values for ClientCertificateRevocationListStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ClientConnectOptions added in v0.30.0

type ClientConnectOptions struct {

	// Indicates whether client connect options are enabled. The default is false (not
	// enabled).
	Enabled *bool

	// The Amazon Resource Name (ARN) of the Lambda function used for connection
	// authorization.
	LambdaFunctionArn *string
	// contains filtered or unexported fields
}

The options for managing connection authorization for new client connections.

type ClientConnectResponseOptions added in v0.30.0

type ClientConnectResponseOptions struct {

	// Indicates whether client connect options are enabled.
	Enabled *bool

	// The Amazon Resource Name (ARN) of the Lambda function used for connection
	// authorization.
	LambdaFunctionArn *string

	// The status of any updates to the client connect options.
	Status *ClientVpnEndpointAttributeStatus
	// contains filtered or unexported fields
}

The options for managing connection authorization for new client connections.

type ClientData

type ClientData struct {

	// A user-defined comment about the disk upload.
	Comment *string

	// The time that the disk upload ends.
	UploadEnd *time.Time

	// The size of the uploaded disk image, in GiB.
	UploadSize *float64

	// The time that the disk upload starts.
	UploadStart *time.Time
	// contains filtered or unexported fields
}

Describes the client-specific data.

type ClientLoginBannerOptions added in v1.29.0

type ClientLoginBannerOptions struct {

	// Customizable text that will be displayed in a banner on Amazon Web Services
	// provided clients when a VPN session is established. UTF-8 encoded characters
	// only. Maximum of 1400 characters.
	BannerText *string

	// Enable or disable a customizable text banner that will be displayed on Amazon
	// Web Services provided clients when a VPN session is established. Valid values:
	// true | false Default value: false
	Enabled *bool
	// contains filtered or unexported fields
}

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

type ClientLoginBannerResponseOptions added in v1.29.0

type ClientLoginBannerResponseOptions struct {

	// Customizable text that will be displayed in a banner on Amazon Web Services
	// provided clients when a VPN session is established. UTF-8 encoded characters
	// only. Maximum of 1400 characters.
	BannerText *string

	// Current state of text banner feature. Valid values: true | false
	Enabled *bool
	// contains filtered or unexported fields
}

Current state of options for customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

type ClientVpnAuthentication

type ClientVpnAuthentication struct {

	// Information about the Active Directory, if applicable.
	ActiveDirectory *DirectoryServiceAuthentication

	// Information about the IAM SAML identity provider, if applicable.
	FederatedAuthentication *FederatedAuthentication

	// Information about the authentication certificates, if applicable.
	MutualAuthentication *CertificateAuthentication

	// The authentication type used.
	Type ClientVpnAuthenticationType
	// contains filtered or unexported fields
}

Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication (https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/client-authentication.html) in the Client VPN Administrator Guide.

type ClientVpnAuthenticationRequest

type ClientVpnAuthenticationRequest struct {

	// Information about the Active Directory to be used, if applicable. You must
	// provide this information if Type is directory-service-authentication.
	ActiveDirectory *DirectoryServiceAuthenticationRequest

	// Information about the IAM SAML identity provider to be used, if applicable. You
	// must provide this information if Type is federated-authentication.
	FederatedAuthentication *FederatedAuthenticationRequest

	// Information about the authentication certificates to be used, if applicable. You
	// must provide this information if Type is certificate-authentication.
	MutualAuthentication *CertificateAuthenticationRequest

	// The type of client authentication to be used.
	Type ClientVpnAuthenticationType
	// contains filtered or unexported fields
}

Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authentication (https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/authentication-authrization.html#client-authentication) in the Client VPN Administrator Guide.

type ClientVpnAuthenticationType

type ClientVpnAuthenticationType string
const (
	ClientVpnAuthenticationTypeCertificateAuthentication      ClientVpnAuthenticationType = "certificate-authentication"
	ClientVpnAuthenticationTypeDirectoryServiceAuthentication ClientVpnAuthenticationType = "directory-service-authentication"
	ClientVpnAuthenticationTypeFederatedAuthentication        ClientVpnAuthenticationType = "federated-authentication"
)

Enum values for ClientVpnAuthenticationType

func (ClientVpnAuthenticationType) Values added in v0.29.0

Values returns all known values for ClientVpnAuthenticationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnAuthorizationRuleStatus

type ClientVpnAuthorizationRuleStatus struct {

	// The state of the authorization rule.
	Code ClientVpnAuthorizationRuleStatusCode

	// A message about the status of the authorization rule, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of an authorization rule.

type ClientVpnAuthorizationRuleStatusCode

type ClientVpnAuthorizationRuleStatusCode string
const (
	ClientVpnAuthorizationRuleStatusCodeAuthorizing ClientVpnAuthorizationRuleStatusCode = "authorizing"
	ClientVpnAuthorizationRuleStatusCodeActive      ClientVpnAuthorizationRuleStatusCode = "active"
	ClientVpnAuthorizationRuleStatusCodeFailed      ClientVpnAuthorizationRuleStatusCode = "failed"
	ClientVpnAuthorizationRuleStatusCodeRevoking    ClientVpnAuthorizationRuleStatusCode = "revoking"
)

Enum values for ClientVpnAuthorizationRuleStatusCode

func (ClientVpnAuthorizationRuleStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnAuthorizationRuleStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnConnection

type ClientVpnConnection struct {

	// The IP address of the client.
	ClientIp *string

	// The ID of the Client VPN endpoint to which the client is connected.
	ClientVpnEndpointId *string

	// The common name associated with the client. This is either the name of the
	// client certificate, or the Active Directory user name.
	CommonName *string

	// The date and time the client connection was terminated.
	ConnectionEndTime *string

	// The date and time the client connection was established.
	ConnectionEstablishedTime *string

	// The ID of the client connection.
	ConnectionId *string

	// The number of bytes received by the client.
	EgressBytes *string

	// The number of packets received by the client.
	EgressPackets *string

	// The number of bytes sent by the client.
	IngressBytes *string

	// The number of packets sent by the client.
	IngressPackets *string

	// The statuses returned by the client connect handler for posture compliance, if
	// applicable.
	PostureComplianceStatuses []string

	// The current state of the client connection.
	Status *ClientVpnConnectionStatus

	// The current date and time.
	Timestamp *string

	// The username of the client who established the client connection. This
	// information is only provided if Active Directory client authentication is used.
	Username *string
	// contains filtered or unexported fields
}

Describes a client connection.

type ClientVpnConnectionStatus

type ClientVpnConnectionStatus struct {

	// The state of the client connection.
	Code ClientVpnConnectionStatusCode

	// A message about the status of the client connection, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of a client connection.

type ClientVpnConnectionStatusCode

type ClientVpnConnectionStatusCode string
const (
	ClientVpnConnectionStatusCodeActive            ClientVpnConnectionStatusCode = "active"
	ClientVpnConnectionStatusCodeFailedToTerminate ClientVpnConnectionStatusCode = "failed-to-terminate"
	ClientVpnConnectionStatusCodeTerminating       ClientVpnConnectionStatusCode = "terminating"
	ClientVpnConnectionStatusCodeTerminated        ClientVpnConnectionStatusCode = "terminated"
)

Enum values for ClientVpnConnectionStatusCode

func (ClientVpnConnectionStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnConnectionStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnEndpoint

type ClientVpnEndpoint struct {

	// Information about the associated target networks. A target network is a subnet
	// in a VPC.
	//
	// Deprecated: This property is deprecated. To view the target networks associated
	// with a Client VPN endpoint, call DescribeClientVpnTargetNetworks and inspect the
	// clientVpnTargetNetworks response element.
	AssociatedTargetNetworks []AssociatedTargetNetwork

	// Information about the authentication method used by the Client VPN endpoint.
	AuthenticationOptions []ClientVpnAuthentication

	// The IPv4 address range, in CIDR notation, from which client IP addresses are
	// assigned.
	ClientCidrBlock *string

	// The options for managing connection authorization for new client connections.
	ClientConnectOptions *ClientConnectResponseOptions

	// Options for enabling a customizable text banner that will be displayed on Amazon
	// Web Services provided clients when a VPN session is established.
	ClientLoginBannerOptions *ClientLoginBannerResponseOptions

	// The ID of the Client VPN endpoint.
	ClientVpnEndpointId *string

	// Information about the client connection logging options for the Client VPN
	// endpoint.
	ConnectionLogOptions *ConnectionLogResponseOptions

	// The date and time the Client VPN endpoint was created.
	CreationTime *string

	// The date and time the Client VPN endpoint was deleted, if applicable.
	DeletionTime *string

	// A brief description of the endpoint.
	Description *string

	// The DNS name to be used by clients when connecting to the Client VPN endpoint.
	DnsName *string

	// Information about the DNS servers to be used for DNS resolution.
	DnsServers []string

	// The IDs of the security groups for the target network.
	SecurityGroupIds []string

	// The URL of the self-service portal.
	SelfServicePortalUrl *string

	// The ARN of the server certificate.
	ServerCertificateArn *string

	// The maximum VPN session duration time in hours. Valid values: 8 | 10 | 12 | 24
	// Default value: 24
	SessionTimeoutHours *int32

	// Indicates whether split-tunnel is enabled in the Client VPN endpoint. For
	// information about split-tunnel VPN endpoints, see Split-Tunnel Client VPN
	// endpoint
	// (https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/split-tunnel-vpn.html)
	// in the Client VPN Administrator Guide.
	SplitTunnel *bool

	// The current state of the Client VPN endpoint.
	Status *ClientVpnEndpointStatus

	// Any tags assigned to the Client VPN endpoint.
	Tags []Tag

	// The transport protocol used by the Client VPN endpoint.
	TransportProtocol TransportProtocol

	// The ID of the VPC.
	VpcId *string

	// The port number for the Client VPN endpoint.
	VpnPort *int32

	// The protocol used by the VPN session.
	VpnProtocol VpnProtocol
	// contains filtered or unexported fields
}

Describes a Client VPN endpoint.

type ClientVpnEndpointAttributeStatus added in v0.30.0

type ClientVpnEndpointAttributeStatus struct {

	// The status code.
	Code ClientVpnEndpointAttributeStatusCode

	// The status message.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of the Client VPN endpoint attribute.

type ClientVpnEndpointAttributeStatusCode added in v0.30.0

type ClientVpnEndpointAttributeStatusCode string
const (
	ClientVpnEndpointAttributeStatusCodeApplying ClientVpnEndpointAttributeStatusCode = "applying"
	ClientVpnEndpointAttributeStatusCodeApplied  ClientVpnEndpointAttributeStatusCode = "applied"
)

Enum values for ClientVpnEndpointAttributeStatusCode

func (ClientVpnEndpointAttributeStatusCode) Values added in v0.30.0

Values returns all known values for ClientVpnEndpointAttributeStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnEndpointStatus

type ClientVpnEndpointStatus struct {

	// The state of the Client VPN endpoint. Possible states include:
	//
	// *
	// pending-associate - The Client VPN endpoint has been created but no target
	// networks have been associated. The Client VPN endpoint cannot accept
	// connections.
	//
	// * available - The Client VPN endpoint has been created and a
	// target network has been associated. The Client VPN endpoint can accept
	// connections.
	//
	// * deleting - The Client VPN endpoint is being deleted. The Client
	// VPN endpoint cannot accept connections.
	//
	// * deleted - The Client VPN endpoint has
	// been deleted. The Client VPN endpoint cannot accept connections.
	Code ClientVpnEndpointStatusCode

	// A message about the status of the Client VPN endpoint.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a Client VPN endpoint.

type ClientVpnEndpointStatusCode

type ClientVpnEndpointStatusCode string
const (
	ClientVpnEndpointStatusCodePendingAssociate ClientVpnEndpointStatusCode = "pending-associate"
	ClientVpnEndpointStatusCodeAvailable        ClientVpnEndpointStatusCode = "available"
	ClientVpnEndpointStatusCodeDeleting         ClientVpnEndpointStatusCode = "deleting"
	ClientVpnEndpointStatusCodeDeleted          ClientVpnEndpointStatusCode = "deleted"
)

Enum values for ClientVpnEndpointStatusCode

func (ClientVpnEndpointStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnEndpointStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnRoute

type ClientVpnRoute struct {

	// The ID of the Client VPN endpoint with which the route is associated.
	ClientVpnEndpointId *string

	// A brief description of the route.
	Description *string

	// The IPv4 address range, in CIDR notation, of the route destination.
	DestinationCidr *string

	// Indicates how the route was associated with the Client VPN endpoint. associate
	// indicates that the route was automatically added when the target network was
	// associated with the Client VPN endpoint. add-route indicates that the route was
	// manually added using the CreateClientVpnRoute action.
	Origin *string

	// The current state of the route.
	Status *ClientVpnRouteStatus

	// The ID of the subnet through which traffic is routed.
	TargetSubnet *string

	// The route type.
	Type *string
	// contains filtered or unexported fields
}

Information about a Client VPN endpoint route.

type ClientVpnRouteStatus

type ClientVpnRouteStatus struct {

	// The state of the Client VPN endpoint route.
	Code ClientVpnRouteStatusCode

	// A message about the status of the Client VPN endpoint route, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a Client VPN endpoint route.

type ClientVpnRouteStatusCode

type ClientVpnRouteStatusCode string
const (
	ClientVpnRouteStatusCodeCreating ClientVpnRouteStatusCode = "creating"
	ClientVpnRouteStatusCodeActive   ClientVpnRouteStatusCode = "active"
	ClientVpnRouteStatusCodeFailed   ClientVpnRouteStatusCode = "failed"
	ClientVpnRouteStatusCodeDeleting ClientVpnRouteStatusCode = "deleting"
)

Enum values for ClientVpnRouteStatusCode

func (ClientVpnRouteStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnRouteStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CloudWatchLogOptions added in v1.53.0

type CloudWatchLogOptions struct {

	// Status of VPN tunnel logging feature. Default value is False. Valid values: True
	// | False
	LogEnabled *bool

	// The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.
	LogGroupArn *string

	// Configured log format. Default format is json. Valid values: json | text
	LogOutputFormat *string
	// contains filtered or unexported fields
}

Options for sending VPN tunnel logs to CloudWatch.

type CloudWatchLogOptionsSpecification added in v1.53.0

type CloudWatchLogOptionsSpecification struct {

	// Enable or disable VPN tunnel logging feature. Default value is False. Valid
	// values: True | False
	LogEnabled *bool

	// The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.
	LogGroupArn *string

	// Set log format. Default format is json. Valid values: json | text
	LogOutputFormat *string
	// contains filtered or unexported fields
}

Options for sending VPN tunnel logs to CloudWatch.

type CoipAddressUsage

type CoipAddressUsage struct {

	// The allocation ID of the address.
	AllocationId *string

	// The Amazon Web Services account ID.
	AwsAccountId *string

	// The Amazon Web Services service.
	AwsService *string

	// The customer-owned IP address.
	CoIp *string
	// contains filtered or unexported fields
}

Describes address usage for a customer-owned address pool.

type CoipCidr added in v1.55.0

type CoipCidr struct {

	// An address range in a customer-owned IP address space.
	Cidr *string

	// The ID of the address pool.
	CoipPoolId *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Information about a customer-owned IP address range.

type CoipPool

type CoipPool struct {

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ARN of the address pool.
	PoolArn *string

	// The address ranges of the address pool.
	PoolCidrs []string

	// The ID of the address pool.
	PoolId *string

	// The tags.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a customer-owned address pool.

type ConnectionLogOptions

type ConnectionLogOptions struct {

	// The name of the CloudWatch Logs log group. Required if connection logging is
	// enabled.
	CloudwatchLogGroup *string

	// The name of the CloudWatch Logs log stream to which the connection data is
	// published.
	CloudwatchLogStream *string

	// Indicates whether connection logging is enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the client connection logging options for the Client VPN endpoint.

type ConnectionLogResponseOptions

type ConnectionLogResponseOptions struct {

	// The name of the Amazon CloudWatch Logs log group to which connection logging
	// data is published.
	CloudwatchLogGroup *string

	// The name of the Amazon CloudWatch Logs log stream to which connection logging
	// data is published.
	CloudwatchLogStream *string

	// Indicates whether client connection logging is enabled for the Client VPN
	// endpoint.
	Enabled *bool
	// contains filtered or unexported fields
}

Information about the client connection logging options for a Client VPN endpoint.

type ConnectionNotification

type ConnectionNotification struct {

	// The events for the notification. Valid values are Accept, Connect, Delete, and
	// Reject.
	ConnectionEvents []string

	// The ARN of the SNS topic for the notification.
	ConnectionNotificationArn *string

	// The ID of the notification.
	ConnectionNotificationId *string

	// The state of the notification.
	ConnectionNotificationState ConnectionNotificationState

	// The type of notification.
	ConnectionNotificationType ConnectionNotificationType

	// The ID of the endpoint service.
	ServiceId *string

	// The ID of the VPC endpoint.
	VpcEndpointId *string
	// contains filtered or unexported fields
}

Describes a connection notification for a VPC endpoint or VPC endpoint service.

type ConnectionNotificationState

type ConnectionNotificationState string
const (
	ConnectionNotificationStateEnabled  ConnectionNotificationState = "Enabled"
	ConnectionNotificationStateDisabled ConnectionNotificationState = "Disabled"
)

Enum values for ConnectionNotificationState

func (ConnectionNotificationState) Values added in v0.29.0

Values returns all known values for ConnectionNotificationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ConnectionNotificationType

type ConnectionNotificationType string
const (
	ConnectionNotificationTypeTopic ConnectionNotificationType = "Topic"
)

Enum values for ConnectionNotificationType

func (ConnectionNotificationType) Values added in v0.29.0

Values returns all known values for ConnectionNotificationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ConnectivityType added in v1.10.0

type ConnectivityType string
const (
	ConnectivityTypePrivate ConnectivityType = "private"
	ConnectivityTypePublic  ConnectivityType = "public"
)

Enum values for ConnectivityType

func (ConnectivityType) Values added in v1.10.0

Values returns all known values for ConnectivityType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ContainerFormat

type ContainerFormat string
const (
	ContainerFormatOva ContainerFormat = "ova"
)

Enum values for ContainerFormat

func (ContainerFormat) Values added in v0.29.0

func (ContainerFormat) Values() []ContainerFormat

Values returns all known values for ContainerFormat. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ConversionTask

type ConversionTask struct {

	// The ID of the conversion task.
	ConversionTaskId *string

	// The time when the task expires. If the upload isn't complete before the
	// expiration time, we automatically cancel the task.
	ExpirationTime *string

	// If the task is for importing an instance, this contains information about the
	// import instance task.
	ImportInstance *ImportInstanceTaskDetails

	// If the task is for importing a volume, this contains information about the
	// import volume task.
	ImportVolume *ImportVolumeTaskDetails

	// The state of the conversion task.
	State ConversionTaskState

	// The status message related to the conversion task.
	StatusMessage *string

	// Any tags assigned to the task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a conversion task.

type ConversionTaskState

type ConversionTaskState string
const (
	ConversionTaskStateActive     ConversionTaskState = "active"
	ConversionTaskStateCancelling ConversionTaskState = "cancelling"
	ConversionTaskStateCancelled  ConversionTaskState = "cancelled"
	ConversionTaskStateCompleted  ConversionTaskState = "completed"
)

Enum values for ConversionTaskState

func (ConversionTaskState) Values added in v0.29.0

Values returns all known values for ConversionTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CopyTagsFromSource

type CopyTagsFromSource string
const (
	CopyTagsFromSourceVolume CopyTagsFromSource = "volume"
)

Enum values for CopyTagsFromSource

func (CopyTagsFromSource) Values added in v0.29.0

Values returns all known values for CopyTagsFromSource. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CpuManufacturer added in v1.21.0

type CpuManufacturer string
const (
	CpuManufacturerIntel             CpuManufacturer = "intel"
	CpuManufacturerAmd               CpuManufacturer = "amd"
	CpuManufacturerAmazonWebServices CpuManufacturer = "amazon-web-services"
)

Enum values for CpuManufacturer

func (CpuManufacturer) Values added in v1.21.0

func (CpuManufacturer) Values() []CpuManufacturer

Values returns all known values for CpuManufacturer. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CpuOptions

type CpuOptions struct {

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core.
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance.

type CpuOptionsRequest

type CpuOptionsRequest struct {

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core. To disable multithreading for the instance,
	// specify a value of 1. Otherwise, specify the default value of 2.
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance. Both the core count and threads per core must be specified in the request.

type CreateFleetError

type CreateFleetError struct {

	// The error code that indicates why the instance could not be launched. For more
	// information about error codes, see Error codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html).
	ErrorCode *string

	// The error message that describes why the instance could not be launched. For
	// more information about error messages, see Error codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html).
	ErrorMessage *string

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that could not be launched was a Spot Instance or
	// On-Demand Instance.
	Lifecycle InstanceLifecycle
	// contains filtered or unexported fields
}

Describes the instances that could not be launched by the fleet.

type CreateFleetInstance

type CreateFleetInstance struct {

	// The IDs of the instances.
	InstanceIds []string

	// The instance type.
	InstanceType InstanceType

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that was launched is a Spot Instance or On-Demand
	// Instance.
	Lifecycle InstanceLifecycle

	// The value is Windows for Windows instances. Otherwise, the value is blank.
	Platform PlatformValues
	// contains filtered or unexported fields
}

Describes the instances that were launched by the fleet.

type CreateTransitGatewayConnectRequestOptions added in v0.31.0

type CreateTransitGatewayConnectRequestOptions struct {

	// The tunnel protocol.
	//
	// This member is required.
	Protocol ProtocolValue
	// contains filtered or unexported fields
}

The options for a Connect attachment.

type CreateTransitGatewayMulticastDomainRequestOptions added in v0.31.0

type CreateTransitGatewayMulticastDomainRequestOptions struct {

	// Indicates whether to automatically accept cross-account subnet associations that
	// are associated with the transit gateway multicast domain.
	AutoAcceptSharedAssociations AutoAcceptSharedAssociationsValue

	// Specify whether to enable Internet Group Management Protocol (IGMP) version 2
	// for the transit gateway multicast domain.
	Igmpv2Support Igmpv2SupportValue

	// Specify whether to enable support for statically configuring multicast group
	// sources for a domain.
	StaticSourcesSupport StaticSourcesSupportValue
	// contains filtered or unexported fields
}

The options for the transit gateway multicast domain.

type CreateTransitGatewayPeeringAttachmentRequestOptions added in v1.48.0

type CreateTransitGatewayPeeringAttachmentRequestOptions struct {

	// Indicates whether dynamic routing is enabled or disabled.
	DynamicRouting DynamicRoutingValue
	// contains filtered or unexported fields
}

Describes whether dynamic routing is enabled or disabled for the transit gateway peering request.

type CreateTransitGatewayVpcAttachmentRequestOptions

type CreateTransitGatewayVpcAttachmentRequestOptions struct {

	// Enable or disable support for appliance mode. If enabled, a traffic flow between
	// a source and destination uses the same Availability Zone for the VPC attachment
	// for the lifetime of that flow. The default is disable.
	ApplianceModeSupport ApplianceModeSupportValue

	// Enable or disable DNS support. The default is enable.
	DnsSupport DnsSupportValue

	// Enable or disable IPv6 support. The default is disable.
	Ipv6Support Ipv6SupportValue
	// contains filtered or unexported fields
}

Describes the options for a VPC attachment.

type CreateVolumePermission

type CreateVolumePermission struct {

	// The group to be added or removed. The possible value is all.
	Group PermissionGroup

	// The ID of the Amazon Web Services account to be added or removed.
	UserId *string
	// contains filtered or unexported fields
}

Describes the user or group to be added or removed from the list of create volume permissions for a volume.

type CreateVolumePermissionModifications

type CreateVolumePermissionModifications struct {

	// Adds the specified Amazon Web Services account ID or group to the list.
	Add []CreateVolumePermission

	// Removes the specified Amazon Web Services account ID or group from the list.
	Remove []CreateVolumePermission
	// contains filtered or unexported fields
}

Describes modifications to the list of create volume permissions for a volume.

type CreditSpecification

type CreditSpecification struct {

	// The credit option for CPU usage of a T instance. Valid values: standard |
	// unlimited
	CpuCredits *string
	// contains filtered or unexported fields
}

Describes the credit option for CPU usage of a T instance.

type CreditSpecificationRequest

type CreditSpecificationRequest struct {

	// The credit option for CPU usage of a T instance. Valid values: standard |
	// unlimited
	//
	// This member is required.
	CpuCredits *string
	// contains filtered or unexported fields
}

The credit option for CPU usage of a T instance.

type CurrencyCodeValues

type CurrencyCodeValues string
const (
	CurrencyCodeValuesUsd CurrencyCodeValues = "USD"
)

Enum values for CurrencyCodeValues

func (CurrencyCodeValues) Values added in v0.29.0

Values returns all known values for CurrencyCodeValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type CustomerGateway

type CustomerGateway struct {

	// The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number
	// (ASN).
	BgpAsn *string

	// The Amazon Resource Name (ARN) for the customer gateway certificate.
	CertificateArn *string

	// The ID of the customer gateway.
	CustomerGatewayId *string

	// The name of customer gateway device.
	DeviceName *string

	// The IP address of the customer gateway device's outside interface.
	IpAddress *string

	// The current state of the customer gateway (pending | available | deleting |
	// deleted).
	State *string

	// Any tags assigned to the customer gateway.
	Tags []Tag

	// The type of VPN connection the customer gateway supports (ipsec.1).
	Type *string
	// contains filtered or unexported fields
}

Describes a customer gateway.

type DatafeedSubscriptionState

type DatafeedSubscriptionState string
const (
	DatafeedSubscriptionStateActive   DatafeedSubscriptionState = "Active"
	DatafeedSubscriptionStateInactive DatafeedSubscriptionState = "Inactive"
)

Enum values for DatafeedSubscriptionState

func (DatafeedSubscriptionState) Values added in v0.29.0

Values returns all known values for DatafeedSubscriptionState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DefaultRouteTableAssociationValue

type DefaultRouteTableAssociationValue string
const (
	DefaultRouteTableAssociationValueEnable  DefaultRouteTableAssociationValue = "enable"
	DefaultRouteTableAssociationValueDisable DefaultRouteTableAssociationValue = "disable"
)

Enum values for DefaultRouteTableAssociationValue

func (DefaultRouteTableAssociationValue) Values added in v0.29.0

Values returns all known values for DefaultRouteTableAssociationValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DefaultRouteTablePropagationValue

type DefaultRouteTablePropagationValue string
const (
	DefaultRouteTablePropagationValueEnable  DefaultRouteTablePropagationValue = "enable"
	DefaultRouteTablePropagationValueDisable DefaultRouteTablePropagationValue = "disable"
)

Enum values for DefaultRouteTablePropagationValue

func (DefaultRouteTablePropagationValue) Values added in v0.29.0

Values returns all known values for DefaultRouteTablePropagationValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DefaultTargetCapacityType

type DefaultTargetCapacityType string
const (
	DefaultTargetCapacityTypeSpot     DefaultTargetCapacityType = "spot"
	DefaultTargetCapacityTypeOnDemand DefaultTargetCapacityType = "on-demand"
)

Enum values for DefaultTargetCapacityType

func (DefaultTargetCapacityType) Values added in v0.29.0

Values returns all known values for DefaultTargetCapacityType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DeleteFleetError

type DeleteFleetError struct {

	// The error code.
	Code DeleteFleetErrorCode

	// The description for the error code.
	Message *string
	// contains filtered or unexported fields
}

Describes an EC2 Fleet error.

type DeleteFleetErrorCode

type DeleteFleetErrorCode string
const (
	DeleteFleetErrorCodeFleetIdDoesNotExist      DeleteFleetErrorCode = "fleetIdDoesNotExist"
	DeleteFleetErrorCodeFleetIdMalformed         DeleteFleetErrorCode = "fleetIdMalformed"
	DeleteFleetErrorCodeFleetNotInDeletableState DeleteFleetErrorCode = "fleetNotInDeletableState"
	DeleteFleetErrorCodeUnexpectedError          DeleteFleetErrorCode = "unexpectedError"
)

Enum values for DeleteFleetErrorCode

func (DeleteFleetErrorCode) Values added in v0.29.0

Values returns all known values for DeleteFleetErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DeleteFleetErrorItem

type DeleteFleetErrorItem struct {

	// The error.
	Error *DeleteFleetError

	// The ID of the EC2 Fleet.
	FleetId *string
	// contains filtered or unexported fields
}

Describes an EC2 Fleet that was not successfully deleted.

type DeleteFleetSuccessItem

type DeleteFleetSuccessItem struct {

	// The current state of the EC2 Fleet.
	CurrentFleetState FleetStateCode

	// The ID of the EC2 Fleet.
	FleetId *string

	// The previous state of the EC2 Fleet.
	PreviousFleetState FleetStateCode
	// contains filtered or unexported fields
}

Describes an EC2 Fleet that was successfully deleted.

type DeleteLaunchTemplateVersionsResponseErrorItem

type DeleteLaunchTemplateVersionsResponseErrorItem struct {

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// Information about the error.
	ResponseError *ResponseError

	// The version number of the launch template.
	VersionNumber *int64
	// contains filtered or unexported fields
}

Describes a launch template version that could not be deleted.

type DeleteLaunchTemplateVersionsResponseSuccessItem

type DeleteLaunchTemplateVersionsResponseSuccessItem struct {

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// The version number of the launch template.
	VersionNumber *int64
	// contains filtered or unexported fields
}

Describes a launch template version that was successfully deleted.

type DeleteQueuedReservedInstancesError

type DeleteQueuedReservedInstancesError struct {

	// The error code.
	Code DeleteQueuedReservedInstancesErrorCode

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes the error for a Reserved Instance whose queued purchase could not be deleted.

type DeleteQueuedReservedInstancesErrorCode

type DeleteQueuedReservedInstancesErrorCode string
const (
	DeleteQueuedReservedInstancesErrorCodeReservedInstancesIdInvalid        DeleteQueuedReservedInstancesErrorCode = "reserved-instances-id-invalid"
	DeleteQueuedReservedInstancesErrorCodeReservedInstancesNotInQueuedState DeleteQueuedReservedInstancesErrorCode = "reserved-instances-not-in-queued-state"
	DeleteQueuedReservedInstancesErrorCodeUnexpectedError                   DeleteQueuedReservedInstancesErrorCode = "unexpected-error"
)

Enum values for DeleteQueuedReservedInstancesErrorCode

func (DeleteQueuedReservedInstancesErrorCode) Values added in v0.29.0

Values returns all known values for DeleteQueuedReservedInstancesErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DeregisterInstanceTagAttributeRequest

type DeregisterInstanceTagAttributeRequest struct {

	// Indicates whether to deregister all tag keys in the current Region. Specify
	// false to deregister all tag keys.
	IncludeAllTagsOfInstance *bool

	// Information about the tag keys to deregister.
	InstanceTagKeys []string
	// contains filtered or unexported fields
}

Information about the tag keys to deregister for the current Region. You can either specify individual tag keys or deregister all tag keys in the current Region. You must specify either IncludeAllTagsOfInstance or InstanceTagKeys in the request

type DescribeFastLaunchImagesSuccessItem added in v1.28.0

type DescribeFastLaunchImagesSuccessItem struct {

	// The image ID that identifies the fast-launch enabled Windows image.
	ImageId *string

	// The launch template that the fast-launch enabled Windows AMI uses when it
	// launches Windows instances from pre-provisioned snapshots.
	LaunchTemplate *FastLaunchLaunchTemplateSpecificationResponse

	// The maximum number of parallel instances that are launched for creating
	// resources.
	MaxParallelLaunches *int32

	// The owner ID for the fast-launch enabled Windows AMI.
	OwnerId *string

	// The resource type that is used for pre-provisioning the Windows AMI. Supported
	// values include: snapshot.
	ResourceType FastLaunchResourceType

	// A group of parameters that are used for pre-provisioning the associated Windows
	// AMI using snapshots.
	SnapshotConfiguration *FastLaunchSnapshotConfigurationResponse

	// The current state of faster launching for the specified Windows AMI.
	State FastLaunchStateCode

	// The reason that faster launching for the Windows AMI changed to the current
	// state.
	StateTransitionReason *string

	// The time that faster launching for the Windows AMI changed to the current state.
	StateTransitionTime *time.Time
	// contains filtered or unexported fields
}

Describe details about a fast-launch enabled Windows image that meets the requested criteria. Criteria are defined by the DescribeFastLaunchImages action filters.

type DescribeFastSnapshotRestoreSuccessItem

type DescribeFastSnapshotRestoreSuccessItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The time at which fast snapshot restores entered the disabled state.
	DisabledTime *time.Time

	// The time at which fast snapshot restores entered the disabling state.
	DisablingTime *time.Time

	// The time at which fast snapshot restores entered the enabled state.
	EnabledTime *time.Time

	// The time at which fast snapshot restores entered the enabling state.
	EnablingTime *time.Time

	// The time at which fast snapshot restores entered the optimizing state.
	OptimizingTime *time.Time

	// The Amazon Web Services owner alias that enabled fast snapshot restores on the
	// snapshot. This is intended for future use.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that enabled fast snapshot restores on
	// the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The state of fast snapshot restores.
	State FastSnapshotRestoreStateCode

	// The reason for the state transition. The possible values are as follows:
	//
	// *
	// Client.UserInitiated - The state successfully transitioned to enabling or
	// disabling.
	//
	// * Client.UserInitiated - Lifecycle state transition - The state
	// successfully transitioned to optimizing, enabled, or disabled.
	StateTransitionReason *string
	// contains filtered or unexported fields
}

Describes fast snapshot restores for a snapshot.

type DescribeFleetError

type DescribeFleetError struct {

	// The error code that indicates why the instance could not be launched. For more
	// information about error codes, see Error codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html).
	ErrorCode *string

	// The error message that describes why the instance could not be launched. For
	// more information about error messages, see Error codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html).
	ErrorMessage *string

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that could not be launched was a Spot Instance or
	// On-Demand Instance.
	Lifecycle InstanceLifecycle
	// contains filtered or unexported fields
}

Describes the instances that could not be launched by the fleet.

type DescribeFleetsInstances

type DescribeFleetsInstances struct {

	// The IDs of the instances.
	InstanceIds []string

	// The instance type.
	InstanceType InstanceType

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that was launched is a Spot Instance or On-Demand
	// Instance.
	Lifecycle InstanceLifecycle

	// The value is Windows for Windows instances. Otherwise, the value is blank.
	Platform PlatformValues
	// contains filtered or unexported fields
}

Describes the instances that were launched by the fleet.

type DestinationFileFormat added in v1.20.0

type DestinationFileFormat string
const (
	DestinationFileFormatPlainText DestinationFileFormat = "plain-text"
	DestinationFileFormatParquet   DestinationFileFormat = "parquet"
)

Enum values for DestinationFileFormat

func (DestinationFileFormat) Values added in v1.20.0

Values returns all known values for DestinationFileFormat. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DestinationOptionsRequest added in v1.20.0

type DestinationOptionsRequest struct {

	// The format for the flow log. The default is plain-text.
	FileFormat DestinationFileFormat

	// Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon
	// S3. The default is false.
	HiveCompatiblePartitions *bool

	// Indicates whether to partition the flow log per hour. This reduces the cost and
	// response time for queries. The default is false.
	PerHourPartition *bool
	// contains filtered or unexported fields
}

Describes the destination options for a flow log.

type DestinationOptionsResponse added in v1.20.0

type DestinationOptionsResponse struct {

	// The format for the flow log.
	FileFormat DestinationFileFormat

	// Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon
	// S3.
	HiveCompatiblePartitions *bool

	// Indicates whether to partition the flow log per hour.
	PerHourPartition *bool
	// contains filtered or unexported fields
}

Describes the destination options for a flow log.

type DeviceType

type DeviceType string
const (
	DeviceTypeEbs           DeviceType = "ebs"
	DeviceTypeInstanceStore DeviceType = "instance-store"
)

Enum values for DeviceType

func (DeviceType) Values added in v0.29.0

func (DeviceType) Values() []DeviceType

Values returns all known values for DeviceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DhcpConfiguration

type DhcpConfiguration struct {

	// The name of a DHCP option.
	Key *string

	// One or more values for the DHCP option.
	Values []AttributeValue
	// contains filtered or unexported fields
}

Describes a DHCP configuration option.

type DhcpOptions

type DhcpOptions struct {

	// One or more DHCP options in the set.
	DhcpConfigurations []DhcpConfiguration

	// The ID of the set of DHCP options.
	DhcpOptionsId *string

	// The ID of the Amazon Web Services account that owns the DHCP options set.
	OwnerId *string

	// Any tags assigned to the DHCP options set.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a set of DHCP options.

type DirectoryServiceAuthentication

type DirectoryServiceAuthentication struct {

	// The ID of the Active Directory used for authentication.
	DirectoryId *string
	// contains filtered or unexported fields
}

Describes an Active Directory.

type DirectoryServiceAuthenticationRequest

type DirectoryServiceAuthenticationRequest struct {

	// The ID of the Active Directory to be used for authentication.
	DirectoryId *string
	// contains filtered or unexported fields
}

Describes the Active Directory to be used for client authentication.

type DisableFastSnapshotRestoreErrorItem

type DisableFastSnapshotRestoreErrorItem struct {

	// The errors.
	FastSnapshotRestoreStateErrors []DisableFastSnapshotRestoreStateErrorItem

	// The ID of the snapshot.
	SnapshotId *string
	// contains filtered or unexported fields
}

Contains information about the errors that occurred when disabling fast snapshot restores.

type DisableFastSnapshotRestoreStateError

type DisableFastSnapshotRestoreStateError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes an error that occurred when disabling fast snapshot restores.

type DisableFastSnapshotRestoreStateErrorItem

type DisableFastSnapshotRestoreStateErrorItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The error.
	Error *DisableFastSnapshotRestoreStateError
	// contains filtered or unexported fields
}

Contains information about an error that occurred when disabling fast snapshot restores.

type DisableFastSnapshotRestoreSuccessItem

type DisableFastSnapshotRestoreSuccessItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The time at which fast snapshot restores entered the disabled state.
	DisabledTime *time.Time

	// The time at which fast snapshot restores entered the disabling state.
	DisablingTime *time.Time

	// The time at which fast snapshot restores entered the enabled state.
	EnabledTime *time.Time

	// The time at which fast snapshot restores entered the enabling state.
	EnablingTime *time.Time

	// The time at which fast snapshot restores entered the optimizing state.
	OptimizingTime *time.Time

	// The Amazon Web Services owner alias that enabled fast snapshot restores on the
	// snapshot. This is intended for future use.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that enabled fast snapshot restores on
	// the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The state of fast snapshot restores for the snapshot.
	State FastSnapshotRestoreStateCode

	// The reason for the state transition. The possible values are as follows:
	//
	// *
	// Client.UserInitiated - The state successfully transitioned to enabling or
	// disabling.
	//
	// * Client.UserInitiated - Lifecycle state transition - The state
	// successfully transitioned to optimizing, enabled, or disabled.
	StateTransitionReason *string
	// contains filtered or unexported fields
}

Describes fast snapshot restores that were successfully disabled.

type DiskImage

type DiskImage struct {

	// A description of the disk image.
	Description *string

	// Information about the disk image.
	Image *DiskImageDetail

	// Information about the volume.
	Volume *VolumeDetail
	// contains filtered or unexported fields
}

Describes a disk image.

type DiskImageDescription

type DiskImageDescription struct {

	// The checksum computed for the disk image.
	Checksum *string

	// The disk image format.
	Format DiskImageFormat

	// A presigned URL for the import manifest stored in Amazon S3. For information
	// about creating a presigned URL for an Amazon S3 object, read the "Query String
	// Request Authentication Alternative" section of the Authenticating REST Requests
	// (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html) topic
	// in the Amazon Simple Storage Service Developer Guide. For information about the
	// import manifest referenced by this API action, see VM Import Manifest
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html).
	ImportManifestUrl *string

	// The size of the disk image, in GiB.
	Size *int64
	// contains filtered or unexported fields
}

Describes a disk image.

type DiskImageDetail

type DiskImageDetail struct {

	// The size of the disk image, in GiB.
	//
	// This member is required.
	Bytes *int64

	// The disk image format.
	//
	// This member is required.
	Format DiskImageFormat

	// A presigned URL for the import manifest stored in Amazon S3 and presented here
	// as an Amazon S3 presigned URL. For information about creating a presigned URL
	// for an Amazon S3 object, read the "Query String Request Authentication
	// Alternative" section of the Authenticating REST Requests
	// (https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html) topic
	// in the Amazon Simple Storage Service Developer Guide. For information about the
	// import manifest referenced by this API action, see VM Import Manifest
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html).
	//
	// This member is required.
	ImportManifestUrl *string
	// contains filtered or unexported fields
}

Describes a disk image.

type DiskImageFormat

type DiskImageFormat string
const (
	DiskImageFormatVmdk DiskImageFormat = "VMDK"
	DiskImageFormatRaw  DiskImageFormat = "RAW"
	DiskImageFormatVhd  DiskImageFormat = "VHD"
)

Enum values for DiskImageFormat

func (DiskImageFormat) Values added in v0.29.0

func (DiskImageFormat) Values() []DiskImageFormat

Values returns all known values for DiskImageFormat. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DiskImageVolumeDescription

type DiskImageVolumeDescription struct {

	// The volume identifier.
	Id *string

	// The size of the volume, in GiB.
	Size *int64
	// contains filtered or unexported fields
}

Describes a disk image volume.

type DiskInfo

type DiskInfo struct {

	// The number of disks with this configuration.
	Count *int32

	// The size of the disk in GB.
	SizeInGB *int64

	// The type of disk.
	Type DiskType
	// contains filtered or unexported fields
}

Describes a disk.

type DiskType

type DiskType string
const (
	DiskTypeHdd DiskType = "hdd"
	DiskTypeSsd DiskType = "ssd"
)

Enum values for DiskType

func (DiskType) Values added in v0.29.0

func (DiskType) Values() []DiskType

Values returns all known values for DiskType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DnsEntry

type DnsEntry struct {

	// The DNS name.
	DnsName *string

	// The ID of the private hosted zone.
	HostedZoneId *string
	// contains filtered or unexported fields
}

Describes a DNS entry.

type DnsNameState

type DnsNameState string
const (
	DnsNameStatePendingVerification DnsNameState = "pendingVerification"
	DnsNameStateVerified            DnsNameState = "verified"
	DnsNameStateFailed              DnsNameState = "failed"
)

Enum values for DnsNameState

func (DnsNameState) Values added in v0.29.0

func (DnsNameState) Values() []DnsNameState

Values returns all known values for DnsNameState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DnsOptions added in v1.42.0

type DnsOptions struct {

	// The DNS records created for the endpoint.
	DnsRecordIpType DnsRecordIpType
	// contains filtered or unexported fields
}

Describes the DNS options for an endpoint.

type DnsOptionsSpecification added in v1.42.0

type DnsOptionsSpecification struct {

	// The DNS records created for the endpoint.
	DnsRecordIpType DnsRecordIpType
	// contains filtered or unexported fields
}

Describes the DNS options for an endpoint.

type DnsRecordIpType added in v1.42.0

type DnsRecordIpType string
const (
	DnsRecordIpTypeIpv4           DnsRecordIpType = "ipv4"
	DnsRecordIpTypeDualstack      DnsRecordIpType = "dualstack"
	DnsRecordIpTypeIpv6           DnsRecordIpType = "ipv6"
	DnsRecordIpTypeServiceDefined DnsRecordIpType = "service-defined"
)

Enum values for DnsRecordIpType

func (DnsRecordIpType) Values added in v1.42.0

func (DnsRecordIpType) Values() []DnsRecordIpType

Values returns all known values for DnsRecordIpType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DnsServersOptionsModifyStructure

type DnsServersOptionsModifyStructure struct {

	// The IPv4 address range, in CIDR notation, of the DNS servers to be used. You can
	// specify up to two DNS servers. Ensure that the DNS servers can be reached by the
	// clients. The specified values overwrite the existing values.
	CustomDnsServers []string

	// Indicates whether DNS servers should be used. Specify False to delete the
	// existing DNS servers.
	Enabled *bool
	// contains filtered or unexported fields
}

Information about the DNS server to be used.

type DnsSupportValue

type DnsSupportValue string
const (
	DnsSupportValueEnable  DnsSupportValue = "enable"
	DnsSupportValueDisable DnsSupportValue = "disable"
)

Enum values for DnsSupportValue

func (DnsSupportValue) Values added in v0.29.0

func (DnsSupportValue) Values() []DnsSupportValue

Values returns all known values for DnsSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DomainType

type DomainType string
const (
	DomainTypeVpc      DomainType = "vpc"
	DomainTypeStandard DomainType = "standard"
)

Enum values for DomainType

func (DomainType) Values added in v0.29.0

func (DomainType) Values() []DomainType

Values returns all known values for DomainType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type DynamicRoutingValue added in v1.48.0

type DynamicRoutingValue string
const (
	DynamicRoutingValueEnable  DynamicRoutingValue = "enable"
	DynamicRoutingValueDisable DynamicRoutingValue = "disable"
)

Enum values for DynamicRoutingValue

func (DynamicRoutingValue) Values added in v1.48.0

Values returns all known values for DynamicRoutingValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EbsBlockDevice

type EbsBlockDevice struct {

	// Indicates whether the EBS volume is deleted on instance termination. For more
	// information, see Preserving Amazon EBS volumes on instance termination
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination)
	// in the Amazon EC2 User Guide.
	DeleteOnTermination *bool

	// Indicates whether the encryption state of an EBS volume is changed while being
	// restored from a backing snapshot. The effect of setting the encryption state to
	// true depends on the volume origin (new or from a snapshot), starting encryption
	// state, ownership, and whether encryption by default is enabled. For more
	// information, see Amazon EBS encryption
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-parameters)
	// in the Amazon EC2 User Guide. In no case can you remove encryption from an
	// encrypted volume. Encrypted volumes can only be attached to instances that
	// support Amazon EBS encryption. For more information, see Supported instance
	// types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances).
	// This parameter is not returned by DescribeImageAttribute
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImageAttribute.html).
	Encrypted *bool

	// The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,
	// this represents the number of IOPS that are provisioned for the volume. For gp2
	// volumes, this represents the baseline performance of the volume and the rate at
	// which the volume accumulates I/O credits for bursting. The following are the
	// supported values for each volume type:
	//
	// * gp3: 3,000-16,000 IOPS
	//
	// * io1:
	// 100-64,000 IOPS
	//
	// * io2: 100-64,000 IOPS
	//
	// For io1 and io2 volumes, we guarantee
	// 64,000 IOPS only for Instances built on the Nitro System
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances).
	// Other instance families guarantee performance up to 32,000 IOPS. This parameter
	// is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.
	// This parameter is not supported for gp2, st1, sc1, or standard volumes.
	Iops *int32

	// Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK
	// under which the EBS volume is encrypted. This parameter is only supported on
	// BlockDeviceMapping objects called by RunInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html),
	// RequestSpotFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html),
	// and RequestSpotInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html).
	KmsKeyId *string

	// The ARN of the Outpost on which the snapshot is stored. This parameter is only
	// supported on BlockDeviceMapping objects called by  CreateImage
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html).
	OutpostArn *string

	// The ID of the snapshot.
	SnapshotId *string

	// The throughput that the volume supports, in MiB/s. This parameter is valid only
	// for gp3 volumes. Valid Range: Minimum value of 125. Maximum value of 1000.
	Throughput *int32

	// The size of the volume, in GiBs. You must specify either a snapshot ID or a
	// volume size. If you specify a snapshot, the default is the snapshot size. You
	// can specify a volume size that is equal to or larger than the snapshot size. The
	// following are the supported volumes sizes for each volume type:
	//
	// * gp2 and
	// gp3:1-16,384
	//
	// * io1 and io2: 4-16,384
	//
	// * st1 and sc1: 125-16,384
	//
	// * standard:
	// 1-1,024
	VolumeSize *int32

	// The volume type. For more information, see Amazon EBS volume types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the
	// Amazon EC2 User Guide. If the volume type is io1 or io2, you must specify the
	// IOPS that the volume supports.
	VolumeType VolumeType
	// contains filtered or unexported fields
}

Describes a block device for an EBS volume.

type EbsEncryptionSupport

type EbsEncryptionSupport string
const (
	EbsEncryptionSupportUnsupported EbsEncryptionSupport = "unsupported"
	EbsEncryptionSupportSupported   EbsEncryptionSupport = "supported"
)

Enum values for EbsEncryptionSupport

func (EbsEncryptionSupport) Values added in v0.29.0

Values returns all known values for EbsEncryptionSupport. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EbsInfo

type EbsInfo struct {

	// Describes the optimized EBS performance for the instance type.
	EbsOptimizedInfo *EbsOptimizedInfo

	// Indicates whether the instance type is Amazon EBS-optimized. For more
	// information, see Amazon EBS-optimized instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) in
	// Amazon EC2 User Guide.
	EbsOptimizedSupport EbsOptimizedSupport

	// Indicates whether Amazon EBS encryption is supported.
	EncryptionSupport EbsEncryptionSupport

	// Indicates whether non-volatile memory express (NVMe) is supported.
	NvmeSupport EbsNvmeSupport
	// contains filtered or unexported fields
}

Describes the Amazon EBS features supported by the instance type.

type EbsInstanceBlockDevice

type EbsInstanceBlockDevice struct {

	// The time stamp when the attachment initiated.
	AttachTime *time.Time

	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The attachment state.
	Status AttachmentStatus

	// The ID of the EBS volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes a parameter used to set up an EBS volume in a block device mapping.

type EbsInstanceBlockDeviceSpecification

type EbsInstanceBlockDeviceSpecification struct {

	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The ID of the EBS volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes information used to set up an EBS volume specified in a block device mapping.

type EbsNvmeSupport

type EbsNvmeSupport string
const (
	EbsNvmeSupportUnsupported EbsNvmeSupport = "unsupported"
	EbsNvmeSupportSupported   EbsNvmeSupport = "supported"
	EbsNvmeSupportRequired    EbsNvmeSupport = "required"
)

Enum values for EbsNvmeSupport

func (EbsNvmeSupport) Values added in v0.29.0

func (EbsNvmeSupport) Values() []EbsNvmeSupport

Values returns all known values for EbsNvmeSupport. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EbsOptimizedInfo

type EbsOptimizedInfo struct {

	// The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
	BaselineBandwidthInMbps *int32

	// The baseline input/output storage operations per seconds for an EBS-optimized
	// instance type.
	BaselineIops *int32

	// The baseline throughput performance for an EBS-optimized instance type, in MB/s.
	BaselineThroughputInMBps *float64

	// The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
	MaximumBandwidthInMbps *int32

	// The maximum input/output storage operations per second for an EBS-optimized
	// instance type.
	MaximumIops *int32

	// The maximum throughput performance for an EBS-optimized instance type, in MB/s.
	MaximumThroughputInMBps *float64
	// contains filtered or unexported fields
}

Describes the optimized EBS performance for supported instance types.

type EbsOptimizedSupport

type EbsOptimizedSupport string
const (
	EbsOptimizedSupportUnsupported EbsOptimizedSupport = "unsupported"
	EbsOptimizedSupportSupported   EbsOptimizedSupport = "supported"
	EbsOptimizedSupportDefault     EbsOptimizedSupport = "default"
)

Enum values for EbsOptimizedSupport

func (EbsOptimizedSupport) Values added in v0.29.0

Values returns all known values for EbsOptimizedSupport. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EfaInfo added in v1.3.0

type EfaInfo struct {

	// The maximum number of Elastic Fabric Adapters for the instance type.
	MaximumEfaInterfaces *int32
	// contains filtered or unexported fields
}

Describes the Elastic Fabric Adapters for the instance type.

type EgressOnlyInternetGateway

type EgressOnlyInternetGateway struct {

	// Information about the attachment of the egress-only internet gateway.
	Attachments []InternetGatewayAttachment

	// The ID of the egress-only internet gateway.
	EgressOnlyInternetGatewayId *string

	// The tags assigned to the egress-only internet gateway.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an egress-only internet gateway.

type ElasticGpuAssociation

type ElasticGpuAssociation struct {

	// The ID of the association.
	ElasticGpuAssociationId *string

	// The state of the association between the instance and the Elastic Graphics
	// accelerator.
	ElasticGpuAssociationState *string

	// The time the Elastic Graphics accelerator was associated with the instance.
	ElasticGpuAssociationTime *string

	// The ID of the Elastic Graphics accelerator.
	ElasticGpuId *string
	// contains filtered or unexported fields
}

Describes the association between an instance and an Elastic Graphics accelerator.

type ElasticGpuHealth

type ElasticGpuHealth struct {

	// The health status.
	Status ElasticGpuStatus
	// contains filtered or unexported fields
}

Describes the status of an Elastic Graphics accelerator.

type ElasticGpuSpecification

type ElasticGpuSpecification struct {

	// The type of Elastic Graphics accelerator. For more information about the values
	// to specify for Type, see Elastic Graphics Basics
	// (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html#elastic-graphics-basics),
	// specifically the Elastic Graphics accelerator column, in the Amazon Elastic
	// Compute Cloud User Guide for Windows Instances.
	//
	// This member is required.
	Type *string
	// contains filtered or unexported fields
}

A specification for an Elastic Graphics accelerator.

type ElasticGpuSpecificationResponse

type ElasticGpuSpecificationResponse struct {

	// The elastic GPU type.
	Type *string
	// contains filtered or unexported fields
}

Describes an elastic GPU.

type ElasticGpuState

type ElasticGpuState string
const (
	ElasticGpuStateAttached ElasticGpuState = "ATTACHED"
)

Enum values for ElasticGpuState

func (ElasticGpuState) Values added in v0.29.0

func (ElasticGpuState) Values() []ElasticGpuState

Values returns all known values for ElasticGpuState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ElasticGpuStatus

type ElasticGpuStatus string
const (
	ElasticGpuStatusOk       ElasticGpuStatus = "OK"
	ElasticGpuStatusImpaired ElasticGpuStatus = "IMPAIRED"
)

Enum values for ElasticGpuStatus

func (ElasticGpuStatus) Values added in v0.29.0

Values returns all known values for ElasticGpuStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ElasticGpus

type ElasticGpus struct {

	// The Availability Zone in the which the Elastic Graphics accelerator resides.
	AvailabilityZone *string

	// The status of the Elastic Graphics accelerator.
	ElasticGpuHealth *ElasticGpuHealth

	// The ID of the Elastic Graphics accelerator.
	ElasticGpuId *string

	// The state of the Elastic Graphics accelerator.
	ElasticGpuState ElasticGpuState

	// The type of Elastic Graphics accelerator.
	ElasticGpuType *string

	// The ID of the instance to which the Elastic Graphics accelerator is attached.
	InstanceId *string

	// The tags assigned to the Elastic Graphics accelerator.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an Elastic Graphics accelerator.

type ElasticInferenceAccelerator

type ElasticInferenceAccelerator struct {

	// The type of elastic inference accelerator. The possible values are eia1.medium,
	// eia1.large, eia1.xlarge, eia2.medium, eia2.large, and eia2.xlarge.
	//
	// This member is required.
	Type *string

	// The number of elastic inference accelerators to attach to the instance. Default:
	// 1
	Count *int32
	// contains filtered or unexported fields
}

Describes an elastic inference accelerator.

type ElasticInferenceAcceleratorAssociation

type ElasticInferenceAcceleratorAssociation struct {

	// The Amazon Resource Name (ARN) of the elastic inference accelerator.
	ElasticInferenceAcceleratorArn *string

	// The ID of the association.
	ElasticInferenceAcceleratorAssociationId *string

	// The state of the elastic inference accelerator.
	ElasticInferenceAcceleratorAssociationState *string

	// The time at which the elastic inference accelerator is associated with an
	// instance.
	ElasticInferenceAcceleratorAssociationTime *time.Time
	// contains filtered or unexported fields
}

Describes the association between an instance and an elastic inference accelerator.

type EnaSupport

type EnaSupport string
const (
	EnaSupportUnsupported EnaSupport = "unsupported"
	EnaSupportSupported   EnaSupport = "supported"
	EnaSupportRequired    EnaSupport = "required"
)

Enum values for EnaSupport

func (EnaSupport) Values added in v0.29.0

func (EnaSupport) Values() []EnaSupport

Values returns all known values for EnaSupport. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EnableFastSnapshotRestoreErrorItem

type EnableFastSnapshotRestoreErrorItem struct {

	// The errors.
	FastSnapshotRestoreStateErrors []EnableFastSnapshotRestoreStateErrorItem

	// The ID of the snapshot.
	SnapshotId *string
	// contains filtered or unexported fields
}

Contains information about the errors that occurred when enabling fast snapshot restores.

type EnableFastSnapshotRestoreStateError

type EnableFastSnapshotRestoreStateError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes an error that occurred when enabling fast snapshot restores.

type EnableFastSnapshotRestoreStateErrorItem

type EnableFastSnapshotRestoreStateErrorItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The error.
	Error *EnableFastSnapshotRestoreStateError
	// contains filtered or unexported fields
}

Contains information about an error that occurred when enabling fast snapshot restores.

type EnableFastSnapshotRestoreSuccessItem

type EnableFastSnapshotRestoreSuccessItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The time at which fast snapshot restores entered the disabled state.
	DisabledTime *time.Time

	// The time at which fast snapshot restores entered the disabling state.
	DisablingTime *time.Time

	// The time at which fast snapshot restores entered the enabled state.
	EnabledTime *time.Time

	// The time at which fast snapshot restores entered the enabling state.
	EnablingTime *time.Time

	// The time at which fast snapshot restores entered the optimizing state.
	OptimizingTime *time.Time

	// The Amazon Web Services owner alias that enabled fast snapshot restores on the
	// snapshot. This is intended for future use.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that enabled fast snapshot restores on
	// the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The state of fast snapshot restores.
	State FastSnapshotRestoreStateCode

	// The reason for the state transition. The possible values are as follows:
	//
	// *
	// Client.UserInitiated - The state successfully transitioned to enabling or
	// disabling.
	//
	// * Client.UserInitiated - Lifecycle state transition - The state
	// successfully transitioned to optimizing, enabled, or disabled.
	StateTransitionReason *string
	// contains filtered or unexported fields
}

Describes fast snapshot restores that were successfully enabled.

type EnclaveOptions added in v0.29.0

type EnclaveOptions struct {

	// If this parameter is set to true, the instance is enabled for Amazon Web
	// Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services
	// Nitro Enclaves.
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

type EnclaveOptionsRequest added in v0.29.0

type EnclaveOptionsRequest struct {

	// To enable the instance for Amazon Web Services Nitro Enclaves, set this
	// parameter to true.
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? (https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html) in the Amazon Web Services Nitro Enclaves User Guide.

type EndDateType

type EndDateType string
const (
	EndDateTypeUnlimited EndDateType = "unlimited"
	EndDateTypeLimited   EndDateType = "limited"
)

Enum values for EndDateType

func (EndDateType) Values added in v0.29.0

func (EndDateType) Values() []EndDateType

Values returns all known values for EndDateType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EphemeralNvmeSupport added in v0.29.0

type EphemeralNvmeSupport string
const (
	EphemeralNvmeSupportUnsupported EphemeralNvmeSupport = "unsupported"
	EphemeralNvmeSupportSupported   EphemeralNvmeSupport = "supported"
	EphemeralNvmeSupportRequired    EphemeralNvmeSupport = "required"
)

Enum values for EphemeralNvmeSupport

func (EphemeralNvmeSupport) Values added in v0.29.0

Values returns all known values for EphemeralNvmeSupport. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EventCode

type EventCode string
const (
	EventCodeInstanceReboot     EventCode = "instance-reboot"
	EventCodeSystemReboot       EventCode = "system-reboot"
	EventCodeSystemMaintenance  EventCode = "system-maintenance"
	EventCodeInstanceRetirement EventCode = "instance-retirement"
	EventCodeInstanceStop       EventCode = "instance-stop"
)

Enum values for EventCode

func (EventCode) Values added in v0.29.0

func (EventCode) Values() []EventCode

Values returns all known values for EventCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type EventInformation

type EventInformation struct {

	// The description of the event.
	EventDescription *string

	// The event. error events:
	//
	// * iamFleetRoleInvalid - The EC2 Fleet or Spot Fleet
	// does not have the required permissions either to launch or terminate an
	// instance.
	//
	// * allLaunchSpecsTemporarilyBlacklisted - None of the configurations
	// are valid, and several attempts to launch instances have failed. For more
	// information, see the description of the event.
	//
	// * spotInstanceCountLimitExceeded
	// - You've reached the limit on the number of Spot Instances that you can
	// launch.
	//
	// * spotFleetRequestConfigurationInvalid - The configuration is not
	// valid. For more information, see the description of the
	// event.
	//
	// fleetRequestChange events:
	//
	// * active - The EC2 Fleet or Spot Fleet
	// request has been validated and Amazon EC2 is attempting to maintain the target
	// number of running instances.
	//
	// * deleted (EC2 Fleet) / cancelled (Spot Fleet) -
	// The EC2 Fleet is deleted or the Spot Fleet request is canceled and has no
	// running instances. The EC2 Fleet or Spot Fleet will be deleted two days after
	// its instances are terminated.
	//
	// * deleted_running (EC2 Fleet) / cancelled_running
	// (Spot Fleet) - The EC2 Fleet is deleted or the Spot Fleet request is canceled
	// and does not launch additional instances. Its existing instances continue to run
	// until they are interrupted or terminated. The request remains in this state
	// until all instances are interrupted or terminated.
	//
	// * deleted_terminating (EC2
	// Fleet) / cancelled_terminating (Spot Fleet) - The EC2 Fleet is deleted or the
	// Spot Fleet request is canceled and its instances are terminating. The request
	// remains in this state until all instances are terminated.
	//
	// * expired - The EC2
	// Fleet or Spot Fleet request has expired. If the request was created with
	// TerminateInstancesWithExpiration set, a subsequent terminated event indicates
	// that the instances are terminated.
	//
	// * modify_in_progress - The EC2 Fleet or Spot
	// Fleet request is being modified. The request remains in this state until the
	// modification is fully processed.
	//
	// * modify_succeeded - The EC2 Fleet or Spot
	// Fleet request was modified.
	//
	// * submitted - The EC2 Fleet or Spot Fleet request
	// is being evaluated and Amazon EC2 is preparing to launch the target number of
	// instances.
	//
	// * progress - The EC2 Fleet or Spot Fleet request is in the process
	// of being fulfilled.
	//
	// instanceChange events:
	//
	// * launched - A new instance was
	// launched.
	//
	// * terminated - An instance was terminated by the user.
	//
	// *
	// termination_notified - An instance termination notification was sent when a Spot
	// Instance was terminated by Amazon EC2 during scale-down, when the target
	// capacity of the fleet was modified down, for example, from a target capacity of
	// 4 to a target capacity of 3.
	//
	// Information events:
	//
	// * fleetProgressHalted - The
	// price in every launch specification is not valid because it is below the Spot
	// price (all the launch specifications have produced launchSpecUnusable events). A
	// launch specification might become valid if the Spot price changes.
	//
	// *
	// launchSpecTemporarilyBlacklisted - The configuration is not valid and several
	// attempts to launch instances have failed. For more information, see the
	// description of the event.
	//
	// * launchSpecUnusable - The price in a launch
	// specification is not valid because it is below the Spot price.
	//
	// *
	// registerWithLoadBalancersFailed - An attempt to register instances with load
	// balancers failed. For more information, see the description of the event.
	EventSubType *string

	// The ID of the instance. This information is available only for instanceChange
	// events.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes an EC2 Fleet or Spot Fleet event.

type EventType

type EventType string
const (
	EventTypeInstanceChange EventType = "instanceChange"
	EventTypeBatchChange    EventType = "fleetRequestChange"
	EventTypeError          EventType = "error"
	EventTypeInformation    EventType = "information"
)

Enum values for EventType

func (EventType) Values added in v0.29.0

func (EventType) Values() []EventType

Values returns all known values for EventType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ExcessCapacityTerminationPolicy

type ExcessCapacityTerminationPolicy string
const (
	ExcessCapacityTerminationPolicyNoTermination ExcessCapacityTerminationPolicy = "noTermination"
	ExcessCapacityTerminationPolicyDefault       ExcessCapacityTerminationPolicy = "default"
)

Enum values for ExcessCapacityTerminationPolicy

func (ExcessCapacityTerminationPolicy) Values added in v0.29.0

Values returns all known values for ExcessCapacityTerminationPolicy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Explanation added in v0.31.0

type Explanation struct {

	// The network ACL.
	Acl *AnalysisComponent

	// The network ACL rule.
	AclRule *AnalysisAclRule

	// The IPv4 address, in CIDR notation.
	Address *string

	// The IPv4 addresses, in CIDR notation.
	Addresses []string

	// The resource to which the component is attached.
	AttachedTo *AnalysisComponent

	// The Availability Zones.
	AvailabilityZones []string

	// The CIDR ranges.
	Cidrs []string

	// The listener for a Classic Load Balancer.
	ClassicLoadBalancerListener *AnalysisLoadBalancerListener

	// The component.
	Component *AnalysisComponent

	// The Amazon Web Services account for the component.
	ComponentAccount *string

	// The Region for the component.
	ComponentRegion *string

	// The customer gateway.
	CustomerGateway *AnalysisComponent

	// The destination.
	Destination *AnalysisComponent

	// The destination VPC.
	DestinationVpc *AnalysisComponent

	// The direction. The following are the possible values:
	//
	// * egress
	//
	// * ingress
	Direction *string

	// The load balancer listener.
	ElasticLoadBalancerListener *AnalysisComponent

	// The explanation code.
	ExplanationCode *string

	// The route table.
	IngressRouteTable *AnalysisComponent

	// The internet gateway.
	InternetGateway *AnalysisComponent

	// The Amazon Resource Name (ARN) of the load balancer.
	LoadBalancerArn *string

	// The listener port of the load balancer.
	LoadBalancerListenerPort *int32

	// The target.
	LoadBalancerTarget *AnalysisLoadBalancerTarget

	// The target group.
	LoadBalancerTargetGroup *AnalysisComponent

	// The target groups.
	LoadBalancerTargetGroups []AnalysisComponent

	// The target port.
	LoadBalancerTargetPort *int32

	// The missing component.
	MissingComponent *string

	// The NAT gateway.
	NatGateway *AnalysisComponent

	// The network interface.
	NetworkInterface *AnalysisComponent

	// The packet field.
	PacketField *string

	// The port.
	Port *int32

	// The port ranges.
	PortRanges []PortRange

	// The prefix list.
	PrefixList *AnalysisComponent

	// The protocols.
	Protocols []string

	// The route table.
	RouteTable *AnalysisComponent

	// The route table route.
	RouteTableRoute *AnalysisRouteTableRoute

	// The security group.
	SecurityGroup *AnalysisComponent

	// The security group rule.
	SecurityGroupRule *AnalysisSecurityGroupRule

	// The security groups.
	SecurityGroups []AnalysisComponent

	// The source VPC.
	SourceVpc *AnalysisComponent

	// The state.
	State *string

	// The subnet.
	Subnet *AnalysisComponent

	// The route table for the subnet.
	SubnetRouteTable *AnalysisComponent

	// The transit gateway.
	TransitGateway *AnalysisComponent

	// The transit gateway attachment.
	TransitGatewayAttachment *AnalysisComponent

	// The transit gateway route table.
	TransitGatewayRouteTable *AnalysisComponent

	// The transit gateway route table route.
	TransitGatewayRouteTableRoute *TransitGatewayRouteTableRoute

	// The component VPC.
	Vpc *AnalysisComponent

	// The VPC endpoint.
	VpcEndpoint *AnalysisComponent

	// The VPC peering connection.
	VpcPeeringConnection *AnalysisComponent

	// The VPN connection.
	VpnConnection *AnalysisComponent

	// The VPN gateway.
	VpnGateway *AnalysisComponent
	// contains filtered or unexported fields
}

Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes (https://docs.aws.amazon.com/vpc/latest/reachability/explanation-codes.html).

type ExportEnvironment

type ExportEnvironment string
const (
	ExportEnvironmentCitrix    ExportEnvironment = "citrix"
	ExportEnvironmentVmware    ExportEnvironment = "vmware"
	ExportEnvironmentMicrosoft ExportEnvironment = "microsoft"
)

Enum values for ExportEnvironment

func (ExportEnvironment) Values added in v0.29.0

Values returns all known values for ExportEnvironment. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ExportImageTask

type ExportImageTask struct {

	// A description of the image being exported.
	Description *string

	// The ID of the export image task.
	ExportImageTaskId *string

	// The ID of the image.
	ImageId *string

	// The percent complete of the export image task.
	Progress *string

	// Information about the destination Amazon S3 bucket.
	S3ExportLocation *ExportTaskS3Location

	// The status of the export image task. The possible values are active, completed,
	// deleting, and deleted.
	Status *string

	// The status message for the export image task.
	StatusMessage *string

	// Any tags assigned to the export image task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an export image task.

type ExportTask

type ExportTask struct {

	// A description of the resource being exported.
	Description *string

	// The ID of the export task.
	ExportTaskId *string

	// Information about the export task.
	ExportToS3Task *ExportToS3Task

	// Information about the instance to export.
	InstanceExportDetails *InstanceExportDetails

	// The state of the export task.
	State ExportTaskState

	// The status message related to the export task.
	StatusMessage *string

	// The tags for the export task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an export instance task.

type ExportTaskS3Location

type ExportTaskS3Location struct {

	// The destination Amazon S3 bucket.
	S3Bucket *string

	// The prefix (logical hierarchy) in the bucket.
	S3Prefix *string
	// contains filtered or unexported fields
}

Describes the destination for an export image task.

type ExportTaskS3LocationRequest

type ExportTaskS3LocationRequest struct {

	// The destination Amazon S3 bucket.
	//
	// This member is required.
	S3Bucket *string

	// The prefix (logical hierarchy) in the bucket.
	S3Prefix *string
	// contains filtered or unexported fields
}

Describes the destination for an export image task.

type ExportTaskState

type ExportTaskState string
const (
	ExportTaskStateActive     ExportTaskState = "active"
	ExportTaskStateCancelling ExportTaskState = "cancelling"
	ExportTaskStateCancelled  ExportTaskState = "cancelled"
	ExportTaskStateCompleted  ExportTaskState = "completed"
)

Enum values for ExportTaskState

func (ExportTaskState) Values added in v0.29.0

func (ExportTaskState) Values() []ExportTaskState

Values returns all known values for ExportTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ExportToS3Task

type ExportToS3Task struct {

	// The container format used to combine disk images with metadata (such as OVF). If
	// absent, only the disk image is exported.
	ContainerFormat ContainerFormat

	// The format for the exported image.
	DiskImageFormat DiskImageFormat

	// The Amazon S3 bucket for the destination image. The destination bucket must
	// exist and have an access control list (ACL) attached that specifies the
	// Region-specific canonical account ID for the Grantee. For more information about
	// the ACL to your S3 bucket, see Prerequisites
	// (https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html#vmexport-prerequisites)
	// in the VM Import/Export User Guide.
	S3Bucket *string

	// The encryption key for your S3 bucket.
	S3Key *string
	// contains filtered or unexported fields
}

Describes the format and location for the export task.

type ExportToS3TaskSpecification

type ExportToS3TaskSpecification struct {

	// The container format used to combine disk images with metadata (such as OVF). If
	// absent, only the disk image is exported.
	ContainerFormat ContainerFormat

	// The format for the exported image.
	DiskImageFormat DiskImageFormat

	// The Amazon S3 bucket for the destination image. The destination bucket must
	// exist and have an access control list (ACL) attached that specifies the
	// Region-specific canonical account ID for the Grantee. For more information about
	// the ACL to your S3 bucket, see Prerequisites
	// (https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html#vmexport-prerequisites)
	// in the VM Import/Export User Guide.
	S3Bucket *string

	// The image is written to a single object in the Amazon S3 bucket at the S3 key
	// s3prefix + exportTaskId + '.' + diskImageFormat.
	S3Prefix *string
	// contains filtered or unexported fields
}

Describes an export instance task.

type FailedCapacityReservationFleetCancellationResult added in v1.19.0

type FailedCapacityReservationFleetCancellationResult struct {

	// Information about the Capacity Reservation Fleet cancellation error.
	CancelCapacityReservationFleetError *CancelCapacityReservationFleetError

	// The ID of the Capacity Reservation Fleet that could not be cancelled.
	CapacityReservationFleetId *string
	// contains filtered or unexported fields
}

Describes a Capacity Reservation Fleet that could not be cancelled.

type FailedQueuedPurchaseDeletion

type FailedQueuedPurchaseDeletion struct {

	// The error.
	Error *DeleteQueuedReservedInstancesError

	// The ID of the Reserved Instance.
	ReservedInstancesId *string
	// contains filtered or unexported fields
}

Describes a Reserved Instance whose queued purchase was not deleted.

type FastLaunchLaunchTemplateSpecificationRequest added in v1.28.0

type FastLaunchLaunchTemplateSpecificationRequest struct {

	// The version of the launch template to use for faster launching for a Windows
	// AMI.
	//
	// This member is required.
	Version *string

	// The ID of the launch template to use for faster launching for a Windows AMI.
	LaunchTemplateId *string

	// The name of the launch template to use for faster launching for a Windows AMI.
	LaunchTemplateName *string
	// contains filtered or unexported fields
}

Request to create a launch template for a fast-launch enabled Windows AMI. Note - You can specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

type FastLaunchLaunchTemplateSpecificationResponse added in v1.28.0

type FastLaunchLaunchTemplateSpecificationResponse struct {

	// The ID of the launch template for faster launching of the associated Windows
	// AMI.
	LaunchTemplateId *string

	// The name of the launch template for faster launching of the associated Windows
	// AMI.
	LaunchTemplateName *string

	// The version of the launch template for faster launching of the associated
	// Windows AMI.
	Version *string
	// contains filtered or unexported fields
}

Identifies the launch template to use for faster launching of the Windows AMI.

type FastLaunchResourceType added in v1.28.0

type FastLaunchResourceType string
const (
	FastLaunchResourceTypeSnapshot FastLaunchResourceType = "snapshot"
)

Enum values for FastLaunchResourceType

func (FastLaunchResourceType) Values added in v1.28.0

Values returns all known values for FastLaunchResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FastLaunchSnapshotConfigurationRequest added in v1.28.0

type FastLaunchSnapshotConfigurationRequest struct {

	// The number of pre-provisioned snapshots to keep on hand for a fast-launch
	// enabled Windows AMI.
	TargetResourceCount *int32
	// contains filtered or unexported fields
}

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

type FastLaunchSnapshotConfigurationResponse added in v1.28.0

type FastLaunchSnapshotConfigurationResponse struct {

	// The number of pre-provisioned snapshots requested to keep on hand for a
	// fast-launch enabled Windows AMI.
	TargetResourceCount *int32
	// contains filtered or unexported fields
}

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

type FastLaunchStateCode added in v1.28.0

type FastLaunchStateCode string
const (
	FastLaunchStateCodeEnabling        FastLaunchStateCode = "enabling"
	FastLaunchStateCodeEnablingFailed  FastLaunchStateCode = "enabling-failed"
	FastLaunchStateCodeEnabled         FastLaunchStateCode = "enabled"
	FastLaunchStateCodeEnabledFailed   FastLaunchStateCode = "enabled-failed"
	FastLaunchStateCodeDisabling       FastLaunchStateCode = "disabling"
	FastLaunchStateCodeDisablingFailed FastLaunchStateCode = "disabling-failed"
)

Enum values for FastLaunchStateCode

func (FastLaunchStateCode) Values added in v1.28.0

Values returns all known values for FastLaunchStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FastSnapshotRestoreStateCode

type FastSnapshotRestoreStateCode string
const (
	FastSnapshotRestoreStateCodeEnabling   FastSnapshotRestoreStateCode = "enabling"
	FastSnapshotRestoreStateCodeOptimizing FastSnapshotRestoreStateCode = "optimizing"
	FastSnapshotRestoreStateCodeEnabled    FastSnapshotRestoreStateCode = "enabled"
	FastSnapshotRestoreStateCodeDisabling  FastSnapshotRestoreStateCode = "disabling"
	FastSnapshotRestoreStateCodeDisabled   FastSnapshotRestoreStateCode = "disabled"
)

Enum values for FastSnapshotRestoreStateCode

func (FastSnapshotRestoreStateCode) Values added in v0.29.0

Values returns all known values for FastSnapshotRestoreStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FederatedAuthentication

type FederatedAuthentication struct {

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider.
	SamlProviderArn *string

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider for the
	// self-service portal.
	SelfServiceSamlProviderArn *string
	// contains filtered or unexported fields
}

Describes the IAM SAML identity providers used for federated authentication.

type FederatedAuthenticationRequest

type FederatedAuthenticationRequest struct {

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider.
	SAMLProviderArn *string

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider for the
	// self-service portal.
	SelfServiceSAMLProviderArn *string
	// contains filtered or unexported fields
}

The IAM SAML identity provider used for federated authentication.

type Filter

type Filter struct {

	// The name of the filter. Filter names are case-sensitive.
	Name *string

	// The filter values. Filter values are case-sensitive. If you specify multiple
	// values for a filter, the values are joined with an OR, and the request returns
	// all results that match any of the specified values.
	Values []string
	// contains filtered or unexported fields
}

A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs. If you specify multiple filters, the filters are joined with an AND, and the request returns only results that match all of the specified filters.

type FindingsFound added in v1.25.0

type FindingsFound string
const (
	FindingsFoundTrue    FindingsFound = "true"
	FindingsFoundFalse   FindingsFound = "false"
	FindingsFoundUnknown FindingsFound = "unknown"
)

Enum values for FindingsFound

func (FindingsFound) Values added in v1.25.0

func (FindingsFound) Values() []FindingsFound

Values returns all known values for FindingsFound. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetActivityStatus

type FleetActivityStatus string
const (
	FleetActivityStatusError              FleetActivityStatus = "error"
	FleetActivityStatusPendingFulfillment FleetActivityStatus = "pending_fulfillment"
	FleetActivityStatusPendingTermination FleetActivityStatus = "pending_termination"
	FleetActivityStatusFulfilled          FleetActivityStatus = "fulfilled"
)

Enum values for FleetActivityStatus

func (FleetActivityStatus) Values added in v0.29.0

Values returns all known values for FleetActivityStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetCapacityReservation added in v1.19.0

type FleetCapacityReservation struct {

	// The Availability Zone in which the Capacity Reservation reserves capacity.
	AvailabilityZone *string

	// The ID of the Availability Zone in which the Capacity Reservation reserves
	// capacity.
	AvailabilityZoneId *string

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// The date and time at which the Capacity Reservation was created.
	CreateDate *time.Time

	// Indicates whether the Capacity Reservation reserves capacity for EBS-optimized
	// instance types.
	EbsOptimized *bool

	// The number of capacity units fulfilled by the Capacity Reservation. For more
	// information, see  Total target capacity
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity)
	// in the Amazon EC2 User Guide.
	FulfilledCapacity *float64

	// The type of operating system for which the Capacity Reservation reserves
	// capacity.
	InstancePlatform CapacityReservationInstancePlatform

	// The instance type for which the Capacity Reservation reserves capacity.
	InstanceType InstanceType

	// The priority of the instance type in the Capacity Reservation Fleet. For more
	// information, see  Instance type priority
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-priority)
	// in the Amazon EC2 User Guide.
	Priority *int32

	// The total number of instances for which the Capacity Reservation reserves
	// capacity.
	TotalInstanceCount *int32

	// The weight of the instance type in the Capacity Reservation Fleet. For more
	// information, see  Instance type weight
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-weight)
	// in the Amazon EC2 User Guide.
	Weight *float64
	// contains filtered or unexported fields
}

Information about a Capacity Reservation in a Capacity Reservation Fleet.

type FleetCapacityReservationTenancy added in v1.19.0

type FleetCapacityReservationTenancy string
const (
	FleetCapacityReservationTenancyDefault FleetCapacityReservationTenancy = "default"
)

Enum values for FleetCapacityReservationTenancy

func (FleetCapacityReservationTenancy) Values added in v1.19.0

Values returns all known values for FleetCapacityReservationTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetCapacityReservationUsageStrategy

type FleetCapacityReservationUsageStrategy string
const (
	FleetCapacityReservationUsageStrategyUseCapacityReservationsFirst FleetCapacityReservationUsageStrategy = "use-capacity-reservations-first"
)

Enum values for FleetCapacityReservationUsageStrategy

func (FleetCapacityReservationUsageStrategy) Values added in v0.29.0

Values returns all known values for FleetCapacityReservationUsageStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetData

type FleetData struct {

	// The progress of the EC2 Fleet. If there is an error, the status is error. After
	// all requests are placed, the status is pending_fulfillment. If the size of the
	// EC2 Fleet is equal to or greater than its target capacity, the status is
	// fulfilled. If the size of the EC2 Fleet is decreased, the status is
	// pending_termination while instances are terminating.
	ActivityStatus FleetActivityStatus

	// Unique, case-sensitive identifier that you provide to ensure the idempotency of
	// the request. For more information, see Ensuring idempotency
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
	// Constraints: Maximum 64 ASCII characters
	ClientToken *string

	// Reserved.
	Context *string

	// The creation date and time of the EC2 Fleet.
	CreateTime *time.Time

	// Information about the instances that could not be launched by the fleet. Valid
	// only when Type is set to instant.
	Errors []DescribeFleetError

	// Indicates whether running instances should be terminated if the target capacity
	// of the EC2 Fleet is decreased below the current size of the EC2 Fleet.
	ExcessCapacityTerminationPolicy FleetExcessCapacityTerminationPolicy

	// The ID of the EC2 Fleet.
	FleetId *string

	// The state of the EC2 Fleet.
	FleetState FleetStateCode

	// The number of units fulfilled by this request compared to the set target
	// capacity.
	FulfilledCapacity *float64

	// The number of units fulfilled by this request compared to the set target
	// On-Demand capacity.
	FulfilledOnDemandCapacity *float64

	// Information about the instances that were launched by the fleet. Valid only when
	// Type is set to instant.
	Instances []DescribeFleetsInstances

	// The launch template and overrides.
	LaunchTemplateConfigs []FleetLaunchTemplateConfig

	// The allocation strategy of On-Demand Instances in an EC2 Fleet.
	OnDemandOptions *OnDemandOptions

	// Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported
	// only for fleets of type maintain. For more information, see EC2 Fleet health
	// checks
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks)
	// in the Amazon EC2 User Guide.
	ReplaceUnhealthyInstances *bool

	// The configuration of Spot Instances in an EC2 Fleet.
	SpotOptions *SpotOptions

	// The tags for an EC2 Fleet resource.
	Tags []Tag

	// The number of units to request. You can choose to set the target capacity in
	// terms of instances or a performance characteristic that is important to your
	// application workload, such as vCPUs, memory, or I/O. If the request type is
	// maintain, you can specify a target capacity of 0 and add capacity later.
	TargetCapacitySpecification *TargetCapacitySpecification

	// Indicates whether running instances should be terminated when the EC2 Fleet
	// expires.
	TerminateInstancesWithExpiration *bool

	// The type of request. Indicates whether the EC2 Fleet only requests the target
	// capacity, or also attempts to maintain it. If you request a certain target
	// capacity, EC2 Fleet only places the required requests; it does not attempt to
	// replenish instances if capacity is diminished, and it does not submit requests
	// in alternative capacity pools if capacity is unavailable. To maintain a certain
	// target capacity, EC2 Fleet places the required requests to meet this target
	// capacity. It also automatically replenishes any interrupted Spot Instances.
	// Default: maintain.
	Type FleetType

	// The start date and time of the request, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request
	// immediately.
	ValidFrom *time.Time

	// The end date and time of the request, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ). At this point, no new instance requests are placed or
	// able to fulfill the request. The default end date is 7 days from the current
	// date.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

Describes an EC2 Fleet.

type FleetEventType

type FleetEventType string
const (
	FleetEventTypeInstanceChange FleetEventType = "instance-change"
	FleetEventTypeFleetChange    FleetEventType = "fleet-change"
	FleetEventTypeServiceError   FleetEventType = "service-error"
)

Enum values for FleetEventType

func (FleetEventType) Values added in v0.29.0

func (FleetEventType) Values() []FleetEventType

Values returns all known values for FleetEventType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetExcessCapacityTerminationPolicy

type FleetExcessCapacityTerminationPolicy string
const (
	FleetExcessCapacityTerminationPolicyNoTermination FleetExcessCapacityTerminationPolicy = "no-termination"
	FleetExcessCapacityTerminationPolicyTermination   FleetExcessCapacityTerminationPolicy = "termination"
)

Enum values for FleetExcessCapacityTerminationPolicy

func (FleetExcessCapacityTerminationPolicy) Values added in v0.29.0

Values returns all known values for FleetExcessCapacityTerminationPolicy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetInstanceMatchCriteria added in v1.19.0

type FleetInstanceMatchCriteria string
const (
	FleetInstanceMatchCriteriaOpen FleetInstanceMatchCriteria = "open"
)

Enum values for FleetInstanceMatchCriteria

func (FleetInstanceMatchCriteria) Values added in v1.19.0

Values returns all known values for FleetInstanceMatchCriteria. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetLaunchTemplateConfig

type FleetLaunchTemplateConfig struct {

	// The launch template.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecification

	// Any parameters that you specify override the same parameters in the launch
	// template.
	Overrides []FleetLaunchTemplateOverrides
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type FleetLaunchTemplateConfigRequest

type FleetLaunchTemplateConfigRequest struct {

	// The launch template to use. You must specify either the launch template ID or
	// launch template name in the request.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecificationRequest

	// Any parameters that you specify override the same parameters in the launch
	// template. For fleets of type request and maintain, a maximum of 300 items is
	// allowed across all launch templates.
	Overrides []FleetLaunchTemplateOverridesRequest
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type FleetLaunchTemplateOverrides

type FleetLaunchTemplateOverrides struct {

	// The Availability Zone in which to launch the instances.
	AvailabilityZone *string

	// The ID of the AMI. An AMI is required to launch an instance. The AMI ID must be
	// specified here or in the launch template.
	ImageId *string

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes. If you specify
	// InstanceRequirements, you can't specify InstanceType.
	InstanceRequirements *InstanceRequirements

	// The instance type. If you specify InstanceType, you can't specify
	// InstanceRequirements.
	InstanceType InstanceType

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	MaxPrice *string

	// The location where the instance launched, if applicable.
	Placement *PlacementResponse

	// The priority for the launch template override. The highest priority is launched
	// first. If the On-Demand AllocationStrategy is set to prioritized, EC2 Fleet uses
	// priority to determine which launch template override to use first in fulfilling
	// On-Demand capacity. If the Spot AllocationStrategy is set to
	// capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis
	// to determine which launch template override to use in fulfilling Spot capacity,
	// but optimizes for capacity first. Valid values are whole numbers starting at 0.
	// The lower the number, the higher the priority. If no number is set, the override
	// has the lowest priority. You can set the same priority for different launch
	// template overrides.
	Priority *float64

	// The ID of the subnet in which to launch the instances.
	SubnetId *string

	// The number of units provided by the specified instance type.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes overrides for a launch template.

type FleetLaunchTemplateOverridesRequest

type FleetLaunchTemplateOverridesRequest struct {

	// The Availability Zone in which to launch the instances.
	AvailabilityZone *string

	// The ID of the AMI. An AMI is required to launch an instance. The AMI ID must be
	// specified here or in the launch template.
	ImageId *string

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes. If you specify
	// InstanceRequirements, you can't specify InstanceType.
	InstanceRequirements *InstanceRequirementsRequest

	// The instance type. If you specify InstanceType, you can't specify
	// InstanceRequirements.
	InstanceType InstanceType

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	MaxPrice *string

	// The location where the instance launched, if applicable.
	Placement *Placement

	// The priority for the launch template override. The highest priority is launched
	// first. If the On-Demand AllocationStrategy is set to prioritized, EC2 Fleet uses
	// priority to determine which launch template override to use first in fulfilling
	// On-Demand capacity. If the Spot AllocationStrategy is set to
	// capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis
	// to determine which launch template override to use in fulfilling Spot capacity,
	// but optimizes for capacity first. Valid values are whole numbers starting at 0.
	// The lower the number, the higher the priority. If no number is set, the launch
	// template override has the lowest priority. You can set the same priority for
	// different launch template overrides.
	Priority *float64

	// The IDs of the subnets in which to launch the instances. Separate multiple
	// subnet IDs using commas (for example, subnet-1234abcdeexample1,
	// subnet-0987cdef6example2). A request of type instant can have only one subnet
	// ID.
	SubnetId *string

	// The number of units provided by the specified instance type.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes overrides for a launch template.

type FleetLaunchTemplateSpecification

type FleetLaunchTemplateSpecification struct {

	// The ID of the launch template. You must specify the LaunchTemplateId or the
	// LaunchTemplateName, but not both.
	LaunchTemplateId *string

	// The name of the launch template. You must specify the LaunchTemplateName or the
	// LaunchTemplateId, but not both.
	LaunchTemplateName *string

	// The launch template version number, $Latest, or $Default. You must specify a
	// value, otherwise the request fails. If the value is $Latest, Amazon EC2 uses the
	// latest version of the launch template. If the value is $Default, Amazon EC2 uses
	// the default version of the launch template.
	Version *string
	// contains filtered or unexported fields
}

The Amazon EC2 launch template that can be used by a Spot Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both. For information about launch templates, see Launch an instance from a launch template (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the Amazon EC2 User Guide.

type FleetLaunchTemplateSpecificationRequest

type FleetLaunchTemplateSpecificationRequest struct {

	// The ID of the launch template. You must specify the LaunchTemplateId or the
	// LaunchTemplateName, but not both.
	LaunchTemplateId *string

	// The name of the launch template. You must specify the LaunchTemplateName or the
	// LaunchTemplateId, but not both.
	LaunchTemplateName *string

	// The launch template version number, $Latest, or $Default. You must specify a
	// value, otherwise the request fails. If the value is $Latest, Amazon EC2 uses the
	// latest version of the launch template. If the value is $Default, Amazon EC2 uses
	// the default version of the launch template.
	Version *string
	// contains filtered or unexported fields
}

The Amazon EC2 launch template that can be used by an EC2 Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both. For information about launch templates, see Launch an instance from a launch template (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the Amazon EC2 User Guide.

type FleetOnDemandAllocationStrategy

type FleetOnDemandAllocationStrategy string
const (
	FleetOnDemandAllocationStrategyLowestPrice FleetOnDemandAllocationStrategy = "lowest-price"
	FleetOnDemandAllocationStrategyPrioritized FleetOnDemandAllocationStrategy = "prioritized"
)

Enum values for FleetOnDemandAllocationStrategy

func (FleetOnDemandAllocationStrategy) Values added in v0.29.0

Values returns all known values for FleetOnDemandAllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetReplacementStrategy added in v0.30.0

type FleetReplacementStrategy string
const (
	FleetReplacementStrategyLaunch                FleetReplacementStrategy = "launch"
	FleetReplacementStrategyLaunchBeforeTerminate FleetReplacementStrategy = "launch-before-terminate"
)

Enum values for FleetReplacementStrategy

func (FleetReplacementStrategy) Values added in v0.30.0

Values returns all known values for FleetReplacementStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetSpotCapacityRebalance added in v0.30.0

type FleetSpotCapacityRebalance struct {

	// The replacement strategy to use. Only available for fleets of type maintain.
	// launch - EC2 Fleet launches a new replacement Spot Instance when a rebalance
	// notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet
	// does not terminate the instances that receive a rebalance notification. You can
	// terminate the old instances, or you can leave them running. You are charged for
	// all instances while they are running. launch-before-terminate - EC2 Fleet
	// launches a new replacement Spot Instance when a rebalance notification is
	// emitted for an existing Spot Instance in the fleet, and then, after a delay that
	// you specify (in TerminationDelay), terminates the instances that received a
	// rebalance notification.
	ReplacementStrategy FleetReplacementStrategy

	// The amount of time (in seconds) that Amazon EC2 waits before terminating the old
	// Spot Instance after launching a new replacement Spot Instance. Required when
	// ReplacementStrategy is set to launch-before-terminate. Not valid when
	// ReplacementStrategy is set to launch. Valid values: Minimum value of 120
	// seconds. Maximum value of 7200 seconds.
	TerminationDelay *int32
	// contains filtered or unexported fields
}

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted.

type FleetSpotCapacityRebalanceRequest added in v0.30.0

type FleetSpotCapacityRebalanceRequest struct {

	// The replacement strategy to use. Only available for fleets of type maintain.
	// launch - EC2 Fleet launches a replacement Spot Instance when a rebalance
	// notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet
	// does not terminate the instances that receive a rebalance notification. You can
	// terminate the old instances, or you can leave them running. You are charged for
	// all instances while they are running. launch-before-terminate - EC2 Fleet
	// launches a replacement Spot Instance when a rebalance notification is emitted
	// for an existing Spot Instance in the fleet, and then, after a delay that you
	// specify (in TerminationDelay), terminates the instances that received a
	// rebalance notification.
	ReplacementStrategy FleetReplacementStrategy

	// The amount of time (in seconds) that Amazon EC2 waits before terminating the old
	// Spot Instance after launching a new replacement Spot Instance. Required when
	// ReplacementStrategy is set to launch-before-terminate. Not valid when
	// ReplacementStrategy is set to launch. Valid values: Minimum value of 120
	// seconds. Maximum value of 7200 seconds.
	TerminationDelay *int32
	// contains filtered or unexported fields
}

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance notification signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-capacity-rebalance.html) in the Amazon EC2 User Guide.

type FleetSpotMaintenanceStrategies added in v0.30.0

type FleetSpotMaintenanceStrategies struct {

	// The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at
	// an elevated risk of being interrupted.
	CapacityRebalance *FleetSpotCapacityRebalance
	// contains filtered or unexported fields
}

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

type FleetSpotMaintenanceStrategiesRequest added in v0.30.0

type FleetSpotMaintenanceStrategiesRequest struct {

	// The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at
	// an elevated risk of being interrupted.
	CapacityRebalance *FleetSpotCapacityRebalanceRequest
	// contains filtered or unexported fields
}

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

type FleetStateCode

type FleetStateCode string
const (
	FleetStateCodeSubmitted                   FleetStateCode = "submitted"
	FleetStateCodeActive                      FleetStateCode = "active"
	FleetStateCodeDeleted                     FleetStateCode = "deleted"
	FleetStateCodeFailed                      FleetStateCode = "failed"
	FleetStateCodeDeletedRunning              FleetStateCode = "deleted_running"
	FleetStateCodeDeletedTerminatingInstances FleetStateCode = "deleted_terminating"
	FleetStateCodeModifying                   FleetStateCode = "modifying"
)

Enum values for FleetStateCode

func (FleetStateCode) Values added in v0.29.0

func (FleetStateCode) Values() []FleetStateCode

Values returns all known values for FleetStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FleetType

type FleetType string
const (
	FleetTypeRequest  FleetType = "request"
	FleetTypeMaintain FleetType = "maintain"
	FleetTypeInstant  FleetType = "instant"
)

Enum values for FleetType

func (FleetType) Values added in v0.29.0

func (FleetType) Values() []FleetType

Values returns all known values for FleetType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FlowLog

type FlowLog struct {

	// The date and time the flow log was created.
	CreationTime *time.Time

	// The ARN of the IAM role that allows the service to publish flow logs across
	// accounts.
	DeliverCrossAccountRole *string

	// Information about the error that occurred. Rate limited indicates that
	// CloudWatch Logs throttling has been applied for one or more network interfaces,
	// or that you've reached the limit on the number of log groups that you can
	// create. Access error indicates that the IAM role associated with the flow log
	// does not have sufficient permissions to publish to CloudWatch Logs. Unknown
	// error indicates an internal error.
	DeliverLogsErrorMessage *string

	// The ARN of the IAM role allows the service to publish logs to CloudWatch Logs.
	DeliverLogsPermissionArn *string

	// The status of the logs delivery (SUCCESS | FAILED).
	DeliverLogsStatus *string

	// The destination options.
	DestinationOptions *DestinationOptionsResponse

	// The ID of the flow log.
	FlowLogId *string

	// The status of the flow log (ACTIVE).
	FlowLogStatus *string

	// The Amazon Resource Name (ARN) of the destination for the flow log data.
	LogDestination *string

	// The type of destination for the flow log data.
	LogDestinationType LogDestinationType

	// The format of the flow log record.
	LogFormat *string

	// The name of the flow log group.
	LogGroupName *string

	// The maximum interval of time, in seconds, during which a flow of packets is
	// captured and aggregated into a flow log record. When a network interface is
	// attached to a Nitro-based instance
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances),
	// the aggregation interval is always 60 seconds (1 minute) or less, regardless of
	// the specified value. Valid Values: 60 | 600
	MaxAggregationInterval *int32

	// The ID of the resource being monitored.
	ResourceId *string

	// The tags for the flow log.
	Tags []Tag

	// The type of traffic captured for the flow log.
	TrafficType TrafficType
	// contains filtered or unexported fields
}

Describes a flow log.

type FlowLogsResourceType

type FlowLogsResourceType string
const (
	FlowLogsResourceTypeVpc                      FlowLogsResourceType = "VPC"
	FlowLogsResourceTypeSubnet                   FlowLogsResourceType = "Subnet"
	FlowLogsResourceTypeNetworkInterface         FlowLogsResourceType = "NetworkInterface"
	FlowLogsResourceTypeTransitGateway           FlowLogsResourceType = "TransitGateway"
	FlowLogsResourceTypeTransitGatewayAttachment FlowLogsResourceType = "TransitGatewayAttachment"
)

Enum values for FlowLogsResourceType

func (FlowLogsResourceType) Values added in v0.29.0

Values returns all known values for FlowLogsResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FpgaDeviceInfo

type FpgaDeviceInfo struct {

	// The count of FPGA accelerators for the instance type.
	Count *int32

	// The manufacturer of the FPGA accelerator.
	Manufacturer *string

	// Describes the memory for the FPGA accelerator for the instance type.
	MemoryInfo *FpgaDeviceMemoryInfo

	// The name of the FPGA accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the FPGA accelerator for the instance type.

type FpgaDeviceMemoryInfo

type FpgaDeviceMemoryInfo struct {

	// The size of the memory available to the FPGA accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Describes the memory for the FPGA accelerator for the instance type.

type FpgaImage

type FpgaImage struct {

	// The date and time the AFI was created.
	CreateTime *time.Time

	// Indicates whether data retention support is enabled for the AFI.
	DataRetentionSupport *bool

	// The description of the AFI.
	Description *string

	// The global FPGA image identifier (AGFI ID).
	FpgaImageGlobalId *string

	// The FPGA image identifier (AFI ID).
	FpgaImageId *string

	// The name of the AFI.
	Name *string

	// The alias of the AFI owner. Possible values include self, amazon, and
	// aws-marketplace.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that owns the AFI.
	OwnerId *string

	// Information about the PCI bus.
	PciId *PciId

	// The product codes for the AFI.
	ProductCodes []ProductCode

	// Indicates whether the AFI is public.
	Public *bool

	// The version of the Amazon Web Services Shell that was used to create the
	// bitstream.
	ShellVersion *string

	// Information about the state of the AFI.
	State *FpgaImageState

	// Any tags assigned to the AFI.
	Tags []Tag

	// The time of the most recent update to the AFI.
	UpdateTime *time.Time
	// contains filtered or unexported fields
}

Describes an Amazon FPGA image (AFI).

type FpgaImageAttribute

type FpgaImageAttribute struct {

	// The description of the AFI.
	Description *string

	// The ID of the AFI.
	FpgaImageId *string

	// The load permissions.
	LoadPermissions []LoadPermission

	// The name of the AFI.
	Name *string

	// The product codes.
	ProductCodes []ProductCode
	// contains filtered or unexported fields
}

Describes an Amazon FPGA image (AFI) attribute.

type FpgaImageAttributeName

type FpgaImageAttributeName string
const (
	FpgaImageAttributeNameDescription    FpgaImageAttributeName = "description"
	FpgaImageAttributeNameName           FpgaImageAttributeName = "name"
	FpgaImageAttributeNameLoadPermission FpgaImageAttributeName = "loadPermission"
	FpgaImageAttributeNameProductCodes   FpgaImageAttributeName = "productCodes"
)

Enum values for FpgaImageAttributeName

func (FpgaImageAttributeName) Values added in v0.29.0

Values returns all known values for FpgaImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FpgaImageState

type FpgaImageState struct {

	// The state. The following are the possible values:
	//
	// * pending - AFI bitstream
	// generation is in progress.
	//
	// * available - The AFI is available for use.
	//
	// *
	// failed - AFI bitstream generation failed.
	//
	// * unavailable - The AFI is no longer
	// available for use.
	Code FpgaImageStateCode

	// If the state is failed, this is the error message.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).

type FpgaImageStateCode

type FpgaImageStateCode string
const (
	FpgaImageStateCodePending     FpgaImageStateCode = "pending"
	FpgaImageStateCodeFailed      FpgaImageStateCode = "failed"
	FpgaImageStateCodeAvailable   FpgaImageStateCode = "available"
	FpgaImageStateCodeUnavailable FpgaImageStateCode = "unavailable"
)

Enum values for FpgaImageStateCode

func (FpgaImageStateCode) Values added in v0.29.0

Values returns all known values for FpgaImageStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type FpgaInfo

type FpgaInfo struct {

	// Describes the FPGAs for the instance type.
	Fpgas []FpgaDeviceInfo

	// The total memory of all FPGA accelerators for the instance type.
	TotalFpgaMemoryInMiB *int32
	// contains filtered or unexported fields
}

Describes the FPGAs for the instance type.

type GatewayAssociationState added in v1.22.0

type GatewayAssociationState string
const (
	GatewayAssociationStateAssociated     GatewayAssociationState = "associated"
	GatewayAssociationStateNotAssociated  GatewayAssociationState = "not-associated"
	GatewayAssociationStateAssociating    GatewayAssociationState = "associating"
	GatewayAssociationStateDisassociating GatewayAssociationState = "disassociating"
)

Enum values for GatewayAssociationState

func (GatewayAssociationState) Values added in v1.22.0

Values returns all known values for GatewayAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type GatewayType

type GatewayType string
const (
	GatewayTypeIpsec1 GatewayType = "ipsec.1"
)

Enum values for GatewayType

func (GatewayType) Values added in v0.29.0

func (GatewayType) Values() []GatewayType

Values returns all known values for GatewayType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type GpuDeviceInfo

type GpuDeviceInfo struct {

	// The number of GPUs for the instance type.
	Count *int32

	// The manufacturer of the GPU accelerator.
	Manufacturer *string

	// Describes the memory available to the GPU accelerator.
	MemoryInfo *GpuDeviceMemoryInfo

	// The name of the GPU accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the GPU accelerators for the instance type.

type GpuDeviceMemoryInfo

type GpuDeviceMemoryInfo struct {

	// The size of the memory available to the GPU accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Describes the memory available to the GPU accelerator.

type GpuInfo

type GpuInfo struct {

	// Describes the GPU accelerators for the instance type.
	Gpus []GpuDeviceInfo

	// The total size of the memory for the GPU accelerators for the instance type, in
	// MiB.
	TotalGpuMemoryInMiB *int32
	// contains filtered or unexported fields
}

Describes the GPU accelerators for the instance type.

type GroupIdentifier

type GroupIdentifier struct {

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string
	// contains filtered or unexported fields
}

Describes a security group.

type HibernationOptions

type HibernationOptions struct {

	// If this parameter is set to true, your instance is enabled for hibernation;
	// otherwise, it is not enabled for hibernation.
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether your instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html#hibernating-prerequisites). For more information, see Hibernate your instance (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html) in the Amazon EC2 User Guide.

type HibernationOptionsRequest

type HibernationOptionsRequest struct {

	// If you set this parameter to true, your instance is enabled for hibernation.
	// Default: false
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether your instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html#hibernating-prerequisites). For more information, see Hibernate your instance (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html) in the Amazon EC2 User Guide.

type HistoryRecord

type HistoryRecord struct {

	// Information about the event.
	EventInformation *EventInformation

	// The event type.
	//
	// * error - An error with the Spot Fleet request.
	//
	// *
	// fleetRequestChange - A change in the status or configuration of the Spot Fleet
	// request.
	//
	// * instanceChange - An instance was launched or terminated.
	//
	// *
	// Information - An informational event.
	EventType EventType

	// The date and time of the event, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	Timestamp *time.Time
	// contains filtered or unexported fields
}

Describes an event in the history of the Spot Fleet request.

type HistoryRecordEntry

type HistoryRecordEntry struct {

	// Information about the event.
	EventInformation *EventInformation

	// The event type.
	EventType FleetEventType

	// The date and time of the event, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	Timestamp *time.Time
	// contains filtered or unexported fields
}

Describes an event in the history of an EC2 Fleet.

type Host

type Host struct {

	// The time that the Dedicated Host was allocated.
	AllocationTime *time.Time

	// Indicates whether the Dedicated Host supports multiple instance types of the
	// same instance family. If the value is on, the Dedicated Host supports multiple
	// instance types in the instance family. If the value is off, the Dedicated Host
	// supports a single instance type only.
	AllowsMultipleInstanceTypes AllowsMultipleInstanceTypes

	// Whether auto-placement is on or off.
	AutoPlacement AutoPlacement

	// The Availability Zone of the Dedicated Host.
	AvailabilityZone *string

	// The ID of the Availability Zone in which the Dedicated Host is allocated.
	AvailabilityZoneId *string

	// Information about the instances running on the Dedicated Host.
	AvailableCapacity *AvailableCapacity

	// Unique, case-sensitive identifier that you provide to ensure the idempotency of
	// the request. For more information, see Ensuring Idempotency
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
	ClientToken *string

	// The ID of the Dedicated Host.
	HostId *string

	// The hardware specifications of the Dedicated Host.
	HostProperties *HostProperties

	// Indicates whether host recovery is enabled or disabled for the Dedicated Host.
	HostRecovery HostRecovery

	// The reservation ID of the Dedicated Host. This returns a null response if the
	// Dedicated Host doesn't have an associated reservation.
	HostReservationId *string

	// The IDs and instance type that are currently running on the Dedicated Host.
	Instances []HostInstance

	// Indicates whether the Dedicated Host is in a host resource group. If
	// memberOfServiceLinkedResourceGroup is true, the host is in a host resource
	// group; otherwise, it is not.
	MemberOfServiceLinkedResourceGroup *bool

	// The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on which the
	// Dedicated Host is allocated.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the Dedicated Host.
	OwnerId *string

	// The time that the Dedicated Host was released.
	ReleaseTime *time.Time

	// The Dedicated Host's state.
	State AllocationState

	// Any tags assigned to the Dedicated Host.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes the properties of the Dedicated Host.

type HostInstance

type HostInstance struct {

	// The ID of instance that is running on the Dedicated Host.
	InstanceId *string

	// The instance type (for example, m3.medium) of the running instance.
	InstanceType *string

	// The ID of the Amazon Web Services account that owns the instance.
	OwnerId *string
	// contains filtered or unexported fields
}

Describes an instance running on a Dedicated Host.

type HostOffering

type HostOffering struct {

	// The currency of the offering.
	CurrencyCode CurrencyCodeValues

	// The duration of the offering (in seconds).
	Duration *int32

	// The hourly price of the offering.
	HourlyPrice *string

	// The instance family of the offering.
	InstanceFamily *string

	// The ID of the offering.
	OfferingId *string

	// The available payment option.
	PaymentOption PaymentOption

	// The upfront price of the offering. Does not apply to No Upfront offerings.
	UpfrontPrice *string
	// contains filtered or unexported fields
}

Details about the Dedicated Host Reservation offering.

type HostProperties

type HostProperties struct {

	// The number of cores on the Dedicated Host.
	Cores *int32

	// The instance family supported by the Dedicated Host. For example, m5.
	InstanceFamily *string

	// The instance type supported by the Dedicated Host. For example, m5.large. If the
	// host supports multiple instance types, no instanceType is returned.
	InstanceType *string

	// The number of sockets on the Dedicated Host.
	Sockets *int32

	// The total number of vCPUs on the Dedicated Host.
	TotalVCpus *int32
	// contains filtered or unexported fields
}

Describes the properties of a Dedicated Host.

type HostRecovery

type HostRecovery string
const (
	HostRecoveryOn  HostRecovery = "on"
	HostRecoveryOff HostRecovery = "off"
)

Enum values for HostRecovery

func (HostRecovery) Values added in v0.29.0

func (HostRecovery) Values() []HostRecovery

Values returns all known values for HostRecovery. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type HostReservation

type HostReservation struct {

	// The number of Dedicated Hosts the reservation is associated with.
	Count *int32

	// The currency in which the upfrontPrice and hourlyPrice amounts are specified. At
	// this time, the only supported currency is USD.
	CurrencyCode CurrencyCodeValues

	// The length of the reservation's term, specified in seconds. Can be 31536000 (1
	// year) | 94608000 (3 years).
	Duration *int32

	// The date and time that the reservation ends.
	End *time.Time

	// The IDs of the Dedicated Hosts associated with the reservation.
	HostIdSet []string

	// The ID of the reservation that specifies the associated Dedicated Hosts.
	HostReservationId *string

	// The hourly price of the reservation.
	HourlyPrice *string

	// The instance family of the Dedicated Host Reservation. The instance family on
	// the Dedicated Host must be the same in order for it to benefit from the
	// reservation.
	InstanceFamily *string

	// The ID of the reservation. This remains the same regardless of which Dedicated
	// Hosts are associated with it.
	OfferingId *string

	// The payment option selected for this reservation.
	PaymentOption PaymentOption

	// The date and time that the reservation started.
	Start *time.Time

	// The state of the reservation.
	State ReservationState

	// Any tags assigned to the Dedicated Host Reservation.
	Tags []Tag

	// The upfront price of the reservation.
	UpfrontPrice *string
	// contains filtered or unexported fields
}

Details about the Dedicated Host Reservation and associated Dedicated Hosts.

type HostTenancy

type HostTenancy string
const (
	HostTenancyDedicated HostTenancy = "dedicated"
	HostTenancyHost      HostTenancy = "host"
)

Enum values for HostTenancy

func (HostTenancy) Values added in v0.29.0

func (HostTenancy) Values() []HostTenancy

Values returns all known values for HostTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type HostnameType added in v1.24.0

type HostnameType string
const (
	HostnameTypeIpName       HostnameType = "ip-name"
	HostnameTypeResourceName HostnameType = "resource-name"
)

Enum values for HostnameType

func (HostnameType) Values added in v1.24.0

func (HostnameType) Values() []HostnameType

Values returns all known values for HostnameType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type HttpTokensState

type HttpTokensState string
const (
	HttpTokensStateOptional HttpTokensState = "optional"
	HttpTokensStateRequired HttpTokensState = "required"
)

Enum values for HttpTokensState

func (HttpTokensState) Values added in v0.29.0

func (HttpTokensState) Values() []HttpTokensState

Values returns all known values for HttpTokensState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type HypervisorType

type HypervisorType string
const (
	HypervisorTypeOvm HypervisorType = "ovm"
	HypervisorTypeXen HypervisorType = "xen"
)

Enum values for HypervisorType

func (HypervisorType) Values added in v0.29.0

func (HypervisorType) Values() []HypervisorType

Values returns all known values for HypervisorType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IKEVersionsListValue

type IKEVersionsListValue struct {

	// The IKE version.
	Value *string
	// contains filtered or unexported fields
}

The internet key exchange (IKE) version permitted for the VPN tunnel.

type IKEVersionsRequestListValue

type IKEVersionsRequestListValue struct {

	// The IKE version.
	Value *string
	// contains filtered or unexported fields
}

The IKE version that is permitted for the VPN tunnel.

type IamInstanceProfile

type IamInstanceProfile struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The ID of the instance profile.
	Id *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile.

type IamInstanceProfileAssociation

type IamInstanceProfileAssociation struct {

	// The ID of the association.
	AssociationId *string

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfile

	// The ID of the instance.
	InstanceId *string

	// The state of the association.
	State IamInstanceProfileAssociationState

	// The time the IAM instance profile was associated with the instance.
	Timestamp *time.Time
	// contains filtered or unexported fields
}

Describes an association between an IAM instance profile and an instance.

type IamInstanceProfileAssociationState

type IamInstanceProfileAssociationState string
const (
	IamInstanceProfileAssociationStateAssociating    IamInstanceProfileAssociationState = "associating"
	IamInstanceProfileAssociationStateAssociated     IamInstanceProfileAssociationState = "associated"
	IamInstanceProfileAssociationStateDisassociating IamInstanceProfileAssociationState = "disassociating"
	IamInstanceProfileAssociationStateDisassociated  IamInstanceProfileAssociationState = "disassociated"
)

Enum values for IamInstanceProfileAssociationState

func (IamInstanceProfileAssociationState) Values added in v0.29.0

Values returns all known values for IamInstanceProfileAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IamInstanceProfileSpecification

type IamInstanceProfileSpecification struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The name of the instance profile.
	Name *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile.

type IcmpTypeCode

type IcmpTypeCode struct {

	// The ICMP code. A value of -1 means all codes for the specified ICMP type.
	Code *int32

	// The ICMP type. A value of -1 means all types.
	Type *int32
	// contains filtered or unexported fields
}

Describes the ICMP type and code.

type IdFormat

type IdFormat struct {

	// The date in UTC at which you are permanently switched over to using longer IDs.
	// If a deadline is not yet available for this resource type, this field is not
	// returned.
	Deadline *time.Time

	// The type of resource.
	Resource *string

	// Indicates whether longer IDs (17-character IDs) are enabled for the resource.
	UseLongIds *bool
	// contains filtered or unexported fields
}

Describes the ID format for a resource.

type Igmpv2SupportValue added in v0.31.0

type Igmpv2SupportValue string
const (
	Igmpv2SupportValueEnable  Igmpv2SupportValue = "enable"
	Igmpv2SupportValueDisable Igmpv2SupportValue = "disable"
)

Enum values for Igmpv2SupportValue

func (Igmpv2SupportValue) Values added in v0.31.0

Values returns all known values for Igmpv2SupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Image

type Image struct {

	// The architecture of the image.
	Architecture ArchitectureValues

	// Any block device mapping entries.
	BlockDeviceMappings []BlockDeviceMapping

	// The boot mode of the image. For more information, see Boot modes
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	BootMode BootModeValues

	// The date and time the image was created.
	CreationDate *string

	// The date and time to deprecate the AMI, in UTC, in the following format:
	// YYYY-MM-DDTHH:MM:SSZ. If you specified a value for seconds, Amazon EC2 rounds
	// the seconds to the nearest minute.
	DeprecationTime *string

	// The description of the AMI that was provided during image creation.
	Description *string

	// Specifies whether enhanced networking with ENA is enabled.
	EnaSupport *bool

	// The hypervisor type of the image.
	Hypervisor HypervisorType

	// The ID of the AMI.
	ImageId *string

	// The location of the AMI.
	ImageLocation *string

	// The Amazon Web Services account alias (for example, amazon, self) or the Amazon
	// Web Services account ID of the AMI owner.
	ImageOwnerAlias *string

	// The type of image.
	ImageType ImageTypeValues

	// If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched
	// from this AMI will have HttpTokens automatically set to required so that, by
	// default, the instance requires that IMDSv2 is used when requesting instance
	// metadata. In addition, HttpPutResponseHopLimit is set to 2. For more
	// information, see Configure the AMI
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration)
	// in the Amazon Elastic Compute Cloud User Guide.
	ImdsSupport ImdsSupportValues

	// The kernel associated with the image, if any. Only applicable for machine
	// images.
	KernelId *string

	// The name of the AMI that was provided during image creation.
	Name *string

	// The ID of the Amazon Web Services account that owns the image.
	OwnerId *string

	// This value is set to windows for Windows AMIs; otherwise, it is blank.
	Platform PlatformValues

	// The platform details associated with the billing code of the AMI. For more
	// information, see Understanding AMI billing
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-billing-info.html) in
	// the Amazon Elastic Compute Cloud User Guide.
	PlatformDetails *string

	// Any product codes associated with the AMI.
	ProductCodes []ProductCode

	// Indicates whether the image has public launch permissions. The value is true if
	// this image has public launch permissions or false if it has only implicit and
	// explicit launch permissions.
	Public *bool

	// The RAM disk associated with the image, if any. Only applicable for machine
	// images.
	RamdiskId *string

	// The device name of the root device volume (for example, /dev/sda1).
	RootDeviceName *string

	// The type of root device used by the AMI. The AMI can use an Amazon EBS volume or
	// an instance store volume.
	RootDeviceType DeviceType

	// Specifies whether enhanced networking with the Intel 82599 Virtual Function
	// interface is enabled.
	SriovNetSupport *string

	// The current state of the AMI. If the state is available, the image is
	// successfully registered and can be used to launch an instance.
	State ImageState

	// The reason for the state change.
	StateReason *StateReason

	// Any tags assigned to the image.
	Tags []Tag

	// If the image is configured for NitroTPM support, the value is v2.0. For more
	// information, see NitroTPM
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	TpmSupport TpmSupportValues

	// The operation of the Amazon EC2 instance and the billing code that is associated
	// with the AMI. usageOperation corresponds to the lineitem/Operation
	// (https://docs.aws.amazon.com/cur/latest/userguide/Lineitem-columns.html#Lineitem-details-O-Operation)
	// column on your Amazon Web Services Cost and Usage Report and in the Amazon Web
	// Services Price List API
	// (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html).
	// You can view these fields on the Instances or AMIs pages in the Amazon EC2
	// console, or in the responses that are returned by the DescribeImages
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)
	// command in the Amazon EC2 API, or the describe-images
	// (https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html)
	// command in the CLI.
	UsageOperation *string

	// The type of virtualization of the AMI.
	VirtualizationType VirtualizationType
	// contains filtered or unexported fields
}

Describes an image.

type ImageAttributeName

type ImageAttributeName string
const (
	ImageAttributeNameDescription        ImageAttributeName = "description"
	ImageAttributeNameKernel             ImageAttributeName = "kernel"
	ImageAttributeNameRamdisk            ImageAttributeName = "ramdisk"
	ImageAttributeNameLaunchPermission   ImageAttributeName = "launchPermission"
	ImageAttributeNameProductCodes       ImageAttributeName = "productCodes"
	ImageAttributeNameBlockDeviceMapping ImageAttributeName = "blockDeviceMapping"
	ImageAttributeNameSriovNetSupport    ImageAttributeName = "sriovNetSupport"
	ImageAttributeNameBootMode           ImageAttributeName = "bootMode"
	ImageAttributeNameTpmSupport         ImageAttributeName = "tpmSupport"
	ImageAttributeNameUefiData           ImageAttributeName = "uefiData"
	ImageAttributeNameLastLaunchedTime   ImageAttributeName = "lastLaunchedTime"
	ImageAttributeNameImdsSupport        ImageAttributeName = "imdsSupport"
)

Enum values for ImageAttributeName

func (ImageAttributeName) Values added in v0.29.0

Values returns all known values for ImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ImageDiskContainer

type ImageDiskContainer struct {

	// The description of the disk image.
	Description *string

	// The block device mapping for the disk.
	DeviceName *string

	// The format of the disk image being imported. Valid values: OVA | VHD | VHDX |
	// VMDK | RAW
	Format *string

	// The ID of the EBS snapshot to be used for importing the snapshot.
	SnapshotId *string

	// The URL to the Amazon S3-based disk image being imported. The URL can either be
	// a https URL (https://..) or an Amazon S3 URL (s3://..)
	Url *string

	// The S3 bucket for the disk image.
	UserBucket *UserBucket
	// contains filtered or unexported fields
}

Describes the disk container object for an import image task.

type ImageRecycleBinInfo added in v1.30.0

type ImageRecycleBinInfo struct {

	// The description of the AMI.
	Description *string

	// The ID of the AMI.
	ImageId *string

	// The name of the AMI.
	Name *string

	// The date and time when the AMI entered the Recycle Bin.
	RecycleBinEnterTime *time.Time

	// The date and time when the AMI is to be permanently deleted from the Recycle
	// Bin.
	RecycleBinExitTime *time.Time
	// contains filtered or unexported fields
}

Information about an AMI that is currently in the Recycle Bin.

type ImageState

type ImageState string
const (
	ImageStatePending      ImageState = "pending"
	ImageStateAvailable    ImageState = "available"
	ImageStateInvalid      ImageState = "invalid"
	ImageStateDeregistered ImageState = "deregistered"
	ImageStateTransient    ImageState = "transient"
	ImageStateFailed       ImageState = "failed"
	ImageStateError        ImageState = "error"
)

Enum values for ImageState

func (ImageState) Values added in v0.29.0

func (ImageState) Values() []ImageState

Values returns all known values for ImageState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ImageTypeValues

type ImageTypeValues string
const (
	ImageTypeValuesMachine ImageTypeValues = "machine"
	ImageTypeValuesKernel  ImageTypeValues = "kernel"
	ImageTypeValuesRamdisk ImageTypeValues = "ramdisk"
)

Enum values for ImageTypeValues

func (ImageTypeValues) Values added in v0.29.0

func (ImageTypeValues) Values() []ImageTypeValues

Values returns all known values for ImageTypeValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ImdsSupportValues added in v1.62.0

type ImdsSupportValues string
const (
	ImdsSupportValuesV20 ImdsSupportValues = "v2.0"
)

Enum values for ImdsSupportValues

func (ImdsSupportValues) Values added in v1.62.0

Values returns all known values for ImdsSupportValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ImportImageLicenseConfigurationRequest

type ImportImageLicenseConfigurationRequest struct {

	// The ARN of a license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

The request information of license configurations.

type ImportImageLicenseConfigurationResponse

type ImportImageLicenseConfigurationResponse struct {

	// The ARN of a license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

The response information for license configurations.

type ImportImageTask

type ImportImageTask struct {

	// The architecture of the virtual machine. Valid values: i386 | x86_64 | arm64
	Architecture *string

	// The boot mode of the virtual machine.
	BootMode BootModeValues

	// A description of the import task.
	Description *string

	// Indicates whether the image is encrypted.
	Encrypted *bool

	// The target hypervisor for the import task. Valid values: xen
	Hypervisor *string

	// The ID of the Amazon Machine Image (AMI) of the imported virtual machine.
	ImageId *string

	// The ID of the import image task.
	ImportTaskId *string

	// The identifier for the KMS key that was used to create the encrypted image.
	KmsKeyId *string

	// The ARNs of the license configurations that are associated with the import image
	// task.
	LicenseSpecifications []ImportImageLicenseConfigurationResponse

	// The license type of the virtual machine.
	LicenseType *string

	// The description string for the import image task.
	Platform *string

	// The percentage of progress of the import image task.
	Progress *string

	// Information about the snapshots.
	SnapshotDetails []SnapshotDetail

	// A brief status for the import image task.
	Status *string

	// A descriptive status message for the import image task.
	StatusMessage *string

	// The tags for the import image task.
	Tags []Tag

	// The usage operation value.
	UsageOperation *string
	// contains filtered or unexported fields
}

Describes an import image task.

type ImportInstanceLaunchSpecification

type ImportInstanceLaunchSpecification struct {

	// Reserved.
	AdditionalInfo *string

	// The architecture of the instance.
	Architecture ArchitectureValues

	// The security group IDs.
	GroupIds []string

	// The security group names.
	GroupNames []string

	// Indicates whether an instance stops or terminates when you initiate shutdown
	// from the instance (using the operating system command for system shutdown).
	InstanceInitiatedShutdownBehavior ShutdownBehavior

	// The instance type. For more information about the instance types that you can
	// import, see Instance Types
	// (https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#vmimport-instance-types)
	// in the VM Import/Export User Guide.
	InstanceType InstanceType

	// Indicates whether monitoring is enabled.
	Monitoring *bool

	// The placement information for the instance.
	Placement *Placement

	// [EC2-VPC] An available IP address from the IP address range of the subnet.
	PrivateIpAddress *string

	// [EC2-VPC] The ID of the subnet in which to launch the instance.
	SubnetId *string

	// The Base64-encoded user data to make available to the instance.
	UserData *UserData
	// contains filtered or unexported fields
}

Describes the launch specification for VM import.

type ImportInstanceTaskDetails

type ImportInstanceTaskDetails struct {

	// A description of the task.
	Description *string

	// The ID of the instance.
	InstanceId *string

	// The instance operating system.
	Platform PlatformValues

	// The volumes.
	Volumes []ImportInstanceVolumeDetailItem
	// contains filtered or unexported fields
}

Describes an import instance task.

type ImportInstanceVolumeDetailItem

type ImportInstanceVolumeDetailItem struct {

	// The Availability Zone where the resulting instance will reside.
	AvailabilityZone *string

	// The number of bytes converted so far.
	BytesConverted *int64

	// A description of the task.
	Description *string

	// The image.
	Image *DiskImageDescription

	// The status of the import of this particular disk image.
	Status *string

	// The status information or errors related to the disk image.
	StatusMessage *string

	// The volume.
	Volume *DiskImageVolumeDescription
	// contains filtered or unexported fields
}

Describes an import volume task.

type ImportSnapshotTask

type ImportSnapshotTask struct {

	// A description of the import snapshot task.
	Description *string

	// The ID of the import snapshot task.
	ImportTaskId *string

	// Describes an import snapshot task.
	SnapshotTaskDetail *SnapshotTaskDetail

	// The tags for the import snapshot task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an import snapshot task.

type ImportVolumeTaskDetails

type ImportVolumeTaskDetails struct {

	// The Availability Zone where the resulting volume will reside.
	AvailabilityZone *string

	// The number of bytes converted so far.
	BytesConverted *int64

	// The description you provided when starting the import volume task.
	Description *string

	// The image.
	Image *DiskImageDescription

	// The volume.
	Volume *DiskImageVolumeDescription
	// contains filtered or unexported fields
}

Describes an import volume task.

type InferenceAcceleratorInfo

type InferenceAcceleratorInfo struct {

	// Describes the Inference accelerators for the instance type.
	Accelerators []InferenceDeviceInfo
	// contains filtered or unexported fields
}

Describes the Inference accelerators for the instance type.

type InferenceDeviceInfo

type InferenceDeviceInfo struct {

	// The number of Inference accelerators for the instance type.
	Count *int32

	// The manufacturer of the Inference accelerator.
	Manufacturer *string

	// The name of the Inference accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the Inference accelerators for the instance type.

type Instance

type Instance struct {

	// The AMI launch index, which can be used to find this instance in the launch
	// group.
	AmiLaunchIndex *int32

	// The architecture of the image.
	Architecture ArchitectureValues

	// Any block device mapping entries for the instance.
	BlockDeviceMappings []InstanceBlockDeviceMapping

	// The boot mode of the instance. For more information, see Boot modes
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
	// Amazon EC2 User Guide.
	BootMode BootModeValues

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// Information about the Capacity Reservation targeting option.
	CapacityReservationSpecification *CapacityReservationSpecificationResponse

	// The idempotency token you provided when you launched the instance, if
	// applicable.
	ClientToken *string

	// The CPU options for the instance.
	CpuOptions *CpuOptions

	// Indicates whether the instance is optimized for Amazon EBS I/O. This
	// optimization provides dedicated throughput to Amazon EBS and an optimized
	// configuration stack to provide optimal I/O performance. This optimization isn't
	// available with all instance types. Additional usage charges apply when using an
	// EBS Optimized instance.
	EbsOptimized *bool

	// The Elastic GPU associated with the instance.
	ElasticGpuAssociations []ElasticGpuAssociation

	// The elastic inference accelerator associated with the instance.
	ElasticInferenceAcceleratorAssociations []ElasticInferenceAcceleratorAssociation

	// Specifies whether enhanced networking with ENA is enabled.
	EnaSupport *bool

	// Indicates whether the instance is enabled for Amazon Web Services Nitro
	// Enclaves.
	EnclaveOptions *EnclaveOptions

	// Indicates whether the instance is enabled for hibernation.
	HibernationOptions *HibernationOptions

	// The hypervisor type of the instance. The value xen is used for both Xen and
	// Nitro hypervisors.
	Hypervisor HypervisorType

	// The IAM instance profile associated with the instance, if applicable.
	IamInstanceProfile *IamInstanceProfile

	// The ID of the AMI used to launch the instance.
	ImageId *string

	// The ID of the instance.
	InstanceId *string

	// Indicates whether this is a Spot Instance or a Scheduled Instance.
	InstanceLifecycle InstanceLifecycleType

	// The instance type.
	InstanceType InstanceType

	// The IPv6 address assigned to the instance.
	Ipv6Address *string

	// The kernel associated with this instance, if applicable.
	KernelId *string

	// The name of the key pair, if this instance was launched with an associated key
	// pair.
	KeyName *string

	// The time the instance was launched.
	LaunchTime *time.Time

	// The license configurations for the instance.
	Licenses []LicenseConfiguration

	// Provides information on the recovery and maintenance options of your instance.
	MaintenanceOptions *InstanceMaintenanceOptions

	// The metadata options for the instance.
	MetadataOptions *InstanceMetadataOptionsResponse

	// The monitoring for the instance.
	Monitoring *Monitoring

	// [EC2-VPC] The network interfaces for the instance.
	NetworkInterfaces []InstanceNetworkInterface

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The location where the instance launched, if applicable.
	Placement *Placement

	// The value is Windows for Windows instances; otherwise blank.
	Platform PlatformValues

	// The platform details value for the instance. For more information, see AMI
	// billing information fields
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html)
	// in the Amazon EC2 User Guide.
	PlatformDetails *string

	// (IPv4 only) The private DNS hostname name assigned to the instance. This DNS
	// hostname can only be used inside the Amazon EC2 network. This name is not
	// available until the instance enters the running state. [EC2-VPC] The
	// Amazon-provided DNS server resolves Amazon-provided private DNS hostnames if
	// you've enabled DNS resolution and DNS hostnames in your VPC. If you are not
	// using the Amazon-provided DNS server in your VPC, your custom domain name
	// servers must resolve the hostname as appropriate.
	PrivateDnsName *string

	// The options for the instance hostname.
	PrivateDnsNameOptions *PrivateDnsNameOptionsResponse

	// The private IPv4 address assigned to the instance.
	PrivateIpAddress *string

	// The product codes attached to this instance, if applicable.
	ProductCodes []ProductCode

	// (IPv4 only) The public DNS name assigned to the instance. This name is not
	// available until the instance enters the running state. For EC2-VPC, this name is
	// only available if you've enabled DNS hostnames for your VPC.
	PublicDnsName *string

	// The public IPv4 address, or the Carrier IP address assigned to the instance, if
	// applicable. A Carrier IP address only applies to an instance launched in a
	// subnet associated with a Wavelength Zone.
	PublicIpAddress *string

	// The RAM disk associated with this instance, if applicable.
	RamdiskId *string

	// The device name of the root device volume (for example, /dev/sda1).
	RootDeviceName *string

	// The root device type used by the AMI. The AMI can use an EBS volume or an
	// instance store volume.
	RootDeviceType DeviceType

	// The security groups for the instance.
	SecurityGroups []GroupIdentifier

	// Indicates whether source/destination checking is enabled.
	SourceDestCheck *bool

	// If the request is a Spot Instance request, the ID of the request.
	SpotInstanceRequestId *string

	// Specifies whether enhanced networking with the Intel 82599 Virtual Function
	// interface is enabled.
	SriovNetSupport *string

	// The current state of the instance.
	State *InstanceState

	// The reason for the most recent state transition.
	StateReason *StateReason

	// The reason for the most recent state transition. This might be an empty string.
	StateTransitionReason *string

	// [EC2-VPC] The ID of the subnet in which the instance is running.
	SubnetId *string

	// Any tags assigned to the instance.
	Tags []Tag

	// If the instance is configured for NitroTPM support, the value is v2.0. For more
	// information, see NitroTPM
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html) in the
	// Amazon EC2 User Guide.
	TpmSupport *string

	// The usage operation value for the instance. For more information, see AMI
	// billing information fields
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html)
	// in the Amazon EC2 User Guide.
	UsageOperation *string

	// The time that the usage operation was last updated.
	UsageOperationUpdateTime *time.Time

	// The virtualization type of the instance.
	VirtualizationType VirtualizationType

	// [EC2-VPC] The ID of the VPC in which the instance is running.
	VpcId *string
	// contains filtered or unexported fields
}

Describes an instance.

type InstanceAttributeName

type InstanceAttributeName string
const (
	InstanceAttributeNameInstanceType                      InstanceAttributeName = "instanceType"
	InstanceAttributeNameKernel                            InstanceAttributeName = "kernel"
	InstanceAttributeNameRamdisk                           InstanceAttributeName = "ramdisk"
	InstanceAttributeNameUserData                          InstanceAttributeName = "userData"
	InstanceAttributeNameDisableApiTermination             InstanceAttributeName = "disableApiTermination"
	InstanceAttributeNameInstanceInitiatedShutdownBehavior InstanceAttributeName = "instanceInitiatedShutdownBehavior"
	InstanceAttributeNameRootDeviceName                    InstanceAttributeName = "rootDeviceName"
	InstanceAttributeNameBlockDeviceMapping                InstanceAttributeName = "blockDeviceMapping"
	InstanceAttributeNameProductCodes                      InstanceAttributeName = "productCodes"
	InstanceAttributeNameSourceDestCheck                   InstanceAttributeName = "sourceDestCheck"
	InstanceAttributeNameGroupSet                          InstanceAttributeName = "groupSet"
	InstanceAttributeNameEbsOptimized                      InstanceAttributeName = "ebsOptimized"
	InstanceAttributeNameSriovNetSupport                   InstanceAttributeName = "sriovNetSupport"
	InstanceAttributeNameEnaSupport                        InstanceAttributeName = "enaSupport"
	InstanceAttributeNameEnclaveOptions                    InstanceAttributeName = "enclaveOptions"
	InstanceAttributeNameDisableApiStop                    InstanceAttributeName = "disableApiStop"
)

Enum values for InstanceAttributeName

func (InstanceAttributeName) Values added in v0.29.0

Values returns all known values for InstanceAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceAutoRecoveryState added in v1.34.0

type InstanceAutoRecoveryState string
const (
	InstanceAutoRecoveryStateDisabled InstanceAutoRecoveryState = "disabled"
	InstanceAutoRecoveryStateDefault  InstanceAutoRecoveryState = "default"
)

Enum values for InstanceAutoRecoveryState

func (InstanceAutoRecoveryState) Values added in v1.34.0

Values returns all known values for InstanceAutoRecoveryState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceBlockDeviceMapping

type InstanceBlockDeviceMapping struct {

	// The device name (for example, /dev/sdh or xvdh).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *EbsInstanceBlockDevice
	// contains filtered or unexported fields
}

Describes a block device mapping.

type InstanceBlockDeviceMappingSpecification

type InstanceBlockDeviceMappingSpecification struct {

	// The device name (for example, /dev/sdh or xvdh).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *EbsInstanceBlockDeviceSpecification

	// suppress the specified device included in the block device mapping.
	NoDevice *string

	// The virtual device name.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping entry.

type InstanceCapacity

type InstanceCapacity struct {

	// The number of instances that can be launched onto the Dedicated Host based on
	// the host's available capacity.
	AvailableCapacity *int32

	// The instance type supported by the Dedicated Host.
	InstanceType *string

	// The total number of instances that can be launched onto the Dedicated Host if
	// there are no instances running on it.
	TotalCapacity *int32
	// contains filtered or unexported fields
}

Information about the number of instances that can be launched onto the Dedicated Host.

type InstanceCount

type InstanceCount struct {

	// The number of listed Reserved Instances in the state specified by the state.
	InstanceCount *int32

	// The states of the listed Reserved Instances.
	State ListingState
	// contains filtered or unexported fields
}

Describes a Reserved Instance listing state.

type InstanceCreditSpecification

type InstanceCreditSpecification struct {

	// The credit option for CPU usage of the instance. Valid values: standard |
	// unlimited
	CpuCredits *string

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the credit option for CPU usage of a burstable performance instance.

type InstanceCreditSpecificationRequest

type InstanceCreditSpecificationRequest struct {

	// The credit option for CPU usage of the instance. Valid values: standard |
	// unlimited T3 instances with host tenancy do not support the unlimited CPU credit
	// option.
	CpuCredits *string

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the credit option for CPU usage of a burstable performance instance.

type InstanceEventWindow added in v1.13.0

type InstanceEventWindow struct {

	// One or more targets associated with the event window.
	AssociationTarget *InstanceEventWindowAssociationTarget

	// The cron expression defined for the event window.
	CronExpression *string

	// The ID of the event window.
	InstanceEventWindowId *string

	// The name of the event window.
	Name *string

	// The current state of the event window.
	State InstanceEventWindowState

	// The instance tags associated with the event window.
	Tags []Tag

	// One or more time ranges defined for the event window.
	TimeRanges []InstanceEventWindowTimeRange
	// contains filtered or unexported fields
}

The event window.

type InstanceEventWindowAssociationRequest added in v1.13.0

type InstanceEventWindowAssociationRequest struct {

	// The IDs of the Dedicated Hosts to associate with the event window.
	DedicatedHostIds []string

	// The IDs of the instances to associate with the event window. If the instance is
	// on a Dedicated Host, you can't specify the Instance ID parameter; you must use
	// the Dedicated Host ID parameter.
	InstanceIds []string

	// The instance tags to associate with the event window. Any instances associated
	// with the tags will be associated with the event window.
	InstanceTags []Tag
	// contains filtered or unexported fields
}

One or more targets associated with the specified event window. Only one type of target (instance ID, instance tag, or Dedicated Host ID) can be associated with an event window.

type InstanceEventWindowAssociationTarget added in v1.13.0

type InstanceEventWindowAssociationTarget struct {

	// The IDs of the Dedicated Hosts associated with the event window.
	DedicatedHostIds []string

	// The IDs of the instances associated with the event window.
	InstanceIds []string

	// The instance tags associated with the event window. Any instances associated
	// with the tags will be associated with the event window.
	Tags []Tag
	// contains filtered or unexported fields
}

One or more targets associated with the event window.

type InstanceEventWindowDisassociationRequest added in v1.13.0

type InstanceEventWindowDisassociationRequest struct {

	// The IDs of the Dedicated Hosts to disassociate from the event window.
	DedicatedHostIds []string

	// The IDs of the instances to disassociate from the event window.
	InstanceIds []string

	// The instance tags to disassociate from the event window. Any instances
	// associated with the tags will be disassociated from the event window.
	InstanceTags []Tag
	// contains filtered or unexported fields
}

The targets to disassociate from the specified event window.

type InstanceEventWindowState added in v1.13.0

type InstanceEventWindowState string
const (
	InstanceEventWindowStateCreating InstanceEventWindowState = "creating"
	InstanceEventWindowStateDeleting InstanceEventWindowState = "deleting"
	InstanceEventWindowStateActive   InstanceEventWindowState = "active"
	InstanceEventWindowStateDeleted  InstanceEventWindowState = "deleted"
)

Enum values for InstanceEventWindowState

func (InstanceEventWindowState) Values added in v1.13.0

Values returns all known values for InstanceEventWindowState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceEventWindowStateChange added in v1.13.0

type InstanceEventWindowStateChange struct {

	// The ID of the event window.
	InstanceEventWindowId *string

	// The current state of the event window.
	State InstanceEventWindowState
	// contains filtered or unexported fields
}

The state of the event window.

type InstanceEventWindowTimeRange added in v1.13.0

type InstanceEventWindowTimeRange struct {

	// The hour when the time range ends.
	EndHour *int32

	// The day on which the time range ends.
	EndWeekDay WeekDay

	// The hour when the time range begins.
	StartHour *int32

	// The day on which the time range begins.
	StartWeekDay WeekDay
	// contains filtered or unexported fields
}

The start day and time and the end day and time of the time range, in UTC.

type InstanceEventWindowTimeRangeRequest added in v1.13.0

type InstanceEventWindowTimeRangeRequest struct {

	// The hour when the time range ends.
	EndHour *int32

	// The day on which the time range ends.
	EndWeekDay WeekDay

	// The hour when the time range begins.
	StartHour *int32

	// The day on which the time range begins.
	StartWeekDay WeekDay
	// contains filtered or unexported fields
}

The start day and time and the end day and time of the time range, in UTC.

type InstanceExportDetails

type InstanceExportDetails struct {

	// The ID of the resource being exported.
	InstanceId *string

	// The target virtualization environment.
	TargetEnvironment ExportEnvironment
	// contains filtered or unexported fields
}

Describes an instance to export.

type InstanceFamilyCreditSpecification

type InstanceFamilyCreditSpecification struct {

	// The default credit option for CPU usage of the instance family. Valid values are
	// standard and unlimited.
	CpuCredits *string

	// The instance family.
	InstanceFamily UnlimitedSupportedInstanceFamily
	// contains filtered or unexported fields
}

Describes the default credit option for CPU usage of a burstable performance instance family.

type InstanceGeneration added in v1.21.0

type InstanceGeneration string
const (
	InstanceGenerationCurrent  InstanceGeneration = "current"
	InstanceGenerationPrevious InstanceGeneration = "previous"
)

Enum values for InstanceGeneration

func (InstanceGeneration) Values added in v1.21.0

Values returns all known values for InstanceGeneration. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceHealthStatus

type InstanceHealthStatus string
const (
	InstanceHealthStatusHealthyStatus   InstanceHealthStatus = "healthy"
	InstanceHealthStatusUnhealthyStatus InstanceHealthStatus = "unhealthy"
)

Enum values for InstanceHealthStatus

func (InstanceHealthStatus) Values added in v0.29.0

Values returns all known values for InstanceHealthStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceInterruptionBehavior

type InstanceInterruptionBehavior string
const (
	InstanceInterruptionBehaviorHibernate InstanceInterruptionBehavior = "hibernate"
	InstanceInterruptionBehaviorStop      InstanceInterruptionBehavior = "stop"
	InstanceInterruptionBehaviorTerminate InstanceInterruptionBehavior = "terminate"
)

Enum values for InstanceInterruptionBehavior

func (InstanceInterruptionBehavior) Values added in v0.29.0

Values returns all known values for InstanceInterruptionBehavior. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceIpv4Prefix added in v1.13.0

type InstanceIpv4Prefix struct {

	// One or more IPv4 prefixes assigned to the network interface.
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Information about an IPv4 prefix.

type InstanceIpv6Address

type InstanceIpv6Address struct {

	// The IPv6 address.
	Ipv6Address *string
	// contains filtered or unexported fields
}

Describes an IPv6 address.

type InstanceIpv6AddressRequest

type InstanceIpv6AddressRequest struct {

	// The IPv6 address.
	Ipv6Address *string
	// contains filtered or unexported fields
}

Describes an IPv6 address.

type InstanceIpv6Prefix added in v1.13.0

type InstanceIpv6Prefix struct {

	// One or more IPv6 prefixes assigned to the network interface.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Information about an IPv6 prefix.

type InstanceLifecycle

type InstanceLifecycle string
const (
	InstanceLifecycleSpot     InstanceLifecycle = "spot"
	InstanceLifecycleOnDemand InstanceLifecycle = "on-demand"
)

Enum values for InstanceLifecycle

func (InstanceLifecycle) Values added in v0.29.0

Values returns all known values for InstanceLifecycle. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceLifecycleType

type InstanceLifecycleType string
const (
	InstanceLifecycleTypeSpot      InstanceLifecycleType = "spot"
	InstanceLifecycleTypeScheduled InstanceLifecycleType = "scheduled"
)

Enum values for InstanceLifecycleType

func (InstanceLifecycleType) Values added in v0.29.0

Values returns all known values for InstanceLifecycleType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMaintenanceOptions added in v1.34.0

type InstanceMaintenanceOptions struct {

	// Provides information on the current automatic recovery behavior of your
	// instance.
	AutoRecovery InstanceAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options for the instance.

type InstanceMaintenanceOptionsRequest added in v1.34.0

type InstanceMaintenanceOptionsRequest struct {

	// Disables the automatic recovery behavior of your instance or sets it to default.
	// For more information, see Simplified automatic recovery
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery).
	AutoRecovery InstanceAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options for the instance.

type InstanceMarketOptionsRequest

type InstanceMarketOptionsRequest struct {

	// The market type.
	MarketType MarketType

	// The options for Spot Instances.
	SpotOptions *SpotMarketOptions
	// contains filtered or unexported fields
}

Describes the market (purchasing) option for the instances.

type InstanceMatchCriteria

type InstanceMatchCriteria string
const (
	InstanceMatchCriteriaOpen     InstanceMatchCriteria = "open"
	InstanceMatchCriteriaTargeted InstanceMatchCriteria = "targeted"
)

Enum values for InstanceMatchCriteria

func (InstanceMatchCriteria) Values added in v0.29.0

Values returns all known values for InstanceMatchCriteria. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataEndpointState

type InstanceMetadataEndpointState string
const (
	InstanceMetadataEndpointStateDisabled InstanceMetadataEndpointState = "disabled"
	InstanceMetadataEndpointStateEnabled  InstanceMetadataEndpointState = "enabled"
)

Enum values for InstanceMetadataEndpointState

func (InstanceMetadataEndpointState) Values added in v0.29.0

Values returns all known values for InstanceMetadataEndpointState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataOptionsRequest

type InstanceMetadataOptionsRequest struct {

	// Enables or disables the HTTP metadata endpoint on your instances. If you specify
	// a value of disabled, you cannot access your instance metadata. Default: enabled
	HttpEndpoint InstanceMetadataEndpointState

	// Enables or disables the IPv6 endpoint for the instance metadata service.
	HttpProtocolIpv6 InstanceMetadataProtocolState

	// The desired HTTP PUT response hop limit for instance metadata requests. The
	// larger the number, the further instance metadata requests can travel. Default: 1
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// The state of token usage for your instance metadata requests. If the state is
	// optional, you can choose to retrieve instance metadata with or without a session
	// token on your request. If you retrieve the IAM role credentials without a token,
	// the version 1.0 role credentials are returned. If you retrieve the IAM role
	// credentials using a valid session token, the version 2.0 role credentials are
	// returned. If the state is required, you must send a session token with any
	// instance metadata retrieval requests. In this state, retrieving the IAM role
	// credentials always returns the version 2.0 credentials; the version 1.0
	// credentials are not available. Default: optional
	HttpTokens HttpTokensState

	// Set to enabled to allow access to instance tags from the instance metadata. Set
	// to disabled to turn off access to instance tags from the instance metadata. For
	// more information, see Work with instance tags using the instance metadata
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS).
	// Default: disabled
	InstanceMetadataTags InstanceMetadataTagsState
	// contains filtered or unexported fields
}

The metadata options for the instance.

type InstanceMetadataOptionsResponse

type InstanceMetadataOptionsResponse struct {

	// Indicates whether the HTTP metadata endpoint on your instances is enabled or
	// disabled. If the value is disabled, you cannot access your instance metadata.
	HttpEndpoint InstanceMetadataEndpointState

	// Indicates whether the IPv6 endpoint for the instance metadata service is enabled
	// or disabled.
	HttpProtocolIpv6 InstanceMetadataProtocolState

	// The desired HTTP PUT response hop limit for instance metadata requests. The
	// larger the number, the further instance metadata requests can travel. Default: 1
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// The state of token usage for your instance metadata requests. If the state is
	// optional, you can choose to retrieve instance metadata with or without a session
	// token on your request. If you retrieve the IAM role credentials without a token,
	// the version 1.0 role credentials are returned. If you retrieve the IAM role
	// credentials using a valid session token, the version 2.0 role credentials are
	// returned. If the state is required, you must send a session token with any
	// instance metadata retrieval requests. In this state, retrieving the IAM role
	// credentials always returns the version 2.0 credentials; the version 1.0
	// credentials are not available. Default: optional
	HttpTokens HttpTokensState

	// Indicates whether access to instance tags from the instance metadata is enabled
	// or disabled. For more information, see Work with instance tags using the
	// instance metadata
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS).
	InstanceMetadataTags InstanceMetadataTagsState

	// The state of the metadata option changes. pending - The metadata options are
	// being updated and the instance is not ready to process metadata traffic with the
	// new selection. applied - The metadata options have been successfully applied on
	// the instance.
	State InstanceMetadataOptionsState
	// contains filtered or unexported fields
}

The metadata options for the instance.

type InstanceMetadataOptionsState

type InstanceMetadataOptionsState string
const (
	InstanceMetadataOptionsStatePending InstanceMetadataOptionsState = "pending"
	InstanceMetadataOptionsStateApplied InstanceMetadataOptionsState = "applied"
)

Enum values for InstanceMetadataOptionsState

func (InstanceMetadataOptionsState) Values added in v0.29.0

Values returns all known values for InstanceMetadataOptionsState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataProtocolState added in v1.15.0

type InstanceMetadataProtocolState string
const (
	InstanceMetadataProtocolStateDisabled InstanceMetadataProtocolState = "disabled"
	InstanceMetadataProtocolStateEnabled  InstanceMetadataProtocolState = "enabled"
)

Enum values for InstanceMetadataProtocolState

func (InstanceMetadataProtocolState) Values added in v1.15.0

Values returns all known values for InstanceMetadataProtocolState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataTagsState added in v1.28.0

type InstanceMetadataTagsState string
const (
	InstanceMetadataTagsStateDisabled InstanceMetadataTagsState = "disabled"
	InstanceMetadataTagsStateEnabled  InstanceMetadataTagsState = "enabled"
)

Enum values for InstanceMetadataTagsState

func (InstanceMetadataTagsState) Values added in v1.28.0

Values returns all known values for InstanceMetadataTagsState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMonitoring

type InstanceMonitoring struct {

	// The ID of the instance.
	InstanceId *string

	// The monitoring for the instance.
	Monitoring *Monitoring
	// contains filtered or unexported fields
}

Describes the monitoring of an instance.

type InstanceNetworkInterface

type InstanceNetworkInterface struct {

	// The association information for an Elastic IPv4 associated with the network
	// interface.
	Association *InstanceNetworkInterfaceAssociation

	// The network interface attachment.
	Attachment *InstanceNetworkInterfaceAttachment

	// The description.
	Description *string

	// The security groups.
	Groups []GroupIdentifier

	// The type of network interface. Valid values: interface | efa | trunk
	InterfaceType *string

	// The IPv4 delegated prefixes that are assigned to the network interface.
	Ipv4Prefixes []InstanceIpv4Prefix

	// The IPv6 addresses associated with the network interface.
	Ipv6Addresses []InstanceIpv6Address

	// The IPv6 delegated prefixes that are assigned to the network interface.
	Ipv6Prefixes []InstanceIpv6Prefix

	// The MAC address.
	MacAddress *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the Amazon Web Services account that created the network interface.
	OwnerId *string

	// The private DNS name.
	PrivateDnsName *string

	// The IPv4 address of the network interface within the subnet.
	PrivateIpAddress *string

	// The private IPv4 addresses associated with the network interface.
	PrivateIpAddresses []InstancePrivateIpAddress

	// Indicates whether source/destination checking is enabled.
	SourceDestCheck *bool

	// The status of the network interface.
	Status NetworkInterfaceStatus

	// The ID of the subnet.
	SubnetId *string

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type InstanceNetworkInterfaceAssociation

type InstanceNetworkInterfaceAssociation struct {

	// The carrier IP address associated with the network interface.
	CarrierIp *string

	// The customer-owned IP address associated with the network interface.
	CustomerOwnedIp *string

	// The ID of the owner of the Elastic IP address.
	IpOwnerId *string

	// The public DNS name.
	PublicDnsName *string

	// The public IP address or Elastic IP address bound to the network interface.
	PublicIp *string
	// contains filtered or unexported fields
}

Describes association information for an Elastic IP address (IPv4).

type InstanceNetworkInterfaceAttachment

type InstanceNetworkInterfaceAttachment struct {

	// The time stamp when the attachment initiated.
	AttachTime *time.Time

	// The ID of the network interface attachment.
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// The index of the device on the instance for the network interface attachment.
	DeviceIndex *int32

	// The index of the network card.
	NetworkCardIndex *int32

	// The attachment state.
	Status AttachmentStatus
	// contains filtered or unexported fields
}

Describes a network interface attachment.

type InstanceNetworkInterfaceSpecification

type InstanceNetworkInterfaceSpecification struct {

	// Indicates whether to assign a carrier IP address to the network interface. You
	// can only assign a carrier IP address to a network interface that is in a subnet
	// in a Wavelength Zone. For more information about carrier IP addresses, see
	// Carrier IP address
	// (https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip)
	// in the Amazon Web Services Wavelength Developer Guide.
	AssociateCarrierIpAddress *bool

	// Indicates whether to assign a public IPv4 address to an instance you launch in a
	// VPC. The public IP address can only be assigned to a network interface for eth0,
	// and can only be assigned to a new network interface, not an existing one. You
	// cannot specify more than one network interface in the request. If launching into
	// a default subnet, the default value is true.
	AssociatePublicIpAddress *bool

	// If set to true, the interface is deleted when the instance is terminated. You
	// can specify true only if creating a new network interface when launching an
	// instance.
	DeleteOnTermination *bool

	// The description of the network interface. Applies only if creating a network
	// interface when launching an instance.
	Description *string

	// The position of the network interface in the attachment order. A primary network
	// interface has a device index of 0. If you specify a network interface when
	// launching an instance, you must specify the device index.
	DeviceIndex *int32

	// The IDs of the security groups for the network interface. Applies only if
	// creating a network interface when launching an instance.
	Groups []string

	// The type of network interface. Valid values: interface | efa
	InterfaceType *string

	// The number of IPv4 delegated prefixes to be automatically assigned to the
	// network interface. You cannot use this option if you use the Ipv4Prefix option.
	Ipv4PrefixCount *int32

	// The IPv4 delegated prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv4PrefixCount option.
	Ipv4Prefixes []Ipv4PrefixSpecificationRequest

	// A number of IPv6 addresses to assign to the network interface. Amazon EC2
	// chooses the IPv6 addresses from the range of the subnet. You cannot specify this
	// option and the option to assign specific IPv6 addresses in the same request. You
	// can specify this option if you've specified a minimum number of instances to
	// launch.
	Ipv6AddressCount *int32

	// The IPv6 addresses to assign to the network interface. You cannot specify this
	// option and the option to assign a number of IPv6 addresses in the same request.
	// You cannot specify this option if you've specified a minimum number of instances
	// to launch.
	Ipv6Addresses []InstanceIpv6Address

	// The number of IPv6 delegated prefixes to be automatically assigned to the
	// network interface. You cannot use this option if you use the Ipv6Prefix option.
	Ipv6PrefixCount *int32

	// The IPv6 delegated prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv6PrefixCount option.
	Ipv6Prefixes []Ipv6PrefixSpecificationRequest

	// The index of the network card. Some instance types support multiple network
	// cards. The primary network interface must be assigned to network card index 0.
	// The default is network card index 0. If you are using RequestSpotInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html)
	// to create Spot Instances, omit this parameter because you can’t specify the
	// network card index when using this API. To specify the network card index, use
	// RunInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html).
	NetworkCardIndex *int32

	// The ID of the network interface. If you are creating a Spot Fleet, omit this
	// parameter because you can’t specify a network interface ID in a launch
	// specification.
	NetworkInterfaceId *string

	// The private IPv4 address of the network interface. Applies only if creating a
	// network interface when launching an instance. You cannot specify this option if
	// you're launching more than one instance in a RunInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html)
	// request.
	PrivateIpAddress *string

	// The private IPv4 addresses to assign to the network interface. Only one private
	// IPv4 address can be designated as primary. You cannot specify this option if
	// you're launching more than one instance in a RunInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html)
	// request.
	PrivateIpAddresses []PrivateIpAddressSpecification

	// The number of secondary private IPv4 addresses. You can't specify this option
	// and specify more than one private IP address using the private IP addresses
	// option. You cannot specify this option if you're launching more than one
	// instance in a RunInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html)
	// request.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet associated with the network interface. Applies only if
	// creating a network interface when launching an instance.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type InstancePrivateIpAddress

type InstancePrivateIpAddress struct {

	// The association information for an Elastic IP address for the network interface.
	Association *InstanceNetworkInterfaceAssociation

	// Indicates whether this IPv4 address is the primary private IP address of the
	// network interface.
	Primary *bool

	// The private IPv4 DNS name.
	PrivateDnsName *string

	// The private IPv4 address of the network interface.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes a private IPv4 address.

type InstanceRequirements added in v1.21.0

type InstanceRequirements struct {

	// The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web
	// Services Inferentia chips) on an instance. To exclude accelerator-enabled
	// instance types, set Max to 0. Default: No minimum or maximum limits
	AcceleratorCount *AcceleratorCount

	// Indicates whether instance types must have accelerators by specific
	// manufacturers.
	//
	// * For instance types with NVIDIA devices, specify nvidia.
	//
	// * For
	// instance types with AMD devices, specify amd.
	//
	// * For instance types with Amazon
	// Web Services devices, specify amazon-web-services.
	//
	// * For instance types with
	// Xilinx devices, specify xilinx.
	//
	// Default: Any manufacturer
	AcceleratorManufacturers []AcceleratorManufacturer

	// The accelerators that must be on the instance type.
	//
	// * For instance types with
	// NVIDIA A100 GPUs, specify a100.
	//
	// * For instance types with NVIDIA V100 GPUs,
	// specify v100.
	//
	// * For instance types with NVIDIA K80 GPUs, specify k80.
	//
	// * For
	// instance types with NVIDIA T4 GPUs, specify t4.
	//
	// * For instance types with
	// NVIDIA M60 GPUs, specify m60.
	//
	// * For instance types with AMD Radeon Pro V520
	// GPUs, specify radeon-pro-v520.
	//
	// * For instance types with Xilinx VU9P FPGAs,
	// specify vu9p.
	//
	// * For instance types with Amazon Web Services Inferentia chips,
	// specify inferentia.
	//
	// * For instance types with NVIDIA GRID K520 GPUs, specify
	// k520.
	//
	// Default: Any accelerator
	AcceleratorNames []AcceleratorName

	// The minimum and maximum amount of total accelerator memory, in MiB. Default: No
	// minimum or maximum limits
	AcceleratorTotalMemoryMiB *AcceleratorTotalMemoryMiB

	// The accelerator types that must be on the instance type.
	//
	// * For instance types
	// with GPU accelerators, specify gpu.
	//
	// * For instance types with FPGA
	// accelerators, specify fpga.
	//
	// * For instance types with inference accelerators,
	// specify inference.
	//
	// Default: Any accelerator type
	AcceleratorTypes []AcceleratorType

	// The instance types to apply your specified attributes against. All other
	// instance types are ignored, even if they match your specified attributes. You
	// can use strings with one or more wild cards, represented by an asterisk (*), to
	// allow an instance type, size, or generation. The following are examples:
	// m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2
	// will allow the entire C5 instance family, which includes all C5a and C5n
	// instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance
	// types, but not the M5n instance types. If you specify AllowedInstanceTypes, you
	// can't specify ExcludedInstanceTypes. Default: All instance types
	AllowedInstanceTypes []string

	// Indicates whether bare metal instance types must be included, excluded, or
	// required.
	//
	// * To include bare metal instance types, specify included.
	//
	// * To
	// require only bare metal instance types, specify required.
	//
	// * To exclude bare
	// metal instance types, specify excluded.
	//
	// Default: excluded
	BareMetal BareMetal

	// The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more
	// information, see Amazon EBS–optimized instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the
	// Amazon EC2 User Guide. Default: No minimum or maximum limits
	BaselineEbsBandwidthMbps *BaselineEbsBandwidthMbps

	// Indicates whether burstable performance T instance types are included, excluded,
	// or required. For more information, see Burstable performance instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html).
	//
	// *
	// To include burstable performance instance types, specify included.
	//
	// * To require
	// only burstable performance instance types, specify required.
	//
	// * To exclude
	// burstable performance instance types, specify excluded.
	//
	// Default: excluded
	BurstablePerformance BurstablePerformance

	// The CPU manufacturers to include.
	//
	// * For instance types with Intel CPUs, specify
	// intel.
	//
	// * For instance types with AMD CPUs, specify amd.
	//
	// * For instance types
	// with Amazon Web Services CPUs, specify amazon-web-services.
	//
	// Don't confuse the
	// CPU manufacturer with the CPU architecture. Instances will be launched with a
	// compatible CPU architecture based on the Amazon Machine Image (AMI) that you
	// specify in your launch template. Default: Any manufacturer
	CpuManufacturers []CpuManufacturer

	// The instance types to exclude. You can use strings with one or more wild cards,
	// represented by an asterisk (*), to exclude an instance type, size, or
	// generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For
	// example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance
	// family, which includes all C5a and C5n instance types. If you specify m5a.*,
	// Amazon EC2 will exclude all the M5a instance types, but not the M5n instance
	// types. If you specify ExcludedInstanceTypes, you can't specify
	// AllowedInstanceTypes. Default: No excluded instance types
	ExcludedInstanceTypes []string

	// Indicates whether current or previous generation instance types are included.
	// The current generation instance types are recommended for use. Current
	// generation instance types are typically the latest two to three generations in
	// each instance family. For more information, see Instance types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the
	// Amazon EC2 User Guide. For current generation instance types, specify current.
	// For previous generation instance types, specify previous. Default: Current and
	// previous generation instance types
	InstanceGenerations []InstanceGeneration

	// Indicates whether instance types with instance store volumes are included,
	// excluded, or required. For more information, Amazon EC2 instance store
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in
	// the Amazon EC2 User Guide.
	//
	// * To include instance types with instance store
	// volumes, specify included.
	//
	// * To require only instance types with instance store
	// volumes, specify required.
	//
	// * To exclude instance types with instance store
	// volumes, specify excluded.
	//
	// Default: included
	LocalStorage LocalStorage

	// The type of local storage that is required.
	//
	// * For instance types with hard disk
	// drive (HDD) storage, specify hdd.
	//
	// * For instance types with solid state drive
	// (SSD) storage, specify ssd.
	//
	// Default: hdd and ssd
	LocalStorageTypes []LocalStorageType

	// The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum
	// or maximum limits
	MemoryGiBPerVCpu *MemoryGiBPerVCpu

	// The minimum and maximum amount of memory, in MiB.
	MemoryMiB *MemoryMiB

	// The minimum and maximum amount of network bandwidth, in gigabits per second
	// (Gbps). Default: No minimum or maximum limits
	NetworkBandwidthGbps *NetworkBandwidthGbps

	// The minimum and maximum number of network interfaces. Default: No minimum or
	// maximum limits
	NetworkInterfaceCount *NetworkInterfaceCount

	// The price protection threshold for On-Demand Instances. This is the maximum
	// you’ll pay for an On-Demand Instance, expressed as a percentage above the least
	// expensive current generation M, C, or R instance type with your specified
	// attributes. When Amazon EC2 selects instance types with your attributes, it
	// excludes instance types priced above your threshold. The parameter accepts an
	// integer, which Amazon EC2 interprets as a percentage. To turn off price
	// protection, specify a high value, such as 999999. This parameter is not
	// supported for GetSpotPlacementScores
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html)
	// and GetInstanceTypesFromInstanceRequirements
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
	// If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price. Default: 20
	OnDemandMaxPricePercentageOverLowestPrice *int32

	// Indicates whether instance types must support hibernation for On-Demand
	// Instances. This parameter is not supported for GetSpotPlacementScores
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html).
	// Default: false
	RequireHibernateSupport *bool

	// The price protection threshold for Spot Instances. This is the maximum you’ll
	// pay for a Spot Instance, expressed as a percentage above the least expensive
	// current generation M, C, or R instance type with your specified attributes. When
	// Amazon EC2 selects instance types with your attributes, it excludes instance
	// types priced above your threshold. The parameter accepts an integer, which
	// Amazon EC2 interprets as a percentage. To turn off price protection, specify a
	// high value, such as 999999. This parameter is not supported for
	// GetSpotPlacementScores
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html)
	// and GetInstanceTypesFromInstanceRequirements
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
	// If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price. Default: 100
	SpotMaxPricePercentageOverLowestPrice *int32

	// The minimum and maximum amount of total local storage, in GB. Default: No
	// minimum or maximum limits
	TotalLocalStorageGB *TotalLocalStorageGB

	// The minimum and maximum number of vCPUs.
	VCpuCount *VCpuCountRange
	// contains filtered or unexported fields
}

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

* AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

* ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. For more information, see Attribute-based instance type selection for EC2 Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), Attribute-based instance type selection for Spot Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and Spot placement score (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the Amazon EC2 User Guide.

type InstanceRequirementsRequest added in v1.21.0

type InstanceRequirementsRequest struct {

	// The minimum and maximum amount of memory, in MiB.
	//
	// This member is required.
	MemoryMiB *MemoryMiBRequest

	// The minimum and maximum number of vCPUs.
	//
	// This member is required.
	VCpuCount *VCpuCountRangeRequest

	// The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web
	// Services Inferentia chips) on an instance. To exclude accelerator-enabled
	// instance types, set Max to 0. Default: No minimum or maximum limits
	AcceleratorCount *AcceleratorCountRequest

	// Indicates whether instance types must have accelerators by specific
	// manufacturers.
	//
	// * For instance types with NVIDIA devices, specify nvidia.
	//
	// * For
	// instance types with AMD devices, specify amd.
	//
	// * For instance types with Amazon
	// Web Services devices, specify amazon-web-services.
	//
	// * For instance types with
	// Xilinx devices, specify xilinx.
	//
	// Default: Any manufacturer
	AcceleratorManufacturers []AcceleratorManufacturer

	// The accelerators that must be on the instance type.
	//
	// * For instance types with
	// NVIDIA A100 GPUs, specify a100.
	//
	// * For instance types with NVIDIA V100 GPUs,
	// specify v100.
	//
	// * For instance types with NVIDIA K80 GPUs, specify k80.
	//
	// * For
	// instance types with NVIDIA T4 GPUs, specify t4.
	//
	// * For instance types with
	// NVIDIA M60 GPUs, specify m60.
	//
	// * For instance types with AMD Radeon Pro V520
	// GPUs, specify radeon-pro-v520.
	//
	// * For instance types with Xilinx VU9P FPGAs,
	// specify  vu9p.
	//
	// * For instance types with Amazon Web Services Inferentia chips,
	// specify inferentia.
	//
	// * For instance types with NVIDIA GRID K520 GPUs, specify
	// k520.
	//
	// Default: Any accelerator
	AcceleratorNames []AcceleratorName

	// The minimum and maximum amount of total accelerator memory, in MiB. Default: No
	// minimum or maximum limits
	AcceleratorTotalMemoryMiB *AcceleratorTotalMemoryMiBRequest

	// The accelerator types that must be on the instance type.
	//
	// * To include instance
	// types with GPU hardware, specify gpu.
	//
	// * To include instance types with FPGA
	// hardware, specify fpga.
	//
	// * To include instance types with inference hardware,
	// specify inference.
	//
	// Default: Any accelerator type
	AcceleratorTypes []AcceleratorType

	// The instance types to apply your specified attributes against. All other
	// instance types are ignored, even if they match your specified attributes. You
	// can use strings with one or more wild cards, represented by an asterisk (*), to
	// allow an instance type, size, or generation. The following are examples:
	// m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2
	// will allow the entire C5 instance family, which includes all C5a and C5n
	// instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance
	// types, but not the M5n instance types. If you specify AllowedInstanceTypes, you
	// can't specify ExcludedInstanceTypes. Default: All instance types
	AllowedInstanceTypes []string

	// Indicates whether bare metal instance types must be included, excluded, or
	// required.
	//
	// * To include bare metal instance types, specify included.
	//
	// * To
	// require only bare metal instance types, specify required.
	//
	// * To exclude bare
	// metal instance types, specify excluded.
	//
	// Default: excluded
	BareMetal BareMetal

	// The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more
	// information, see Amazon EBS–optimized instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the
	// Amazon EC2 User Guide. Default: No minimum or maximum limits
	BaselineEbsBandwidthMbps *BaselineEbsBandwidthMbpsRequest

	// Indicates whether burstable performance T instance types are included, excluded,
	// or required. For more information, see Burstable performance instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html).
	//
	// *
	// To include burstable performance instance types, specify included.
	//
	// * To require
	// only burstable performance instance types, specify required.
	//
	// * To exclude
	// burstable performance instance types, specify excluded.
	//
	// Default: excluded
	BurstablePerformance BurstablePerformance

	// The CPU manufacturers to include.
	//
	// * For instance types with Intel CPUs, specify
	// intel.
	//
	// * For instance types with AMD CPUs, specify amd.
	//
	// * For instance types
	// with Amazon Web Services CPUs, specify amazon-web-services.
	//
	// Don't confuse the
	// CPU manufacturer with the CPU architecture. Instances will be launched with a
	// compatible CPU architecture based on the Amazon Machine Image (AMI) that you
	// specify in your launch template. Default: Any manufacturer
	CpuManufacturers []CpuManufacturer

	// The instance types to exclude. You can use strings with one or more wild cards,
	// represented by an asterisk (*), to exclude an instance family, type, size, or
	// generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For
	// example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance
	// family, which includes all C5a and C5n instance types. If you specify m5a.*,
	// Amazon EC2 will exclude all the M5a instance types, but not the M5n instance
	// types. If you specify ExcludedInstanceTypes, you can't specify
	// AllowedInstanceTypes. Default: No excluded instance types
	ExcludedInstanceTypes []string

	// Indicates whether current or previous generation instance types are included.
	// The current generation instance types are recommended for use. Current
	// generation instance types are typically the latest two to three generations in
	// each instance family. For more information, see Instance types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the
	// Amazon EC2 User Guide. For current generation instance types, specify current.
	// For previous generation instance types, specify previous. Default: Current and
	// previous generation instance types
	InstanceGenerations []InstanceGeneration

	// Indicates whether instance types with instance store volumes are included,
	// excluded, or required. For more information, Amazon EC2 instance store
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in
	// the Amazon EC2 User Guide.
	//
	// * To include instance types with instance store
	// volumes, specify included.
	//
	// * To require only instance types with instance store
	// volumes, specify required.
	//
	// * To exclude instance types with instance store
	// volumes, specify excluded.
	//
	// Default: included
	LocalStorage LocalStorage

	// The type of local storage that is required.
	//
	// * For instance types with hard disk
	// drive (HDD) storage, specify hdd.
	//
	// * For instance types with solid state drive
	// (SSD) storage, specify ssd.
	//
	// Default: hdd and ssd
	LocalStorageTypes []LocalStorageType

	// The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum
	// or maximum limits
	MemoryGiBPerVCpu *MemoryGiBPerVCpuRequest

	// The minimum and maximum amount of network bandwidth, in gigabits per second
	// (Gbps). Default: No minimum or maximum limits
	NetworkBandwidthGbps *NetworkBandwidthGbpsRequest

	// The minimum and maximum number of network interfaces. Default: No minimum or
	// maximum limits
	NetworkInterfaceCount *NetworkInterfaceCountRequest

	// The price protection threshold for On-Demand Instances. This is the maximum
	// you’ll pay for an On-Demand Instance, expressed as a percentage above the least
	// expensive current generation M, C, or R instance type with your specified
	// attributes. When Amazon EC2 selects instance types with your attributes, it
	// excludes instance types priced above your threshold. The parameter accepts an
	// integer, which Amazon EC2 interprets as a percentage. To turn off price
	// protection, specify a high value, such as 999999. This parameter is not
	// supported for GetSpotPlacementScores
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html)
	// and GetInstanceTypesFromInstanceRequirements
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
	// If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price. Default: 20
	OnDemandMaxPricePercentageOverLowestPrice *int32

	// Indicates whether instance types must support hibernation for On-Demand
	// Instances. This parameter is not supported for GetSpotPlacementScores
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html).
	// Default: false
	RequireHibernateSupport *bool

	// The price protection threshold for Spot Instance. This is the maximum you’ll pay
	// for an Spot Instance, expressed as a percentage above the least expensive
	// current generation M, C, or R instance type with your specified attributes. When
	// Amazon EC2 selects instance types with your attributes, it excludes instance
	// types priced above your threshold. The parameter accepts an integer, which
	// Amazon EC2 interprets as a percentage. To turn off price protection, specify a
	// high value, such as 999999. This parameter is not supported for
	// GetSpotPlacementScores
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html)
	// and GetInstanceTypesFromInstanceRequirements
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html).
	// If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price. Default: 100
	SpotMaxPricePercentageOverLowestPrice *int32

	// The minimum and maximum amount of total local storage, in GB. Default: No
	// minimum or maximum limits
	TotalLocalStorageGB *TotalLocalStorageGBRequest
	// contains filtered or unexported fields
}

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

* AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

* ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. For more information, see Attribute-based instance type selection for EC2 Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html), Attribute-based instance type selection for Spot Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html), and Spot placement score (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html) in the Amazon EC2 User Guide.

type InstanceRequirementsWithMetadataRequest added in v1.21.0

type InstanceRequirementsWithMetadataRequest struct {

	// The architecture type.
	ArchitectureTypes []ArchitectureType

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes.
	InstanceRequirements *InstanceRequirementsRequest

	// The virtualization type.
	VirtualizationTypes []VirtualizationType
	// contains filtered or unexported fields
}

The architecture type, virtualization type, and other attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes. If you specify InstanceRequirementsWithMetadataRequest, you can't specify InstanceTypes.

type InstanceSpecification

type InstanceSpecification struct {

	// Excludes the root volume from being snapshotted.
	ExcludeBootVolume *bool

	// The IDs of the data (non-root) volumes to exclude from the multi-volume snapshot
	// set. If you specify the ID of the root volume, the request fails. To exclude the
	// root volume, use ExcludeBootVolume. You can specify up to 40 volume IDs per
	// request.
	ExcludeDataVolumeIds []string

	// The instance to specify which volumes should be snapshotted.
	InstanceId *string
	// contains filtered or unexported fields
}

The instance details to specify which volumes should be snapshotted.

type InstanceState

type InstanceState struct {

	// The state of the instance as a 16-bit unsigned integer. The high byte is all of
	// the bits between 2^8 and (2^16)-1, which equals decimal values between 256 and
	// 65,535. These numerical values are used for internal purposes and should be
	// ignored. The low byte is all of the bits between 2^0 and (2^8)-1, which equals
	// decimal values between 0 and 255. The valid values for instance-state-code will
	// all be in the range of the low byte and they are:
	//
	// * 0 : pending
	//
	// * 16 :
	// running
	//
	// * 32 : shutting-down
	//
	// * 48 : terminated
	//
	// * 64 : stopping
	//
	// * 80 :
	// stopped
	//
	// You can ignore the high byte value by zeroing out all of the bits above
	// 2^8 or 256 in decimal.
	Code *int32

	// The current state of the instance.
	Name InstanceStateName
	// contains filtered or unexported fields
}

Describes the current state of an instance.

type InstanceStateChange

type InstanceStateChange struct {

	// The current state of the instance.
	CurrentState *InstanceState

	// The ID of the instance.
	InstanceId *string

	// The previous state of the instance.
	PreviousState *InstanceState
	// contains filtered or unexported fields
}

Describes an instance state change.

type InstanceStateName

type InstanceStateName string
const (
	InstanceStateNamePending      InstanceStateName = "pending"
	InstanceStateNameRunning      InstanceStateName = "running"
	InstanceStateNameShuttingDown InstanceStateName = "shutting-down"
	InstanceStateNameTerminated   InstanceStateName = "terminated"
	InstanceStateNameStopping     InstanceStateName = "stopping"
	InstanceStateNameStopped      InstanceStateName = "stopped"
)

Enum values for InstanceStateName

func (InstanceStateName) Values added in v0.29.0

Values returns all known values for InstanceStateName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceStatus

type InstanceStatus struct {

	// The Availability Zone of the instance.
	AvailabilityZone *string

	// Any scheduled events associated with the instance.
	Events []InstanceStatusEvent

	// The ID of the instance.
	InstanceId *string

	// The intended state of the instance. DescribeInstanceStatus requires that an
	// instance be in the running state.
	InstanceState *InstanceState

	// Reports impaired functionality that stems from issues internal to the instance,
	// such as impaired reachability.
	InstanceStatus *InstanceStatusSummary

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// Reports impaired functionality that stems from issues related to the systems
	// that support an instance, such as hardware failures and network connectivity
	// problems.
	SystemStatus *InstanceStatusSummary
	// contains filtered or unexported fields
}

Describes the status of an instance.

type InstanceStatusDetails

type InstanceStatusDetails struct {

	// The time when a status check failed. For an instance that was launched and
	// impaired, this is the time when the instance was launched.
	ImpairedSince *time.Time

	// The type of instance status.
	Name StatusName

	// The status.
	Status StatusType
	// contains filtered or unexported fields
}

Describes the instance status.

type InstanceStatusEvent

type InstanceStatusEvent struct {

	// The event code.
	Code EventCode

	// A description of the event. After a scheduled event is completed, it can still
	// be described for up to a week. If the event has been completed, this description
	// starts with the following text: [Completed].
	Description *string

	// The ID of the event.
	InstanceEventId *string

	// The latest scheduled end time for the event.
	NotAfter *time.Time

	// The earliest scheduled start time for the event.
	NotBefore *time.Time

	// The deadline for starting the event.
	NotBeforeDeadline *time.Time
	// contains filtered or unexported fields
}

Describes a scheduled event for an instance.

type InstanceStatusSummary

type InstanceStatusSummary struct {

	// The system instance health or application instance health.
	Details []InstanceStatusDetails

	// The status.
	Status SummaryStatus
	// contains filtered or unexported fields
}

Describes the status of an instance.

type InstanceStorageEncryptionSupport added in v1.20.0

type InstanceStorageEncryptionSupport string
const (
	InstanceStorageEncryptionSupportUnsupported InstanceStorageEncryptionSupport = "unsupported"
	InstanceStorageEncryptionSupportRequired    InstanceStorageEncryptionSupport = "required"
)

Enum values for InstanceStorageEncryptionSupport

func (InstanceStorageEncryptionSupport) Values added in v1.20.0

Values returns all known values for InstanceStorageEncryptionSupport. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceStorageInfo

type InstanceStorageInfo struct {

	// Describes the disks that are available for the instance type.
	Disks []DiskInfo

	// Indicates whether data is encrypted at rest.
	EncryptionSupport InstanceStorageEncryptionSupport

	// Indicates whether non-volatile memory express (NVMe) is supported.
	NvmeSupport EphemeralNvmeSupport

	// The total size of the disks, in GB.
	TotalSizeInGB *int64
	// contains filtered or unexported fields
}

Describes the instance store features that are supported by the instance type.

type InstanceTagNotificationAttribute

type InstanceTagNotificationAttribute struct {

	// Indicates wheter all tag keys in the current Region are registered to appear in
	// scheduled event notifications. true indicates that all tag keys in the current
	// Region are registered.
	IncludeAllTagsOfInstance *bool

	// The registered tag keys.
	InstanceTagKeys []string
	// contains filtered or unexported fields
}

Describes the registered tag keys for the current Region.

type InstanceType

type InstanceType string
const (
	InstanceTypeA1Medium        InstanceType = "a1.medium"
	InstanceTypeA1Large         InstanceType = "a1.large"
	InstanceTypeA1Xlarge        InstanceType = "a1.xlarge"
	InstanceTypeA12xlarge       InstanceType = "a1.2xlarge"
	InstanceTypeA14xlarge       InstanceType = "a1.4xlarge"
	InstanceTypeA1Metal         InstanceType = "a1.metal"
	InstanceTypeC1Medium        InstanceType = "c1.medium"
	InstanceTypeC1Xlarge        InstanceType = "c1.xlarge"
	InstanceTypeC3Large         InstanceType = "c3.large"
	InstanceTypeC3Xlarge        InstanceType = "c3.xlarge"
	InstanceTypeC32xlarge       InstanceType = "c3.2xlarge"
	InstanceTypeC34xlarge       InstanceType = "c3.4xlarge"
	InstanceTypeC38xlarge       InstanceType = "c3.8xlarge"
	InstanceTypeC4Large         InstanceType = "c4.large"
	InstanceTypeC4Xlarge        InstanceType = "c4.xlarge"
	InstanceTypeC42xlarge       InstanceType = "c4.2xlarge"
	InstanceTypeC44xlarge       InstanceType = "c4.4xlarge"
	InstanceTypeC48xlarge       InstanceType = "c4.8xlarge"
	InstanceTypeC5Large         InstanceType = "c5.large"
	InstanceTypeC5Xlarge        InstanceType = "c5.xlarge"
	InstanceTypeC52xlarge       InstanceType = "c5.2xlarge"
	InstanceTypeC54xlarge       InstanceType = "c5.4xlarge"
	InstanceTypeC59xlarge       InstanceType = "c5.9xlarge"
	InstanceTypeC512xlarge      InstanceType = "c5.12xlarge"
	InstanceTypeC518xlarge      InstanceType = "c5.18xlarge"
	InstanceTypeC524xlarge      InstanceType = "c5.24xlarge"
	InstanceTypeC5Metal         InstanceType = "c5.metal"
	InstanceTypeC5aLarge        InstanceType = "c5a.large"
	InstanceTypeC5aXlarge       InstanceType = "c5a.xlarge"
	InstanceTypeC5a2xlarge      InstanceType = "c5a.2xlarge"
	InstanceTypeC5a4xlarge      InstanceType = "c5a.4xlarge"
	InstanceTypeC5a8xlarge      InstanceType = "c5a.8xlarge"
	InstanceTypeC5a12xlarge     InstanceType = "c5a.12xlarge"
	InstanceTypeC5a16xlarge     InstanceType = "c5a.16xlarge"
	InstanceTypeC5a24xlarge     InstanceType = "c5a.24xlarge"
	InstanceTypeC5adLarge       InstanceType = "c5ad.large"
	InstanceTypeC5adXlarge      InstanceType = "c5ad.xlarge"
	InstanceTypeC5ad2xlarge     InstanceType = "c5ad.2xlarge"
	InstanceTypeC5ad4xlarge     InstanceType = "c5ad.4xlarge"
	InstanceTypeC5ad8xlarge     InstanceType = "c5ad.8xlarge"
	InstanceTypeC5ad12xlarge    InstanceType = "c5ad.12xlarge"
	InstanceTypeC5ad16xlarge    InstanceType = "c5ad.16xlarge"
	InstanceTypeC5ad24xlarge    InstanceType = "c5ad.24xlarge"
	InstanceTypeC5dLarge        InstanceType = "c5d.large"
	InstanceTypeC5dXlarge       InstanceType = "c5d.xlarge"
	InstanceTypeC5d2xlarge      InstanceType = "c5d.2xlarge"
	InstanceTypeC5d4xlarge      InstanceType = "c5d.4xlarge"
	InstanceTypeC5d9xlarge      InstanceType = "c5d.9xlarge"
	InstanceTypeC5d12xlarge     InstanceType = "c5d.12xlarge"
	InstanceTypeC5d18xlarge     InstanceType = "c5d.18xlarge"
	InstanceTypeC5d24xlarge     InstanceType = "c5d.24xlarge"
	InstanceTypeC5dMetal        InstanceType = "c5d.metal"
	InstanceTypeC5nLarge        InstanceType = "c5n.large"
	InstanceTypeC5nXlarge       InstanceType = "c5n.xlarge"
	InstanceTypeC5n2xlarge      InstanceType = "c5n.2xlarge"
	InstanceTypeC5n4xlarge      InstanceType = "c5n.4xlarge"
	InstanceTypeC5n9xlarge      InstanceType = "c5n.9xlarge"
	InstanceTypeC5n18xlarge     InstanceType = "c5n.18xlarge"
	InstanceTypeC5nMetal        InstanceType = "c5n.metal"
	InstanceTypeC6gMedium       InstanceType = "c6g.medium"
	InstanceTypeC6gLarge        InstanceType = "c6g.large"
	InstanceTypeC6gXlarge       InstanceType = "c6g.xlarge"
	InstanceTypeC6g2xlarge      InstanceType = "c6g.2xlarge"
	InstanceTypeC6g4xlarge      InstanceType = "c6g.4xlarge"
	InstanceTypeC6g8xlarge      InstanceType = "c6g.8xlarge"
	InstanceTypeC6g12xlarge     InstanceType = "c6g.12xlarge"
	InstanceTypeC6g16xlarge     InstanceType = "c6g.16xlarge"
	InstanceTypeC6gMetal        InstanceType = "c6g.metal"
	InstanceTypeC6gdMedium      InstanceType = "c6gd.medium"
	InstanceTypeC6gdLarge       InstanceType = "c6gd.large"
	InstanceTypeC6gdXlarge      InstanceType = "c6gd.xlarge"
	InstanceTypeC6gd2xlarge     InstanceType = "c6gd.2xlarge"
	InstanceTypeC6gd4xlarge     InstanceType = "c6gd.4xlarge"
	InstanceTypeC6gd8xlarge     InstanceType = "c6gd.8xlarge"
	InstanceTypeC6gd12xlarge    InstanceType = "c6gd.12xlarge"
	InstanceTypeC6gd16xlarge    InstanceType = "c6gd.16xlarge"
	InstanceTypeC6gdMetal       InstanceType = "c6gd.metal"
	InstanceTypeC6gnMedium      InstanceType = "c6gn.medium"
	InstanceTypeC6gnLarge       InstanceType = "c6gn.large"
	InstanceTypeC6gnXlarge      InstanceType = "c6gn.xlarge"
	InstanceTypeC6gn2xlarge     InstanceType = "c6gn.2xlarge"
	InstanceTypeC6gn4xlarge     InstanceType = "c6gn.4xlarge"
	InstanceTypeC6gn8xlarge     InstanceType = "c6gn.8xlarge"
	InstanceTypeC6gn12xlarge    InstanceType = "c6gn.12xlarge"
	InstanceTypeC6gn16xlarge    InstanceType = "c6gn.16xlarge"
	InstanceTypeC6iLarge        InstanceType = "c6i.large"
	InstanceTypeC6iXlarge       InstanceType = "c6i.xlarge"
	InstanceTypeC6i2xlarge      InstanceType = "c6i.2xlarge"
	InstanceTypeC6i4xlarge      InstanceType = "c6i.4xlarge"
	InstanceTypeC6i8xlarge      InstanceType = "c6i.8xlarge"
	InstanceTypeC6i12xlarge     InstanceType = "c6i.12xlarge"
	InstanceTypeC6i16xlarge     InstanceType = "c6i.16xlarge"
	InstanceTypeC6i24xlarge     InstanceType = "c6i.24xlarge"
	InstanceTypeC6i32xlarge     InstanceType = "c6i.32xlarge"
	InstanceTypeC6iMetal        InstanceType = "c6i.metal"
	InstanceTypeCc14xlarge      InstanceType = "cc1.4xlarge"
	InstanceTypeCc28xlarge      InstanceType = "cc2.8xlarge"
	InstanceTypeCg14xlarge      InstanceType = "cg1.4xlarge"
	InstanceTypeCr18xlarge      InstanceType = "cr1.8xlarge"
	InstanceTypeD2Xlarge        InstanceType = "d2.xlarge"
	InstanceTypeD22xlarge       InstanceType = "d2.2xlarge"
	InstanceTypeD24xlarge       InstanceType = "d2.4xlarge"
	InstanceTypeD28xlarge       InstanceType = "d2.8xlarge"
	InstanceTypeD3Xlarge        InstanceType = "d3.xlarge"
	InstanceTypeD32xlarge       InstanceType = "d3.2xlarge"
	InstanceTypeD34xlarge       InstanceType = "d3.4xlarge"
	InstanceTypeD38xlarge       InstanceType = "d3.8xlarge"
	InstanceTypeD3enXlarge      InstanceType = "d3en.xlarge"
	InstanceTypeD3en2xlarge     InstanceType = "d3en.2xlarge"
	InstanceTypeD3en4xlarge     InstanceType = "d3en.4xlarge"
	InstanceTypeD3en6xlarge     InstanceType = "d3en.6xlarge"
	InstanceTypeD3en8xlarge     InstanceType = "d3en.8xlarge"
	InstanceTypeD3en12xlarge    InstanceType = "d3en.12xlarge"
	InstanceTypeDl124xlarge     InstanceType = "dl1.24xlarge"
	InstanceTypeF12xlarge       InstanceType = "f1.2xlarge"
	InstanceTypeF14xlarge       InstanceType = "f1.4xlarge"
	InstanceTypeF116xlarge      InstanceType = "f1.16xlarge"
	InstanceTypeG22xlarge       InstanceType = "g2.2xlarge"
	InstanceTypeG28xlarge       InstanceType = "g2.8xlarge"
	InstanceTypeG34xlarge       InstanceType = "g3.4xlarge"
	InstanceTypeG38xlarge       InstanceType = "g3.8xlarge"
	InstanceTypeG316xlarge      InstanceType = "g3.16xlarge"
	InstanceTypeG3sXlarge       InstanceType = "g3s.xlarge"
	InstanceTypeG4adXlarge      InstanceType = "g4ad.xlarge"
	InstanceTypeG4ad2xlarge     InstanceType = "g4ad.2xlarge"
	InstanceTypeG4ad4xlarge     InstanceType = "g4ad.4xlarge"
	InstanceTypeG4ad8xlarge     InstanceType = "g4ad.8xlarge"
	InstanceTypeG4ad16xlarge    InstanceType = "g4ad.16xlarge"
	InstanceTypeG4dnXlarge      InstanceType = "g4dn.xlarge"
	InstanceTypeG4dn2xlarge     InstanceType = "g4dn.2xlarge"
	InstanceTypeG4dn4xlarge     InstanceType = "g4dn.4xlarge"
	InstanceTypeG4dn8xlarge     InstanceType = "g4dn.8xlarge"
	InstanceTypeG4dn12xlarge    InstanceType = "g4dn.12xlarge"
	InstanceTypeG4dn16xlarge    InstanceType = "g4dn.16xlarge"
	InstanceTypeG4dnMetal       InstanceType = "g4dn.metal"
	InstanceTypeG5Xlarge        InstanceType = "g5.xlarge"
	InstanceTypeG52xlarge       InstanceType = "g5.2xlarge"
	InstanceTypeG54xlarge       InstanceType = "g5.4xlarge"
	InstanceTypeG58xlarge       InstanceType = "g5.8xlarge"
	InstanceTypeG512xlarge      InstanceType = "g5.12xlarge"
	InstanceTypeG516xlarge      InstanceType = "g5.16xlarge"
	InstanceTypeG524xlarge      InstanceType = "g5.24xlarge"
	InstanceTypeG548xlarge      InstanceType = "g5.48xlarge"
	InstanceTypeG5gXlarge       InstanceType = "g5g.xlarge"
	InstanceTypeG5g2xlarge      InstanceType = "g5g.2xlarge"
	InstanceTypeG5g4xlarge      InstanceType = "g5g.4xlarge"
	InstanceTypeG5g8xlarge      InstanceType = "g5g.8xlarge"
	InstanceTypeG5g16xlarge     InstanceType = "g5g.16xlarge"
	InstanceTypeG5gMetal        InstanceType = "g5g.metal"
	InstanceTypeHi14xlarge      InstanceType = "hi1.4xlarge"
	InstanceTypeHpc6a48xlarge   InstanceType = "hpc6a.48xlarge"
	InstanceTypeHs18xlarge      InstanceType = "hs1.8xlarge"
	InstanceTypeH12xlarge       InstanceType = "h1.2xlarge"
	InstanceTypeH14xlarge       InstanceType = "h1.4xlarge"
	InstanceTypeH18xlarge       InstanceType = "h1.8xlarge"
	InstanceTypeH116xlarge      InstanceType = "h1.16xlarge"
	InstanceTypeI2Xlarge        InstanceType = "i2.xlarge"
	InstanceTypeI22xlarge       InstanceType = "i2.2xlarge"
	InstanceTypeI24xlarge       InstanceType = "i2.4xlarge"
	InstanceTypeI28xlarge       InstanceType = "i2.8xlarge"
	InstanceTypeI3Large         InstanceType = "i3.large"
	InstanceTypeI3Xlarge        InstanceType = "i3.xlarge"
	InstanceTypeI32xlarge       InstanceType = "i3.2xlarge"
	InstanceTypeI34xlarge       InstanceType = "i3.4xlarge"
	InstanceTypeI38xlarge       InstanceType = "i3.8xlarge"
	InstanceTypeI316xlarge      InstanceType = "i3.16xlarge"
	InstanceTypeI3Metal         InstanceType = "i3.metal"
	InstanceTypeI3enLarge       InstanceType = "i3en.large"
	InstanceTypeI3enXlarge      InstanceType = "i3en.xlarge"
	InstanceTypeI3en2xlarge     InstanceType = "i3en.2xlarge"
	InstanceTypeI3en3xlarge     InstanceType = "i3en.3xlarge"
	InstanceTypeI3en6xlarge     InstanceType = "i3en.6xlarge"
	InstanceTypeI3en12xlarge    InstanceType = "i3en.12xlarge"
	InstanceTypeI3en24xlarge    InstanceType = "i3en.24xlarge"
	InstanceTypeI3enMetal       InstanceType = "i3en.metal"
	InstanceTypeIm4gnLarge      InstanceType = "im4gn.large"
	InstanceTypeIm4gnXlarge     InstanceType = "im4gn.xlarge"
	InstanceTypeIm4gn2xlarge    InstanceType = "im4gn.2xlarge"
	InstanceTypeIm4gn4xlarge    InstanceType = "im4gn.4xlarge"
	InstanceTypeIm4gn8xlarge    InstanceType = "im4gn.8xlarge"
	InstanceTypeIm4gn16xlarge   InstanceType = "im4gn.16xlarge"
	InstanceTypeInf1Xlarge      InstanceType = "inf1.xlarge"
	InstanceTypeInf12xlarge     InstanceType = "inf1.2xlarge"
	InstanceTypeInf16xlarge     InstanceType = "inf1.6xlarge"
	InstanceTypeInf124xlarge    InstanceType = "inf1.24xlarge"
	InstanceTypeIs4genMedium    InstanceType = "is4gen.medium"
	InstanceTypeIs4genLarge     InstanceType = "is4gen.large"
	InstanceTypeIs4genXlarge    InstanceType = "is4gen.xlarge"
	InstanceTypeIs4gen2xlarge   InstanceType = "is4gen.2xlarge"
	InstanceTypeIs4gen4xlarge   InstanceType = "is4gen.4xlarge"
	InstanceTypeIs4gen8xlarge   InstanceType = "is4gen.8xlarge"
	InstanceTypeM1Small         InstanceType = "m1.small"
	InstanceTypeM1Medium        InstanceType = "m1.medium"
	InstanceTypeM1Large         InstanceType = "m1.large"
	InstanceTypeM1Xlarge        InstanceType = "m1.xlarge"
	InstanceTypeM2Xlarge        InstanceType = "m2.xlarge"
	InstanceTypeM22xlarge       InstanceType = "m2.2xlarge"
	InstanceTypeM24xlarge       InstanceType = "m2.4xlarge"
	InstanceTypeM3Medium        InstanceType = "m3.medium"
	InstanceTypeM3Large         InstanceType = "m3.large"
	InstanceTypeM3Xlarge        InstanceType = "m3.xlarge"
	InstanceTypeM32xlarge       InstanceType = "m3.2xlarge"
	InstanceTypeM4Large         InstanceType = "m4.large"
	InstanceTypeM4Xlarge        InstanceType = "m4.xlarge"
	InstanceTypeM42xlarge       InstanceType = "m4.2xlarge"
	InstanceTypeM44xlarge       InstanceType = "m4.4xlarge"
	InstanceTypeM410xlarge      InstanceType = "m4.10xlarge"
	InstanceTypeM416xlarge      InstanceType = "m4.16xlarge"
	InstanceTypeM5Large         InstanceType = "m5.large"
	InstanceTypeM5Xlarge        InstanceType = "m5.xlarge"
	InstanceTypeM52xlarge       InstanceType = "m5.2xlarge"
	InstanceTypeM54xlarge       InstanceType = "m5.4xlarge"
	InstanceTypeM58xlarge       InstanceType = "m5.8xlarge"
	InstanceTypeM512xlarge      InstanceType = "m5.12xlarge"
	InstanceTypeM516xlarge      InstanceType = "m5.16xlarge"
	InstanceTypeM524xlarge      InstanceType = "m5.24xlarge"
	InstanceTypeM5Metal         InstanceType = "m5.metal"
	InstanceTypeM5aLarge        InstanceType = "m5a.large"
	InstanceTypeM5aXlarge       InstanceType = "m5a.xlarge"
	InstanceTypeM5a2xlarge      InstanceType = "m5a.2xlarge"
	InstanceTypeM5a4xlarge      InstanceType = "m5a.4xlarge"
	InstanceTypeM5a8xlarge      InstanceType = "m5a.8xlarge"
	InstanceTypeM5a12xlarge     InstanceType = "m5a.12xlarge"
	InstanceTypeM5a16xlarge     InstanceType = "m5a.16xlarge"
	InstanceTypeM5a24xlarge     InstanceType = "m5a.24xlarge"
	InstanceTypeM5adLarge       InstanceType = "m5ad.large"
	InstanceTypeM5adXlarge      InstanceType = "m5ad.xlarge"
	InstanceTypeM5ad2xlarge     InstanceType = "m5ad.2xlarge"
	InstanceTypeM5ad4xlarge     InstanceType = "m5ad.4xlarge"
	InstanceTypeM5ad8xlarge     InstanceType = "m5ad.8xlarge"
	InstanceTypeM5ad12xlarge    InstanceType = "m5ad.12xlarge"
	InstanceTypeM5ad16xlarge    InstanceType = "m5ad.16xlarge"
	InstanceTypeM5ad24xlarge    InstanceType = "m5ad.24xlarge"
	InstanceTypeM5dLarge        InstanceType = "m5d.large"
	InstanceTypeM5dXlarge       InstanceType = "m5d.xlarge"
	InstanceTypeM5d2xlarge      InstanceType = "m5d.2xlarge"
	InstanceTypeM5d4xlarge      InstanceType = "m5d.4xlarge"
	InstanceTypeM5d8xlarge      InstanceType = "m5d.8xlarge"
	InstanceTypeM5d12xlarge     InstanceType = "m5d.12xlarge"
	InstanceTypeM5d16xlarge     InstanceType = "m5d.16xlarge"
	InstanceTypeM5d24xlarge     InstanceType = "m5d.24xlarge"
	InstanceTypeM5dMetal        InstanceType = "m5d.metal"
	InstanceTypeM5dnLarge       InstanceType = "m5dn.large"
	InstanceTypeM5dnXlarge      InstanceType = "m5dn.xlarge"
	InstanceTypeM5dn2xlarge     InstanceType = "m5dn.2xlarge"
	InstanceTypeM5dn4xlarge     InstanceType = "m5dn.4xlarge"
	InstanceTypeM5dn8xlarge     InstanceType = "m5dn.8xlarge"
	InstanceTypeM5dn12xlarge    InstanceType = "m5dn.12xlarge"
	InstanceTypeM5dn16xlarge    InstanceType = "m5dn.16xlarge"
	InstanceTypeM5dn24xlarge    InstanceType = "m5dn.24xlarge"
	InstanceTypeM5dnMetal       InstanceType = "m5dn.metal"
	InstanceTypeM5nLarge        InstanceType = "m5n.large"
	InstanceTypeM5nXlarge       InstanceType = "m5n.xlarge"
	InstanceTypeM5n2xlarge      InstanceType = "m5n.2xlarge"
	InstanceTypeM5n4xlarge      InstanceType = "m5n.4xlarge"
	InstanceTypeM5n8xlarge      InstanceType = "m5n.8xlarge"
	InstanceTypeM5n12xlarge     InstanceType = "m5n.12xlarge"
	InstanceTypeM5n16xlarge     InstanceType = "m5n.16xlarge"
	InstanceTypeM5n24xlarge     InstanceType = "m5n.24xlarge"
	InstanceTypeM5nMetal        InstanceType = "m5n.metal"
	InstanceTypeM5znLarge       InstanceType = "m5zn.large"
	InstanceTypeM5znXlarge      InstanceType = "m5zn.xlarge"
	InstanceTypeM5zn2xlarge     InstanceType = "m5zn.2xlarge"
	InstanceTypeM5zn3xlarge     InstanceType = "m5zn.3xlarge"
	InstanceTypeM5zn6xlarge     InstanceType = "m5zn.6xlarge"
	InstanceTypeM5zn12xlarge    InstanceType = "m5zn.12xlarge"
	InstanceTypeM5znMetal       InstanceType = "m5zn.metal"
	InstanceTypeM6aLarge        InstanceType = "m6a.large"
	InstanceTypeM6aXlarge       InstanceType = "m6a.xlarge"
	InstanceTypeM6a2xlarge      InstanceType = "m6a.2xlarge"
	InstanceTypeM6a4xlarge      InstanceType = "m6a.4xlarge"
	InstanceTypeM6a8xlarge      InstanceType = "m6a.8xlarge"
	InstanceTypeM6a12xlarge     InstanceType = "m6a.12xlarge"
	InstanceTypeM6a16xlarge     InstanceType = "m6a.16xlarge"
	InstanceTypeM6a24xlarge     InstanceType = "m6a.24xlarge"
	InstanceTypeM6a32xlarge     InstanceType = "m6a.32xlarge"
	InstanceTypeM6a48xlarge     InstanceType = "m6a.48xlarge"
	InstanceTypeM6gMetal        InstanceType = "m6g.metal"
	InstanceTypeM6gMedium       InstanceType = "m6g.medium"
	InstanceTypeM6gLarge        InstanceType = "m6g.large"
	InstanceTypeM6gXlarge       InstanceType = "m6g.xlarge"
	InstanceTypeM6g2xlarge      InstanceType = "m6g.2xlarge"
	InstanceTypeM6g4xlarge      InstanceType = "m6g.4xlarge"
	InstanceTypeM6g8xlarge      InstanceType = "m6g.8xlarge"
	InstanceTypeM6g12xlarge     InstanceType = "m6g.12xlarge"
	InstanceTypeM6g16xlarge     InstanceType = "m6g.16xlarge"
	InstanceTypeM6gdMetal       InstanceType = "m6gd.metal"
	InstanceTypeM6gdMedium      InstanceType = "m6gd.medium"
	InstanceTypeM6gdLarge       InstanceType = "m6gd.large"
	InstanceTypeM6gdXlarge      InstanceType = "m6gd.xlarge"
	InstanceTypeM6gd2xlarge     InstanceType = "m6gd.2xlarge"
	InstanceTypeM6gd4xlarge     InstanceType = "m6gd.4xlarge"
	InstanceTypeM6gd8xlarge     InstanceType = "m6gd.8xlarge"
	InstanceTypeM6gd12xlarge    InstanceType = "m6gd.12xlarge"
	InstanceTypeM6gd16xlarge    InstanceType = "m6gd.16xlarge"
	InstanceTypeM6iLarge        InstanceType = "m6i.large"
	InstanceTypeM6iXlarge       InstanceType = "m6i.xlarge"
	InstanceTypeM6i2xlarge      InstanceType = "m6i.2xlarge"
	InstanceTypeM6i4xlarge      InstanceType = "m6i.4xlarge"
	InstanceTypeM6i8xlarge      InstanceType = "m6i.8xlarge"
	InstanceTypeM6i12xlarge     InstanceType = "m6i.12xlarge"
	InstanceTypeM6i16xlarge     InstanceType = "m6i.16xlarge"
	InstanceTypeM6i24xlarge     InstanceType = "m6i.24xlarge"
	InstanceTypeM6i32xlarge     InstanceType = "m6i.32xlarge"
	InstanceTypeM6iMetal        InstanceType = "m6i.metal"
	InstanceTypeMac1Metal       InstanceType = "mac1.metal"
	InstanceTypeP2Xlarge        InstanceType = "p2.xlarge"
	InstanceTypeP28xlarge       InstanceType = "p2.8xlarge"
	InstanceTypeP216xlarge      InstanceType = "p2.16xlarge"
	InstanceTypeP32xlarge       InstanceType = "p3.2xlarge"
	InstanceTypeP38xlarge       InstanceType = "p3.8xlarge"
	InstanceTypeP316xlarge      InstanceType = "p3.16xlarge"
	InstanceTypeP3dn24xlarge    InstanceType = "p3dn.24xlarge"
	InstanceTypeP4d24xlarge     InstanceType = "p4d.24xlarge"
	InstanceTypeR3Large         InstanceType = "r3.large"
	InstanceTypeR3Xlarge        InstanceType = "r3.xlarge"
	InstanceTypeR32xlarge       InstanceType = "r3.2xlarge"
	InstanceTypeR34xlarge       InstanceType = "r3.4xlarge"
	InstanceTypeR38xlarge       InstanceType = "r3.8xlarge"
	InstanceTypeR4Large         InstanceType = "r4.large"
	InstanceTypeR4Xlarge        InstanceType = "r4.xlarge"
	InstanceTypeR42xlarge       InstanceType = "r4.2xlarge"
	InstanceTypeR44xlarge       InstanceType = "r4.4xlarge"
	InstanceTypeR48xlarge       InstanceType = "r4.8xlarge"
	InstanceTypeR416xlarge      InstanceType = "r4.16xlarge"
	InstanceTypeR5Large         InstanceType = "r5.large"
	InstanceTypeR5Xlarge        InstanceType = "r5.xlarge"
	InstanceTypeR52xlarge       InstanceType = "r5.2xlarge"
	InstanceTypeR54xlarge       InstanceType = "r5.4xlarge"
	InstanceTypeR58xlarge       InstanceType = "r5.8xlarge"
	InstanceTypeR512xlarge      InstanceType = "r5.12xlarge"
	InstanceTypeR516xlarge      InstanceType = "r5.16xlarge"
	InstanceTypeR524xlarge      InstanceType = "r5.24xlarge"
	InstanceTypeR5Metal         InstanceType = "r5.metal"
	InstanceTypeR5aLarge        InstanceType = "r5a.large"
	InstanceTypeR5aXlarge       InstanceType = "r5a.xlarge"
	InstanceTypeR5a2xlarge      InstanceType = "r5a.2xlarge"
	InstanceTypeR5a4xlarge      InstanceType = "r5a.4xlarge"
	InstanceTypeR5a8xlarge      InstanceType = "r5a.8xlarge"
	InstanceTypeR5a12xlarge     InstanceType = "r5a.12xlarge"
	InstanceTypeR5a16xlarge     InstanceType = "r5a.16xlarge"
	InstanceTypeR5a24xlarge     InstanceType = "r5a.24xlarge"
	InstanceTypeR5adLarge       InstanceType = "r5ad.large"
	InstanceTypeR5adXlarge      InstanceType = "r5ad.xlarge"
	InstanceTypeR5ad2xlarge     InstanceType = "r5ad.2xlarge"
	InstanceTypeR5ad4xlarge     InstanceType = "r5ad.4xlarge"
	InstanceTypeR5ad8xlarge     InstanceType = "r5ad.8xlarge"
	InstanceTypeR5ad12xlarge    InstanceType = "r5ad.12xlarge"
	InstanceTypeR5ad16xlarge    InstanceType = "r5ad.16xlarge"
	InstanceTypeR5ad24xlarge    InstanceType = "r5ad.24xlarge"
	InstanceTypeR5bLarge        InstanceType = "r5b.large"
	InstanceTypeR5bXlarge       InstanceType = "r5b.xlarge"
	InstanceTypeR5b2xlarge      InstanceType = "r5b.2xlarge"
	InstanceTypeR5b4xlarge      InstanceType = "r5b.4xlarge"
	InstanceTypeR5b8xlarge      InstanceType = "r5b.8xlarge"
	InstanceTypeR5b12xlarge     InstanceType = "r5b.12xlarge"
	InstanceTypeR5b16xlarge     InstanceType = "r5b.16xlarge"
	InstanceTypeR5b24xlarge     InstanceType = "r5b.24xlarge"
	InstanceTypeR5bMetal        InstanceType = "r5b.metal"
	InstanceTypeR5dLarge        InstanceType = "r5d.large"
	InstanceTypeR5dXlarge       InstanceType = "r5d.xlarge"
	InstanceTypeR5d2xlarge      InstanceType = "r5d.2xlarge"
	InstanceTypeR5d4xlarge      InstanceType = "r5d.4xlarge"
	InstanceTypeR5d8xlarge      InstanceType = "r5d.8xlarge"
	InstanceTypeR5d12xlarge     InstanceType = "r5d.12xlarge"
	InstanceTypeR5d16xlarge     InstanceType = "r5d.16xlarge"
	InstanceTypeR5d24xlarge     InstanceType = "r5d.24xlarge"
	InstanceTypeR5dMetal        InstanceType = "r5d.metal"
	InstanceTypeR5dnLarge       InstanceType = "r5dn.large"
	InstanceTypeR5dnXlarge      InstanceType = "r5dn.xlarge"
	InstanceTypeR5dn2xlarge     InstanceType = "r5dn.2xlarge"
	InstanceTypeR5dn4xlarge     InstanceType = "r5dn.4xlarge"
	InstanceTypeR5dn8xlarge     InstanceType = "r5dn.8xlarge"
	InstanceTypeR5dn12xlarge    InstanceType = "r5dn.12xlarge"
	InstanceTypeR5dn16xlarge    InstanceType = "r5dn.16xlarge"
	InstanceTypeR5dn24xlarge    InstanceType = "r5dn.24xlarge"
	InstanceTypeR5dnMetal       InstanceType = "r5dn.metal"
	InstanceTypeR5nLarge        InstanceType = "r5n.large"
	InstanceTypeR5nXlarge       InstanceType = "r5n.xlarge"
	InstanceTypeR5n2xlarge      InstanceType = "r5n.2xlarge"
	InstanceTypeR5n4xlarge      InstanceType = "r5n.4xlarge"
	InstanceTypeR5n8xlarge      InstanceType = "r5n.8xlarge"
	InstanceTypeR5n12xlarge     InstanceType = "r5n.12xlarge"
	InstanceTypeR5n16xlarge     InstanceType = "r5n.16xlarge"
	InstanceTypeR5n24xlarge     InstanceType = "r5n.24xlarge"
	InstanceTypeR5nMetal        InstanceType = "r5n.metal"
	InstanceTypeR6gMedium       InstanceType = "r6g.medium"
	InstanceTypeR6gLarge        InstanceType = "r6g.large"
	InstanceTypeR6gXlarge       InstanceType = "r6g.xlarge"
	InstanceTypeR6g2xlarge      InstanceType = "r6g.2xlarge"
	InstanceTypeR6g4xlarge      InstanceType = "r6g.4xlarge"
	InstanceTypeR6g8xlarge      InstanceType = "r6g.8xlarge"
	InstanceTypeR6g12xlarge     InstanceType = "r6g.12xlarge"
	InstanceTypeR6g16xlarge     InstanceType = "r6g.16xlarge"
	InstanceTypeR6gMetal        InstanceType = "r6g.metal"
	InstanceTypeR6gdMedium      InstanceType = "r6gd.medium"
	InstanceTypeR6gdLarge       InstanceType = "r6gd.large"
	InstanceTypeR6gdXlarge      InstanceType = "r6gd.xlarge"
	InstanceTypeR6gd2xlarge     InstanceType = "r6gd.2xlarge"
	InstanceTypeR6gd4xlarge     InstanceType = "r6gd.4xlarge"
	InstanceTypeR6gd8xlarge     InstanceType = "r6gd.8xlarge"
	InstanceTypeR6gd12xlarge    InstanceType = "r6gd.12xlarge"
	InstanceTypeR6gd16xlarge    InstanceType = "r6gd.16xlarge"
	InstanceTypeR6gdMetal       InstanceType = "r6gd.metal"
	InstanceTypeR6iLarge        InstanceType = "r6i.large"
	InstanceTypeR6iXlarge       InstanceType = "r6i.xlarge"
	InstanceTypeR6i2xlarge      InstanceType = "r6i.2xlarge"
	InstanceTypeR6i4xlarge      InstanceType = "r6i.4xlarge"
	InstanceTypeR6i8xlarge      InstanceType = "r6i.8xlarge"
	InstanceTypeR6i12xlarge     InstanceType = "r6i.12xlarge"
	InstanceTypeR6i16xlarge     InstanceType = "r6i.16xlarge"
	InstanceTypeR6i24xlarge     InstanceType = "r6i.24xlarge"
	InstanceTypeR6i32xlarge     InstanceType = "r6i.32xlarge"
	InstanceTypeR6iMetal        InstanceType = "r6i.metal"
	InstanceTypeT1Micro         InstanceType = "t1.micro"
	InstanceTypeT2Nano          InstanceType = "t2.nano"
	InstanceTypeT2Micro         InstanceType = "t2.micro"
	InstanceTypeT2Small         InstanceType = "t2.small"
	InstanceTypeT2Medium        InstanceType = "t2.medium"
	InstanceTypeT2Large         InstanceType = "t2.large"
	InstanceTypeT2Xlarge        InstanceType = "t2.xlarge"
	InstanceTypeT22xlarge       InstanceType = "t2.2xlarge"
	InstanceTypeT3Nano          InstanceType = "t3.nano"
	InstanceTypeT3Micro         InstanceType = "t3.micro"
	InstanceTypeT3Small         InstanceType = "t3.small"
	InstanceTypeT3Medium        InstanceType = "t3.medium"
	InstanceTypeT3Large         InstanceType = "t3.large"
	InstanceTypeT3Xlarge        InstanceType = "t3.xlarge"
	InstanceTypeT32xlarge       InstanceType = "t3.2xlarge"
	InstanceTypeT3aNano         InstanceType = "t3a.nano"
	InstanceTypeT3aMicro        InstanceType = "t3a.micro"
	InstanceTypeT3aSmall        InstanceType = "t3a.small"
	InstanceTypeT3aMedium       InstanceType = "t3a.medium"
	InstanceTypeT3aLarge        InstanceType = "t3a.large"
	InstanceTypeT3aXlarge       InstanceType = "t3a.xlarge"
	InstanceTypeT3a2xlarge      InstanceType = "t3a.2xlarge"
	InstanceTypeT4gNano         InstanceType = "t4g.nano"
	InstanceTypeT4gMicro        InstanceType = "t4g.micro"
	InstanceTypeT4gSmall        InstanceType = "t4g.small"
	InstanceTypeT4gMedium       InstanceType = "t4g.medium"
	InstanceTypeT4gLarge        InstanceType = "t4g.large"
	InstanceTypeT4gXlarge       InstanceType = "t4g.xlarge"
	InstanceTypeT4g2xlarge      InstanceType = "t4g.2xlarge"
	InstanceTypeU6tb156xlarge   InstanceType = "u-6tb1.56xlarge"
	InstanceTypeU6tb1112xlarge  InstanceType = "u-6tb1.112xlarge"
	InstanceTypeU9tb1112xlarge  InstanceType = "u-9tb1.112xlarge"
	InstanceTypeU12tb1112xlarge InstanceType = "u-12tb1.112xlarge"
	InstanceTypeU6tb1Metal      InstanceType = "u-6tb1.metal"
	InstanceTypeU9tb1Metal      InstanceType = "u-9tb1.metal"
	InstanceTypeU12tb1Metal     InstanceType = "u-12tb1.metal"
	InstanceTypeU18tb1Metal     InstanceType = "u-18tb1.metal"
	InstanceTypeU24tb1Metal     InstanceType = "u-24tb1.metal"
	InstanceTypeVt13xlarge      InstanceType = "vt1.3xlarge"
	InstanceTypeVt16xlarge      InstanceType = "vt1.6xlarge"
	InstanceTypeVt124xlarge     InstanceType = "vt1.24xlarge"
	InstanceTypeX116xlarge      InstanceType = "x1.16xlarge"
	InstanceTypeX132xlarge      InstanceType = "x1.32xlarge"
	InstanceTypeX1eXlarge       InstanceType = "x1e.xlarge"
	InstanceTypeX1e2xlarge      InstanceType = "x1e.2xlarge"
	InstanceTypeX1e4xlarge      InstanceType = "x1e.4xlarge"
	InstanceTypeX1e8xlarge      InstanceType = "x1e.8xlarge"
	InstanceTypeX1e16xlarge     InstanceType = "x1e.16xlarge"
	InstanceTypeX1e32xlarge     InstanceType = "x1e.32xlarge"
	InstanceTypeX2iezn2xlarge   InstanceType = "x2iezn.2xlarge"
	InstanceTypeX2iezn4xlarge   InstanceType = "x2iezn.4xlarge"
	InstanceTypeX2iezn6xlarge   InstanceType = "x2iezn.6xlarge"
	InstanceTypeX2iezn8xlarge   InstanceType = "x2iezn.8xlarge"
	InstanceTypeX2iezn12xlarge  InstanceType = "x2iezn.12xlarge"
	InstanceTypeX2ieznMetal     InstanceType = "x2iezn.metal"
	InstanceTypeX2gdMedium      InstanceType = "x2gd.medium"
	InstanceTypeX2gdLarge       InstanceType = "x2gd.large"
	InstanceTypeX2gdXlarge      InstanceType = "x2gd.xlarge"
	InstanceTypeX2gd2xlarge     InstanceType = "x2gd.2xlarge"
	InstanceTypeX2gd4xlarge     InstanceType = "x2gd.4xlarge"
	InstanceTypeX2gd8xlarge     InstanceType = "x2gd.8xlarge"
	InstanceTypeX2gd12xlarge    InstanceType = "x2gd.12xlarge"
	InstanceTypeX2gd16xlarge    InstanceType = "x2gd.16xlarge"
	InstanceTypeX2gdMetal       InstanceType = "x2gd.metal"
	InstanceTypeZ1dLarge        InstanceType = "z1d.large"
	InstanceTypeZ1dXlarge       InstanceType = "z1d.xlarge"
	InstanceTypeZ1d2xlarge      InstanceType = "z1d.2xlarge"
	InstanceTypeZ1d3xlarge      InstanceType = "z1d.3xlarge"
	InstanceTypeZ1d6xlarge      InstanceType = "z1d.6xlarge"
	InstanceTypeZ1d12xlarge     InstanceType = "z1d.12xlarge"
	InstanceTypeZ1dMetal        InstanceType = "z1d.metal"
	InstanceTypeX2idn16xlarge   InstanceType = "x2idn.16xlarge"
	InstanceTypeX2idn24xlarge   InstanceType = "x2idn.24xlarge"
	InstanceTypeX2idn32xlarge   InstanceType = "x2idn.32xlarge"
	InstanceTypeX2iednXlarge    InstanceType = "x2iedn.xlarge"
	InstanceTypeX2iedn2xlarge   InstanceType = "x2iedn.2xlarge"
	InstanceTypeX2iedn4xlarge   InstanceType = "x2iedn.4xlarge"
	InstanceTypeX2iedn8xlarge   InstanceType = "x2iedn.8xlarge"
	InstanceTypeX2iedn16xlarge  InstanceType = "x2iedn.16xlarge"
	InstanceTypeX2iedn24xlarge  InstanceType = "x2iedn.24xlarge"
	InstanceTypeX2iedn32xlarge  InstanceType = "x2iedn.32xlarge"
	InstanceTypeC6aLarge        InstanceType = "c6a.large"
	InstanceTypeC6aXlarge       InstanceType = "c6a.xlarge"
	InstanceTypeC6a2xlarge      InstanceType = "c6a.2xlarge"
	InstanceTypeC6a4xlarge      InstanceType = "c6a.4xlarge"
	InstanceTypeC6a8xlarge      InstanceType = "c6a.8xlarge"
	InstanceTypeC6a12xlarge     InstanceType = "c6a.12xlarge"
	InstanceTypeC6a16xlarge     InstanceType = "c6a.16xlarge"
	InstanceTypeC6a24xlarge     InstanceType = "c6a.24xlarge"
	InstanceTypeC6a32xlarge     InstanceType = "c6a.32xlarge"
	InstanceTypeC6a48xlarge     InstanceType = "c6a.48xlarge"
	InstanceTypeC6aMetal        InstanceType = "c6a.metal"
	InstanceTypeM6aMetal        InstanceType = "m6a.metal"
	InstanceTypeI4iLarge        InstanceType = "i4i.large"
	InstanceTypeI4iXlarge       InstanceType = "i4i.xlarge"
	InstanceTypeI4i2xlarge      InstanceType = "i4i.2xlarge"
	InstanceTypeI4i4xlarge      InstanceType = "i4i.4xlarge"
	InstanceTypeI4i8xlarge      InstanceType = "i4i.8xlarge"
	InstanceTypeI4i16xlarge     InstanceType = "i4i.16xlarge"
	InstanceTypeI4i32xlarge     InstanceType = "i4i.32xlarge"
	InstanceTypeI4iMetal        InstanceType = "i4i.metal"
	InstanceTypeX2idnMetal      InstanceType = "x2idn.metal"
	InstanceTypeX2iednMetal     InstanceType = "x2iedn.metal"
	InstanceTypeC7gMedium       InstanceType = "c7g.medium"
	InstanceTypeC7gLarge        InstanceType = "c7g.large"
	InstanceTypeC7gXlarge       InstanceType = "c7g.xlarge"
	InstanceTypeC7g2xlarge      InstanceType = "c7g.2xlarge"
	InstanceTypeC7g4xlarge      InstanceType = "c7g.4xlarge"
	InstanceTypeC7g8xlarge      InstanceType = "c7g.8xlarge"
	InstanceTypeC7g12xlarge     InstanceType = "c7g.12xlarge"
	InstanceTypeC7g16xlarge     InstanceType = "c7g.16xlarge"
	InstanceTypeMac2Metal       InstanceType = "mac2.metal"
	InstanceTypeC6idLarge       InstanceType = "c6id.large"
	InstanceTypeC6idXlarge      InstanceType = "c6id.xlarge"
	InstanceTypeC6id2xlarge     InstanceType = "c6id.2xlarge"
	InstanceTypeC6id4xlarge     InstanceType = "c6id.4xlarge"
	InstanceTypeC6id8xlarge     InstanceType = "c6id.8xlarge"
	InstanceTypeC6id12xlarge    InstanceType = "c6id.12xlarge"
	InstanceTypeC6id16xlarge    InstanceType = "c6id.16xlarge"
	InstanceTypeC6id24xlarge    InstanceType = "c6id.24xlarge"
	InstanceTypeC6id32xlarge    InstanceType = "c6id.32xlarge"
	InstanceTypeC6idMetal       InstanceType = "c6id.metal"
	InstanceTypeM6idLarge       InstanceType = "m6id.large"
	InstanceTypeM6idXlarge      InstanceType = "m6id.xlarge"
	InstanceTypeM6id2xlarge     InstanceType = "m6id.2xlarge"
	InstanceTypeM6id4xlarge     InstanceType = "m6id.4xlarge"
	InstanceTypeM6id8xlarge     InstanceType = "m6id.8xlarge"
	InstanceTypeM6id12xlarge    InstanceType = "m6id.12xlarge"
	InstanceTypeM6id16xlarge    InstanceType = "m6id.16xlarge"
	InstanceTypeM6id24xlarge    InstanceType = "m6id.24xlarge"
	InstanceTypeM6id32xlarge    InstanceType = "m6id.32xlarge"
	InstanceTypeM6idMetal       InstanceType = "m6id.metal"
	InstanceTypeR6idLarge       InstanceType = "r6id.large"
	InstanceTypeR6idXlarge      InstanceType = "r6id.xlarge"
	InstanceTypeR6id2xlarge     InstanceType = "r6id.2xlarge"
	InstanceTypeR6id4xlarge     InstanceType = "r6id.4xlarge"
	InstanceTypeR6id8xlarge     InstanceType = "r6id.8xlarge"
	InstanceTypeR6id12xlarge    InstanceType = "r6id.12xlarge"
	InstanceTypeR6id16xlarge    InstanceType = "r6id.16xlarge"
	InstanceTypeR6id24xlarge    InstanceType = "r6id.24xlarge"
	InstanceTypeR6id32xlarge    InstanceType = "r6id.32xlarge"
	InstanceTypeR6idMetal       InstanceType = "r6id.metal"
	InstanceTypeR6aLarge        InstanceType = "r6a.large"
	InstanceTypeR6aXlarge       InstanceType = "r6a.xlarge"
	InstanceTypeR6a2xlarge      InstanceType = "r6a.2xlarge"
	InstanceTypeR6a4xlarge      InstanceType = "r6a.4xlarge"
	InstanceTypeR6a8xlarge      InstanceType = "r6a.8xlarge"
	InstanceTypeR6a12xlarge     InstanceType = "r6a.12xlarge"
	InstanceTypeR6a16xlarge     InstanceType = "r6a.16xlarge"
	InstanceTypeR6a24xlarge     InstanceType = "r6a.24xlarge"
	InstanceTypeR6a32xlarge     InstanceType = "r6a.32xlarge"
	InstanceTypeR6a48xlarge     InstanceType = "r6a.48xlarge"
	InstanceTypeR6aMetal        InstanceType = "r6a.metal"
	InstanceTypeP4de24xlarge    InstanceType = "p4de.24xlarge"
	InstanceTypeU3tb156xlarge   InstanceType = "u-3tb1.56xlarge"
	InstanceTypeU18tb1112xlarge InstanceType = "u-18tb1.112xlarge"
	InstanceTypeU24tb1112xlarge InstanceType = "u-24tb1.112xlarge"
	InstanceTypeTrn12xlarge     InstanceType = "trn1.2xlarge"
	InstanceTypeTrn132xlarge    InstanceType = "trn1.32xlarge"
)

Enum values for InstanceType

func (InstanceType) Values added in v0.29.0

func (InstanceType) Values() []InstanceType

Values returns all known values for InstanceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceTypeHypervisor

type InstanceTypeHypervisor string
const (
	InstanceTypeHypervisorNitro InstanceTypeHypervisor = "nitro"
	InstanceTypeHypervisorXen   InstanceTypeHypervisor = "xen"
)

Enum values for InstanceTypeHypervisor

func (InstanceTypeHypervisor) Values added in v0.29.0

Values returns all known values for InstanceTypeHypervisor. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InstanceTypeInfo

type InstanceTypeInfo struct {

	// Indicates whether auto recovery is supported.
	AutoRecoverySupported *bool

	// Indicates whether the instance is a bare metal instance type.
	BareMetal *bool

	// Indicates whether the instance type is a burstable performance instance type.
	BurstablePerformanceSupported *bool

	// Indicates whether the instance type is current generation.
	CurrentGeneration *bool

	// Indicates whether Dedicated Hosts are supported on the instance type.
	DedicatedHostsSupported *bool

	// Describes the Amazon EBS settings for the instance type.
	EbsInfo *EbsInfo

	// Describes the FPGA accelerator settings for the instance type.
	FpgaInfo *FpgaInfo

	// Indicates whether the instance type is eligible for the free tier.
	FreeTierEligible *bool

	// Describes the GPU accelerator settings for the instance type.
	GpuInfo *GpuInfo

	// Indicates whether On-Demand hibernation is supported.
	HibernationSupported *bool

	// The hypervisor for the instance type.
	Hypervisor InstanceTypeHypervisor

	// Describes the Inference accelerator settings for the instance type.
	InferenceAcceleratorInfo *InferenceAcceleratorInfo

	// Describes the instance storage for the instance type.
	InstanceStorageInfo *InstanceStorageInfo

	// Indicates whether instance storage is supported.
	InstanceStorageSupported *bool

	// The instance type. For more information, see Instance types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the
	// Amazon EC2 User Guide.
	InstanceType InstanceType

	// Describes the memory for the instance type.
	MemoryInfo *MemoryInfo

	// Describes the network settings for the instance type.
	NetworkInfo *NetworkInfo

	// Describes the placement group settings for the instance type.
	PlacementGroupInfo *PlacementGroupInfo

	// Describes the processor.
	ProcessorInfo *ProcessorInfo

	// The supported boot modes. For more information, see Boot modes
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
	// Amazon EC2 User Guide.
	SupportedBootModes []BootModeType

	// The supported root device types.
	SupportedRootDeviceTypes []RootDeviceType

	// Indicates whether the instance type is offered for spot or On-Demand.
	SupportedUsageClasses []UsageClassType

	// The supported virtualization types.
	SupportedVirtualizationTypes []VirtualizationType

	// Describes the vCPU configurations for the instance type.
	VCpuInfo *VCpuInfo
	// contains filtered or unexported fields
}

Describes the instance type.

type InstanceTypeInfoFromInstanceRequirements added in v1.21.0

type InstanceTypeInfoFromInstanceRequirements struct {

	// The matching instance type.
	InstanceType *string
	// contains filtered or unexported fields
}

The list of instance types with the specified instance attributes.

type InstanceTypeOffering

type InstanceTypeOffering struct {

	// The instance type. For more information, see Instance types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the
	// Amazon EC2 User Guide.
	InstanceType InstanceType

	// The identifier for the location. This depends on the location type. For example,
	// if the location type is region, the location is the Region code (for example,
	// us-east-2.)
	Location *string

	// The location type.
	LocationType LocationType
	// contains filtered or unexported fields
}

The instance types offered.

type InstanceUsage

type InstanceUsage struct {

	// The ID of the Amazon Web Services account that is making use of the Capacity
	// Reservation.
	AccountId *string

	// The number of instances the Amazon Web Services account currently has in the
	// Capacity Reservation.
	UsedInstanceCount *int32
	// contains filtered or unexported fields
}

Information about the Capacity Reservation usage.

type IntegrateServices added in v1.4.0

type IntegrateServices struct {

	// Information about the integration with Amazon Athena.
	AthenaIntegrations []AthenaIntegration
	// contains filtered or unexported fields
}

Describes service integrations with VPC Flow logs.

type InterfacePermissionType

type InterfacePermissionType string
const (
	InterfacePermissionTypeInstanceAttach InterfacePermissionType = "INSTANCE-ATTACH"
	InterfacePermissionTypeEipAssociate   InterfacePermissionType = "EIP-ASSOCIATE"
)

Enum values for InterfacePermissionType

func (InterfacePermissionType) Values added in v0.29.0

Values returns all known values for InterfacePermissionType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InterfaceProtocolType added in v1.10.0

type InterfaceProtocolType string
const (
	InterfaceProtocolTypeVlan InterfaceProtocolType = "VLAN"
	InterfaceProtocolTypeGre  InterfaceProtocolType = "GRE"
)

Enum values for InterfaceProtocolType

func (InterfaceProtocolType) Values added in v1.10.0

Values returns all known values for InterfaceProtocolType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type InternetGateway

type InternetGateway struct {

	// Any VPCs attached to the internet gateway.
	Attachments []InternetGatewayAttachment

	// The ID of the internet gateway.
	InternetGatewayId *string

	// The ID of the Amazon Web Services account that owns the internet gateway.
	OwnerId *string

	// Any tags assigned to the internet gateway.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an internet gateway.

type InternetGatewayAttachment

type InternetGatewayAttachment struct {

	// The current state of the attachment. For an internet gateway, the state is
	// available when attached to a VPC; otherwise, this value is not returned.
	State AttachmentStatus

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes the attachment of a VPC to an internet gateway or an egress-only internet gateway.

type IpAddressType added in v1.42.0

type IpAddressType string
const (
	IpAddressTypeIpv4      IpAddressType = "ipv4"
	IpAddressTypeDualstack IpAddressType = "dualstack"
	IpAddressTypeIpv6      IpAddressType = "ipv6"
)

Enum values for IpAddressType

func (IpAddressType) Values added in v1.42.0

func (IpAddressType) Values() []IpAddressType

Values returns all known values for IpAddressType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpPermission

type IpPermission struct {

	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type
	// number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all
	// ICMP/ICMPv6 types, you must specify all codes.
	FromPort *int32

	// The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers
	// (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). [VPC
	// only] Use -1 to specify all protocols. When authorizing security group rules,
	// specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows
	// traffic on all ports, regardless of any port range you specify. For tcp, udp,
	// and icmp, you must specify a port range. For icmpv6, the port range is optional;
	// if you omit the port range, traffic for all types and codes is allowed.
	IpProtocol *string

	// The IPv4 ranges.
	IpRanges []IpRange

	// [VPC only] The IPv6 ranges.
	Ipv6Ranges []Ipv6Range

	// [VPC only] The prefix list IDs.
	PrefixListIds []PrefixListId

	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A
	// value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6
	// types, you must specify all codes.
	ToPort *int32

	// The security group and Amazon Web Services account ID pairs.
	UserIdGroupPairs []UserIdGroupPair
	// contains filtered or unexported fields
}

Describes a set of permissions for a security group rule.

type IpRange

type IpRange struct {

	// The IPv4 CIDR range. You can either specify a CIDR range or a source security
	// group, not both. To specify a single IPv4 address, use the /32 prefix length.
	CidrIp *string

	// A description for the security group rule that references this IPv4 address
	// range. Constraints: Up to 255 characters in length. Allowed characters are a-z,
	// A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
	Description *string
	// contains filtered or unexported fields
}

Describes an IPv4 range.

type Ipam added in v1.25.0

type Ipam struct {

	// The description for the IPAM.
	Description *string

	// The ARN of the IPAM.
	IpamArn *string

	// The ID of the IPAM.
	IpamId *string

	// The Amazon Web Services Region of the IPAM.
	IpamRegion *string

	// The operating Regions for an IPAM. Operating Regions are Amazon Web Services
	// Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only
	// discovers and monitors resources in the Amazon Web Services Regions you select
	// as operating Regions. For more information about operating Regions, see Create
	// an IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) in the
	// Amazon VPC IPAM User Guide.
	OperatingRegions []IpamOperatingRegion

	// The Amazon Web Services account ID of the owner of the IPAM.
	OwnerId *string

	// The ID of the IPAM's default private scope.
	PrivateDefaultScopeId *string

	// The ID of the IPAM's default public scope.
	PublicDefaultScopeId *string

	// The number of scopes in the IPAM. The scope quota is 5. For more information on
	// quotas, see Quotas in IPAM
	// (https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html) in the Amazon VPC
	// IPAM User Guide.
	ScopeCount *int32

	// The state of the IPAM.
	State IpamState

	// The key/value combination of a tag assigned to the resource. Use the tag key in
	// the filter name and the tag value as the filter value. For example, to find all
	// resources that have a tag with the key Owner and the value TeamA, specify
	// tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag
	// contains filtered or unexported fields
}

IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? (https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html) in the Amazon VPC IPAM User Guide.

type IpamAddressHistoryRecord added in v1.25.0

type IpamAddressHistoryRecord struct {

	// The CIDR of the resource.
	ResourceCidr *string

	// The compliance status of a resource. For more information on compliance
	// statuses, see Monitor CIDR usage by resource
	// (https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html)
	// in the Amazon VPC IPAM User Guide.
	ResourceComplianceStatus IpamComplianceStatus

	// The ID of the resource.
	ResourceId *string

	// The name of the resource.
	ResourceName *string

	// The overlap status of an IPAM resource. The overlap status tells you if the CIDR
	// for a resource overlaps with another CIDR in the scope. For more information on
	// overlap statuses, see Monitor CIDR usage by resource
	// (https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html)
	// in the Amazon VPC IPAM User Guide.
	ResourceOverlapStatus IpamOverlapStatus

	// The ID of the resource owner.
	ResourceOwnerId *string

	// The Amazon Web Services Region of the resource.
	ResourceRegion *string

	// The type of the resource.
	ResourceType IpamAddressHistoryResourceType

	// Sampled end time of the resource-to-CIDR association within the IPAM scope.
	// Changes are picked up in periodic snapshots, so the end time may have occurred
	// before this specific time.
	SampledEndTime *time.Time

	// Sampled start time of the resource-to-CIDR association within the IPAM scope.
	// Changes are picked up in periodic snapshots, so the start time may have occurred
	// before this specific time.
	SampledStartTime *time.Time

	// The VPC ID of the resource.
	VpcId *string
	// contains filtered or unexported fields
}

The historical record of a CIDR within an IPAM scope. For more information, see View the history of IP addresses (https://docs.aws.amazon.com/vpc/latest/ipam/view-history-cidr-ipam.html) in the Amazon VPC IPAM User Guide.

type IpamAddressHistoryResourceType added in v1.25.0

type IpamAddressHistoryResourceType string
const (
	IpamAddressHistoryResourceTypeEip              IpamAddressHistoryResourceType = "eip"
	IpamAddressHistoryResourceTypeVpc              IpamAddressHistoryResourceType = "vpc"
	IpamAddressHistoryResourceTypeSubnet           IpamAddressHistoryResourceType = "subnet"
	IpamAddressHistoryResourceTypeNetworkInterface IpamAddressHistoryResourceType = "network-interface"
	IpamAddressHistoryResourceTypeInstance         IpamAddressHistoryResourceType = "instance"
)

Enum values for IpamAddressHistoryResourceType

func (IpamAddressHistoryResourceType) Values added in v1.25.0

Values returns all known values for IpamAddressHistoryResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamCidrAuthorizationContext added in v1.25.0

type IpamCidrAuthorizationContext struct {

	// The plain-text authorization message for the prefix and account.
	Message *string

	// The signed authorization message for the prefix and account.
	Signature *string
	// contains filtered or unexported fields
}

A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.

type IpamComplianceStatus added in v1.25.0

type IpamComplianceStatus string
const (
	IpamComplianceStatusCompliant    IpamComplianceStatus = "compliant"
	IpamComplianceStatusNoncompliant IpamComplianceStatus = "noncompliant"
	IpamComplianceStatusUnmanaged    IpamComplianceStatus = "unmanaged"
	IpamComplianceStatusIgnored      IpamComplianceStatus = "ignored"
)

Enum values for IpamComplianceStatus

func (IpamComplianceStatus) Values added in v1.25.0

Values returns all known values for IpamComplianceStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamManagementState added in v1.25.0

type IpamManagementState string
const (
	IpamManagementStateManaged   IpamManagementState = "managed"
	IpamManagementStateUnmanaged IpamManagementState = "unmanaged"
	IpamManagementStateIgnored   IpamManagementState = "ignored"
)

Enum values for IpamManagementState

func (IpamManagementState) Values added in v1.25.0

Values returns all known values for IpamManagementState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamOperatingRegion added in v1.25.0

type IpamOperatingRegion struct {

	// The name of the operating Region.
	RegionName *string
	// contains filtered or unexported fields
}

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions. For more information about operating Regions, see Create an IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) in the Amazon VPC IPAM User Guide.

type IpamOverlapStatus added in v1.25.0

type IpamOverlapStatus string
const (
	IpamOverlapStatusOverlapping    IpamOverlapStatus = "overlapping"
	IpamOverlapStatusNonoverlapping IpamOverlapStatus = "nonoverlapping"
	IpamOverlapStatusIgnored        IpamOverlapStatus = "ignored"
)

Enum values for IpamOverlapStatus

func (IpamOverlapStatus) Values added in v1.25.0

Values returns all known values for IpamOverlapStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamPool added in v1.25.0

type IpamPool struct {

	// The address family of the pool.
	AddressFamily AddressFamily

	// The default netmask length for allocations added to this pool. If, for example,
	// the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new
	// allocations will default to 10.0.0.0/16.
	AllocationDefaultNetmaskLength *int32

	// The maximum netmask length possible for CIDR allocations in this IPAM pool to be
	// compliant. The maximum netmask length must be greater than the minimum netmask
	// length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask
	// lengths for IPv6 addresses are 0 - 128.
	AllocationMaxNetmaskLength *int32

	// The minimum netmask length required for CIDR allocations in this IPAM pool to be
	// compliant. The minimum netmask length must be less than the maximum netmask
	// length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask
	// lengths for IPv6 addresses are 0 - 128.
	AllocationMinNetmaskLength *int32

	// Tags that are required for resources that use CIDRs from this IPAM pool.
	// Resources that do not have these tags will not be allowed to allocate space from
	// the pool. If the resources have their tags changed after they have allocated
	// space or if the allocation tagging requirements are changed on the pool, the
	// resource may be marked as noncompliant.
	AllocationResourceTags []IpamResourceTag

	// If selected, IPAM will continuously look for resources within the CIDR range of
	// this pool and automatically import them as allocations into your IPAM. The CIDRs
	// that will be allocated for these resources must not already be allocated to
	// other resources in order for the import to succeed. IPAM will import a CIDR
	// regardless of its compliance with the pool's allocation rules, so a resource
	// might be imported and subsequently marked as noncompliant. If IPAM discovers
	// multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM
	// discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of
	// them only. A locale must be set on the pool for this feature to work.
	AutoImport *bool

	// Limits which service in Amazon Web Services that the pool can be used in. "ec2",
	// for example, allows users to use space for Elastic IP addresses and VPCs.
	AwsService IpamPoolAwsService

	// The description of the IPAM pool.
	Description *string

	// The ARN of the IPAM.
	IpamArn *string

	// The ARN of the IPAM pool.
	IpamPoolArn *string

	// The ID of the IPAM pool.
	IpamPoolId *string

	// The Amazon Web Services Region of the IPAM pool.
	IpamRegion *string

	// The ARN of the scope of the IPAM pool.
	IpamScopeArn *string

	// In IPAM, a scope is the highest-level container within IPAM. An IPAM contains
	// two default scopes. Each scope represents the IP space for a single network. The
	// private scope is intended for all private IP address space. The public scope is
	// intended for all public IP address space. Scopes enable you to reuse IP
	// addresses across multiple unconnected networks without causing IP address
	// overlap or conflict.
	IpamScopeType IpamScopeType

	// The locale of the IPAM pool. In IPAM, the locale is the Amazon Web Services
	// Region where you want to make an IPAM pool available for allocations. Only
	// resources in the same Region as the locale of the pool can get IP address
	// allocations from the pool. You can only allocate a CIDR for a VPC, for example,
	// from an IPAM pool that shares a locale with the VPC’s Region. Note that once you
	// choose a Locale for a pool, you cannot modify it. If you choose an Amazon Web
	// Services Region for locale that has not been configured as an operating Region
	// for the IPAM, you'll get an error.
	Locale *string

	// The Amazon Web Services account ID of the owner of the IPAM pool.
	OwnerId *string

	// The depth of pools in your IPAM pool. The pool depth quota is 10. For more
	// information, see Quotas in IPAM
	// (https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html) in the Amazon VPC
	// IPAM User Guide.
	PoolDepth *int32

	// Determines if a pool is publicly advertisable. This option is not available for
	// pools with AddressFamily set to ipv4.
	PubliclyAdvertisable *bool

	// The ID of the source IPAM pool. You can use this option to create an IPAM pool
	// within an existing source pool.
	SourceIpamPoolId *string

	// The state of the IPAM pool.
	State IpamPoolState

	// A message related to the failed creation of an IPAM pool.
	StateMessage *string

	// The key/value combination of a tag assigned to the resource. Use the tag key in
	// the filter name and the tag value as the filter value. For example, to find all
	// resources that have a tag with the key Owner and the value TeamA, specify
	// tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag
	// contains filtered or unexported fields
}

In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

type IpamPoolAllocation added in v1.25.0

type IpamPoolAllocation struct {

	// The CIDR for the allocation. A CIDR is a representation of an IP address and its
	// associated network mask (or netmask) and refers to a range of IP addresses. An
	// IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.
	Cidr *string

	// A description of the pool allocation.
	Description *string

	// The ID of an allocation.
	IpamPoolAllocationId *string

	// The ID of the resource.
	ResourceId *string

	// The owner of the resource.
	ResourceOwner *string

	// The Amazon Web Services Region of the resource.
	ResourceRegion *string

	// The type of the resource.
	ResourceType IpamPoolAllocationResourceType
	// contains filtered or unexported fields
}

In IPAM, an allocation is a CIDR assignment from an IPAM pool to another resource or IPAM pool.

type IpamPoolAllocationResourceType added in v1.25.0

type IpamPoolAllocationResourceType string
const (
	IpamPoolAllocationResourceTypeIpamPool          IpamPoolAllocationResourceType = "ipam-pool"
	IpamPoolAllocationResourceTypeVpc               IpamPoolAllocationResourceType = "vpc"
	IpamPoolAllocationResourceTypeEc2PublicIpv4Pool IpamPoolAllocationResourceType = "ec2-public-ipv4-pool"
	IpamPoolAllocationResourceTypeCustom            IpamPoolAllocationResourceType = "custom"
)

Enum values for IpamPoolAllocationResourceType

func (IpamPoolAllocationResourceType) Values added in v1.25.0

Values returns all known values for IpamPoolAllocationResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolAwsService added in v1.25.0

type IpamPoolAwsService string
const (
	IpamPoolAwsServiceEc2 IpamPoolAwsService = "ec2"
)

Enum values for IpamPoolAwsService

func (IpamPoolAwsService) Values added in v1.25.0

Values returns all known values for IpamPoolAwsService. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolCidr added in v1.25.0

type IpamPoolCidr struct {

	// The CIDR provisioned to the IPAM pool. A CIDR is a representation of an IP
	// address and its associated network mask (or netmask) and refers to a range of IP
	// addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is
	// 2001:DB8::/32.
	Cidr *string

	// Details related to why an IPAM pool CIDR failed to be provisioned.
	FailureReason *IpamPoolCidrFailureReason

	// The state of the CIDR.
	State IpamPoolCidrState
	// contains filtered or unexported fields
}

A CIDR provisioned to an IPAM pool.

type IpamPoolCidrFailureCode added in v1.25.0

type IpamPoolCidrFailureCode string
const (
	IpamPoolCidrFailureCodeCidrNotAvailable IpamPoolCidrFailureCode = "cidr-not-available"
)

Enum values for IpamPoolCidrFailureCode

func (IpamPoolCidrFailureCode) Values added in v1.25.0

Values returns all known values for IpamPoolCidrFailureCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolCidrFailureReason added in v1.25.0

type IpamPoolCidrFailureReason struct {

	// An error code related to why an IPAM pool CIDR failed to be provisioned.
	Code IpamPoolCidrFailureCode

	// A message related to why an IPAM pool CIDR failed to be provisioned.
	Message *string
	// contains filtered or unexported fields
}

Details related to why an IPAM pool CIDR failed to be provisioned.

type IpamPoolCidrState added in v1.25.0

type IpamPoolCidrState string
const (
	IpamPoolCidrStatePendingProvision   IpamPoolCidrState = "pending-provision"
	IpamPoolCidrStateProvisioned        IpamPoolCidrState = "provisioned"
	IpamPoolCidrStateFailedProvision    IpamPoolCidrState = "failed-provision"
	IpamPoolCidrStatePendingDeprovision IpamPoolCidrState = "pending-deprovision"
	IpamPoolCidrStateDeprovisioned      IpamPoolCidrState = "deprovisioned"
	IpamPoolCidrStateFailedDeprovision  IpamPoolCidrState = "failed-deprovision"
	IpamPoolCidrStatePendingImport      IpamPoolCidrState = "pending-import"
	IpamPoolCidrStateFailedImport       IpamPoolCidrState = "failed-import"
)

Enum values for IpamPoolCidrState

func (IpamPoolCidrState) Values added in v1.25.0

Values returns all known values for IpamPoolCidrState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolState added in v1.25.0

type IpamPoolState string
const (
	IpamPoolStateCreateInProgress  IpamPoolState = "create-in-progress"
	IpamPoolStateCreateComplete    IpamPoolState = "create-complete"
	IpamPoolStateCreateFailed      IpamPoolState = "create-failed"
	IpamPoolStateModifyInProgress  IpamPoolState = "modify-in-progress"
	IpamPoolStateModifyComplete    IpamPoolState = "modify-complete"
	IpamPoolStateModifyFailed      IpamPoolState = "modify-failed"
	IpamPoolStateDeleteInProgress  IpamPoolState = "delete-in-progress"
	IpamPoolStateDeleteComplete    IpamPoolState = "delete-complete"
	IpamPoolStateDeleteFailed      IpamPoolState = "delete-failed"
	IpamPoolStateIsolateInProgress IpamPoolState = "isolate-in-progress"
	IpamPoolStateIsolateComplete   IpamPoolState = "isolate-complete"
	IpamPoolStateRestoreInProgress IpamPoolState = "restore-in-progress"
)

Enum values for IpamPoolState

func (IpamPoolState) Values added in v1.25.0

func (IpamPoolState) Values() []IpamPoolState

Values returns all known values for IpamPoolState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamResourceCidr added in v1.25.0

type IpamResourceCidr struct {

	// The compliance status of the IPAM resource. For more information on compliance
	// statuses, see Monitor CIDR usage by resource
	// (https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html)
	// in the Amazon VPC IPAM User Guide.
	ComplianceStatus IpamComplianceStatus

	// The percentage of IP address space in use. To convert the decimal to a
	// percentage, multiply the decimal by 100. Note the following:
	//
	// * For a resources
	// that are VPCs, this is the percentage of IP address space in the VPC that's
	// taken up by subnet CIDRs.
	//
	// * For resources that are subnets, if the subnet has
	// an IPv4 CIDR provisioned to it, this is the percentage of IPv4 address space in
	// the subnet that's in use. If the subnet has an IPv6 CIDR provisioned to it, the
	// percentage of IPv6 address space in use is not represented. The percentage of
	// IPv6 address space in use cannot currently be calculated.
	//
	// * For resources that
	// are public IPv4 pools, this is the percentage of IP address space in the pool
	// that's been allocated to Elastic IP addresses (EIPs).
	IpUsage *float64

	// The IPAM ID for an IPAM resource.
	IpamId *string

	// The pool ID for an IPAM resource.
	IpamPoolId *string

	// The scope ID for an IPAM resource.
	IpamScopeId *string

	// The management state of the resource. For more information about management
	// states, see Monitor CIDR usage by resource
	// (https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html)
	// in the Amazon VPC IPAM User Guide.
	ManagementState IpamManagementState

	// The overlap status of an IPAM resource. The overlap status tells you if the CIDR
	// for a resource overlaps with another CIDR in the scope. For more information on
	// overlap statuses, see Monitor CIDR usage by resource
	// (https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html)
	// in the Amazon VPC IPAM User Guide.
	OverlapStatus IpamOverlapStatus

	// The CIDR for an IPAM resource.
	ResourceCidr *string

	// The ID of an IPAM resource.
	ResourceId *string

	// The name of an IPAM resource.
	ResourceName *string

	// The Amazon Web Services account number of the owner of an IPAM resource.
	ResourceOwnerId *string

	// The Amazon Web Services Region for an IPAM resource.
	ResourceRegion *string

	// The tags for an IPAM resource.
	ResourceTags []IpamResourceTag

	// The type of IPAM resource.
	ResourceType IpamResourceType

	// The ID of a VPC.
	VpcId *string
	// contains filtered or unexported fields
}

The CIDR for an IPAM resource.

type IpamResourceTag added in v1.25.0

type IpamResourceTag struct {

	// The key of a tag assigned to the resource. Use this filter to find all resources
	// assigned a tag with a specific key, regardless of the tag value.
	Key *string

	// The value of the tag.
	Value *string
	// contains filtered or unexported fields
}

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

type IpamResourceType added in v1.25.0

type IpamResourceType string
const (
	IpamResourceTypeVpc            IpamResourceType = "vpc"
	IpamResourceTypeSubnet         IpamResourceType = "subnet"
	IpamResourceTypeEip            IpamResourceType = "eip"
	IpamResourceTypePublicIpv4Pool IpamResourceType = "public-ipv4-pool"
	IpamResourceTypeIpv6Pool       IpamResourceType = "ipv6-pool"
)

Enum values for IpamResourceType

func (IpamResourceType) Values added in v1.25.0

Values returns all known values for IpamResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamScope added in v1.25.0

type IpamScope struct {

	// The description of the scope.
	Description *string

	// The ARN of the IPAM.
	IpamArn *string

	// The Amazon Web Services Region of the IPAM scope.
	IpamRegion *string

	// The ARN of the scope.
	IpamScopeArn *string

	// The ID of the scope.
	IpamScopeId *string

	// The type of the scope.
	IpamScopeType IpamScopeType

	// Defines if the scope is the default scope or not.
	IsDefault *bool

	// The Amazon Web Services account ID of the owner of the scope.
	OwnerId *string

	// The number of pools in the scope.
	PoolCount *int32

	// The state of the IPAM scope.
	State IpamScopeState

	// The key/value combination of a tag assigned to the resource. Use the tag key in
	// the filter name and the tag value as the filter value. For example, to find all
	// resources that have a tag with the key Owner and the value TeamA, specify
	// tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag
	// contains filtered or unexported fields
}

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict. For more information, see How IPAM works (https://docs.aws.amazon.com/vpc/latest/ipam/how-it-works-ipam.html) in the Amazon VPC IPAM User Guide.

type IpamScopeState added in v1.25.0

type IpamScopeState string
const (
	IpamScopeStateCreateInProgress  IpamScopeState = "create-in-progress"
	IpamScopeStateCreateComplete    IpamScopeState = "create-complete"
	IpamScopeStateCreateFailed      IpamScopeState = "create-failed"
	IpamScopeStateModifyInProgress  IpamScopeState = "modify-in-progress"
	IpamScopeStateModifyComplete    IpamScopeState = "modify-complete"
	IpamScopeStateModifyFailed      IpamScopeState = "modify-failed"
	IpamScopeStateDeleteInProgress  IpamScopeState = "delete-in-progress"
	IpamScopeStateDeleteComplete    IpamScopeState = "delete-complete"
	IpamScopeStateDeleteFailed      IpamScopeState = "delete-failed"
	IpamScopeStateIsolateInProgress IpamScopeState = "isolate-in-progress"
	IpamScopeStateIsolateComplete   IpamScopeState = "isolate-complete"
	IpamScopeStateRestoreInProgress IpamScopeState = "restore-in-progress"
)

Enum values for IpamScopeState

func (IpamScopeState) Values added in v1.25.0

func (IpamScopeState) Values() []IpamScopeState

Values returns all known values for IpamScopeState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamScopeType added in v1.25.0

type IpamScopeType string
const (
	IpamScopeTypePublic  IpamScopeType = "public"
	IpamScopeTypePrivate IpamScopeType = "private"
)

Enum values for IpamScopeType

func (IpamScopeType) Values added in v1.25.0

func (IpamScopeType) Values() []IpamScopeType

Values returns all known values for IpamScopeType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type IpamState added in v1.25.0

type IpamState string
const (
	IpamStateCreateInProgress  IpamState = "create-in-progress"
	IpamStateCreateComplete    IpamState = "create-complete"
	IpamStateCreateFailed      IpamState = "create-failed"
	IpamStateModifyInProgress  IpamState = "modify-in-progress"
	IpamStateModifyComplete    IpamState = "modify-complete"
	IpamStateModifyFailed      IpamState = "modify-failed"
	IpamStateDeleteInProgress  IpamState = "delete-in-progress"
	IpamStateDeleteComplete    IpamState = "delete-complete"
	IpamStateDeleteFailed      IpamState = "delete-failed"
	IpamStateIsolateInProgress IpamState = "isolate-in-progress"
	IpamStateIsolateComplete   IpamState = "isolate-complete"
	IpamStateRestoreInProgress IpamState = "restore-in-progress"
)

Enum values for IpamState

func (IpamState) Values added in v1.25.0

func (IpamState) Values() []IpamState

Values returns all known values for IpamState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Ipv4PrefixSpecification added in v1.13.0

type Ipv4PrefixSpecification struct {

	// The IPv4 prefix. For information, see  Assigning prefixes to Amazon EC2 network
	// interfaces
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Describes an IPv4 prefix.

type Ipv4PrefixSpecificationRequest added in v1.13.0

type Ipv4PrefixSpecificationRequest struct {

	// The IPv4 prefix. For information, see  Assigning prefixes to Amazon EC2 network
	// interfaces
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Describes the IPv4 prefix option for a network interface.

type Ipv4PrefixSpecificationResponse added in v1.13.0

type Ipv4PrefixSpecificationResponse struct {

	// The IPv4 delegated prefixes assigned to the network interface.
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Information about the IPv4 delegated prefixes assigned to a network interface.

type Ipv6CidrAssociation

type Ipv6CidrAssociation struct {

	// The resource that's associated with the IPv6 CIDR block.
	AssociatedResource *string

	// The IPv6 CIDR block.
	Ipv6Cidr *string
	// contains filtered or unexported fields
}

Describes an IPv6 CIDR block association.

type Ipv6CidrBlock

type Ipv6CidrBlock struct {

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string
	// contains filtered or unexported fields
}

Describes an IPv6 CIDR block.

type Ipv6Pool

type Ipv6Pool struct {

	// The description for the address pool.
	Description *string

	// The CIDR blocks for the address pool.
	PoolCidrBlocks []PoolCidrBlock

	// The ID of the address pool.
	PoolId *string

	// Any tags for the address pool.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an IPv6 address pool.

type Ipv6PrefixSpecification added in v1.13.0

type Ipv6PrefixSpecification struct {

	// The IPv6 prefix.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Describes the IPv6 prefix.

type Ipv6PrefixSpecificationRequest added in v1.13.0

type Ipv6PrefixSpecificationRequest struct {

	// The IPv6 prefix.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Describes the IPv4 prefix option for a network interface.

type Ipv6PrefixSpecificationResponse added in v1.13.0

type Ipv6PrefixSpecificationResponse struct {

	// The IPv6 delegated prefixes assigned to the network interface.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Information about the IPv6 delegated prefixes assigned to a network interface.

type Ipv6Range

type Ipv6Range struct {

	// The IPv6 CIDR range. You can either specify a CIDR range or a source security
	// group, not both. To specify a single IPv6 address, use the /128 prefix length.
	CidrIpv6 *string

	// A description for the security group rule that references this IPv6 address
	// range. Constraints: Up to 255 characters in length. Allowed characters are a-z,
	// A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
	Description *string
	// contains filtered or unexported fields
}

[EC2-VPC only] Describes an IPv6 range.

type Ipv6SupportValue

type Ipv6SupportValue string
const (
	Ipv6SupportValueEnable  Ipv6SupportValue = "enable"
	Ipv6SupportValueDisable Ipv6SupportValue = "disable"
)

Enum values for Ipv6SupportValue

func (Ipv6SupportValue) Values added in v0.29.0

Values returns all known values for Ipv6SupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type KeyFormat added in v1.37.0

type KeyFormat string
const (
	KeyFormatPem KeyFormat = "pem"
	KeyFormatPpk KeyFormat = "ppk"
)

Enum values for KeyFormat

func (KeyFormat) Values added in v1.37.0

func (KeyFormat) Values() []KeyFormat

Values returns all known values for KeyFormat. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type KeyPairInfo

type KeyPairInfo struct {

	// If you used Amazon EC2 to create the key pair, this is the date and time when
	// the key was created, in ISO 8601 date-time format
	// (https://www.iso.org/iso-8601-date-and-time-format.html), in the UTC time zone.
	// If you imported an existing key pair to Amazon EC2, this is the date and time
	// the key was imported, in ISO 8601 date-time format
	// (https://www.iso.org/iso-8601-date-and-time-format.html), in the UTC time zone.
	CreateTime *time.Time

	// If you used CreateKeyPair to create the key pair:
	//
	// * For RSA key pairs, the key
	// fingerprint is the SHA-1 digest of the DER encoded private key.
	//
	// * For ED25519
	// key pairs, the key fingerprint is the base64-encoded SHA-256 digest, which is
	// the default for OpenSSH, starting with OpenSSH 6.8
	// (http://www.openssh.com/txt/release-6.8).
	//
	// If you used ImportKeyPair to provide
	// Amazon Web Services the public key:
	//
	// * For RSA key pairs, the key fingerprint is
	// the MD5 public key fingerprint as specified in section 4 of RFC4716.
	//
	// * For
	// ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 digest,
	// which is the default for OpenSSH, starting with OpenSSH 6.8
	// (http://www.openssh.com/txt/release-6.8).
	KeyFingerprint *string

	// The name of the key pair.
	KeyName *string

	// The ID of the key pair.
	KeyPairId *string

	// The type of key pair.
	KeyType KeyType

	// The public key material.
	PublicKey *string

	// Any tags applied to the key pair.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a key pair.

type KeyType added in v1.14.0

type KeyType string
const (
	KeyTypeRsa     KeyType = "rsa"
	KeyTypeEd25519 KeyType = "ed25519"
)

Enum values for KeyType

func (KeyType) Values added in v1.14.0

func (KeyType) Values() []KeyType

Values returns all known values for KeyType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LastError

type LastError struct {

	// The error code for the VPC endpoint error.
	Code *string

	// The error message for the VPC endpoint error.
	Message *string
	// contains filtered or unexported fields
}

The last error that occurred for a VPC endpoint.

type LaunchPermission

type LaunchPermission struct {

	// The name of the group.
	Group PermissionGroup

	// The Amazon Resource Name (ARN) of an organization.
	OrganizationArn *string

	// The Amazon Resource Name (ARN) of an organizational unit (OU).
	OrganizationalUnitArn *string

	// The Amazon Web Services account ID. Constraints: Up to 10 000 account IDs can be
	// specified in a single request.
	UserId *string
	// contains filtered or unexported fields
}

Describes a launch permission.

type LaunchPermissionModifications

type LaunchPermissionModifications struct {

	// The Amazon Web Services account ID, organization ARN, or OU ARN to add to the
	// list of launch permissions for the AMI.
	Add []LaunchPermission

	// The Amazon Web Services account ID, organization ARN, or OU ARN to remove from
	// the list of launch permissions for the AMI.
	Remove []LaunchPermission
	// contains filtered or unexported fields
}

Describes a launch permission modification.

type LaunchSpecification

type LaunchSpecification struct {

	// Deprecated.
	AddressingType *string

	// One or more block device mapping entries.
	BlockDeviceMappings []BlockDeviceMapping

	// Indicates whether the instance is optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS Optimized
	// instance. Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfileSpecification

	// The ID of the AMI.
	ImageId *string

	// The instance type. Only one instance type can be specified.
	InstanceType InstanceType

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Describes the monitoring of an instance.
	Monitoring *RunInstancesMonitoringEnabled

	// One or more network interfaces. If you specify a network interface, you must
	// specify subnet IDs and security group IDs using the network interface.
	NetworkInterfaces []InstanceNetworkInterfaceSpecification

	// The placement information for the instance.
	Placement *SpotPlacement

	// The ID of the RAM disk.
	RamdiskId *string

	// One or more security groups. When requesting instances in a VPC, you must
	// specify the IDs of the security groups. When requesting instances in
	// EC2-Classic, you can specify the names or the IDs of the security groups.
	SecurityGroups []GroupIdentifier

	// The ID of the subnet in which to launch the instance.
	SubnetId *string

	// The Base64-encoded user data for the instance.
	UserData *string
	// contains filtered or unexported fields
}

Describes the launch specification for an instance.

type LaunchTemplate

type LaunchTemplate struct {

	// The time launch template was created.
	CreateTime *time.Time

	// The principal that created the launch template.
	CreatedBy *string

	// The version number of the default version of the launch template.
	DefaultVersionNumber *int64

	// The version number of the latest version of the launch template.
	LatestVersionNumber *int64

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// The tags for the launch template.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a launch template.

type LaunchTemplateAndOverridesResponse

type LaunchTemplateAndOverridesResponse struct {

	// The launch template.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecification

	// Any parameters that you specify override the same parameters in the launch
	// template.
	Overrides *FleetLaunchTemplateOverrides
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type LaunchTemplateAutoRecoveryState added in v1.34.0

type LaunchTemplateAutoRecoveryState string
const (
	LaunchTemplateAutoRecoveryStateDefault  LaunchTemplateAutoRecoveryState = "default"
	LaunchTemplateAutoRecoveryStateDisabled LaunchTemplateAutoRecoveryState = "disabled"
)

Enum values for LaunchTemplateAutoRecoveryState

func (LaunchTemplateAutoRecoveryState) Values added in v1.34.0

Values returns all known values for LaunchTemplateAutoRecoveryState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateBlockDeviceMapping

type LaunchTemplateBlockDeviceMapping struct {

	// The device name.
	DeviceName *string

	// Information about the block device for an EBS volume.
	Ebs *LaunchTemplateEbsBlockDevice

	// To omit the device from the block device mapping, specify an empty string.
	NoDevice *string

	// The virtual device name (ephemeralN).
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping.

type LaunchTemplateBlockDeviceMappingRequest

type LaunchTemplateBlockDeviceMappingRequest struct {

	// The device name (for example, /dev/sdh or xvdh).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *LaunchTemplateEbsBlockDeviceRequest

	// To omit the device from the block device mapping, specify an empty string.
	NoDevice *string

	// The virtual device name (ephemeralN). Instance store volumes are numbered
	// starting from 0. An instance type with 2 available instance store volumes can
	// specify mappings for ephemeral0 and ephemeral1. The number of available instance
	// store volumes depends on the instance type. After you connect to the instance,
	// you must mount the volume.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping.

type LaunchTemplateCapacityReservationSpecificationRequest

type LaunchTemplateCapacityReservationSpecificationRequest struct {

	// Indicates the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	// * open - The instance can run in any open Capacity Reservation that
	// has matching attributes (instance type, platform, Availability Zone).
	//
	// * none -
	// The instance avoids running in a Capacity Reservation even if one is available.
	// The instance runs in On-Demand capacity.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the target Capacity Reservation or Capacity Reservation group.
	CapacityReservationTarget *CapacityReservationTarget
	// contains filtered or unexported fields
}

Describes an instance's Capacity Reservation targeting option. You can specify only one option at a time. Use the CapacityReservationPreference parameter to configure the instance to run in On-Demand capacity or to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). Use the CapacityReservationTarget parameter to explicitly target a specific Capacity Reservation or a Capacity Reservation group.

type LaunchTemplateCapacityReservationSpecificationResponse

type LaunchTemplateCapacityReservationSpecificationResponse struct {

	// Indicates the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	// * open - The instance can run in any open Capacity Reservation that
	// has matching attributes (instance type, platform, Availability Zone).
	//
	// * none -
	// The instance avoids running in a Capacity Reservation even if one is available.
	// The instance runs in On-Demand capacity.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the target Capacity Reservation or Capacity Reservation group.
	CapacityReservationTarget *CapacityReservationTargetResponse
	// contains filtered or unexported fields
}

Information about the Capacity Reservation targeting option.

type LaunchTemplateConfig

type LaunchTemplateConfig struct {

	// The launch template.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecification

	// Any parameters that you specify override the same parameters in the launch
	// template.
	Overrides []LaunchTemplateOverrides
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type LaunchTemplateCpuOptions

type LaunchTemplateCpuOptions struct {

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core.
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance.

type LaunchTemplateCpuOptionsRequest

type LaunchTemplateCpuOptionsRequest struct {

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core. To disable multithreading for the instance,
	// specify a value of 1. Otherwise, specify the default value of 2.
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance. Both the core count and threads per core must be specified in the request.

type LaunchTemplateEbsBlockDevice

type LaunchTemplateEbsBlockDevice struct {

	// Indicates whether the EBS volume is deleted on instance termination.
	DeleteOnTermination *bool

	// Indicates whether the EBS volume is encrypted.
	Encrypted *bool

	// The number of I/O operations per second (IOPS) that the volume supports.
	Iops *int32

	// The ARN of the Key Management Service (KMS) CMK used for encryption.
	KmsKeyId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The throughput that the volume supports, in MiB/s.
	Throughput *int32

	// The size of the volume, in GiB.
	VolumeSize *int32

	// The volume type.
	VolumeType VolumeType
	// contains filtered or unexported fields
}

Describes a block device for an EBS volume.

type LaunchTemplateEbsBlockDeviceRequest

type LaunchTemplateEbsBlockDeviceRequest struct {

	// Indicates whether the EBS volume is deleted on instance termination.
	DeleteOnTermination *bool

	// Indicates whether the EBS volume is encrypted. Encrypted volumes can only be
	// attached to instances that support Amazon EBS encryption. If you are creating a
	// volume from a snapshot, you can't specify an encryption value.
	Encrypted *bool

	// The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,
	// this represents the number of IOPS that are provisioned for the volume. For gp2
	// volumes, this represents the baseline performance of the volume and the rate at
	// which the volume accumulates I/O credits for bursting. The following are the
	// supported values for each volume type:
	//
	// * gp3: 3,000-16,000 IOPS
	//
	// * io1:
	// 100-64,000 IOPS
	//
	// * io2: 100-64,000 IOPS
	//
	// For io1 and io2 volumes, we guarantee
	// 64,000 IOPS only for Instances built on the Nitro System
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances).
	// Other instance families guarantee performance up to 32,000 IOPS. This parameter
	// is supported for io1, io2, and gp3 volumes only. This parameter is not supported
	// for gp2, st1, sc1, or standard volumes.
	Iops *int32

	// The ARN of the symmetric Key Management Service (KMS) CMK used for encryption.
	KmsKeyId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s.
	// Valid Range: Minimum value of 125. Maximum value of 1000.
	Throughput *int32

	// The size of the volume, in GiBs. You must specify either a snapshot ID or a
	// volume size. The following are the supported volumes sizes for each volume
	// type:
	//
	// * gp2 and gp3: 1-16,384
	//
	// * io1 and io2: 4-16,384
	//
	// * st1 and sc1:
	// 125-16,384
	//
	// * standard: 1-1,024
	VolumeSize *int32

	// The volume type. For more information, see Amazon EBS volume types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	VolumeType VolumeType
	// contains filtered or unexported fields
}

The parameters for a block device for an EBS volume.

type LaunchTemplateElasticInferenceAccelerator

type LaunchTemplateElasticInferenceAccelerator struct {

	// The type of elastic inference accelerator. The possible values are eia1.medium,
	// eia1.large, and eia1.xlarge.
	//
	// This member is required.
	Type *string

	// The number of elastic inference accelerators to attach to the instance. Default:
	// 1
	Count *int32
	// contains filtered or unexported fields
}

Describes an elastic inference accelerator.

type LaunchTemplateElasticInferenceAcceleratorResponse

type LaunchTemplateElasticInferenceAcceleratorResponse struct {

	// The number of elastic inference accelerators to attach to the instance. Default:
	// 1
	Count *int32

	// The type of elastic inference accelerator. The possible values are eia1.medium,
	// eia1.large, and eia1.xlarge.
	Type *string
	// contains filtered or unexported fields
}

Describes an elastic inference accelerator.

type LaunchTemplateEnclaveOptions added in v0.29.0

type LaunchTemplateEnclaveOptions struct {

	// If this parameter is set to true, the instance is enabled for Amazon Web
	// Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services
	// Nitro Enclaves.
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

type LaunchTemplateEnclaveOptionsRequest added in v0.29.0

type LaunchTemplateEnclaveOptionsRequest struct {

	// To enable the instance for Amazon Web Services Nitro Enclaves, set this
	// parameter to true.
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? (https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html) in the Amazon Web Services Nitro Enclaves User Guide.

type LaunchTemplateErrorCode

type LaunchTemplateErrorCode string
const (
	LaunchTemplateErrorCodeLaunchTemplateIdDoesNotExist      LaunchTemplateErrorCode = "launchTemplateIdDoesNotExist"
	LaunchTemplateErrorCodeLaunchTemplateIdMalformed         LaunchTemplateErrorCode = "launchTemplateIdMalformed"
	LaunchTemplateErrorCodeLaunchTemplateNameDoesNotExist    LaunchTemplateErrorCode = "launchTemplateNameDoesNotExist"
	LaunchTemplateErrorCodeLaunchTemplateNameMalformed       LaunchTemplateErrorCode = "launchTemplateNameMalformed"
	LaunchTemplateErrorCodeLaunchTemplateVersionDoesNotExist LaunchTemplateErrorCode = "launchTemplateVersionDoesNotExist"
	LaunchTemplateErrorCodeUnexpectedError                   LaunchTemplateErrorCode = "unexpectedError"
)

Enum values for LaunchTemplateErrorCode

func (LaunchTemplateErrorCode) Values added in v0.29.0

Values returns all known values for LaunchTemplateErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateHibernationOptions

type LaunchTemplateHibernationOptions struct {

	// If this parameter is set to true, the instance is enabled for hibernation;
	// otherwise, it is not enabled for hibernation.
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether an instance is configured for hibernation.

type LaunchTemplateHibernationOptionsRequest

type LaunchTemplateHibernationOptionsRequest struct {

	// If you set this parameter to true, the instance is enabled for hibernation.
	// Default: false
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html).

type LaunchTemplateHttpTokensState

type LaunchTemplateHttpTokensState string
const (
	LaunchTemplateHttpTokensStateOptional LaunchTemplateHttpTokensState = "optional"
	LaunchTemplateHttpTokensStateRequired LaunchTemplateHttpTokensState = "required"
)

Enum values for LaunchTemplateHttpTokensState

func (LaunchTemplateHttpTokensState) Values added in v0.29.0

Values returns all known values for LaunchTemplateHttpTokensState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateIamInstanceProfileSpecification

type LaunchTemplateIamInstanceProfileSpecification struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The name of the instance profile.
	Name *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile.

type LaunchTemplateIamInstanceProfileSpecificationRequest

type LaunchTemplateIamInstanceProfileSpecificationRequest struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The name of the instance profile.
	Name *string
	// contains filtered or unexported fields
}

An IAM instance profile.

type LaunchTemplateInstanceMaintenanceOptions added in v1.34.0

type LaunchTemplateInstanceMaintenanceOptions struct {

	// Disables the automatic recovery behavior of your instance or sets it to default.
	AutoRecovery LaunchTemplateAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options of your instance.

type LaunchTemplateInstanceMaintenanceOptionsRequest added in v1.34.0

type LaunchTemplateInstanceMaintenanceOptionsRequest struct {

	// Disables the automatic recovery behavior of your instance or sets it to default.
	// For more information, see Simplified automatic recovery
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery).
	AutoRecovery LaunchTemplateAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options of your instance.

type LaunchTemplateInstanceMarketOptions

type LaunchTemplateInstanceMarketOptions struct {

	// The market type.
	MarketType MarketType

	// The options for Spot Instances.
	SpotOptions *LaunchTemplateSpotMarketOptions
	// contains filtered or unexported fields
}

The market (purchasing) option for the instances.

type LaunchTemplateInstanceMarketOptionsRequest

type LaunchTemplateInstanceMarketOptionsRequest struct {

	// The market type.
	MarketType MarketType

	// The options for Spot Instances.
	SpotOptions *LaunchTemplateSpotMarketOptionsRequest
	// contains filtered or unexported fields
}

The market (purchasing) option for the instances.

type LaunchTemplateInstanceMetadataEndpointState

type LaunchTemplateInstanceMetadataEndpointState string
const (
	LaunchTemplateInstanceMetadataEndpointStateDisabled LaunchTemplateInstanceMetadataEndpointState = "disabled"
	LaunchTemplateInstanceMetadataEndpointStateEnabled  LaunchTemplateInstanceMetadataEndpointState = "enabled"
)

Enum values for LaunchTemplateInstanceMetadataEndpointState

func (LaunchTemplateInstanceMetadataEndpointState) Values added in v0.29.0

Values returns all known values for LaunchTemplateInstanceMetadataEndpointState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceMetadataOptions

type LaunchTemplateInstanceMetadataOptions struct {

	// Enables or disables the HTTP metadata endpoint on your instances. If the
	// parameter is not specified, the default state is enabled. If you specify a value
	// of disabled, you will not be able to access your instance metadata.
	HttpEndpoint LaunchTemplateInstanceMetadataEndpointState

	// Enables or disables the IPv6 endpoint for the instance metadata service.
	// Default: disabled
	HttpProtocolIpv6 LaunchTemplateInstanceMetadataProtocolIpv6

	// The desired HTTP PUT response hop limit for instance metadata requests. The
	// larger the number, the further instance metadata requests can travel. Default: 1
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// The state of token usage for your instance metadata requests. If the parameter
	// is not specified in the request, the default state is optional. If the state is
	// optional, you can choose to retrieve instance metadata with or without a signed
	// token header on your request. If you retrieve the IAM role credentials without a
	// token, the version 1.0 role credentials are returned. If you retrieve the IAM
	// role credentials using a valid signed token, the version 2.0 role credentials
	// are returned. If the state is required, you must send a signed token header with
	// any instance metadata retrieval requests. In this state, retrieving the IAM role
	// credentials always returns the version 2.0 credentials; the version 1.0
	// credentials are not available.
	HttpTokens LaunchTemplateHttpTokensState

	// Set to enabled to allow access to instance tags from the instance metadata. Set
	// to disabled to turn off access to instance tags from the instance metadata. For
	// more information, see Work with instance tags using the instance metadata
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS).
	// Default: disabled
	InstanceMetadataTags LaunchTemplateInstanceMetadataTagsState

	// The state of the metadata option changes. pending - The metadata options are
	// being updated and the instance is not ready to process metadata traffic with the
	// new selection. applied - The metadata options have been successfully applied on
	// the instance.
	State LaunchTemplateInstanceMetadataOptionsState
	// contains filtered or unexported fields
}

The metadata options for the instance. For more information, see Instance metadata and user data (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) in the Amazon Elastic Compute Cloud User Guide.

type LaunchTemplateInstanceMetadataOptionsRequest

type LaunchTemplateInstanceMetadataOptionsRequest struct {

	// Enables or disables the HTTP metadata endpoint on your instances. If the
	// parameter is not specified, the default state is enabled. If you specify a value
	// of disabled, you will not be able to access your instance metadata.
	HttpEndpoint LaunchTemplateInstanceMetadataEndpointState

	// Enables or disables the IPv6 endpoint for the instance metadata service.
	// Default: disabled
	HttpProtocolIpv6 LaunchTemplateInstanceMetadataProtocolIpv6

	// The desired HTTP PUT response hop limit for instance metadata requests. The
	// larger the number, the further instance metadata requests can travel. Default: 1
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// The state of token usage for your instance metadata requests. If the parameter
	// is not specified in the request, the default state is optional. If the state is
	// optional, you can choose to retrieve instance metadata with or without a signed
	// token header on your request. If you retrieve the IAM role credentials without a
	// token, the version 1.0 role credentials are returned. If you retrieve the IAM
	// role credentials using a valid signed token, the version 2.0 role credentials
	// are returned. If the state is required, you must send a signed token header with
	// any instance metadata retrieval requests. In this state, retrieving the IAM role
	// credentials always returns the version 2.0 credentials; the version 1.0
	// credentials are not available.
	HttpTokens LaunchTemplateHttpTokensState

	// Set to enabled to allow access to instance tags from the instance metadata. Set
	// to disabled to turn off access to instance tags from the instance metadata. For
	// more information, see Work with instance tags using the instance metadata
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS).
	// Default: disabled
	InstanceMetadataTags LaunchTemplateInstanceMetadataTagsState
	// contains filtered or unexported fields
}

The metadata options for the instance. For more information, see Instance metadata and user data (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) in the Amazon Elastic Compute Cloud User Guide.

type LaunchTemplateInstanceMetadataOptionsState

type LaunchTemplateInstanceMetadataOptionsState string
const (
	LaunchTemplateInstanceMetadataOptionsStatePending LaunchTemplateInstanceMetadataOptionsState = "pending"
	LaunchTemplateInstanceMetadataOptionsStateApplied LaunchTemplateInstanceMetadataOptionsState = "applied"
)

Enum values for LaunchTemplateInstanceMetadataOptionsState

func (LaunchTemplateInstanceMetadataOptionsState) Values added in v0.29.0

Values returns all known values for LaunchTemplateInstanceMetadataOptionsState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceMetadataProtocolIpv6 added in v1.16.0

type LaunchTemplateInstanceMetadataProtocolIpv6 string
const (
	LaunchTemplateInstanceMetadataProtocolIpv6Disabled LaunchTemplateInstanceMetadataProtocolIpv6 = "disabled"
	LaunchTemplateInstanceMetadataProtocolIpv6Enabled  LaunchTemplateInstanceMetadataProtocolIpv6 = "enabled"
)

Enum values for LaunchTemplateInstanceMetadataProtocolIpv6

func (LaunchTemplateInstanceMetadataProtocolIpv6) Values added in v1.16.0

Values returns all known values for LaunchTemplateInstanceMetadataProtocolIpv6. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceMetadataTagsState added in v1.28.0

type LaunchTemplateInstanceMetadataTagsState string
const (
	LaunchTemplateInstanceMetadataTagsStateDisabled LaunchTemplateInstanceMetadataTagsState = "disabled"
	LaunchTemplateInstanceMetadataTagsStateEnabled  LaunchTemplateInstanceMetadataTagsState = "enabled"
)

Enum values for LaunchTemplateInstanceMetadataTagsState

func (LaunchTemplateInstanceMetadataTagsState) Values added in v1.28.0

Values returns all known values for LaunchTemplateInstanceMetadataTagsState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceNetworkInterfaceSpecification

type LaunchTemplateInstanceNetworkInterfaceSpecification struct {

	// Indicates whether to associate a Carrier IP address with eth0 for a new network
	// interface. Use this option when you launch an instance in a Wavelength Zone and
	// want to associate a Carrier IP address with the network interface. For more
	// information about Carrier IP addresses, see Carrier IP addresses
	// (https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip)
	// in the Wavelength Developer Guide.
	AssociateCarrierIpAddress *bool

	// Indicates whether to associate a public IPv4 address with eth0 for a new network
	// interface.
	AssociatePublicIpAddress *bool

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// A description for the network interface.
	Description *string

	// The device index for the network interface attachment.
	DeviceIndex *int32

	// The IDs of one or more security groups.
	Groups []string

	// The type of network interface.
	InterfaceType *string

	// The number of IPv4 prefixes that Amazon Web Services automatically assigned to
	// the network interface.
	Ipv4PrefixCount *int32

	// One or more IPv4 prefixes assigned to the network interface.
	Ipv4Prefixes []Ipv4PrefixSpecificationResponse

	// The number of IPv6 addresses for the network interface.
	Ipv6AddressCount *int32

	// The IPv6 addresses for the network interface.
	Ipv6Addresses []InstanceIpv6Address

	// The number of IPv6 prefixes that Amazon Web Services automatically assigned to
	// the network interface.
	Ipv6PrefixCount *int32

	// One or more IPv6 prefixes assigned to the network interface.
	Ipv6Prefixes []Ipv6PrefixSpecificationResponse

	// The index of the network card.
	NetworkCardIndex *int32

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The primary private IPv4 address of the network interface.
	PrivateIpAddress *string

	// One or more private IPv4 addresses.
	PrivateIpAddresses []PrivateIpAddressSpecification

	// The number of secondary private IPv4 addresses for the network interface.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet for the network interface.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

type LaunchTemplateInstanceNetworkInterfaceSpecificationRequest struct {

	// Associates a Carrier IP address with eth0 for a new network interface. Use this
	// option when you launch an instance in a Wavelength Zone and want to associate a
	// Carrier IP address with the network interface. For more information about
	// Carrier IP addresses, see Carrier IP addresses
	// (https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip)
	// in the Wavelength Developer Guide.
	AssociateCarrierIpAddress *bool

	// Associates a public IPv4 address with eth0 for a new network interface.
	AssociatePublicIpAddress *bool

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// A description for the network interface.
	Description *string

	// The device index for the network interface attachment.
	DeviceIndex *int32

	// The IDs of one or more security groups.
	Groups []string

	// The type of network interface. To create an Elastic Fabric Adapter (EFA),
	// specify efa. For more information, see Elastic Fabric Adapter
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html) in the Amazon
	// Elastic Compute Cloud User Guide. If you are not creating an EFA, specify
	// interface or omit this parameter. Valid values: interface | efa
	InterfaceType *string

	// The number of IPv4 prefixes to be automatically assigned to the network
	// interface. You cannot use this option if you use the Ipv4Prefix option.
	Ipv4PrefixCount *int32

	// One or more IPv4 prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv4PrefixCount option.
	Ipv4Prefixes []Ipv4PrefixSpecificationRequest

	// The number of IPv6 addresses to assign to a network interface. Amazon EC2
	// automatically selects the IPv6 addresses from the subnet range. You can't use
	// this option if specifying specific IPv6 addresses.
	Ipv6AddressCount *int32

	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your
	// subnet. You can't use this option if you're specifying a number of IPv6
	// addresses.
	Ipv6Addresses []InstanceIpv6AddressRequest

	// The number of IPv6 prefixes to be automatically assigned to the network
	// interface. You cannot use this option if you use the Ipv6Prefix option.
	Ipv6PrefixCount *int32

	// One or more IPv6 prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv6PrefixCount option.
	Ipv6Prefixes []Ipv6PrefixSpecificationRequest

	// The index of the network card. Some instance types support multiple network
	// cards. The primary network interface must be assigned to network card index 0.
	// The default is network card index 0.
	NetworkCardIndex *int32

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The primary private IPv4 address of the network interface.
	PrivateIpAddress *string

	// One or more private IPv4 addresses.
	PrivateIpAddresses []PrivateIpAddressSpecification

	// The number of secondary private IPv4 addresses to assign to a network interface.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet for the network interface.
	SubnetId *string
	// contains filtered or unexported fields
}

The parameters for a network interface.

type LaunchTemplateLicenseConfiguration

type LaunchTemplateLicenseConfiguration struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type LaunchTemplateLicenseConfigurationRequest

type LaunchTemplateLicenseConfigurationRequest struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type LaunchTemplateOverrides

type LaunchTemplateOverrides struct {

	// The Availability Zone in which to launch the instances.
	AvailabilityZone *string

	// The instance requirements. When you specify instance requirements, Amazon EC2
	// will identify instance types with the provided requirements, and then use your
	// On-Demand and Spot allocation strategies to launch instances from these instance
	// types, in the same way as when you specify a list of instance types. If you
	// specify InstanceRequirements, you can't specify InstanceType.
	InstanceRequirements *InstanceRequirements

	// The instance type.
	InstanceType InstanceType

	// The priority for the launch template override. The highest priority is launched
	// first. If OnDemandAllocationStrategy is set to prioritized, Spot Fleet uses
	// priority to determine which launch template override to use first in fulfilling
	// On-Demand capacity. If the Spot AllocationStrategy is set to
	// capacityOptimizedPrioritized, Spot Fleet uses priority on a best-effort basis to
	// determine which launch template override to use in fulfilling Spot capacity, but
	// optimizes for capacity first. Valid values are whole numbers starting at 0. The
	// lower the number, the higher the priority. If no number is set, the launch
	// template override has the lowest priority. You can set the same priority for
	// different launch template overrides.
	Priority *float64

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	SpotPrice *string

	// The ID of the subnet in which to launch the instances.
	SubnetId *string

	// The number of units provided by the specified instance type.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes overrides for a launch template.

type LaunchTemplatePlacement

type LaunchTemplatePlacement struct {

	// The affinity setting for the instance on the Dedicated Host.
	Affinity *string

	// The Availability Zone of the instance.
	AvailabilityZone *string

	// The Group ID of the placement group. You must specify the Placement Group Group
	// ID to launch an instance in a shared placement group.
	GroupId *string

	// The name of the placement group for the instance.
	GroupName *string

	// The ID of the Dedicated Host for the instance.
	HostId *string

	// The ARN of the host resource group in which to launch the instances.
	HostResourceGroupArn *string

	// The number of the partition the instance should launch in. Valid only if the
	// placement group strategy is set to partition.
	PartitionNumber *int32

	// Reserved for future use.
	SpreadDomain *string

	// The tenancy of the instance (if the instance is running in a VPC). An instance
	// with a tenancy of dedicated runs on single-tenant hardware.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type LaunchTemplatePlacementRequest

type LaunchTemplatePlacementRequest struct {

	// The affinity setting for an instance on a Dedicated Host.
	Affinity *string

	// The Availability Zone for the instance.
	AvailabilityZone *string

	// The Group Id of a placement group. You must specify the Placement Group Group Id
	// to launch an instance in a shared placement group.
	GroupId *string

	// The name of the placement group for the instance.
	GroupName *string

	// The ID of the Dedicated Host for the instance.
	HostId *string

	// The ARN of the host resource group in which to launch the instances. If you
	// specify a host resource group ARN, omit the Tenancy parameter or set it to host.
	HostResourceGroupArn *string

	// The number of the partition the instance should launch in. Valid only if the
	// placement group strategy is set to partition.
	PartitionNumber *int32

	// Reserved for future use.
	SpreadDomain *string

	// The tenancy of the instance (if the instance is running in a VPC). An instance
	// with a tenancy of dedicated runs on single-tenant hardware.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type LaunchTemplatePrivateDnsNameOptions added in v1.24.0

type LaunchTemplatePrivateDnsNameOptions struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA
	// records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname to assign to an instance.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type LaunchTemplatePrivateDnsNameOptionsRequest added in v1.24.0

type LaunchTemplatePrivateDnsNameOptionsRequest struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA
	// records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname for Amazon EC2 instances. For IPv4 only subnets, an
	// instance DNS name must be based on the instance IPv4 address. For IPv6 native
	// subnets, an instance DNS name must be based on the instance ID. For dual-stack
	// subnets, you can specify whether DNS names use the instance IPv4 address or the
	// instance ID.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type LaunchTemplateSpecification

type LaunchTemplateSpecification struct {

	// The ID of the launch template. You must specify the LaunchTemplateId or the
	// LaunchTemplateName, but not both.
	LaunchTemplateId *string

	// The name of the launch template. You must specify the LaunchTemplateName or the
	// LaunchTemplateId, but not both.
	LaunchTemplateName *string

	// The launch template version number, $Latest, or $Default. If the value is
	// $Latest, Amazon EC2 uses the latest version of the launch template. If the value
	// is $Default, Amazon EC2 uses the default version of the launch template.
	// Default: The default version of the launch template.
	Version *string
	// contains filtered or unexported fields
}

The launch template to use. You must specify either the launch template ID or launch template name in the request, but not both.

type LaunchTemplateSpotMarketOptions

type LaunchTemplateSpotMarketOptions struct {

	// The required duration for the Spot Instances (also known as Spot blocks), in
	// minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
	BlockDurationMinutes *int32

	// The behavior when a Spot Instance is interrupted.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The maximum hourly price you're willing to pay for the Spot Instances. We do not
	// recommend using this parameter because it can lead to increased interruptions.
	// If you do not specify this parameter, you will pay the current Spot price. If
	// you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The Spot Instance request type.
	SpotInstanceType SpotInstanceType

	// The end date of the request. For a one-time request, the request remains active
	// until all instances launch, the request is canceled, or this date is reached. If
	// the request is persistent, it remains active until it is canceled or this date
	// and time is reached.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

The options for Spot Instances.

type LaunchTemplateSpotMarketOptionsRequest

type LaunchTemplateSpotMarketOptionsRequest struct {

	// Deprecated.
	BlockDurationMinutes *int32

	// The behavior when a Spot Instance is interrupted. The default is terminate.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The maximum hourly price you're willing to pay for the Spot Instances. We do not
	// recommend using this parameter because it can lead to increased interruptions.
	// If you do not specify this parameter, you will pay the current Spot price. If
	// you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The Spot Instance request type.
	SpotInstanceType SpotInstanceType

	// The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported
	// only for persistent requests.
	//
	// * For a persistent request, the request remains
	// active until the ValidUntil date and time is reached. Otherwise, the request
	// remains active until you cancel it.
	//
	// * For a one-time request, ValidUntil is not
	// supported. The request remains active until all instances launch or you cancel
	// the request.
	//
	// Default: 7 days from the current date
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

The options for Spot Instances.

type LaunchTemplateTagSpecification

type LaunchTemplateTagSpecification struct {

	// The type of resource to tag.
	ResourceType ResourceType

	// The tags for the resource.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags specification for the launch template.

type LaunchTemplateTagSpecificationRequest

type LaunchTemplateTagSpecificationRequest struct {

	// The type of resource to tag. The Valid Values are all the resource types that
	// can be tagged. However, when creating a launch template, you can specify tags
	// for the following resource types only: instance | volume | elastic-gpu |
	// network-interface | spot-instances-request To tag a resource after it has been
	// created, see CreateTags
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html).
	ResourceType ResourceType

	// The tags to apply to the resource.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags specification for the resources that are created during instance launch.

type LaunchTemplateVersion

type LaunchTemplateVersion struct {

	// The time the version was created.
	CreateTime *time.Time

	// The principal that created the version.
	CreatedBy *string

	// Indicates whether the version is the default version.
	DefaultVersion *bool

	// Information about the launch template.
	LaunchTemplateData *ResponseLaunchTemplateData

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// The description for the version.
	VersionDescription *string

	// The version number.
	VersionNumber *int64
	// contains filtered or unexported fields
}

Describes a launch template version.

type LaunchTemplatesMonitoring

type LaunchTemplatesMonitoring struct {

	// Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is
	// enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the monitoring for the instance.

type LaunchTemplatesMonitoringRequest

type LaunchTemplatesMonitoringRequest struct {

	// Specify true to enable detailed monitoring. Otherwise, basic monitoring is
	// enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the monitoring for the instance.

type LicenseConfiguration

type LicenseConfiguration struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type LicenseConfigurationRequest

type LicenseConfigurationRequest struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type ListingState

type ListingState string
const (
	ListingStateAvailable ListingState = "available"
	ListingStateSold      ListingState = "sold"
	ListingStateCancelled ListingState = "cancelled"
	ListingStatePending   ListingState = "pending"
)

Enum values for ListingState

func (ListingState) Values added in v0.29.0

func (ListingState) Values() []ListingState

Values returns all known values for ListingState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ListingStatus

type ListingStatus string
const (
	ListingStatusActive    ListingStatus = "active"
	ListingStatusPending   ListingStatus = "pending"
	ListingStatusCancelled ListingStatus = "cancelled"
	ListingStatusClosed    ListingStatus = "closed"
)

Enum values for ListingStatus

func (ListingStatus) Values added in v0.29.0

func (ListingStatus) Values() []ListingStatus

Values returns all known values for ListingStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LoadBalancersConfig

type LoadBalancersConfig struct {

	// The Classic Load Balancers.
	ClassicLoadBalancersConfig *ClassicLoadBalancersConfig

	// The target groups.
	TargetGroupsConfig *TargetGroupsConfig
	// contains filtered or unexported fields
}

Describes the Classic Load Balancers and target groups to attach to a Spot Fleet request.

type LoadPermission

type LoadPermission struct {

	// The name of the group.
	Group PermissionGroup

	// The Amazon Web Services account ID.
	UserId *string
	// contains filtered or unexported fields
}

Describes a load permission.

type LoadPermissionModifications

type LoadPermissionModifications struct {

	// The load permissions to add.
	Add []LoadPermissionRequest

	// The load permissions to remove.
	Remove []LoadPermissionRequest
	// contains filtered or unexported fields
}

Describes modifications to the load permissions of an Amazon FPGA image (AFI).

type LoadPermissionRequest

type LoadPermissionRequest struct {

	// The name of the group.
	Group PermissionGroup

	// The Amazon Web Services account ID.
	UserId *string
	// contains filtered or unexported fields
}

Describes a load permission.

type LocalGateway

type LocalGateway struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the local gateway.
	OwnerId *string

	// The state of the local gateway.
	State *string

	// The tags assigned to the local gateway.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a local gateway.

type LocalGatewayRoute

type LocalGatewayRoute struct {

	// The ID of the customer-owned address pool.
	CoipPoolId *string

	// The CIDR block used for destination matches.
	DestinationCidrBlock *string

	// The Amazon Resource Name (ARN) of the local gateway route table.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ID of the virtual interface group.
	LocalGatewayVirtualInterfaceGroupId *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the Amazon Web Services account that owns the local gateway route.
	OwnerId *string

	// The state of the route.
	State LocalGatewayRouteState

	// The ID of the subnet.
	SubnetId *string

	// The route type.
	Type LocalGatewayRouteType
	// contains filtered or unexported fields
}

Describes a route for a local gateway route table.

type LocalGatewayRouteState

type LocalGatewayRouteState string
const (
	LocalGatewayRouteStatePending   LocalGatewayRouteState = "pending"
	LocalGatewayRouteStateActive    LocalGatewayRouteState = "active"
	LocalGatewayRouteStateBlackhole LocalGatewayRouteState = "blackhole"
	LocalGatewayRouteStateDeleting  LocalGatewayRouteState = "deleting"
	LocalGatewayRouteStateDeleted   LocalGatewayRouteState = "deleted"
)

Enum values for LocalGatewayRouteState

func (LocalGatewayRouteState) Values added in v0.29.0

Values returns all known values for LocalGatewayRouteState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LocalGatewayRouteTable

type LocalGatewayRouteTable struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the local gateway route table.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The mode of the local gateway route table.
	Mode LocalGatewayRouteTableMode

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the local gateway route
	// table.
	OwnerId *string

	// The state of the local gateway route table.
	State *string

	// Describes a state change.
	StateReason *StateReason

	// The tags assigned to the local gateway route table.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a local gateway route table.

type LocalGatewayRouteTableMode added in v1.55.0

type LocalGatewayRouteTableMode string
const (
	LocalGatewayRouteTableModeDirectVpcRouting LocalGatewayRouteTableMode = "direct-vpc-routing"
	LocalGatewayRouteTableModeCoip             LocalGatewayRouteTableMode = "coip"
)

Enum values for LocalGatewayRouteTableMode

func (LocalGatewayRouteTableMode) Values added in v1.55.0

Values returns all known values for LocalGatewayRouteTableMode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LocalGatewayRouteTableVirtualInterfaceGroupAssociation

type LocalGatewayRouteTableVirtualInterfaceGroupAssociation struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the local gateway route table for the virtual
	// interface group.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ID of the association.
	LocalGatewayRouteTableVirtualInterfaceGroupAssociationId *string

	// The ID of the virtual interface group.
	LocalGatewayVirtualInterfaceGroupId *string

	// The ID of the Amazon Web Services account that owns the local gateway virtual
	// interface group association.
	OwnerId *string

	// The state of the association.
	State *string

	// The tags assigned to the association.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an association between a local gateway route table and a virtual interface group.

type LocalGatewayRouteTableVpcAssociation

type LocalGatewayRouteTableVpcAssociation struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the local gateway route table for the
	// association.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ID of the association.
	LocalGatewayRouteTableVpcAssociationId *string

	// The ID of the Amazon Web Services account that owns the local gateway route
	// table for the association.
	OwnerId *string

	// The state of the association.
	State *string

	// The tags assigned to the association.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes an association between a local gateway route table and a VPC.

type LocalGatewayRouteType

type LocalGatewayRouteType string
const (
	LocalGatewayRouteTypeStatic     LocalGatewayRouteType = "static"
	LocalGatewayRouteTypePropagated LocalGatewayRouteType = "propagated"
)

Enum values for LocalGatewayRouteType

func (LocalGatewayRouteType) Values added in v0.29.0

Values returns all known values for LocalGatewayRouteType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LocalGatewayVirtualInterface

type LocalGatewayVirtualInterface struct {

	// The local address.
	LocalAddress *string

	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local
	// gateway.
	LocalBgpAsn *int32

	// The ID of the local gateway.
	LocalGatewayId *string

	// The ID of the virtual interface.
	LocalGatewayVirtualInterfaceId *string

	// The ID of the Amazon Web Services account that owns the local gateway virtual
	// interface.
	OwnerId *string

	// The peer address.
	PeerAddress *string

	// The peer BGP ASN.
	PeerBgpAsn *int32

	// The tags assigned to the virtual interface.
	Tags []Tag

	// The ID of the VLAN.
	Vlan *int32
	// contains filtered or unexported fields
}

Describes a local gateway virtual interface.

type LocalGatewayVirtualInterfaceGroup

type LocalGatewayVirtualInterfaceGroup struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The ID of the virtual interface group.
	LocalGatewayVirtualInterfaceGroupId *string

	// The IDs of the virtual interfaces.
	LocalGatewayVirtualInterfaceIds []string

	// The ID of the Amazon Web Services account that owns the local gateway virtual
	// interface group.
	OwnerId *string

	// The tags assigned to the virtual interface group.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a local gateway virtual interface group.

type LocalStorage added in v1.21.0

type LocalStorage string
const (
	LocalStorageIncluded LocalStorage = "included"
	LocalStorageRequired LocalStorage = "required"
	LocalStorageExcluded LocalStorage = "excluded"
)

Enum values for LocalStorage

func (LocalStorage) Values added in v1.21.0

func (LocalStorage) Values() []LocalStorage

Values returns all known values for LocalStorage. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LocalStorageType added in v1.21.0

type LocalStorageType string
const (
	LocalStorageTypeHdd LocalStorageType = "hdd"
	LocalStorageTypeSsd LocalStorageType = "ssd"
)

Enum values for LocalStorageType

func (LocalStorageType) Values added in v1.21.0

Values returns all known values for LocalStorageType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LocationType

type LocationType string
const (
	LocationTypeRegion             LocationType = "region"
	LocationTypeAvailabilityZone   LocationType = "availability-zone"
	LocationTypeAvailabilityZoneId LocationType = "availability-zone-id"
)

Enum values for LocationType

func (LocationType) Values added in v0.29.0

func (LocationType) Values() []LocationType

Values returns all known values for LocationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type LogDestinationType

type LogDestinationType string
const (
	LogDestinationTypeCloudWatchLogs      LogDestinationType = "cloud-watch-logs"
	LogDestinationTypeS3                  LogDestinationType = "s3"
	LogDestinationTypeKinesisDataFirehose LogDestinationType = "kinesis-data-firehose"
)

Enum values for LogDestinationType

func (LogDestinationType) Values added in v0.29.0

Values returns all known values for LogDestinationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ManagedPrefixList

type ManagedPrefixList struct {

	// The IP address version.
	AddressFamily *string

	// The maximum number of entries for the prefix list.
	MaxEntries *int32

	// The ID of the owner of the prefix list.
	OwnerId *string

	// The Amazon Resource Name (ARN) for the prefix list.
	PrefixListArn *string

	// The ID of the prefix list.
	PrefixListId *string

	// The name of the prefix list.
	PrefixListName *string

	// The current state of the prefix list.
	State PrefixListState

	// The state message.
	StateMessage *string

	// The tags for the prefix list.
	Tags []Tag

	// The version of the prefix list.
	Version *int64
	// contains filtered or unexported fields
}

Describes a managed prefix list.

type MarketType

type MarketType string
const (
	MarketTypeSpot MarketType = "spot"
)

Enum values for MarketType

func (MarketType) Values added in v0.29.0

func (MarketType) Values() []MarketType

Values returns all known values for MarketType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type MembershipType

type MembershipType string
const (
	MembershipTypeStatic MembershipType = "static"
	MembershipTypeIgmp   MembershipType = "igmp"
)

Enum values for MembershipType

func (MembershipType) Values added in v0.29.0

func (MembershipType) Values() []MembershipType

Values returns all known values for MembershipType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type MemoryGiBPerVCpu added in v1.21.0

type MemoryGiBPerVCpu struct {

	// The maximum amount of memory per vCPU, in GiB. If this parameter is not
	// specified, there is no maximum limit.
	Max *float64

	// The minimum amount of memory per vCPU, in GiB. If this parameter is not
	// specified, there is no minimum limit.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory per vCPU, in GiB.

type MemoryGiBPerVCpuRequest added in v1.21.0

type MemoryGiBPerVCpuRequest struct {

	// The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit
	// this parameter.
	Max *float64

	// The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit
	// this parameter.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory per vCPU, in GiB.

type MemoryInfo

type MemoryInfo struct {

	// The size of the memory, in MiB.
	SizeInMiB *int64
	// contains filtered or unexported fields
}

Describes the memory for the instance type.

type MemoryMiB added in v1.21.0

type MemoryMiB struct {

	// The maximum amount of memory, in MiB. If this parameter is not specified, there
	// is no maximum limit.
	Max *int32

	// The minimum amount of memory, in MiB. If this parameter is not specified, there
	// is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory, in MiB.

type MemoryMiBRequest added in v1.21.0

type MemoryMiBRequest struct {

	// The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.
	//
	// This member is required.
	Min *int32

	// The maximum amount of memory, in MiB. To specify no maximum limit, omit this
	// parameter.
	Max *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory, in MiB.

type ModifyAvailabilityZoneOptInStatus

type ModifyAvailabilityZoneOptInStatus string
const (
	ModifyAvailabilityZoneOptInStatusOptedIn    ModifyAvailabilityZoneOptInStatus = "opted-in"
	ModifyAvailabilityZoneOptInStatusNotOptedIn ModifyAvailabilityZoneOptInStatus = "not-opted-in"
)

Enum values for ModifyAvailabilityZoneOptInStatus

func (ModifyAvailabilityZoneOptInStatus) Values added in v0.29.0

Values returns all known values for ModifyAvailabilityZoneOptInStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ModifyTransitGatewayOptions added in v0.29.0

type ModifyTransitGatewayOptions struct {

	// Adds IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR
	// block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.
	AddTransitGatewayCidrBlocks []string

	// A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	// The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for
	// 32-bit ASNs. The modify ASN operation is not allowed on a transit gateway with
	// active BGP sessions. You must first delete all transit gateway attachments that
	// have BGP configured prior to modifying the ASN on the transit gateway.
	AmazonSideAsn *int64

	// The ID of the default association route table.
	AssociationDefaultRouteTableId *string

	// Enable or disable automatic acceptance of attachment requests.
	AutoAcceptSharedAttachments AutoAcceptSharedAttachmentsValue

	// Enable or disable automatic association with the default association route
	// table.
	DefaultRouteTableAssociation DefaultRouteTableAssociationValue

	// Enable or disable automatic propagation of routes to the default propagation
	// route table.
	DefaultRouteTablePropagation DefaultRouteTablePropagationValue

	// Enable or disable DNS support.
	DnsSupport DnsSupportValue

	// The ID of the default propagation route table.
	PropagationDefaultRouteTableId *string

	// Removes CIDR blocks for the transit gateway.
	RemoveTransitGatewayCidrBlocks []string

	// Enable or disable Equal Cost Multipath Protocol support.
	VpnEcmpSupport VpnEcmpSupportValue
	// contains filtered or unexported fields
}

The transit gateway options.

type ModifyTransitGatewayVpcAttachmentRequestOptions

type ModifyTransitGatewayVpcAttachmentRequestOptions struct {

	// Enable or disable support for appliance mode. If enabled, a traffic flow between
	// a source and destination uses the same Availability Zone for the VPC attachment
	// for the lifetime of that flow. The default is disable.
	ApplianceModeSupport ApplianceModeSupportValue

	// Enable or disable DNS support. The default is enable.
	DnsSupport DnsSupportValue

	// Enable or disable IPv6 support. The default is enable.
	Ipv6Support Ipv6SupportValue
	// contains filtered or unexported fields
}

Describes the options for a VPC attachment.

type ModifyVpnTunnelOptionsSpecification

type ModifyVpnTunnelOptionsSpecification struct {

	// The action to take after DPD timeout occurs. Specify restart to restart the IKE
	// initiation. Specify clear to end the IKE session. Valid Values: clear | none |
	// restart Default: clear
	DPDTimeoutAction *string

	// The number of seconds after which a DPD timeout occurs. Constraints: A value
	// greater than or equal to 30. Default: 30
	DPDTimeoutSeconds *int32

	// The IKE versions that are permitted for the VPN tunnel. Valid values: ikev1 |
	// ikev2
	IKEVersions []IKEVersionsRequestListValue

	// Options for logging VPN tunnel activity.
	LogOptions *VpnTunnelLogOptionsSpecification

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 1 IKE negotiations. Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20
	// | 21 | 22 | 23 | 24
	Phase1DHGroupNumbers []Phase1DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 1 IKE negotiations. Valid values: AES128 | AES256 | AES128-GCM-16 |
	// AES256-GCM-16
	Phase1EncryptionAlgorithms []Phase1EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for phase
	// 1 IKE negotiations. Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase1IntegrityAlgorithms []Phase1IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 1 of the IKE negotiation, in seconds. Constraints: A
	// value between 900 and 28,800. Default: 28800
	Phase1LifetimeSeconds *int32

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 2 IKE negotiations. Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 19
	// | 20 | 21 | 22 | 23 | 24
	Phase2DHGroupNumbers []Phase2DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 2 IKE negotiations. Valid values: AES128 | AES256 | AES128-GCM-16 |
	// AES256-GCM-16
	Phase2EncryptionAlgorithms []Phase2EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for phase
	// 2 IKE negotiations. Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase2IntegrityAlgorithms []Phase2IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 2 of the IKE negotiation, in seconds. Constraints: A
	// value between 900 and 3,600. The value must be less than the value for
	// Phase1LifetimeSeconds. Default: 3600
	Phase2LifetimeSeconds *int32

	// The pre-shared key (PSK) to establish initial authentication between the virtual
	// private gateway and the customer gateway. Constraints: Allowed characters are
	// alphanumeric characters, periods (.), and underscores (_). Must be between 8 and
	// 64 characters in length and cannot start with zero (0).
	PreSharedKey *string

	// The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during
	// which the rekey time is randomly selected. Constraints: A value between 0 and
	// 100. Default: 100
	RekeyFuzzPercentage *int32

	// The margin time, in seconds, before the phase 2 lifetime expires, during which
	// the Amazon Web Services side of the VPN connection performs an IKE rekey. The
	// exact time of the rekey is randomly selected based on the value for
	// RekeyFuzzPercentage. Constraints: A value between 60 and half of
	// Phase2LifetimeSeconds. Default: 540
	RekeyMarginTimeSeconds *int32

	// The number of packets in an IKE replay window. Constraints: A value between 64
	// and 2048. Default: 1024
	ReplayWindowSize *int32

	// The action to take when the establishing the tunnel for the VPN connection. By
	// default, your customer gateway device must initiate the IKE negotiation and
	// bring up the tunnel. Specify start for Amazon Web Services to initiate the IKE
	// negotiation. Valid Values: add | start Default: add
	StartupAction *string

	// The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same virtual private
	// gateway. Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The
	// following CIDR blocks are reserved and cannot be used:
	//
	// * 169.254.0.0/30
	//
	// *
	// 169.254.1.0/30
	//
	// * 169.254.2.0/30
	//
	// * 169.254.3.0/30
	//
	// * 169.254.4.0/30
	//
	// *
	// 169.254.5.0/30
	//
	// * 169.254.169.252/30
	TunnelInsideCidr *string

	// The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same transit gateway.
	// Constraints: A size /126 CIDR block from the local fd00::/8 range.
	TunnelInsideIpv6Cidr *string
	// contains filtered or unexported fields
}

The Amazon Web Services Site-to-Site VPN tunnel options to modify.

type Monitoring

type Monitoring struct {

	// Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is
	// enabled.
	State MonitoringState
	// contains filtered or unexported fields
}

Describes the monitoring of an instance.

type MonitoringState

type MonitoringState string
const (
	MonitoringStateDisabled  MonitoringState = "disabled"
	MonitoringStateDisabling MonitoringState = "disabling"
	MonitoringStateEnabled   MonitoringState = "enabled"
	MonitoringStatePending   MonitoringState = "pending"
)

Enum values for MonitoringState

func (MonitoringState) Values added in v0.29.0

func (MonitoringState) Values() []MonitoringState

Values returns all known values for MonitoringState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type MoveStatus

type MoveStatus string
const (
	MoveStatusMovingToVpc        MoveStatus = "movingToVpc"
	MoveStatusRestoringToClassic MoveStatus = "restoringToClassic"
)

Enum values for MoveStatus

func (MoveStatus) Values added in v0.29.0

func (MoveStatus) Values() []MoveStatus

Values returns all known values for MoveStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type MovingAddressStatus

type MovingAddressStatus struct {

	// The status of the Elastic IP address that's being moved to the EC2-VPC platform,
	// or restored to the EC2-Classic platform.
	MoveStatus MoveStatus

	// The Elastic IP address.
	PublicIp *string
	// contains filtered or unexported fields
}

Describes the status of a moving Elastic IP address. We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide.

type MulticastSupportValue

type MulticastSupportValue string
const (
	MulticastSupportValueEnable  MulticastSupportValue = "enable"
	MulticastSupportValueDisable MulticastSupportValue = "disable"
)

Enum values for MulticastSupportValue

func (MulticastSupportValue) Values added in v0.29.0

Values returns all known values for MulticastSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NatGateway

type NatGateway struct {

	// Indicates whether the NAT gateway supports public or private connectivity.
	ConnectivityType ConnectivityType

	// The date and time the NAT gateway was created.
	CreateTime *time.Time

	// The date and time the NAT gateway was deleted, if applicable.
	DeleteTime *time.Time

	// If the NAT gateway could not be created, specifies the error code for the
	// failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached |
	// InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError |
	// InvalidSubnetID.NotFound)
	FailureCode *string

	// If the NAT gateway could not be created, specifies the error message for the
	// failure, that corresponds to the error code.
	//
	// * For
	// InsufficientFreeAddressesInSubnet: "Subnet has insufficient free addresses to
	// create this NAT gateway"
	//
	// * For Gateway.NotAttached: "Network vpc-xxxxxxxx has
	// no Internet gateway attached"
	//
	// * For InvalidAllocationID.NotFound: "Elastic IP
	// address eipalloc-xxxxxxxx could not be associated with this NAT gateway"
	//
	// * For
	// Resource.AlreadyAssociated: "Elastic IP address eipalloc-xxxxxxxx is already
	// associated"
	//
	// * For InternalError: "Network interface eni-xxxxxxxx, created and
	// used internally by this NAT gateway is in an invalid state. Please try
	// again."
	//
	// * For InvalidSubnetID.NotFound: "The specified subnet subnet-xxxxxxxx
	// does not exist or could not be found."
	FailureMessage *string

	// Information about the IP addresses and network interface associated with the NAT
	// gateway.
	NatGatewayAddresses []NatGatewayAddress

	// The ID of the NAT gateway.
	NatGatewayId *string

	// Reserved. If you need to sustain traffic greater than the documented limits
	// (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact
	// us through the Support Center (https://console.aws.amazon.com/support/home?).
	ProvisionedBandwidth *ProvisionedBandwidth

	// The state of the NAT gateway.
	//
	// * pending: The NAT gateway is being created and
	// is not ready to process traffic.
	//
	// * failed: The NAT gateway could not be
	// created. Check the failureCode and failureMessage fields for the reason.
	//
	// *
	// available: The NAT gateway is able to process traffic. This status remains until
	// you delete the NAT gateway, and does not indicate the health of the NAT
	// gateway.
	//
	// * deleting: The NAT gateway is in the process of being terminated and
	// may still be processing traffic.
	//
	// * deleted: The NAT gateway has been terminated
	// and is no longer processing traffic.
	State NatGatewayState

	// The ID of the subnet in which the NAT gateway is located.
	SubnetId *string

	// The tags for the NAT gateway.
	Tags []Tag

	// The ID of the VPC in which the NAT gateway is located.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a NAT gateway.

type NatGatewayAddress

type NatGatewayAddress struct {

	// [Public NAT gateway only] The allocation ID of the Elastic IP address that's
	// associated with the NAT gateway.
	AllocationId *string

	// The ID of the network interface associated with the NAT gateway.
	NetworkInterfaceId *string

	// The private IP address associated with the NAT gateway.
	PrivateIp *string

	// [Public NAT gateway only] The Elastic IP address associated with the NAT
	// gateway.
	PublicIp *string
	// contains filtered or unexported fields
}

Describes the IP addresses and network interface associated with a NAT gateway.

type NatGatewayState

type NatGatewayState string
const (
	NatGatewayStatePending   NatGatewayState = "pending"
	NatGatewayStateFailed    NatGatewayState = "failed"
	NatGatewayStateAvailable NatGatewayState = "available"
	NatGatewayStateDeleting  NatGatewayState = "deleting"
	NatGatewayStateDeleted   NatGatewayState = "deleted"
)

Enum values for NatGatewayState

func (NatGatewayState) Values added in v0.29.0

func (NatGatewayState) Values() []NatGatewayState

Values returns all known values for NatGatewayState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NetworkAcl

type NetworkAcl struct {

	// Any associations between the network ACL and one or more subnets
	Associations []NetworkAclAssociation

	// One or more entries (rules) in the network ACL.
	Entries []NetworkAclEntry

	// Indicates whether this is the default network ACL for the VPC.
	IsDefault *bool

	// The ID of the network ACL.
	NetworkAclId *string

	// The ID of the Amazon Web Services account that owns the network ACL.
	OwnerId *string

	// Any tags assigned to the network ACL.
	Tags []Tag

	// The ID of the VPC for the network ACL.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a network ACL.

type NetworkAclAssociation

type NetworkAclAssociation struct {

	// The ID of the association between a network ACL and a subnet.
	NetworkAclAssociationId *string

	// The ID of the network ACL.
	NetworkAclId *string

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes an association between a network ACL and a subnet.

type NetworkAclEntry

type NetworkAclEntry struct {

	// The IPv4 network range to allow or deny, in CIDR notation.
	CidrBlock *string

	// Indicates whether the rule is an egress rule (applied to traffic leaving the
	// subnet).
	Egress *bool

	// ICMP protocol: The ICMP type and code.
	IcmpTypeCode *IcmpTypeCode

	// The IPv6 network range to allow or deny, in CIDR notation.
	Ipv6CidrBlock *string

	// TCP or UDP protocols: The range of ports the rule applies to.
	PortRange *PortRange

	// The protocol number. A value of "-1" means all protocols.
	Protocol *string

	// Indicates whether to allow or deny the traffic that matches the rule.
	RuleAction RuleAction

	// The rule number for the entry. ACL entries are processed in ascending order by
	// rule number.
	RuleNumber *int32
	// contains filtered or unexported fields
}

Describes an entry in a network ACL.

type NetworkBandwidthGbps added in v1.67.0

type NetworkBandwidthGbps struct {

	// The maximum amount of network bandwidth, in Gbps. If this parameter is not
	// specified, there is no maximum limit.
	Max *float64

	// The minimum amount of network bandwidth, in Gbps. If this parameter is not
	// specified, there is no minimum limit.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidth (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the Amazon EC2 User Guide.

type NetworkBandwidthGbpsRequest added in v1.67.0

type NetworkBandwidthGbpsRequest struct {

	// The maximum amount of network bandwidth, in Gbps. To specify no maximum limit,
	// omit this parameter.
	Max *float64

	// The minimum amount of network bandwidth, in Gbps. To specify no minimum limit,
	// omit this parameter.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidth (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the Amazon EC2 User Guide.

type NetworkCardInfo added in v0.30.0

type NetworkCardInfo struct {

	// The maximum number of network interfaces for the network card.
	MaximumNetworkInterfaces *int32

	// The index of the network card.
	NetworkCardIndex *int32

	// The network performance of the network card.
	NetworkPerformance *string
	// contains filtered or unexported fields
}

Describes the network card support of the instance type.

type NetworkInfo

type NetworkInfo struct {

	// The index of the default network card, starting at 0.
	DefaultNetworkCardIndex *int32

	// Describes the Elastic Fabric Adapters for the instance type.
	EfaInfo *EfaInfo

	// Indicates whether Elastic Fabric Adapter (EFA) is supported.
	EfaSupported *bool

	// Indicates whether Elastic Network Adapter (ENA) is supported.
	EnaSupport EnaSupport

	// Indicates whether the instance type automatically encrypts in-transit traffic
	// between instances.
	EncryptionInTransitSupported *bool

	// The maximum number of IPv4 addresses per network interface.
	Ipv4AddressesPerInterface *int32

	// The maximum number of IPv6 addresses per network interface.
	Ipv6AddressesPerInterface *int32

	// Indicates whether IPv6 is supported.
	Ipv6Supported *bool

	// The maximum number of physical network cards that can be allocated to the
	// instance.
	MaximumNetworkCards *int32

	// The maximum number of network interfaces for the instance type.
	MaximumNetworkInterfaces *int32

	// Describes the network cards for the instance type.
	NetworkCards []NetworkCardInfo

	// The network performance.
	NetworkPerformance *string
	// contains filtered or unexported fields
}

Describes the networking features of the instance type.

type NetworkInsightsAccessScope added in v1.25.0

type NetworkInsightsAccessScope struct {

	// The creation date.
	CreatedDate *time.Time

	// The Amazon Resource Name (ARN) of the Network Access Scope.
	NetworkInsightsAccessScopeArn *string

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string

	// The tags.
	Tags []Tag

	// The last updated date.
	UpdatedDate *time.Time
	// contains filtered or unexported fields
}

Describes a Network Access Scope.

type NetworkInsightsAccessScopeAnalysis added in v1.25.0

type NetworkInsightsAccessScopeAnalysis struct {

	// The number of network interfaces analyzed.
	AnalyzedEniCount *int32

	// The analysis end date.
	EndDate *time.Time

	// Indicates whether there are findings.
	FindingsFound FindingsFound

	// The Amazon Resource Name (ARN) of the Network Access Scope analysis.
	NetworkInsightsAccessScopeAnalysisArn *string

	// The ID of the Network Access Scope analysis.
	NetworkInsightsAccessScopeAnalysisId *string

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string

	// The analysis start date.
	StartDate *time.Time

	// The status.
	Status AnalysisStatus

	// The status message.
	StatusMessage *string

	// The tags.
	Tags []Tag

	// The warning message.
	WarningMessage *string
	// contains filtered or unexported fields
}

Describes a Network Access Scope analysis.

type NetworkInsightsAccessScopeContent added in v1.25.0

type NetworkInsightsAccessScopeContent struct {

	// The paths to exclude.
	ExcludePaths []AccessScopePath

	// The paths to match.
	MatchPaths []AccessScopePath

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string
	// contains filtered or unexported fields
}

Describes the Network Access Scope content.

type NetworkInsightsAnalysis added in v0.31.0

type NetworkInsightsAnalysis struct {

	// Potential intermediate components.
	AlternatePathHints []AlternatePathHint

	// The explanations. For more information, see Reachability Analyzer explanation
	// codes
	// (https://docs.aws.amazon.com/vpc/latest/reachability/explanation-codes.html).
	Explanations []Explanation

	// The Amazon Resource Names (ARN) of the Amazon Web Services resources that the
	// path must traverse.
	FilterInArns []string

	// The components in the path from source to destination.
	ForwardPathComponents []PathComponent

	// The Amazon Resource Name (ARN) of the network insights analysis.
	NetworkInsightsAnalysisArn *string

	// The ID of the network insights analysis.
	NetworkInsightsAnalysisId *string

	// The ID of the path.
	NetworkInsightsPathId *string

	// Indicates whether the destination is reachable from the source.
	NetworkPathFound *bool

	// The components in the path from destination to source.
	ReturnPathComponents []PathComponent

	// The time the analysis started.
	StartDate *time.Time

	// The status of the network insights analysis.
	Status AnalysisStatus

	// The status message, if the status is failed.
	StatusMessage *string

	// The tags.
	Tags []Tag

	// The warning message.
	WarningMessage *string
	// contains filtered or unexported fields
}

Describes a network insights analysis.

type NetworkInsightsPath added in v0.31.0

type NetworkInsightsPath struct {

	// The time stamp when the path was created.
	CreatedDate *time.Time

	// The Amazon Web Services resource that is the destination of the path.
	Destination *string

	// The IP address of the Amazon Web Services resource that is the destination of
	// the path.
	DestinationIp *string

	// The destination port.
	DestinationPort *int32

	// The Amazon Resource Name (ARN) of the path.
	NetworkInsightsPathArn *string

	// The ID of the path.
	NetworkInsightsPathId *string

	// The protocol.
	Protocol Protocol

	// The Amazon Web Services resource that is the source of the path.
	Source *string

	// The IP address of the Amazon Web Services resource that is the source of the
	// path.
	SourceIp *string

	// The tags associated with the path.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a path.

type NetworkInterface

type NetworkInterface struct {

	// The association information for an Elastic IP address (IPv4) associated with the
	// network interface.
	Association *NetworkInterfaceAssociation

	// The network interface attachment.
	Attachment *NetworkInterfaceAttachment

	// The Availability Zone.
	AvailabilityZone *string

	// Indicates whether a network interface with an IPv6 address is unreachable from
	// the public internet. If the value is true, inbound traffic from the internet is
	// dropped and you cannot assign an elastic IP address to the network interface.
	// The network interface is reachable from peered VPCs and resources connected
	// through a transit gateway, including on-premises networks.
	DenyAllIgwTraffic *bool

	// A description.
	Description *string

	// Any security groups for the network interface.
	Groups []GroupIdentifier

	// The type of network interface.
	InterfaceType NetworkInterfaceType

	// The IPv4 prefixes that are assigned to the network interface.
	Ipv4Prefixes []Ipv4PrefixSpecification

	// The IPv6 globally unique address associated with the network interface.
	Ipv6Address *string

	// The IPv6 addresses associated with the network interface.
	Ipv6Addresses []NetworkInterfaceIpv6Address

	// Indicates whether this is an IPv6 only network interface.
	Ipv6Native *bool

	// The IPv6 prefixes that are assigned to the network interface.
	Ipv6Prefixes []Ipv6PrefixSpecification

	// The MAC address.
	MacAddress *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The Amazon Web Services account ID of the owner of the network interface.
	OwnerId *string

	// The private DNS name.
	PrivateDnsName *string

	// The IPv4 address of the network interface within the subnet.
	PrivateIpAddress *string

	// The private IPv4 addresses associated with the network interface.
	PrivateIpAddresses []NetworkInterfacePrivateIpAddress

	// The alias or Amazon Web Services account ID of the principal or service that
	// created the network interface.
	RequesterId *string

	// Indicates whether the network interface is being managed by Amazon Web Services.
	RequesterManaged *bool

	// Indicates whether source/destination checking is enabled.
	SourceDestCheck *bool

	// The status of the network interface.
	Status NetworkInterfaceStatus

	// The ID of the subnet.
	SubnetId *string

	// Any tags assigned to the network interface.
	TagSet []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type NetworkInterfaceAssociation

type NetworkInterfaceAssociation struct {

	// The allocation ID.
	AllocationId *string

	// The association ID.
	AssociationId *string

	// The carrier IP address associated with the network interface. This option is
	// only available when the network interface is in a subnet which is associated
	// with a Wavelength Zone.
	CarrierIp *string

	// The customer-owned IP address associated with the network interface.
	CustomerOwnedIp *string

	// The ID of the Elastic IP address owner.
	IpOwnerId *string

	// The public DNS name.
	PublicDnsName *string

	// The address of the Elastic IP address bound to the network interface.
	PublicIp *string
	// contains filtered or unexported fields
}

Describes association information for an Elastic IP address (IPv4 only), or a Carrier IP address (for a network interface which resides in a subnet in a Wavelength Zone).

type NetworkInterfaceAttachment

type NetworkInterfaceAttachment struct {

	// The timestamp indicating when the attachment initiated.
	AttachTime *time.Time

	// The ID of the network interface attachment.
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// The device index of the network interface attachment on the instance.
	DeviceIndex *int32

	// The ID of the instance.
	InstanceId *string

	// The Amazon Web Services account ID of the owner of the instance.
	InstanceOwnerId *string

	// The index of the network card.
	NetworkCardIndex *int32

	// The attachment state.
	Status AttachmentStatus
	// contains filtered or unexported fields
}

Describes a network interface attachment.

type NetworkInterfaceAttachmentChanges

type NetworkInterfaceAttachmentChanges struct {

	// The ID of the network interface attachment.
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool
	// contains filtered or unexported fields
}

Describes an attachment change.

type NetworkInterfaceAttribute

type NetworkInterfaceAttribute string
const (
	NetworkInterfaceAttributeDescription     NetworkInterfaceAttribute = "description"
	NetworkInterfaceAttributeGroupSet        NetworkInterfaceAttribute = "groupSet"
	NetworkInterfaceAttributeSourceDestCheck NetworkInterfaceAttribute = "sourceDestCheck"
	NetworkInterfaceAttributeAttachment      NetworkInterfaceAttribute = "attachment"
)

Enum values for NetworkInterfaceAttribute

func (NetworkInterfaceAttribute) Values added in v0.29.0

Values returns all known values for NetworkInterfaceAttribute. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfaceCount added in v1.21.0

type NetworkInterfaceCount struct {

	// The maximum number of network interfaces. If this parameter is not specified,
	// there is no maximum limit.
	Max *int32

	// The minimum number of network interfaces. If this parameter is not specified,
	// there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of network interfaces.

type NetworkInterfaceCountRequest added in v1.21.0

type NetworkInterfaceCountRequest struct {

	// The maximum number of network interfaces. To specify no maximum limit, omit this
	// parameter.
	Max *int32

	// The minimum number of network interfaces. To specify no minimum limit, omit this
	// parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of network interfaces.

type NetworkInterfaceCreationType

type NetworkInterfaceCreationType string
const (
	NetworkInterfaceCreationTypeEfa    NetworkInterfaceCreationType = "efa"
	NetworkInterfaceCreationTypeBranch NetworkInterfaceCreationType = "branch"
	NetworkInterfaceCreationTypeTrunk  NetworkInterfaceCreationType = "trunk"
)

Enum values for NetworkInterfaceCreationType

func (NetworkInterfaceCreationType) Values added in v0.29.0

Values returns all known values for NetworkInterfaceCreationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfaceIpv6Address

type NetworkInterfaceIpv6Address struct {

	// The IPv6 address.
	Ipv6Address *string
	// contains filtered or unexported fields
}

Describes an IPv6 address associated with a network interface.

type NetworkInterfacePermission

type NetworkInterfacePermission struct {

	// The Amazon Web Services account ID.
	AwsAccountId *string

	// The Amazon Web Service.
	AwsService *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the network interface permission.
	NetworkInterfacePermissionId *string

	// The type of permission.
	Permission InterfacePermissionType

	// Information about the state of the permission.
	PermissionState *NetworkInterfacePermissionState
	// contains filtered or unexported fields
}

Describes a permission for a network interface.

type NetworkInterfacePermissionState

type NetworkInterfacePermissionState struct {

	// The state of the permission.
	State NetworkInterfacePermissionStateCode

	// A status message, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of a network interface permission.

type NetworkInterfacePermissionStateCode

type NetworkInterfacePermissionStateCode string
const (
	NetworkInterfacePermissionStateCodePending  NetworkInterfacePermissionStateCode = "pending"
	NetworkInterfacePermissionStateCodeGranted  NetworkInterfacePermissionStateCode = "granted"
	NetworkInterfacePermissionStateCodeRevoking NetworkInterfacePermissionStateCode = "revoking"
	NetworkInterfacePermissionStateCodeRevoked  NetworkInterfacePermissionStateCode = "revoked"
)

Enum values for NetworkInterfacePermissionStateCode

func (NetworkInterfacePermissionStateCode) Values added in v0.29.0

Values returns all known values for NetworkInterfacePermissionStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfacePrivateIpAddress

type NetworkInterfacePrivateIpAddress struct {

	// The association information for an Elastic IP address (IPv4) associated with the
	// network interface.
	Association *NetworkInterfaceAssociation

	// Indicates whether this IPv4 address is the primary private IPv4 address of the
	// network interface.
	Primary *bool

	// The private DNS name.
	PrivateDnsName *string

	// The private IPv4 address.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes the private IPv4 address of a network interface.

type NetworkInterfaceStatus

type NetworkInterfaceStatus string
const (
	NetworkInterfaceStatusAvailable  NetworkInterfaceStatus = "available"
	NetworkInterfaceStatusAssociated NetworkInterfaceStatus = "associated"
	NetworkInterfaceStatusAttaching  NetworkInterfaceStatus = "attaching"
	NetworkInterfaceStatusInUse      NetworkInterfaceStatus = "in-use"
	NetworkInterfaceStatusDetaching  NetworkInterfaceStatus = "detaching"
)

Enum values for NetworkInterfaceStatus

func (NetworkInterfaceStatus) Values added in v0.29.0

Values returns all known values for NetworkInterfaceStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfaceType

type NetworkInterfaceType string
const (
	NetworkInterfaceTypeInterface                     NetworkInterfaceType = "interface"
	NetworkInterfaceTypeNatGateway                    NetworkInterfaceType = "natGateway"
	NetworkInterfaceTypeEfa                           NetworkInterfaceType = "efa"
	NetworkInterfaceTypeTrunk                         NetworkInterfaceType = "trunk"
	NetworkInterfaceTypeLoadBalancer                  NetworkInterfaceType = "load_balancer"
	NetworkInterfaceTypeNetworkLoadBalancer           NetworkInterfaceType = "network_load_balancer"
	NetworkInterfaceTypeVpcEndpoint                   NetworkInterfaceType = "vpc_endpoint"
	NetworkInterfaceTypeBranch                        NetworkInterfaceType = "branch"
	NetworkInterfaceTypeTransitGateway                NetworkInterfaceType = "transit_gateway"
	NetworkInterfaceTypeLambda                        NetworkInterfaceType = "lambda"
	NetworkInterfaceTypeQuicksight                    NetworkInterfaceType = "quicksight"
	NetworkInterfaceTypeGlobalAcceleratorManaged      NetworkInterfaceType = "global_accelerator_managed"
	NetworkInterfaceTypeApiGatewayManaged             NetworkInterfaceType = "api_gateway_managed"
	NetworkInterfaceTypeGatewayLoadBalancer           NetworkInterfaceType = "gateway_load_balancer"
	NetworkInterfaceTypeGatewayLoadBalancerEndpoint   NetworkInterfaceType = "gateway_load_balancer_endpoint"
	NetworkInterfaceTypeIotRulesManaged               NetworkInterfaceType = "iot_rules_managed"
	NetworkInterfaceTypeAwsCodestarConnectionsManaged NetworkInterfaceType = "aws_codestar_connections_managed"
)

Enum values for NetworkInterfaceType

func (NetworkInterfaceType) Values added in v0.29.0

Values returns all known values for NetworkInterfaceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type NewDhcpConfiguration

type NewDhcpConfiguration struct {

	// The name of a DHCP option.
	Key *string

	// One or more values for the DHCP option.
	Values []string
	// contains filtered or unexported fields
}

Describes a DHCP configuration option.

type OfferingClassType

type OfferingClassType string
const (
	OfferingClassTypeStandard    OfferingClassType = "standard"
	OfferingClassTypeConvertible OfferingClassType = "convertible"
)

Enum values for OfferingClassType

func (OfferingClassType) Values added in v0.29.0

Values returns all known values for OfferingClassType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type OfferingTypeValues

type OfferingTypeValues string
const (
	OfferingTypeValuesHeavyUtilization  OfferingTypeValues = "Heavy Utilization"
	OfferingTypeValuesMediumUtilization OfferingTypeValues = "Medium Utilization"
	OfferingTypeValuesLightUtilization  OfferingTypeValues = "Light Utilization"
	OfferingTypeValuesNoUpfront         OfferingTypeValues = "No Upfront"
	OfferingTypeValuesPartialUpfront    OfferingTypeValues = "Partial Upfront"
	OfferingTypeValuesAllUpfront        OfferingTypeValues = "All Upfront"
)

Enum values for OfferingTypeValues

func (OfferingTypeValues) Values added in v0.29.0

Values returns all known values for OfferingTypeValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type OnDemandAllocationStrategy

type OnDemandAllocationStrategy string
const (
	OnDemandAllocationStrategyLowestPrice OnDemandAllocationStrategy = "lowestPrice"
	OnDemandAllocationStrategyPrioritized OnDemandAllocationStrategy = "prioritized"
)

Enum values for OnDemandAllocationStrategy

func (OnDemandAllocationStrategy) Values added in v0.29.0

Values returns all known values for OnDemandAllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type OnDemandOptions

type OnDemandOptions struct {

	// The strategy that determines the order of the launch template overrides to use
	// in fulfilling On-Demand capacity. lowest-price - EC2 Fleet uses price to
	// determine the order, launching the lowest price first. prioritized - EC2 Fleet
	// uses the priority that you assigned to each launch template override, launching
	// the highest priority first. Default: lowest-price
	AllocationStrategy FleetOnDemandAllocationStrategy

	// The strategy for using unused Capacity Reservations for fulfilling On-Demand
	// capacity. Supported only for fleets of type instant.
	CapacityReservationOptions *CapacityReservationOptions

	// The maximum amount per hour for On-Demand Instances that you're willing to pay.
	MaxTotalPrice *string

	// The minimum target capacity for On-Demand Instances in the fleet. If the minimum
	// target capacity is not reached, the fleet launches no instances. Supported only
	// for fleets of type instant. At least one of the following must be specified:
	// SingleAvailabilityZone | SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all On-Demand Instances into a single
	// Availability Zone. Supported only for fleets of type instant.
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all On-Demand
	// Instances in the fleet. Supported only for fleets of type instant.
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of On-Demand Instances in an EC2 Fleet.

type OnDemandOptionsRequest

type OnDemandOptionsRequest struct {

	// The strategy that determines the order of the launch template overrides to use
	// in fulfilling On-Demand capacity. lowest-price - EC2 Fleet uses price to
	// determine the order, launching the lowest price first. prioritized - EC2 Fleet
	// uses the priority that you assigned to each launch template override, launching
	// the highest priority first. Default: lowest-price
	AllocationStrategy FleetOnDemandAllocationStrategy

	// The strategy for using unused Capacity Reservations for fulfilling On-Demand
	// capacity. Supported only for fleets of type instant.
	CapacityReservationOptions *CapacityReservationOptionsRequest

	// The maximum amount per hour for On-Demand Instances that you're willing to pay.
	MaxTotalPrice *string

	// The minimum target capacity for On-Demand Instances in the fleet. If the minimum
	// target capacity is not reached, the fleet launches no instances. Supported only
	// for fleets of type instant. At least one of the following must be specified:
	// SingleAvailabilityZone | SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all On-Demand Instances into a single
	// Availability Zone. Supported only for fleets of type instant.
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all On-Demand
	// Instances in the fleet. Supported only for fleets of type instant.
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of On-Demand Instances in an EC2 Fleet.

type OperationType

type OperationType string
const (
	OperationTypeAdd    OperationType = "add"
	OperationTypeRemove OperationType = "remove"
)

Enum values for OperationType

func (OperationType) Values added in v0.29.0

func (OperationType) Values() []OperationType

Values returns all known values for OperationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PacketHeaderStatement added in v1.25.0

type PacketHeaderStatement struct {

	// The destination addresses.
	DestinationAddresses []string

	// The destination ports.
	DestinationPorts []string

	// The destination prefix lists.
	DestinationPrefixLists []string

	// The protocols.
	Protocols []Protocol

	// The source addresses.
	SourceAddresses []string

	// The source ports.
	SourcePorts []string

	// The source prefix lists.
	SourcePrefixLists []string
	// contains filtered or unexported fields
}

Describes a packet header statement.

type PacketHeaderStatementRequest added in v1.25.0

type PacketHeaderStatementRequest struct {

	// The destination addresses.
	DestinationAddresses []string

	// The destination ports.
	DestinationPorts []string

	// The destination prefix lists.
	DestinationPrefixLists []string

	// The protocols.
	Protocols []Protocol

	// The source addresses.
	SourceAddresses []string

	// The source ports.
	SourcePorts []string

	// The source prefix lists.
	SourcePrefixLists []string
	// contains filtered or unexported fields
}

Describes a packet header statement.

type PartitionLoadFrequency added in v1.4.0

type PartitionLoadFrequency string
const (
	PartitionLoadFrequencyNone    PartitionLoadFrequency = "none"
	PartitionLoadFrequencyDaily   PartitionLoadFrequency = "daily"
	PartitionLoadFrequencyWeekly  PartitionLoadFrequency = "weekly"
	PartitionLoadFrequencyMonthly PartitionLoadFrequency = "monthly"
)

Enum values for PartitionLoadFrequency

func (PartitionLoadFrequency) Values added in v1.4.0

Values returns all known values for PartitionLoadFrequency. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PathComponent added in v0.31.0

type PathComponent struct {

	// The network ACL rule.
	AclRule *AnalysisAclRule

	// The additional details.
	AdditionalDetails []AdditionalDetail

	// The resource to which the path component is attached.
	AttachedTo *AnalysisComponent

	// The component.
	Component *AnalysisComponent

	// The destination VPC.
	DestinationVpc *AnalysisComponent

	// The load balancer listener.
	ElasticLoadBalancerListener *AnalysisComponent

	// The explanation codes.
	Explanations []Explanation

	// The inbound header.
	InboundHeader *AnalysisPacketHeader

	// The outbound header.
	OutboundHeader *AnalysisPacketHeader

	// The route table route.
	RouteTableRoute *AnalysisRouteTableRoute

	// The security group rule.
	SecurityGroupRule *AnalysisSecurityGroupRule

	// The sequence number.
	SequenceNumber *int32

	// The source VPC.
	SourceVpc *AnalysisComponent

	// The subnet.
	Subnet *AnalysisComponent

	// The transit gateway.
	TransitGateway *AnalysisComponent

	// The route in a transit gateway route table.
	TransitGatewayRouteTableRoute *TransitGatewayRouteTableRoute

	// The component VPC.
	Vpc *AnalysisComponent
	// contains filtered or unexported fields
}

Describes a path component.

type PathStatement added in v1.25.0

type PathStatement struct {

	// The packet header statement.
	PacketHeaderStatement *PacketHeaderStatement

	// The resource statement.
	ResourceStatement *ResourceStatement
	// contains filtered or unexported fields
}

Describes a path statement.

type PathStatementRequest added in v1.25.0

type PathStatementRequest struct {

	// The packet header statement.
	PacketHeaderStatement *PacketHeaderStatementRequest

	// The resource statement.
	ResourceStatement *ResourceStatementRequest
	// contains filtered or unexported fields
}

Describes a path statement.

type PayerResponsibility added in v1.27.0

type PayerResponsibility string
const (
	PayerResponsibilityServiceOwner PayerResponsibility = "ServiceOwner"
)

Enum values for PayerResponsibility

func (PayerResponsibility) Values added in v1.27.0

Values returns all known values for PayerResponsibility. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PaymentOption

type PaymentOption string
const (
	PaymentOptionAllUpfront     PaymentOption = "AllUpfront"
	PaymentOptionPartialUpfront PaymentOption = "PartialUpfront"
	PaymentOptionNoUpfront      PaymentOption = "NoUpfront"
)

Enum values for PaymentOption

func (PaymentOption) Values added in v0.29.0

func (PaymentOption) Values() []PaymentOption

Values returns all known values for PaymentOption. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PciId

type PciId struct {

	// The ID of the device.
	DeviceId *string

	// The ID of the subsystem.
	SubsystemId *string

	// The ID of the vendor for the subsystem.
	SubsystemVendorId *string

	// The ID of the vendor.
	VendorId *string
	// contains filtered or unexported fields
}

Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.

type PeeringAttachmentStatus

type PeeringAttachmentStatus struct {

	// The status code.
	Code *string

	// The status message, if applicable.
	Message *string
	// contains filtered or unexported fields
}

The status of the transit gateway peering attachment.

type PeeringConnectionOptions

type PeeringConnectionOptions struct {

	// If true, the public DNS hostnames of instances in the specified VPC resolve to
	// private IP addresses when queried from instances in the peer VPC.
	AllowDnsResolutionFromRemoteVpc *bool

	// If true, enables outbound communication from an EC2-Classic instance that's
	// linked to a local VPC using ClassicLink to instances in a peer VPC.
	AllowEgressFromLocalClassicLinkToRemoteVpc *bool

	// If true, enables outbound communication from instances in a local VPC to an
	// EC2-Classic instance that's linked to a peer VPC using ClassicLink.
	AllowEgressFromLocalVpcToRemoteClassicLink *bool
	// contains filtered or unexported fields
}

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide. Describes the VPC peering connection options.

type PeeringConnectionOptionsRequest

type PeeringConnectionOptionsRequest struct {

	// If true, enables a local VPC to resolve public DNS hostnames to private IP
	// addresses when queried from instances in the peer VPC.
	AllowDnsResolutionFromRemoteVpc *bool

	// If true, enables outbound communication from an EC2-Classic instance that's
	// linked to a local VPC using ClassicLink to instances in a peer VPC.
	AllowEgressFromLocalClassicLinkToRemoteVpc *bool

	// If true, enables outbound communication from instances in a local VPC to an
	// EC2-Classic instance that's linked to a peer VPC using ClassicLink.
	AllowEgressFromLocalVpcToRemoteClassicLink *bool
	// contains filtered or unexported fields
}

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide. The VPC peering connection options.

type PeeringTgwInfo

type PeeringTgwInfo struct {

	// The ID of the core network where the transit gateway peer is located.
	CoreNetworkId *string

	// The ID of the Amazon Web Services account that owns the transit gateway.
	OwnerId *string

	// The Region of the transit gateway.
	Region *string

	// The ID of the transit gateway.
	TransitGatewayId *string
	// contains filtered or unexported fields
}

Information about the transit gateway in the peering attachment.

type PermissionGroup

type PermissionGroup string
const (
	PermissionGroupAll PermissionGroup = "all"
)

Enum values for PermissionGroup

func (PermissionGroup) Values added in v0.29.0

func (PermissionGroup) Values() []PermissionGroup

Values returns all known values for PermissionGroup. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Phase1DHGroupNumbersListValue

type Phase1DHGroupNumbersListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

The Diffie-Hellmann group number for phase 1 IKE negotiations.

type Phase1DHGroupNumbersRequestListValue

type Phase1DHGroupNumbersRequestListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE negotiations.

type Phase1EncryptionAlgorithmsListValue

type Phase1EncryptionAlgorithmsListValue struct {

	// The value for the encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

The encryption algorithm for phase 1 IKE negotiations.

type Phase1EncryptionAlgorithmsRequestListValue

type Phase1EncryptionAlgorithmsRequestListValue struct {

	// The value for the encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE negotiations.

type Phase1IntegrityAlgorithmsListValue

type Phase1IntegrityAlgorithmsListValue struct {

	// The value for the integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

The integrity algorithm for phase 1 IKE negotiations.

type Phase1IntegrityAlgorithmsRequestListValue

type Phase1IntegrityAlgorithmsRequestListValue struct {

	// The value for the integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE negotiations.

type Phase2DHGroupNumbersListValue

type Phase2DHGroupNumbersListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

The Diffie-Hellmann group number for phase 2 IKE negotiations.

type Phase2DHGroupNumbersRequestListValue

type Phase2DHGroupNumbersRequestListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE negotiations.

type Phase2EncryptionAlgorithmsListValue

type Phase2EncryptionAlgorithmsListValue struct {

	// The encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

The encryption algorithm for phase 2 IKE negotiations.

type Phase2EncryptionAlgorithmsRequestListValue

type Phase2EncryptionAlgorithmsRequestListValue struct {

	// The encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE negotiations.

type Phase2IntegrityAlgorithmsListValue

type Phase2IntegrityAlgorithmsListValue struct {

	// The integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

The integrity algorithm for phase 2 IKE negotiations.

type Phase2IntegrityAlgorithmsRequestListValue

type Phase2IntegrityAlgorithmsRequestListValue struct {

	// The integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE negotiations.

type Placement

type Placement struct {

	// The affinity setting for the instance on the Dedicated Host. This parameter is
	// not supported for the ImportInstance
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html)
	// command. This parameter is not supported by CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet).
	Affinity *string

	// The Availability Zone of the instance. If not specified, an Availability Zone
	// will be automatically chosen for you based on the load balancing criteria for
	// the Region. This parameter is not supported by CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet).
	AvailabilityZone *string

	// The Group Id of the placement group.
	GroupId *string

	// The name of the placement group the instance is in.
	GroupName *string

	// The ID of the Dedicated Host on which the instance resides. This parameter is
	// not supported for the ImportInstance
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html)
	// command. This parameter is not supported by CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet).
	HostId *string

	// The ARN of the host resource group in which to launch the instances. If you
	// specify a host resource group ARN, omit the Tenancy parameter or set it to host.
	// This parameter is not supported by CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet).
	HostResourceGroupArn *string

	// The number of the partition that the instance is in. Valid only if the placement
	// group strategy is set to partition. This parameter is not supported by
	// CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet).
	PartitionNumber *int32

	// Reserved for future use. This parameter is not supported by CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet).
	SpreadDomain *string

	// The tenancy of the instance (if the instance is running in a VPC). An instance
	// with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is
	// not supported for the ImportInstance
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html)
	// command. This parameter is not supported by CreateFleet
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet). T3
	// instances that use the unlimited CPU credit option do not support host tenancy.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type PlacementGroup

type PlacementGroup struct {

	// The Amazon Resource Name (ARN) of the placement group.
	GroupArn *string

	// The ID of the placement group.
	GroupId *string

	// The name of the placement group.
	GroupName *string

	// The number of partitions. Valid only if strategy is set to partition.
	PartitionCount *int32

	// The spread level for the placement group. Only Outpost placement groups can be
	// spread across hosts.
	SpreadLevel SpreadLevel

	// The state of the placement group.
	State PlacementGroupState

	// The placement strategy.
	Strategy PlacementStrategy

	// Any tags applied to the placement group.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a placement group.

type PlacementGroupInfo

type PlacementGroupInfo struct {

	// The supported placement group types.
	SupportedStrategies []PlacementGroupStrategy
	// contains filtered or unexported fields
}

Describes the placement group support of the instance type.

type PlacementGroupState

type PlacementGroupState string
const (
	PlacementGroupStatePending   PlacementGroupState = "pending"
	PlacementGroupStateAvailable PlacementGroupState = "available"
	PlacementGroupStateDeleting  PlacementGroupState = "deleting"
	PlacementGroupStateDeleted   PlacementGroupState = "deleted"
)

Enum values for PlacementGroupState

func (PlacementGroupState) Values added in v0.29.0

Values returns all known values for PlacementGroupState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PlacementGroupStrategy

type PlacementGroupStrategy string
const (
	PlacementGroupStrategyCluster   PlacementGroupStrategy = "cluster"
	PlacementGroupStrategyPartition PlacementGroupStrategy = "partition"
	PlacementGroupStrategySpread    PlacementGroupStrategy = "spread"
)

Enum values for PlacementGroupStrategy

func (PlacementGroupStrategy) Values added in v0.29.0

Values returns all known values for PlacementGroupStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PlacementResponse

type PlacementResponse struct {

	// The name of the placement group that the instance is in.
	GroupName *string
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type PlacementStrategy

type PlacementStrategy string
const (
	PlacementStrategyCluster   PlacementStrategy = "cluster"
	PlacementStrategySpread    PlacementStrategy = "spread"
	PlacementStrategyPartition PlacementStrategy = "partition"
)

Enum values for PlacementStrategy

func (PlacementStrategy) Values added in v0.29.0

Values returns all known values for PlacementStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PlatformValues

type PlatformValues string
const (
	PlatformValuesWindows PlatformValues = "Windows"
)

Enum values for PlatformValues

func (PlatformValues) Values added in v0.29.0

func (PlatformValues) Values() []PlatformValues

Values returns all known values for PlatformValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PoolCidrBlock

type PoolCidrBlock struct {

	// The CIDR block.
	Cidr *string
	// contains filtered or unexported fields
}

Describes a CIDR block for an address pool.

type PortRange

type PortRange struct {

	// The first port in the range.
	From *int32

	// The last port in the range.
	To *int32
	// contains filtered or unexported fields
}

Describes a range of ports.

type PrefixList

type PrefixList struct {

	// The IP address range of the Amazon Web Service.
	Cidrs []string

	// The ID of the prefix.
	PrefixListId *string

	// The name of the prefix.
	PrefixListName *string
	// contains filtered or unexported fields
}

Describes prefixes for Amazon Web Services services.

type PrefixListAssociation

type PrefixListAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The owner of the resource.
	ResourceOwner *string
	// contains filtered or unexported fields
}

Describes the resource with which a prefix list is associated.

type PrefixListEntry

type PrefixListEntry struct {

	// The CIDR block.
	Cidr *string

	// The description.
	Description *string
	// contains filtered or unexported fields
}

Describes a prefix list entry.

type PrefixListId

type PrefixListId struct {

	// A description for the security group rule that references this prefix list ID.
	// Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z,
	// 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
	Description *string

	// The ID of the prefix.
	PrefixListId *string
	// contains filtered or unexported fields
}

Describes a prefix list ID.

type PrefixListState

type PrefixListState string
const (
	PrefixListStateCreateInProgress  PrefixListState = "create-in-progress"
	PrefixListStateCreateComplete    PrefixListState = "create-complete"
	PrefixListStateCreateFailed      PrefixListState = "create-failed"
	PrefixListStateModifyInProgress  PrefixListState = "modify-in-progress"
	PrefixListStateModifyComplete    PrefixListState = "modify-complete"
	PrefixListStateModifyFailed      PrefixListState = "modify-failed"
	PrefixListStateRestoreInProgress PrefixListState = "restore-in-progress"
	PrefixListStateRestoreComplete   PrefixListState = "restore-complete"
	PrefixListStateRestoreFailed     PrefixListState = "restore-failed"
	PrefixListStateDeleteInProgress  PrefixListState = "delete-in-progress"
	PrefixListStateDeleteComplete    PrefixListState = "delete-complete"
	PrefixListStateDeleteFailed      PrefixListState = "delete-failed"
)

Enum values for PrefixListState

func (PrefixListState) Values added in v0.29.0

func (PrefixListState) Values() []PrefixListState

Values returns all known values for PrefixListState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PriceSchedule

type PriceSchedule struct {

	// The current price schedule, as determined by the term remaining for the Reserved
	// Instance in the listing. A specific price schedule is always in effect, but only
	// one price schedule can be active at any time. Take, for example, a Reserved
	// Instance listing that has five months remaining in its term. When you specify
	// price schedules for five months and two months, this means that schedule 1,
	// covering the first three months of the remaining term, will be active during
	// months 5, 4, and 3. Then schedule 2, covering the last two months of the term,
	// will be active for months 2 and 1.
	Active *bool

	// The currency for transacting the Reserved Instance resale. At this time, the
	// only supported currency is USD.
	CurrencyCode CurrencyCodeValues

	// The fixed price for the term.
	Price *float64

	// The number of months remaining in the reservation. For example, 2 is the second
	// to the last month before the capacity reservation expires.
	Term *int64
	// contains filtered or unexported fields
}

Describes the price for a Reserved Instance.

type PriceScheduleSpecification

type PriceScheduleSpecification struct {

	// The currency for transacting the Reserved Instance resale. At this time, the
	// only supported currency is USD.
	CurrencyCode CurrencyCodeValues

	// The fixed price for the term.
	Price *float64

	// The number of months remaining in the reservation. For example, 2 is the second
	// to the last month before the capacity reservation expires.
	Term *int64
	// contains filtered or unexported fields
}

Describes the price for a Reserved Instance.

type PricingDetail

type PricingDetail struct {

	// The number of reservations available for the price.
	Count *int32

	// The price per instance.
	Price *float64
	// contains filtered or unexported fields
}

Describes a Reserved Instance offering.

type PrincipalIdFormat

type PrincipalIdFormat struct {

	// PrincipalIdFormatARN description
	Arn *string

	// PrincipalIdFormatStatuses description
	Statuses []IdFormat
	// contains filtered or unexported fields
}

PrincipalIdFormat description

type PrincipalType

type PrincipalType string
const (
	PrincipalTypeAll              PrincipalType = "All"
	PrincipalTypeService          PrincipalType = "Service"
	PrincipalTypeOrganizationUnit PrincipalType = "OrganizationUnit"
	PrincipalTypeAccount          PrincipalType = "Account"
	PrincipalTypeUser             PrincipalType = "User"
	PrincipalTypeRole             PrincipalType = "Role"
)

Enum values for PrincipalType

func (PrincipalType) Values added in v0.29.0

func (PrincipalType) Values() []PrincipalType

Values returns all known values for PrincipalType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PrivateDnsDetails added in v0.31.0

type PrivateDnsDetails struct {

	// The private DNS name assigned to the VPC endpoint service.
	PrivateDnsName *string
	// contains filtered or unexported fields
}

Information about the Private DNS name for interface endpoints.

type PrivateDnsNameConfiguration

type PrivateDnsNameConfiguration struct {

	// The name of the record subdomain the service provider needs to create. The
	// service provider adds the value text to the name.
	Name *string

	// The verification state of the VPC endpoint service. >Consumers of the endpoint
	// service can use the private name only when the state is verified.
	State DnsNameState

	// The endpoint service verification type, for example TXT.
	Type *string

	// The value the service provider adds to the private DNS name domain record before
	// verification.
	Value *string
	// contains filtered or unexported fields
}

Information about the private DNS name for the service endpoint.

type PrivateDnsNameOptionsOnLaunch added in v1.24.0

type PrivateDnsNameOptionsOnLaunch struct {

	// Indicates whether to respond to DNS queries for instance hostname with DNS AAAA
	// records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS
	// name must be based on the instance IPv4 address. For IPv6 only subnets, an
	// instance DNS name must be based on the instance ID. For dual-stack subnets, you
	// can specify whether DNS names use the instance IPv4 address or the instance ID.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type PrivateDnsNameOptionsRequest added in v1.24.0

type PrivateDnsNameOptionsRequest struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA
	// records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS
	// name must be based on the instance IPv4 address. For IPv6 only subnets, an
	// instance DNS name must be based on the instance ID. For dual-stack subnets, you
	// can specify whether DNS names use the instance IPv4 address or the instance ID.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type PrivateDnsNameOptionsResponse added in v1.24.0

type PrivateDnsNameOptionsResponse struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA
	// records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname to assign to an instance.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type PrivateIpAddressSpecification

type PrivateIpAddressSpecification struct {

	// Indicates whether the private IPv4 address is the primary private IPv4 address.
	// Only one IPv4 address can be designated as primary.
	Primary *bool

	// The private IPv4 address.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes a secondary private IPv4 address for a network interface.

type ProcessorInfo

type ProcessorInfo struct {

	// The architectures supported by the instance type.
	SupportedArchitectures []ArchitectureType

	// The speed of the processor, in GHz.
	SustainedClockSpeedInGhz *float64
	// contains filtered or unexported fields
}

Describes the processor used by the instance type.

type ProductCode

type ProductCode struct {

	// The product code.
	ProductCodeId *string

	// The type of product code.
	ProductCodeType ProductCodeValues
	// contains filtered or unexported fields
}

Describes a product code.

type ProductCodeValues

type ProductCodeValues string
const (
	ProductCodeValuesDevpay      ProductCodeValues = "devpay"
	ProductCodeValuesMarketplace ProductCodeValues = "marketplace"
)

Enum values for ProductCodeValues

func (ProductCodeValues) Values added in v0.29.0

Values returns all known values for ProductCodeValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type PropagatingVgw

type PropagatingVgw struct {

	// The ID of the virtual private gateway.
	GatewayId *string
	// contains filtered or unexported fields
}

Describes a virtual private gateway propagating route.

type Protocol added in v0.31.0

type Protocol string
const (
	ProtocolTcp Protocol = "tcp"
	ProtocolUdp Protocol = "udp"
)

Enum values for Protocol

func (Protocol) Values added in v0.31.0

func (Protocol) Values() []Protocol

Values returns all known values for Protocol. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ProtocolValue added in v0.31.0

type ProtocolValue string
const (
	ProtocolValueGre ProtocolValue = "gre"
)

Enum values for ProtocolValue

func (ProtocolValue) Values added in v0.31.0

func (ProtocolValue) Values() []ProtocolValue

Values returns all known values for ProtocolValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ProvisionedBandwidth

type ProvisionedBandwidth struct {

	// Reserved. If you need to sustain traffic greater than the documented limits
	// (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact
	// us through the Support Center (https://console.aws.amazon.com/support/home?).
	ProvisionTime *time.Time

	// Reserved. If you need to sustain traffic greater than the documented limits
	// (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact
	// us through the Support Center (https://console.aws.amazon.com/support/home?).
	Provisioned *string

	// Reserved. If you need to sustain traffic greater than the documented limits
	// (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact
	// us through the Support Center (https://console.aws.amazon.com/support/home?).
	RequestTime *time.Time

	// Reserved. If you need to sustain traffic greater than the documented limits
	// (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact
	// us through the Support Center (https://console.aws.amazon.com/support/home?).
	Requested *string

	// Reserved. If you need to sustain traffic greater than the documented limits
	// (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact
	// us through the Support Center (https://console.aws.amazon.com/support/home?).
	Status *string
	// contains filtered or unexported fields
}

Reserved. If you need to sustain traffic greater than the documented limits (https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html), contact us through the Support Center (https://console.aws.amazon.com/support/home?).

type PtrUpdateStatus added in v0.31.0

type PtrUpdateStatus struct {

	// The reason for the PTR record update.
	Reason *string

	// The status of the PTR record update.
	Status *string

	// The value for the PTR record update.
	Value *string
	// contains filtered or unexported fields
}

The status of an updated pointer (PTR) record for an Elastic IP address.

type PublicIpv4Pool

type PublicIpv4Pool struct {

	// A description of the address pool.
	Description *string

	// The name of the location from which the address pool is advertised. A network
	// border group is a unique set of Availability Zones or Local Zones from where
	// Amazon Web Services advertises public IP addresses.
	NetworkBorderGroup *string

	// The address ranges.
	PoolAddressRanges []PublicIpv4PoolRange

	// The ID of the address pool.
	PoolId *string

	// Any tags for the address pool.
	Tags []Tag

	// The total number of addresses.
	TotalAddressCount *int32

	// The total number of available addresses.
	TotalAvailableAddressCount *int32
	// contains filtered or unexported fields
}

Describes an IPv4 address pool.

type PublicIpv4PoolRange

type PublicIpv4PoolRange struct {

	// The number of addresses in the range.
	AddressCount *int32

	// The number of available addresses in the range.
	AvailableAddressCount *int32

	// The first IP address in the range.
	FirstAddress *string

	// The last IP address in the range.
	LastAddress *string
	// contains filtered or unexported fields
}

Describes an address range of an IPv4 address pool.

type Purchase

type Purchase struct {

	// The currency in which the UpfrontPrice and HourlyPrice amounts are specified. At
	// this time, the only supported currency is USD.
	CurrencyCode CurrencyCodeValues

	// The duration of the reservation's term in seconds.
	Duration *int32

	// The IDs of the Dedicated Hosts associated with the reservation.
	HostIdSet []string

	// The ID of the reservation.
	HostReservationId *string

	// The hourly price of the reservation per hour.
	HourlyPrice *string

	// The instance family on the Dedicated Host that the reservation can be associated
	// with.
	InstanceFamily *string

	// The payment option for the reservation.
	PaymentOption PaymentOption

	// The upfront price of the reservation.
	UpfrontPrice *string
	// contains filtered or unexported fields
}

Describes the result of the purchase.

type PurchaseRequest

type PurchaseRequest struct {

	// The number of instances.
	//
	// This member is required.
	InstanceCount *int32

	// The purchase token.
	//
	// This member is required.
	PurchaseToken *string
	// contains filtered or unexported fields
}

Describes a request to purchase Scheduled Instances.

type RIProductDescription

type RIProductDescription string

func (RIProductDescription) Values added in v0.29.0

Values returns all known values for RIProductDescription. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type RecurringCharge

type RecurringCharge struct {

	// The amount of the recurring charge.
	Amount *float64

	// The frequency of the recurring charge.
	Frequency RecurringChargeFrequency
	// contains filtered or unexported fields
}

Describes a recurring charge.

type RecurringChargeFrequency

type RecurringChargeFrequency string
const (
	RecurringChargeFrequencyHourly RecurringChargeFrequency = "Hourly"
)

Enum values for RecurringChargeFrequency

func (RecurringChargeFrequency) Values added in v0.29.0

Values returns all known values for RecurringChargeFrequency. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ReferencedSecurityGroup added in v1.12.0

type ReferencedSecurityGroup struct {

	// The ID of the security group.
	GroupId *string

	// The status of a VPC peering connection, if applicable.
	PeeringStatus *string

	// The Amazon Web Services account ID.
	UserId *string

	// The ID of the VPC.
	VpcId *string

	// The ID of the VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes the security group that is referenced in the security group rule.

type Region

type Region struct {

	// The Region service endpoint.
	Endpoint *string

	// The Region opt-in status. The possible values are opt-in-not-required, opted-in,
	// and not-opted-in.
	OptInStatus *string

	// The name of the Region.
	RegionName *string
	// contains filtered or unexported fields
}

Describes a Region.

type RegisterInstanceTagAttributeRequest

type RegisterInstanceTagAttributeRequest struct {

	// Indicates whether to register all tag keys in the current Region. Specify true
	// to register all tag keys.
	IncludeAllTagsOfInstance *bool

	// The tag keys to register.
	InstanceTagKeys []string
	// contains filtered or unexported fields
}

Information about the tag keys to register for the current Region. You can either specify individual tag keys or register all tag keys in the current Region. You must specify either IncludeAllTagsOfInstance or InstanceTagKeys in the request

type RemoveIpamOperatingRegion added in v1.25.0

type RemoveIpamOperatingRegion struct {

	// The name of the operating Region you want to remove.
	RegionName *string
	// contains filtered or unexported fields
}

Remove an operating Region from an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions. For more information about operating Regions, see Create an IPAM (https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) in the Amazon VPC IPAM User Guide

type RemovePrefixListEntry

type RemovePrefixListEntry struct {

	// The CIDR block.
	//
	// This member is required.
	Cidr *string
	// contains filtered or unexported fields
}

An entry for a prefix list.

type ReplaceRootVolumeTask added in v1.3.0

type ReplaceRootVolumeTask struct {

	// The time the task completed.
	CompleteTime *string

	// Indicates whether the original root volume is to be deleted after the root
	// volume replacement task completes.
	DeleteReplacedRootVolume *bool

	// The ID of the AMI used to create the replacement root volume.
	ImageId *string

	// The ID of the instance for which the root volume replacement task was created.
	InstanceId *string

	// The ID of the root volume replacement task.
	ReplaceRootVolumeTaskId *string

	// The ID of the snapshot used to create the replacement root volume.
	SnapshotId *string

	// The time the task was started.
	StartTime *string

	// The tags assigned to the task.
	Tags []Tag

	// The state of the task. The task can be in one of the following states:
	//
	// *
	// pending - the replacement volume is being created.
	//
	// * in-progress - the original
	// volume is being detached and the replacement volume is being attached.
	//
	// *
	// succeeded - the replacement volume has been successfully attached to the
	// instance and the instance is available.
	//
	// * failing - the replacement task is in
	// the process of failing.
	//
	// * failed - the replacement task has failed but the
	// original root volume is still attached.
	//
	// * failing-detached - the replacement
	// task is in the process of failing. The instance might have no root volume
	// attached.
	//
	// * failed-detached - the replacement task has failed and the instance
	// has no root volume attached.
	TaskState ReplaceRootVolumeTaskState
	// contains filtered or unexported fields
}

Information about a root volume replacement task.

type ReplaceRootVolumeTaskState added in v1.3.0

type ReplaceRootVolumeTaskState string
const (
	ReplaceRootVolumeTaskStatePending        ReplaceRootVolumeTaskState = "pending"
	ReplaceRootVolumeTaskStateInProgress     ReplaceRootVolumeTaskState = "in-progress"
	ReplaceRootVolumeTaskStateFailing        ReplaceRootVolumeTaskState = "failing"
	ReplaceRootVolumeTaskStateSucceeded      ReplaceRootVolumeTaskState = "succeeded"
	ReplaceRootVolumeTaskStateFailed         ReplaceRootVolumeTaskState = "failed"
	ReplaceRootVolumeTaskStateFailedDetached ReplaceRootVolumeTaskState = "failed-detached"
)

Enum values for ReplaceRootVolumeTaskState

func (ReplaceRootVolumeTaskState) Values added in v1.3.0

Values returns all known values for ReplaceRootVolumeTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ReplacementStrategy added in v0.30.0

type ReplacementStrategy string
const (
	ReplacementStrategyLaunch                ReplacementStrategy = "launch"
	ReplacementStrategyLaunchBeforeTerminate ReplacementStrategy = "launch-before-terminate"
)

Enum values for ReplacementStrategy

func (ReplacementStrategy) Values added in v0.30.0

Values returns all known values for ReplacementStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ReportInstanceReasonCodes

type ReportInstanceReasonCodes string
const (
	ReportInstanceReasonCodesInstanceStuckInState     ReportInstanceReasonCodes = "instance-stuck-in-state"
	ReportInstanceReasonCodesUnresponsive             ReportInstanceReasonCodes = "unresponsive"
	ReportInstanceReasonCodesNotAcceptingCredentials  ReportInstanceReasonCodes = "not-accepting-credentials"
	ReportInstanceReasonCodesPasswordNotAvailable     ReportInstanceReasonCodes = "password-not-available"
	ReportInstanceReasonCodesPerformanceNetwork       ReportInstanceReasonCodes = "performance-network"
	ReportInstanceReasonCodesPerformanceInstanceStore ReportInstanceReasonCodes = "performance-instance-store"
	ReportInstanceReasonCodesPerformanceEbsVolume     ReportInstanceReasonCodes = "performance-ebs-volume"
	ReportInstanceReasonCodesPerformanceOther         ReportInstanceReasonCodes = "performance-other"
	ReportInstanceReasonCodesOther                    ReportInstanceReasonCodes = "other"
)

Enum values for ReportInstanceReasonCodes

func (ReportInstanceReasonCodes) Values added in v0.29.0

Values returns all known values for ReportInstanceReasonCodes. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ReportStatusType

type ReportStatusType string
const (
	ReportStatusTypeOk       ReportStatusType = "ok"
	ReportStatusTypeImpaired ReportStatusType = "impaired"
)

Enum values for ReportStatusType

func (ReportStatusType) Values added in v0.29.0

Values returns all known values for ReportStatusType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type RequestIpamResourceTag added in v1.25.0

type RequestIpamResourceTag struct {

	// The key of a tag assigned to the resource. Use this filter to find all resources
	// assigned a tag with a specific key, regardless of the tag value.
	Key *string

	// The value for the tag.
	Value *string
	// contains filtered or unexported fields
}

A tag on an IPAM resource.

type RequestLaunchTemplateData

type RequestLaunchTemplateData struct {

	// The block device mapping.
	BlockDeviceMappings []LaunchTemplateBlockDeviceMappingRequest

	// The Capacity Reservation targeting option. If you do not specify this parameter,
	// the instance's Capacity Reservation preference defaults to open, which enables
	// it to run in any open Capacity Reservation that has matching attributes
	// (instance type, platform, Availability Zone).
	CapacityReservationSpecification *LaunchTemplateCapacityReservationSpecificationRequest

	// The CPU options for the instance. For more information, see Optimizing CPU
	// Options
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html)
	// in the Amazon Elastic Compute Cloud User Guide.
	CpuOptions *LaunchTemplateCpuOptionsRequest

	// The credit option for CPU usage of the instance. Valid only for T instances.
	CreditSpecification *CreditSpecificationRequest

	// Indicates whether to enable the instance for stop protection. For more
	// information, see Stop Protection
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection).
	DisableApiStop *bool

	// If you set this parameter to true, you can't terminate the instance using the
	// Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute
	// after launch, use ModifyInstanceAttribute
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html).
	// Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you
	// can terminate the instance by running the shutdown command from the instance.
	DisableApiTermination *bool

	// Indicates whether the instance is optimized for Amazon EBS I/O. This
	// optimization provides dedicated throughput to Amazon EBS and an optimized
	// configuration stack to provide optimal Amazon EBS I/O performance. This
	// optimization isn't available with all instance types. Additional usage charges
	// apply when using an EBS-optimized instance.
	EbsOptimized *bool

	// An elastic GPU to associate with the instance.
	ElasticGpuSpecifications []ElasticGpuSpecification

	// The elastic inference accelerator for the instance.
	ElasticInferenceAccelerators []LaunchTemplateElasticInferenceAccelerator

	// Indicates whether the instance is enabled for Amazon Web Services Nitro
	// Enclaves. For more information, see  What is Amazon Web Services Nitro Enclaves?
	// (https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html) in the
	// Amazon Web Services Nitro Enclaves User Guide. You can't enable Amazon Web
	// Services Nitro Enclaves and hibernation on the same instance.
	EnclaveOptions *LaunchTemplateEnclaveOptionsRequest

	// Indicates whether an instance is enabled for hibernation. This parameter is
	// valid only if the instance meets the hibernation prerequisites
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html).
	// For more information, see Hibernate your instance
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	HibernationOptions *LaunchTemplateHibernationOptionsRequest

	// The name or Amazon Resource Name (ARN) of an IAM instance profile.
	IamInstanceProfile *LaunchTemplateIamInstanceProfileSpecificationRequest

	// The ID of the AMI.
	ImageId *string

	// Indicates whether an instance stops or terminates when you initiate shutdown
	// from the instance (using the operating system command for system shutdown).
	// Default: stop
	InstanceInitiatedShutdownBehavior ShutdownBehavior

	// The market (purchasing) option for the instances.
	InstanceMarketOptions *LaunchTemplateInstanceMarketOptionsRequest

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with these attributes. If you specify
	// InstanceRequirements, you can't specify InstanceType.
	InstanceRequirements *InstanceRequirementsRequest

	// The instance type. For more information, see Instance types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the
	// Amazon Elastic Compute Cloud User Guide. If you specify InstanceType, you can't
	// specify InstanceRequirements.
	InstanceType InstanceType

	// The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and
	// RAM disks. For more information, see User provided kernels
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html)
	// in the Amazon Elastic Compute Cloud User Guide.
	KernelId *string

	// The name of the key pair. You can create a key pair using CreateKeyPair
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html)
	// or ImportKeyPair
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html).
	// If you do not specify a key pair, you can't connect to the instance unless you
	// choose an AMI that is configured to allow users another way to log in.
	KeyName *string

	// The license configurations.
	LicenseSpecifications []LaunchTemplateLicenseConfigurationRequest

	// The maintenance options for the instance.
	MaintenanceOptions *LaunchTemplateInstanceMaintenanceOptionsRequest

	// The metadata options for the instance. For more information, see Instance
	// metadata and user data
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)
	// in the Amazon Elastic Compute Cloud User Guide.
	MetadataOptions *LaunchTemplateInstanceMetadataOptionsRequest

	// The monitoring for the instance.
	Monitoring *LaunchTemplatesMonitoringRequest

	// One or more network interfaces. If you specify a network interface, you must
	// specify any security groups and subnets as part of the network interface.
	NetworkInterfaces []LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

	// The placement for the instance.
	Placement *LaunchTemplatePlacementRequest

	// The options for the instance hostname. The default values are inherited from the
	// subnet.
	PrivateDnsNameOptions *LaunchTemplatePrivateDnsNameOptionsRequest

	// The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and
	// RAM disks. For more information, see User provided kernels
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html)
	// in the Amazon Elastic Compute Cloud User Guide.
	RamDiskId *string

	// One or more security group IDs. You can create a security group using
	// CreateSecurityGroup
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html).
	// You cannot specify both a security group ID and security name in the same
	// request.
	SecurityGroupIds []string

	// One or more security group names. For a nondefault VPC, you must use security
	// group IDs instead. You cannot specify both a security group ID and security name
	// in the same request.
	SecurityGroups []string

	// The tags to apply to the resources that are created during instance launch. You
	// can specify tags for the following resources only:
	//
	// * Instances
	//
	// * Volumes
	//
	// *
	// Elastic graphics
	//
	// * Spot Instance requests
	//
	// * Network interfaces
	//
	// To tag a
	// resource after it has been created, see CreateTags
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html). To
	// tag the launch template itself, you must use the TagSpecification
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html)
	// parameter.
	TagSpecifications []LaunchTemplateTagSpecificationRequest

	// The user data to make available to the instance. You must provide base64-encoded
	// text. User data is limited to 16 KB. For more information, see Run commands on
	// your Linux instance at launch
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html) (Linux) or
	// Work with instance user data
	// (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/instancedata-add-user-data.html)
	// (Windows) in the Amazon Elastic Compute Cloud User Guide. If you are creating
	// the launch template for use with Batch, the user data must be provided in the
	// MIME multi-part archive format
	// (https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive).
	// For more information, see Amazon EC2 user data in launch templates
	// (https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html) in
	// the Batch User Guide.
	UserData *string
	// contains filtered or unexported fields
}

The information to include in the launch template. You must specify at least one parameter for the launch template data.

type RequestSpotLaunchSpecification

type RequestSpotLaunchSpecification struct {

	// Deprecated.
	AddressingType *string

	// One or more block device mapping entries. You can't specify both a snapshot ID
	// and an encryption value. This is because only blank volumes can be encrypted on
	// creation. If a snapshot is the basis for a volume, it is not blank and its
	// encryption status is used for the volume encryption status.
	BlockDeviceMappings []BlockDeviceMapping

	// Indicates whether the instance is optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS Optimized
	// instance. Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfileSpecification

	// The ID of the AMI.
	ImageId *string

	// The instance type. Only one instance type can be specified.
	InstanceType InstanceType

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Indicates whether basic or detailed monitoring is enabled for the instance.
	// Default: Disabled
	Monitoring *RunInstancesMonitoringEnabled

	// One or more network interfaces. If you specify a network interface, you must
	// specify subnet IDs and security group IDs using the network interface.
	NetworkInterfaces []InstanceNetworkInterfaceSpecification

	// The placement information for the instance.
	Placement *SpotPlacement

	// The ID of the RAM disk.
	RamdiskId *string

	// One or more security group IDs.
	SecurityGroupIds []string

	// One or more security groups. When requesting instances in a VPC, you must
	// specify the IDs of the security groups. When requesting instances in
	// EC2-Classic, you can specify the names or the IDs of the security groups.
	SecurityGroups []string

	// The ID of the subnet in which to launch the instance.
	SubnetId *string

	// The Base64-encoded user data for the instance. User data is limited to 16 KB.
	UserData *string
	// contains filtered or unexported fields
}

Describes the launch specification for an instance.

type Reservation

type Reservation struct {

	// [EC2-Classic only] The security groups.
	Groups []GroupIdentifier

	// The instances.
	Instances []Instance

	// The ID of the Amazon Web Services account that owns the reservation.
	OwnerId *string

	// The ID of the requester that launched the instances on your behalf (for example,
	// Amazon Web Services Management Console or Auto Scaling).
	RequesterId *string

	// The ID of the reservation.
	ReservationId *string
	// contains filtered or unexported fields
}

Describes a launch request for one or more instances, and includes owner, requester, and security group information that applies to all instances in the launch request.

type ReservationFleetInstanceSpecification added in v1.19.0

type ReservationFleetInstanceSpecification struct {

	// The Availability Zone in which the Capacity Reservation Fleet reserves the
	// capacity. A Capacity Reservation Fleet can't span Availability Zones. All
	// instance type specifications that you specify for the Fleet must use the same
	// Availability Zone.
	AvailabilityZone *string

	// The ID of the Availability Zone in which the Capacity Reservation Fleet reserves
	// the capacity. A Capacity Reservation Fleet can't span Availability Zones. All
	// instance type specifications that you specify for the Fleet must use the same
	// Availability Zone.
	AvailabilityZoneId *string

	// Indicates whether the Capacity Reservation Fleet supports EBS-optimized
	// instances types. This optimization provides dedicated throughput to Amazon EBS
	// and an optimized configuration stack to provide optimal I/O performance. This
	// optimization isn't available with all instance types. Additional usage charges
	// apply when using EBS-optimized instance types.
	EbsOptimized *bool

	// The type of operating system for which the Capacity Reservation Fleet reserves
	// capacity.
	InstancePlatform CapacityReservationInstancePlatform

	// The instance type for which the Capacity Reservation Fleet reserves capacity.
	InstanceType InstanceType

	// The priority to assign to the instance type. This value is used to determine
	// which of the instance types specified for the Fleet should be prioritized for
	// use. A lower value indicates a high priority. For more information, see Instance
	// type priority
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-priority)
	// in the Amazon EC2 User Guide.
	Priority *int32

	// The number of capacity units provided by the specified instance type. This
	// value, together with the total target capacity that you specify for the Fleet
	// determine the number of instances for which the Fleet reserves capacity. Both
	// values are based on units that make sense for your workload. For more
	// information, see Total target capacity
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity)
	// in the Amazon EC2 User Guide.
	Weight *float64
	// contains filtered or unexported fields
}

Information about an instance type to use in a Capacity Reservation Fleet.

type ReservationState

type ReservationState string
const (
	ReservationStatePaymentPending ReservationState = "payment-pending"
	ReservationStatePaymentFailed  ReservationState = "payment-failed"
	ReservationStateActive         ReservationState = "active"
	ReservationStateRetired        ReservationState = "retired"
)

Enum values for ReservationState

func (ReservationState) Values added in v0.29.0

Values returns all known values for ReservationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ReservationValue

type ReservationValue struct {

	// The hourly rate of the reservation.
	HourlyPrice *string

	// The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice *
	// number of hours remaining).
	RemainingTotalValue *string

	// The remaining upfront cost of the reservation.
	RemainingUpfrontValue *string
	// contains filtered or unexported fields
}

The cost associated with the Reserved Instance.

type ReservedInstanceLimitPrice

type ReservedInstanceLimitPrice struct {

	// Used for Reserved Instance Marketplace offerings. Specifies the limit price on
	// the total order (instanceCount * price).
	Amount *float64

	// The currency in which the limitPrice amount is specified. At this time, the only
	// supported currency is USD.
	CurrencyCode CurrencyCodeValues
	// contains filtered or unexported fields
}

Describes the limit price of a Reserved Instance offering.

type ReservedInstanceReservationValue

type ReservedInstanceReservationValue struct {

	// The total value of the Convertible Reserved Instance that you are exchanging.
	ReservationValue *ReservationValue

	// The ID of the Convertible Reserved Instance that you are exchanging.
	ReservedInstanceId *string
	// contains filtered or unexported fields
}

The total value of the Convertible Reserved Instance.

type ReservedInstanceState

type ReservedInstanceState string
const (
	ReservedInstanceStatePaymentPending ReservedInstanceState = "payment-pending"
	ReservedInstanceStateActive         ReservedInstanceState = "active"
	ReservedInstanceStatePaymentFailed  ReservedInstanceState = "payment-failed"
	ReservedInstanceStateRetired        ReservedInstanceState = "retired"
	ReservedInstanceStateQueued         ReservedInstanceState = "queued"
	ReservedInstanceStateQueuedDeleted  ReservedInstanceState = "queued-deleted"
)

Enum values for ReservedInstanceState

func (ReservedInstanceState) Values added in v0.29.0

Values returns all known values for ReservedInstanceState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ReservedInstances

type ReservedInstances struct {

	// The Availability Zone in which the Reserved Instance can be used.
	AvailabilityZone *string

	// The currency of the Reserved Instance. It's specified using ISO 4217 standard
	// currency codes. At this time, the only supported currency is USD.
	CurrencyCode CurrencyCodeValues

	// The duration of the Reserved Instance, in seconds.
	Duration *int64

	// The time when the Reserved Instance expires.
	End *time.Time

	// The purchase price of the Reserved Instance.
	FixedPrice *float32

	// The number of reservations purchased.
	InstanceCount *int32

	// The tenancy of the instance.
	InstanceTenancy Tenancy

	// The instance type on which the Reserved Instance can be used.
	InstanceType InstanceType

	// The offering class of the Reserved Instance.
	OfferingClass OfferingClassType

	// The Reserved Instance offering type.
	OfferingType OfferingTypeValues

	// The Reserved Instance product platform description.
	ProductDescription RIProductDescription

	// The recurring charge tag assigned to the resource.
	RecurringCharges []RecurringCharge

	// The ID of the Reserved Instance.
	ReservedInstancesId *string

	// The scope of the Reserved Instance.
	Scope Scope

	// The date and time the Reserved Instance started.
	Start *time.Time

	// The state of the Reserved Instance purchase.
	State ReservedInstanceState

	// Any tags assigned to the resource.
	Tags []Tag

	// The usage price of the Reserved Instance, per hour.
	UsagePrice *float32
	// contains filtered or unexported fields
}

Describes a Reserved Instance.

type ReservedInstancesConfiguration

type ReservedInstancesConfiguration struct {

	// The Availability Zone for the modified Reserved Instances.
	AvailabilityZone *string

	// The number of modified Reserved Instances. This is a required field for a
	// request.
	InstanceCount *int32

	// The instance type for the modified Reserved Instances.
	InstanceType InstanceType

	// The network platform of the modified Reserved Instances, which is either
	// EC2-Classic or EC2-VPC.
	Platform *string

	// Whether the Reserved Instance is applied to instances in a Region or instances
	// in a specific Availability Zone.
	Scope Scope
	// contains filtered or unexported fields
}

Describes the configuration settings for the modified Reserved Instances.

type ReservedInstancesId

type ReservedInstancesId struct {

	// The ID of the Reserved Instance.
	ReservedInstancesId *string
	// contains filtered or unexported fields
}

Describes the ID of a Reserved Instance.

type ReservedInstancesListing

type ReservedInstancesListing struct {

	// A unique, case-sensitive key supplied by the client to ensure that the request
	// is idempotent. For more information, see Ensuring Idempotency
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
	ClientToken *string

	// The time the listing was created.
	CreateDate *time.Time

	// The number of instances in this state.
	InstanceCounts []InstanceCount

	// The price of the Reserved Instance listing.
	PriceSchedules []PriceSchedule

	// The ID of the Reserved Instance.
	ReservedInstancesId *string

	// The ID of the Reserved Instance listing.
	ReservedInstancesListingId *string

	// The status of the Reserved Instance listing.
	Status ListingStatus

	// The reason for the current status of the Reserved Instance listing. The response
	// can be blank.
	StatusMessage *string

	// Any tags assigned to the resource.
	Tags []Tag

	// The last modified timestamp of the listing.
	UpdateDate *time.Time
	// contains filtered or unexported fields
}

Describes a Reserved Instance listing.

type ReservedInstancesModification

type ReservedInstancesModification struct {

	// A unique, case-sensitive key supplied by the client to ensure that the request
	// is idempotent. For more information, see Ensuring Idempotency
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
	ClientToken *string

	// The time when the modification request was created.
	CreateDate *time.Time

	// The time for the modification to become effective.
	EffectiveDate *time.Time

	// Contains target configurations along with their corresponding new Reserved
	// Instance IDs.
	ModificationResults []ReservedInstancesModificationResult

	// The IDs of one or more Reserved Instances.
	ReservedInstancesIds []ReservedInstancesId

	// A unique ID for the Reserved Instance modification.
	ReservedInstancesModificationId *string

	// The status of the Reserved Instances modification request.
	Status *string

	// The reason for the status.
	StatusMessage *string

	// The time when the modification request was last updated.
	UpdateDate *time.Time
	// contains filtered or unexported fields
}

Describes a Reserved Instance modification.

type ReservedInstancesModificationResult

type ReservedInstancesModificationResult struct {

	// The ID for the Reserved Instances that were created as part of the modification
	// request. This field is only available when the modification is fulfilled.
	ReservedInstancesId *string

	// The target Reserved Instances configurations supplied as part of the
	// modification request.
	TargetConfiguration *ReservedInstancesConfiguration
	// contains filtered or unexported fields
}

Describes the modification request/s.

type ReservedInstancesOffering

type ReservedInstancesOffering struct {

	// The Availability Zone in which the Reserved Instance can be used.
	AvailabilityZone *string

	// The currency of the Reserved Instance offering you are purchasing. It's
	// specified using ISO 4217 standard currency codes. At this time, the only
	// supported currency is USD.
	CurrencyCode CurrencyCodeValues

	// The duration of the Reserved Instance, in seconds.
	Duration *int64

	// The purchase price of the Reserved Instance.
	FixedPrice *float32

	// The tenancy of the instance.
	InstanceTenancy Tenancy

	// The instance type on which the Reserved Instance can be used.
	InstanceType InstanceType

	// Indicates whether the offering is available through the Reserved Instance
	// Marketplace (resale) or Amazon Web Services. If it's a Reserved Instance
	// Marketplace offering, this is true.
	Marketplace *bool

	// If convertible it can be exchanged for Reserved Instances of the same or higher
	// monetary value, with different configurations. If standard, it is not possible
	// to perform an exchange.
	OfferingClass OfferingClassType

	// The Reserved Instance offering type.
	OfferingType OfferingTypeValues

	// The pricing details of the Reserved Instance offering.
	PricingDetails []PricingDetail

	// The Reserved Instance product platform description.
	ProductDescription RIProductDescription

	// The recurring charge tag assigned to the resource.
	RecurringCharges []RecurringCharge

	// The ID of the Reserved Instance offering. This is the offering ID used in
	// GetReservedInstancesExchangeQuote to confirm that an exchange can be made.
	ReservedInstancesOfferingId *string

	// Whether the Reserved Instance is applied to instances in a Region or an
	// Availability Zone.
	Scope Scope

	// The usage price of the Reserved Instance, per hour.
	UsagePrice *float32
	// contains filtered or unexported fields
}

Describes a Reserved Instance offering.

type ResetFpgaImageAttributeName

type ResetFpgaImageAttributeName string
const (
	ResetFpgaImageAttributeNameLoadPermission ResetFpgaImageAttributeName = "loadPermission"
)

Enum values for ResetFpgaImageAttributeName

func (ResetFpgaImageAttributeName) Values added in v0.29.0

Values returns all known values for ResetFpgaImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ResetImageAttributeName

type ResetImageAttributeName string
const (
	ResetImageAttributeNameLaunchPermission ResetImageAttributeName = "launchPermission"
)

Enum values for ResetImageAttributeName

func (ResetImageAttributeName) Values added in v0.29.0

Values returns all known values for ResetImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ResourceStatement added in v1.25.0

type ResourceStatement struct {

	// The resource types.
	ResourceTypes []string

	// The resources.
	Resources []string
	// contains filtered or unexported fields
}

Describes a resource statement.

type ResourceStatementRequest added in v1.25.0

type ResourceStatementRequest struct {

	// The resource types.
	ResourceTypes []string

	// The resources.
	Resources []string
	// contains filtered or unexported fields
}

Describes a resource statement.

type ResourceType

type ResourceType string
const (
	ResourceTypeCapacityReservation                                    ResourceType = "capacity-reservation"
	ResourceTypeClientVpnEndpoint                                      ResourceType = "client-vpn-endpoint"
	ResourceTypeCustomerGateway                                        ResourceType = "customer-gateway"
	ResourceTypeCarrierGateway                                         ResourceType = "carrier-gateway"
	ResourceTypeCoipPool                                               ResourceType = "coip-pool"
	ResourceTypeDedicatedHost                                          ResourceType = "dedicated-host"
	ResourceTypeDhcpOptions                                            ResourceType = "dhcp-options"
	ResourceTypeEgressOnlyInternetGateway                              ResourceType = "egress-only-internet-gateway"
	ResourceTypeElasticIp                                              ResourceType = "elastic-ip"
	ResourceTypeElasticGpu                                             ResourceType = "elastic-gpu"
	ResourceTypeExportImageTask                                        ResourceType = "export-image-task"
	ResourceTypeExportInstanceTask                                     ResourceType = "export-instance-task"
	ResourceTypeFleet                                                  ResourceType = "fleet"
	ResourceTypeFpgaImage                                              ResourceType = "fpga-image"
	ResourceTypeHostReservation                                        ResourceType = "host-reservation"
	ResourceTypeImage                                                  ResourceType = "image"
	ResourceTypeImportImageTask                                        ResourceType = "import-image-task"
	ResourceTypeImportSnapshotTask                                     ResourceType = "import-snapshot-task"
	ResourceTypeInstance                                               ResourceType = "instance"
	ResourceTypeInstanceEventWindow                                    ResourceType = "instance-event-window"
	ResourceTypeInternetGateway                                        ResourceType = "internet-gateway"
	ResourceTypeIpam                                                   ResourceType = "ipam"
	ResourceTypeIpamPool                                               ResourceType = "ipam-pool"
	ResourceTypeIpamScope                                              ResourceType = "ipam-scope"
	ResourceTypeIpv4poolEc2                                            ResourceType = "ipv4pool-ec2"
	ResourceTypeIpv6poolEc2                                            ResourceType = "ipv6pool-ec2"
	ResourceTypeKeyPair                                                ResourceType = "key-pair"
	ResourceTypeLaunchTemplate                                         ResourceType = "launch-template"
	ResourceTypeLocalGateway                                           ResourceType = "local-gateway"
	ResourceTypeLocalGatewayRouteTable                                 ResourceType = "local-gateway-route-table"
	ResourceTypeLocalGatewayVirtualInterface                           ResourceType = "local-gateway-virtual-interface"
	ResourceTypeLocalGatewayVirtualInterfaceGroup                      ResourceType = "local-gateway-virtual-interface-group"
	ResourceTypeLocalGatewayRouteTableVpcAssociation                   ResourceType = "local-gateway-route-table-vpc-association"
	ResourceTypeLocalGatewayRouteTableVirtualInterfaceGroupAssociation ResourceType = "local-gateway-route-table-virtual-interface-group-association"
	ResourceTypeNatgateway                                             ResourceType = "natgateway"
	ResourceTypeNetworkAcl                                             ResourceType = "network-acl"
	ResourceTypeNetworkInterface                                       ResourceType = "network-interface"
	ResourceTypeNetworkInsightsAnalysis                                ResourceType = "network-insights-analysis"
	ResourceTypeNetworkInsightsPath                                    ResourceType = "network-insights-path"
	ResourceTypeNetworkInsightsAccessScope                             ResourceType = "network-insights-access-scope"
	ResourceTypeNetworkInsightsAccessScopeAnalysis                     ResourceType = "network-insights-access-scope-analysis"
	ResourceTypePlacementGroup                                         ResourceType = "placement-group"
	ResourceTypePrefixList                                             ResourceType = "prefix-list"
	ResourceTypeReplaceRootVolumeTask                                  ResourceType = "replace-root-volume-task"
	ResourceTypeReservedInstances                                      ResourceType = "reserved-instances"
	ResourceTypeRouteTable                                             ResourceType = "route-table"
	ResourceTypeSecurityGroup                                          ResourceType = "security-group"
	ResourceTypeSecurityGroupRule                                      ResourceType = "security-group-rule"
	ResourceTypeSnapshot                                               ResourceType = "snapshot"
	ResourceTypeSpotFleetRequest                                       ResourceType = "spot-fleet-request"
	ResourceTypeSpotInstancesRequest                                   ResourceType = "spot-instances-request"
	ResourceTypeSubnet                                                 ResourceType = "subnet"
	ResourceTypeSubnetCidrReservation                                  ResourceType = "subnet-cidr-reservation"
	ResourceTypeTrafficMirrorFilter                                    ResourceType = "traffic-mirror-filter"
	ResourceTypeTrafficMirrorSession                                   ResourceType = "traffic-mirror-session"
	ResourceTypeTrafficMirrorTarget                                    ResourceType = "traffic-mirror-target"
	ResourceTypeTransitGateway                                         ResourceType = "transit-gateway"
	ResourceTypeTransitGatewayAttachment                               ResourceType = "transit-gateway-attachment"
	ResourceTypeTransitGatewayConnectPeer                              ResourceType = "transit-gateway-connect-peer"
	ResourceTypeTransitGatewayMulticastDomain                          ResourceType = "transit-gateway-multicast-domain"
	ResourceTypeTransitGatewayPolicyTable                              ResourceType = "transit-gateway-policy-table"
	ResourceTypeTransitGatewayRouteTable                               ResourceType = "transit-gateway-route-table"
	ResourceTypeTransitGatewayRouteTableAnnouncement                   ResourceType = "transit-gateway-route-table-announcement"
	ResourceTypeVolume                                                 ResourceType = "volume"
	ResourceTypeVpc                                                    ResourceType = "vpc"
	ResourceTypeVpcEndpoint                                            ResourceType = "vpc-endpoint"
	ResourceTypeVpcEndpointConnection                                  ResourceType = "vpc-endpoint-connection"
	ResourceTypeVpcEndpointService                                     ResourceType = "vpc-endpoint-service"
	ResourceTypeVpcEndpointServicePermission                           ResourceType = "vpc-endpoint-service-permission"
	ResourceTypeVpcPeeringConnection                                   ResourceType = "vpc-peering-connection"
	ResourceTypeVpnConnection                                          ResourceType = "vpn-connection"
	ResourceTypeVpnGateway                                             ResourceType = "vpn-gateway"
	ResourceTypeVpcFlowLog                                             ResourceType = "vpc-flow-log"
	ResourceTypeCapacityReservationFleet                               ResourceType = "capacity-reservation-fleet"
	ResourceTypeTrafficMirrorFilterRule                                ResourceType = "traffic-mirror-filter-rule"
	ResourceTypeVpcEndpointConnectionDeviceType                        ResourceType = "vpc-endpoint-connection-device-type"
	ResourceTypeVpnConnectionDeviceType                                ResourceType = "vpn-connection-device-type"
)

Enum values for ResourceType

func (ResourceType) Values added in v0.29.0

func (ResourceType) Values() []ResourceType

Values returns all known values for ResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ResponseError

type ResponseError struct {

	// The error code.
	Code LaunchTemplateErrorCode

	// The error message, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the error that's returned when you cannot delete a launch template version.

type ResponseLaunchTemplateData

type ResponseLaunchTemplateData struct {

	// The block device mappings.
	BlockDeviceMappings []LaunchTemplateBlockDeviceMapping

	// Information about the Capacity Reservation targeting option.
	CapacityReservationSpecification *LaunchTemplateCapacityReservationSpecificationResponse

	// The CPU options for the instance. For more information, see Optimizing CPU
	// options
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html)
	// in the Amazon Elastic Compute Cloud User Guide.
	CpuOptions *LaunchTemplateCpuOptions

	// The credit option for CPU usage of the instance.
	CreditSpecification *CreditSpecification

	// Indicates whether the instance is enabled for stop protection. For more
	// information, see Stop Protection
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection).
	DisableApiStop *bool

	// If set to true, indicates that the instance cannot be terminated using the
	// Amazon EC2 console, command line tool, or API.
	DisableApiTermination *bool

	// Indicates whether the instance is optimized for Amazon EBS I/O.
	EbsOptimized *bool

	// The elastic GPU specification.
	ElasticGpuSpecifications []ElasticGpuSpecificationResponse

	// The elastic inference accelerator for the instance.
	ElasticInferenceAccelerators []LaunchTemplateElasticInferenceAcceleratorResponse

	// Indicates whether the instance is enabled for Amazon Web Services Nitro
	// Enclaves.
	EnclaveOptions *LaunchTemplateEnclaveOptions

	// Indicates whether an instance is configured for hibernation. For more
	// information, see Hibernate your instance
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html) in the
	// Amazon Elastic Compute Cloud User Guide.
	HibernationOptions *LaunchTemplateHibernationOptions

	// The IAM instance profile.
	IamInstanceProfile *LaunchTemplateIamInstanceProfileSpecification

	// The ID of the AMI that was used to launch the instance.
	ImageId *string

	// Indicates whether an instance stops or terminates when you initiate shutdown
	// from the instance (using the operating system command for system shutdown).
	InstanceInitiatedShutdownBehavior ShutdownBehavior

	// The market (purchasing) option for the instances.
	InstanceMarketOptions *LaunchTemplateInstanceMarketOptions

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with these attributes. If you specify
	// InstanceRequirements, you can't specify InstanceTypes.
	InstanceRequirements *InstanceRequirements

	// The instance type.
	InstanceType InstanceType

	// The ID of the kernel, if applicable.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// The license configurations.
	LicenseSpecifications []LaunchTemplateLicenseConfiguration

	// The maintenance options for your instance.
	MaintenanceOptions *LaunchTemplateInstanceMaintenanceOptions

	// The metadata options for the instance. For more information, see Instance
	// metadata and user data
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)
	// in the Amazon Elastic Compute Cloud User Guide.
	MetadataOptions *LaunchTemplateInstanceMetadataOptions

	// The monitoring for the instance.
	Monitoring *LaunchTemplatesMonitoring

	// The network interfaces.
	NetworkInterfaces []LaunchTemplateInstanceNetworkInterfaceSpecification

	// The placement of the instance.
	Placement *LaunchTemplatePlacement

	// The options for the instance hostname.
	PrivateDnsNameOptions *LaunchTemplatePrivateDnsNameOptions

	// The ID of the RAM disk, if applicable.
	RamDiskId *string

	// The security group IDs.
	SecurityGroupIds []string

	// The security group names.
	SecurityGroups []string

	// The tags that are applied to the resources that are created during instance
	// launch.
	TagSpecifications []LaunchTemplateTagSpecification

	// The user data for the instance.
	UserData *string
	// contains filtered or unexported fields
}

The information for a launch template.

type RootDeviceType

type RootDeviceType string
const (
	RootDeviceTypeEbs           RootDeviceType = "ebs"
	RootDeviceTypeInstanceStore RootDeviceType = "instance-store"
)

Enum values for RootDeviceType

func (RootDeviceType) Values added in v0.29.0

func (RootDeviceType) Values() []RootDeviceType

Values returns all known values for RootDeviceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Route

type Route struct {

	// The ID of the carrier gateway.
	CarrierGatewayId *string

	// The Amazon Resource Name (ARN) of the core network.
	CoreNetworkArn *string

	// The IPv4 CIDR block used for the destination match.
	DestinationCidrBlock *string

	// The IPv6 CIDR block used for the destination match.
	DestinationIpv6CidrBlock *string

	// The prefix of the Amazon Web Service.
	DestinationPrefixListId *string

	// The ID of the egress-only internet gateway.
	EgressOnlyInternetGatewayId *string

	// The ID of a gateway attached to your VPC.
	GatewayId *string

	// The ID of a NAT instance in your VPC.
	InstanceId *string

	// The ID of Amazon Web Services account that owns the instance.
	InstanceOwnerId *string

	// The ID of the local gateway.
	LocalGatewayId *string

	// The ID of a NAT gateway.
	NatGatewayId *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// Describes how the route was created.
	//
	// * CreateRouteTable - The route was
	// automatically created when the route table was created.
	//
	// * CreateRoute - The
	// route was manually added to the route table.
	//
	// * EnableVgwRoutePropagation - The
	// route was propagated by route propagation.
	Origin RouteOrigin

	// The state of the route. The blackhole state indicates that the route's target
	// isn't available (for example, the specified gateway isn't attached to the VPC,
	// or the specified NAT instance has been terminated).
	State RouteState

	// The ID of a transit gateway.
	TransitGatewayId *string

	// The ID of a VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a route in a route table.

type RouteOrigin

type RouteOrigin string
const (
	RouteOriginCreateRouteTable          RouteOrigin = "CreateRouteTable"
	RouteOriginCreateRoute               RouteOrigin = "CreateRoute"
	RouteOriginEnableVgwRoutePropagation RouteOrigin = "EnableVgwRoutePropagation"
)

Enum values for RouteOrigin

func (RouteOrigin) Values added in v0.29.0

func (RouteOrigin) Values() []RouteOrigin

Values returns all known values for RouteOrigin. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type RouteState

type RouteState string
const (
	RouteStateActive    RouteState = "active"
	RouteStateBlackhole RouteState = "blackhole"
)

Enum values for RouteState

func (RouteState) Values added in v0.29.0

func (RouteState) Values() []RouteState

Values returns all known values for RouteState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type RouteTable

type RouteTable struct {

	// The associations between the route table and one or more subnets or a gateway.
	Associations []RouteTableAssociation

	// The ID of the Amazon Web Services account that owns the route table.
	OwnerId *string

	// Any virtual private gateway (VGW) propagating routes.
	PropagatingVgws []PropagatingVgw

	// The ID of the route table.
	RouteTableId *string

	// The routes in the route table.
	Routes []Route

	// Any tags assigned to the route table.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a route table.

type RouteTableAssociation

type RouteTableAssociation struct {

	// The state of the association.
	AssociationState *RouteTableAssociationState

	// The ID of the internet gateway or virtual private gateway.
	GatewayId *string

	// Indicates whether this is the main route table.
	Main *bool

	// The ID of the association.
	RouteTableAssociationId *string

	// The ID of the route table.
	RouteTableId *string

	// The ID of the subnet. A subnet ID is not returned for an implicit association.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes an association between a route table and a subnet or gateway.

type RouteTableAssociationState

type RouteTableAssociationState struct {

	// The state of the association.
	State RouteTableAssociationStateCode

	// The status message, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of an association between a route table and a subnet or gateway.

type RouteTableAssociationStateCode

type RouteTableAssociationStateCode string
const (
	RouteTableAssociationStateCodeAssociating    RouteTableAssociationStateCode = "associating"
	RouteTableAssociationStateCodeAssociated     RouteTableAssociationStateCode = "associated"
	RouteTableAssociationStateCodeDisassociating RouteTableAssociationStateCode = "disassociating"
	RouteTableAssociationStateCodeDisassociated  RouteTableAssociationStateCode = "disassociated"
	RouteTableAssociationStateCodeFailed         RouteTableAssociationStateCode = "failed"
)

Enum values for RouteTableAssociationStateCode

func (RouteTableAssociationStateCode) Values added in v0.29.0

Values returns all known values for RouteTableAssociationStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type RuleAction

type RuleAction string
const (
	RuleActionAllow RuleAction = "allow"
	RuleActionDeny  RuleAction = "deny"
)

Enum values for RuleAction

func (RuleAction) Values added in v0.29.0

func (RuleAction) Values() []RuleAction

Values returns all known values for RuleAction. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type RunInstancesMonitoringEnabled

type RunInstancesMonitoringEnabled struct {

	// Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is
	// enabled.
	//
	// This member is required.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the monitoring of an instance.

type S3ObjectTag added in v1.4.0

type S3ObjectTag struct {

	// The key of the tag. Constraints: Tag keys are case-sensitive and can be up to
	// 128 Unicode characters in length. May not begin with aws:.
	Key *string

	// The value of the tag. Constraints: Tag values are case-sensitive and can be up
	// to 256 Unicode characters in length.
	Value *string
	// contains filtered or unexported fields
}

The tags to apply to the AMI object that will be stored in the Amazon S3 bucket. For more information, see Categorizing your storage using tags (https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html) in the Amazon Simple Storage Service User Guide.

type S3Storage

type S3Storage struct {

	// The access key ID of the owner of the bucket. Before you specify a value for
	// your access key ID, review and follow the guidance in Best Practices for
	// Managing Amazon Web Services Access Keys
	// (https://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html).
	AWSAccessKeyId *string

	// The bucket in which to store the AMI. You can specify a bucket that you already
	// own or a new bucket that Amazon EC2 creates on your behalf. If you specify a
	// bucket that belongs to someone else, Amazon EC2 returns an error.
	Bucket *string

	// The beginning of the file name of the AMI.
	Prefix *string

	// An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into
	// Amazon S3 on your behalf.
	UploadPolicy []byte

	// The signature of the JSON document.
	UploadPolicySignature *string
	// contains filtered or unexported fields
}

Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.

type ScheduledInstance

type ScheduledInstance struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The date when the Scheduled Instance was purchased.
	CreateDate *time.Time

	// The hourly price for a single instance.
	HourlyPrice *string

	// The number of instances.
	InstanceCount *int32

	// The instance type.
	InstanceType *string

	// The network platform (EC2-Classic or EC2-VPC).
	NetworkPlatform *string

	// The time for the next schedule to start.
	NextSlotStartTime *time.Time

	// The platform (Linux/UNIX or Windows).
	Platform *string

	// The time that the previous schedule ended or will end.
	PreviousSlotEndTime *time.Time

	// The schedule recurrence.
	Recurrence *ScheduledInstanceRecurrence

	// The Scheduled Instance ID.
	ScheduledInstanceId *string

	// The number of hours in the schedule.
	SlotDurationInHours *int32

	// The end date for the Scheduled Instance.
	TermEndDate *time.Time

	// The start date for the Scheduled Instance.
	TermStartDate *time.Time

	// The total number of hours for a single instance for the entire term.
	TotalScheduledInstanceHours *int32
	// contains filtered or unexported fields
}

Describes a Scheduled Instance.

type ScheduledInstanceAvailability

type ScheduledInstanceAvailability struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The number of available instances.
	AvailableInstanceCount *int32

	// The time period for the first schedule to start.
	FirstSlotStartTime *time.Time

	// The hourly price for a single instance.
	HourlyPrice *string

	// The instance type. You can specify one of the C3, C4, M4, or R3 instance types.
	InstanceType *string

	// The maximum term. The only possible value is 365 days.
	MaxTermDurationInDays *int32

	// The minimum term. The only possible value is 365 days.
	MinTermDurationInDays *int32

	// The network platform (EC2-Classic or EC2-VPC).
	NetworkPlatform *string

	// The platform (Linux/UNIX or Windows).
	Platform *string

	// The purchase token. This token expires in two hours.
	PurchaseToken *string

	// The schedule recurrence.
	Recurrence *ScheduledInstanceRecurrence

	// The number of hours in the schedule.
	SlotDurationInHours *int32

	// The total number of hours for a single instance for the entire term.
	TotalScheduledInstanceHours *int32
	// contains filtered or unexported fields
}

Describes a schedule that is available for your Scheduled Instances.

type ScheduledInstanceRecurrence

type ScheduledInstanceRecurrence struct {

	// The frequency (Daily, Weekly, or Monthly).
	Frequency *string

	// The interval quantity. The interval unit depends on the value of frequency. For
	// example, every 2 weeks or every 2 months.
	Interval *int32

	// The days. For a monthly schedule, this is one or more days of the month (1-31).
	// For a weekly schedule, this is one or more days of the week (1-7, where 1 is
	// Sunday).
	OccurrenceDaySet []int32

	// Indicates whether the occurrence is relative to the end of the specified week or
	// month.
	OccurrenceRelativeToEnd *bool

	// The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).
	OccurrenceUnit *string
	// contains filtered or unexported fields
}

Describes the recurring schedule for a Scheduled Instance.

type ScheduledInstanceRecurrenceRequest

type ScheduledInstanceRecurrenceRequest struct {

	// The frequency (Daily, Weekly, or Monthly).
	Frequency *string

	// The interval quantity. The interval unit depends on the value of Frequency. For
	// example, every 2 weeks or every 2 months.
	Interval *int32

	// The days. For a monthly schedule, this is one or more days of the month (1-31).
	// For a weekly schedule, this is one or more days of the week (1-7, where 1 is
	// Sunday). You can't specify this value with a daily schedule. If the occurrence
	// is relative to the end of the month, you can specify only a single day.
	OccurrenceDays []int32

	// Indicates whether the occurrence is relative to the end of the specified week or
	// month. You can't specify this value with a daily schedule.
	OccurrenceRelativeToEnd *bool

	// The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required
	// for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You
	// can't specify this value with a daily schedule.
	OccurrenceUnit *string
	// contains filtered or unexported fields
}

Describes the recurring schedule for a Scheduled Instance.

type ScheduledInstancesBlockDeviceMapping

type ScheduledInstancesBlockDeviceMapping struct {

	// The device name (for example, /dev/sdh or xvdh).
	DeviceName *string

	// Parameters used to set up EBS volumes automatically when the instance is
	// launched.
	Ebs *ScheduledInstancesEbs

	// To omit the device from the block device mapping, specify an empty string.
	NoDevice *string

	// The virtual device name (ephemeralN). Instance store volumes are numbered
	// starting from 0. An instance type with two available instance store volumes can
	// specify mappings for ephemeral0 and ephemeral1. The number of available instance
	// store volumes depends on the instance type. After you connect to the instance,
	// you must mount the volume. Constraints: For M3 instances, you must specify
	// instance store volumes in the block device mapping for the instance. When you
	// launch an M3 instance, we ignore any instance store volumes specified in the
	// block device mapping for the AMI.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping for a Scheduled Instance.

type ScheduledInstancesEbs

type ScheduledInstancesEbs struct {

	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// Indicates whether the volume is encrypted. You can attached encrypted volumes
	// only to instances that support them.
	Encrypted *bool

	// The number of I/O operations per second (IOPS) to provision for an io1 or io2
	// volume, with a maximum ratio of 50 IOPS/GiB for io1, and 500 IOPS/GiB for io2.
	// Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum IOPS of 64,000
	// is guaranteed only on instances built on the Nitro System
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances).
	// Other instance families guarantee performance up to 32,000 IOPS. For more
	// information, see Amazon EBS volume types
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) in the
	// Amazon EC2 User Guide. This parameter is valid only for Provisioned IOPS SSD
	// (io1 and io2) volumes.
	Iops *int32

	// The ID of the snapshot.
	SnapshotId *string

	// The size of the volume, in GiB. Default: If you're creating the volume from a
	// snapshot and don't specify a volume size, the default is the snapshot size.
	VolumeSize *int32

	// The volume type. gp2 for General Purpose SSD, io1 or  io2 for Provisioned IOPS
	// SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for
	// Magnetic. Default: gp2
	VolumeType *string
	// contains filtered or unexported fields
}

Describes an EBS volume for a Scheduled Instance.

type ScheduledInstancesIamInstanceProfile

type ScheduledInstancesIamInstanceProfile struct {

	// The Amazon Resource Name (ARN).
	Arn *string

	// The name.
	Name *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile for a Scheduled Instance.

type ScheduledInstancesIpv6Address

type ScheduledInstancesIpv6Address struct {

	// The IPv6 address.
	Ipv6Address *string
	// contains filtered or unexported fields
}

Describes an IPv6 address.

type ScheduledInstancesLaunchSpecification

type ScheduledInstancesLaunchSpecification struct {

	// The ID of the Amazon Machine Image (AMI).
	//
	// This member is required.
	ImageId *string

	// The block device mapping entries.
	BlockDeviceMappings []ScheduledInstancesBlockDeviceMapping

	// Indicates whether the instances are optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS-optimized
	// instance. Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *ScheduledInstancesIamInstanceProfile

	// The instance type.
	InstanceType *string

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Enable or disable monitoring for the instances.
	Monitoring *ScheduledInstancesMonitoring

	// The network interfaces.
	NetworkInterfaces []ScheduledInstancesNetworkInterface

	// The placement information.
	Placement *ScheduledInstancesPlacement

	// The ID of the RAM disk.
	RamdiskId *string

	// The IDs of the security groups.
	SecurityGroupIds []string

	// The ID of the subnet in which to launch the instances.
	SubnetId *string

	// The base64-encoded MIME user data.
	UserData *string
	// contains filtered or unexported fields
}

Describes the launch specification for a Scheduled Instance. If you are launching the Scheduled Instance in EC2-VPC, you must specify the ID of the subnet. You can specify the subnet using either SubnetId or NetworkInterface.

type ScheduledInstancesMonitoring

type ScheduledInstancesMonitoring struct {

	// Indicates whether monitoring is enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes whether monitoring is enabled for a Scheduled Instance.

type ScheduledInstancesNetworkInterface

type ScheduledInstancesNetworkInterface struct {

	// Indicates whether to assign a public IPv4 address to instances launched in a
	// VPC. The public IPv4 address can only be assigned to a network interface for
	// eth0, and can only be assigned to a new network interface, not an existing one.
	// You cannot specify more than one network interface in the request. If launching
	// into a default subnet, the default value is true.
	AssociatePublicIpAddress *bool

	// Indicates whether to delete the interface when the instance is terminated.
	DeleteOnTermination *bool

	// The description.
	Description *string

	// The index of the device for the network interface attachment.
	DeviceIndex *int32

	// The IDs of the security groups.
	Groups []string

	// The number of IPv6 addresses to assign to the network interface. The IPv6
	// addresses are automatically selected from the subnet range.
	Ipv6AddressCount *int32

	// The specific IPv6 addresses from the subnet range.
	Ipv6Addresses []ScheduledInstancesIpv6Address

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The IPv4 address of the network interface within the subnet.
	PrivateIpAddress *string

	// The private IPv4 addresses.
	PrivateIpAddressConfigs []ScheduledInstancesPrivateIpAddressConfig

	// The number of secondary private IPv4 addresses.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes a network interface for a Scheduled Instance.

type ScheduledInstancesPlacement

type ScheduledInstancesPlacement struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The name of the placement group.
	GroupName *string
	// contains filtered or unexported fields
}

Describes the placement for a Scheduled Instance.

type ScheduledInstancesPrivateIpAddressConfig

type ScheduledInstancesPrivateIpAddressConfig struct {

	// Indicates whether this is a primary IPv4 address. Otherwise, this is a secondary
	// IPv4 address.
	Primary *bool

	// The IPv4 address.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes a private IPv4 address for a Scheduled Instance.

type Scope

type Scope string
const (
	ScopeAvailabilityZone Scope = "Availability Zone"
	ScopeRegional         Scope = "Region"
)

Enum values for Scope

func (Scope) Values added in v0.29.0

func (Scope) Values() []Scope

Values returns all known values for Scope. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SecurityGroup

type SecurityGroup struct {

	// A description of the security group.
	Description *string

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string

	// The inbound rules associated with the security group.
	IpPermissions []IpPermission

	// [VPC only] The outbound rules associated with the security group.
	IpPermissionsEgress []IpPermission

	// The Amazon Web Services account ID of the owner of the security group.
	OwnerId *string

	// Any tags assigned to the security group.
	Tags []Tag

	// [VPC only] The ID of the VPC for the security group.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a security group.

type SecurityGroupIdentifier

type SecurityGroupIdentifier struct {

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string
	// contains filtered or unexported fields
}

Describes a security group.

type SecurityGroupReference

type SecurityGroupReference struct {

	// The ID of your security group.
	GroupId *string

	// The ID of the VPC with the referencing security group.
	ReferencingVpcId *string

	// The ID of the VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a VPC with a security group that references your security group.

type SecurityGroupRule added in v1.12.0

type SecurityGroupRule struct {

	// The IPv4 CIDR range.
	CidrIpv4 *string

	// The IPv6 CIDR range.
	CidrIpv6 *string

	// The security group rule description.
	Description *string

	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type. A
	// value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6
	// types, you must specify all codes.
	FromPort *int32

	// The ID of the security group.
	GroupId *string

	// The ID of the Amazon Web Services account that owns the security group.
	GroupOwnerId *string

	// The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers
	// (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). Use
	// -1 to specify all protocols.
	IpProtocol *string

	// Indicates whether the security group rule is an outbound rule.
	IsEgress *bool

	// The ID of the prefix list.
	PrefixListId *string

	// Describes the security group that is referenced in the rule.
	ReferencedGroupInfo *ReferencedSecurityGroup

	// The ID of the security group rule.
	SecurityGroupRuleId *string

	// The tags applied to the security group rule.
	Tags []Tag

	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A
	// value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6
	// types, you must specify all codes.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a security group rule.

type SecurityGroupRuleDescription added in v1.12.0

type SecurityGroupRuleDescription struct {

	// The description of the security group rule.
	Description *string

	// The ID of the security group rule.
	SecurityGroupRuleId *string
	// contains filtered or unexported fields
}

Describes the description of a security group rule. You can use this when you want to update the security group rule description for either an inbound or outbound rule.

type SecurityGroupRuleRequest added in v1.12.0

type SecurityGroupRuleRequest struct {

	// The IPv4 CIDR range. To specify a single IPv4 address, use the /32 prefix
	// length.
	CidrIpv4 *string

	// The IPv6 CIDR range. To specify a single IPv6 address, use the /128 prefix
	// length.
	CidrIpv6 *string

	// The description of the security group rule.
	Description *string

	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type. A
	// value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6
	// types, you must specify all codes.
	FromPort *int32

	// The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers
	// (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)). Use
	// -1 to specify all protocols.
	IpProtocol *string

	// The ID of the prefix list.
	PrefixListId *string

	// The ID of the security group that is referenced in the security group rule.
	ReferencedGroupId *string

	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A
	// value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6
	// types, you must specify all codes.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a security group rule. You must specify exactly one of the following parameters, based on the rule type:

* CidrIpv4

* CidrIpv6

* PrefixListId

* ReferencedGroupId

When you modify a rule, you cannot change the rule type. For example, if the rule uses an IPv4 address range, you must use CidrIpv4 to specify a new IPv4 address range.

type SecurityGroupRuleUpdate added in v1.12.0

type SecurityGroupRuleUpdate struct {

	// Information about the security group rule.
	SecurityGroupRule *SecurityGroupRuleRequest

	// The ID of the security group rule.
	SecurityGroupRuleId *string
	// contains filtered or unexported fields
}

Describes an update to a security group rule.

type SelfServicePortal added in v0.29.0

type SelfServicePortal string
const (
	SelfServicePortalEnabled  SelfServicePortal = "enabled"
	SelfServicePortalDisabled SelfServicePortal = "disabled"
)

Enum values for SelfServicePortal

func (SelfServicePortal) Values added in v0.29.0

Values returns all known values for SelfServicePortal. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ServiceConfiguration

type ServiceConfiguration struct {

	// Indicates whether requests from other Amazon Web Services accounts to create an
	// endpoint to the service must first be accepted.
	AcceptanceRequired *bool

	// The Availability Zones in which the service is available.
	AvailabilityZones []string

	// The DNS names for the service.
	BaseEndpointDnsNames []string

	// The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
	GatewayLoadBalancerArns []string

	// Indicates whether the service manages its VPC endpoints. Management of the
	// service VPC endpoints using the VPC endpoint API is restricted.
	ManagesVpcEndpoints *bool

	// The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.
	NetworkLoadBalancerArns []string

	// The payer responsibility.
	PayerResponsibility PayerResponsibility

	// The private DNS name for the service.
	PrivateDnsName *string

	// Information about the endpoint service private DNS name configuration.
	PrivateDnsNameConfiguration *PrivateDnsNameConfiguration

	// The ID of the service.
	ServiceId *string

	// The name of the service.
	ServiceName *string

	// The service state.
	ServiceState ServiceState

	// The type of service.
	ServiceType []ServiceTypeDetail

	// The supported IP address types.
	SupportedIpAddressTypes []ServiceConnectivityType

	// Any tags assigned to the service.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a service configuration for a VPC endpoint service.

type ServiceConnectivityType added in v1.42.0

type ServiceConnectivityType string
const (
	ServiceConnectivityTypeIpv4 ServiceConnectivityType = "ipv4"
	ServiceConnectivityTypeIpv6 ServiceConnectivityType = "ipv6"
)

Enum values for ServiceConnectivityType

func (ServiceConnectivityType) Values added in v1.42.0

Values returns all known values for ServiceConnectivityType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ServiceDetail

type ServiceDetail struct {

	// Indicates whether VPC endpoint connection requests to the service must be
	// accepted by the service owner.
	AcceptanceRequired *bool

	// The Availability Zones in which the service is available.
	AvailabilityZones []string

	// The DNS names for the service.
	BaseEndpointDnsNames []string

	// Indicates whether the service manages its VPC endpoints. Management of the
	// service VPC endpoints using the VPC endpoint API is restricted.
	ManagesVpcEndpoints *bool

	// The Amazon Web Services account ID of the service owner.
	Owner *string

	// The payer responsibility.
	PayerResponsibility PayerResponsibility

	// The private DNS name for the service.
	PrivateDnsName *string

	// The verification state of the VPC endpoint service. Consumers of the endpoint
	// service cannot use the private name when the state is not verified.
	PrivateDnsNameVerificationState DnsNameState

	// The private DNS names assigned to the VPC endpoint service.
	PrivateDnsNames []PrivateDnsDetails

	// The ID of the endpoint service.
	ServiceId *string

	// The name of the service.
	ServiceName *string

	// The type of service.
	ServiceType []ServiceTypeDetail

	// The supported IP address types.
	SupportedIpAddressTypes []ServiceConnectivityType

	// Any tags assigned to the service.
	Tags []Tag

	// Indicates whether the service supports endpoint policies.
	VpcEndpointPolicySupported *bool
	// contains filtered or unexported fields
}

Describes a VPC endpoint service.

type ServiceState

type ServiceState string
const (
	ServiceStatePending   ServiceState = "Pending"
	ServiceStateAvailable ServiceState = "Available"
	ServiceStateDeleting  ServiceState = "Deleting"
	ServiceStateDeleted   ServiceState = "Deleted"
	ServiceStateFailed    ServiceState = "Failed"
)

Enum values for ServiceState

func (ServiceState) Values added in v0.29.0

func (ServiceState) Values() []ServiceState

Values returns all known values for ServiceState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ServiceType

type ServiceType string
const (
	ServiceTypeInterface           ServiceType = "Interface"
	ServiceTypeGateway             ServiceType = "Gateway"
	ServiceTypeGatewayLoadBalancer ServiceType = "GatewayLoadBalancer"
)

Enum values for ServiceType

func (ServiceType) Values added in v0.29.0

func (ServiceType) Values() []ServiceType

Values returns all known values for ServiceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type ServiceTypeDetail

type ServiceTypeDetail struct {

	// The type of service.
	ServiceType ServiceType
	// contains filtered or unexported fields
}

Describes the type of service for a VPC endpoint.

type ShutdownBehavior

type ShutdownBehavior string
const (
	ShutdownBehaviorStop      ShutdownBehavior = "stop"
	ShutdownBehaviorTerminate ShutdownBehavior = "terminate"
)

Enum values for ShutdownBehavior

func (ShutdownBehavior) Values added in v0.29.0

Values returns all known values for ShutdownBehavior. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SlotDateTimeRangeRequest

type SlotDateTimeRangeRequest struct {

	// The earliest date and time, in UTC, for the Scheduled Instance to start.
	//
	// This member is required.
	EarliestTime *time.Time

	// The latest date and time, in UTC, for the Scheduled Instance to start. This
	// value must be later than or equal to the earliest date and at most three months
	// in the future.
	//
	// This member is required.
	LatestTime *time.Time
	// contains filtered or unexported fields
}

Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.

type SlotStartTimeRangeRequest

type SlotStartTimeRangeRequest struct {

	// The earliest date and time, in UTC, for the Scheduled Instance to start.
	EarliestTime *time.Time

	// The latest date and time, in UTC, for the Scheduled Instance to start.
	LatestTime *time.Time
	// contains filtered or unexported fields
}

Describes the time period for a Scheduled Instance to start its first schedule.

type Snapshot

type Snapshot struct {

	// The data encryption key identifier for the snapshot. This value is a unique
	// identifier that corresponds to the data encryption key that was used to encrypt
	// the original volume or snapshot copy. Because data encryption keys are inherited
	// by volumes created from snapshots, and vice versa, if snapshots share the same
	// data encryption key identifier, then they belong to the same volume/snapshot
	// lineage. This parameter is only returned by DescribeSnapshots.
	DataEncryptionKeyId *string

	// The description for the snapshot.
	Description *string

	// Indicates whether the snapshot is encrypted.
	Encrypted *bool

	// The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that
	// was used to protect the volume encryption key for the parent volume.
	KmsKeyId *string

	// The ARN of the Outpost on which the snapshot is stored. For more information,
	// see Amazon EBS local snapshots on Outposts
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html) in
	// the Amazon Elastic Compute Cloud User Guide.
	OutpostArn *string

	// The Amazon Web Services owner alias, from an Amazon-maintained list (amazon).
	// This is not the user-configured Amazon Web Services account alias set using the
	// IAM console.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that owns the EBS snapshot.
	OwnerId *string

	// The progress of the snapshot, as a percentage.
	Progress *string

	// Only for archived snapshots that are temporarily restored. Indicates the date
	// and time when a temporarily restored snapshot will be automatically re-archived.
	RestoreExpiryTime *time.Time

	// The ID of the snapshot. Each snapshot receives a unique identifier when it is
	// created.
	SnapshotId *string

	// The time stamp when the snapshot was initiated.
	StartTime *time.Time

	// The snapshot state.
	State SnapshotState

	// Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy
	// operation fails (for example, if the proper Key Management Service (KMS)
	// permissions are not obtained) this field displays error state details to help
	// you diagnose why the error occurred. This parameter is only returned by
	// DescribeSnapshots.
	StateMessage *string

	// The storage tier in which the snapshot is stored. standard indicates that the
	// snapshot is stored in the standard snapshot storage tier and that it is ready
	// for use. archive indicates that the snapshot is currently archived and that it
	// must be restored before it can be used.
	StorageTier StorageTier

	// Any tags assigned to the snapshot.
	Tags []Tag

	// The ID of the volume that was used to create the snapshot. Snapshots created by
	// the CopySnapshot action have an arbitrary volume ID that should not be used for
	// any purpose.
	VolumeId *string

	// The size of the volume, in GiB.
	VolumeSize *int32
	// contains filtered or unexported fields
}

Describes a snapshot.

type SnapshotAttributeName

type SnapshotAttributeName string
const (
	SnapshotAttributeNameProductCodes           SnapshotAttributeName = "productCodes"
	SnapshotAttributeNameCreateVolumePermission SnapshotAttributeName = "createVolumePermission"
)

Enum values for SnapshotAttributeName

func (SnapshotAttributeName) Values added in v0.29.0

Values returns all known values for SnapshotAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SnapshotDetail

type SnapshotDetail struct {

	// A description for the snapshot.
	Description *string

	// The block device mapping for the snapshot.
	DeviceName *string

	// The size of the disk in the snapshot, in GiB.
	DiskImageSize *float64

	// The format of the disk image from which the snapshot is created.
	Format *string

	// The percentage of progress for the task.
	Progress *string

	// The snapshot ID of the disk being imported.
	SnapshotId *string

	// A brief status of the snapshot creation.
	Status *string

	// A detailed status message for the snapshot creation.
	StatusMessage *string

	// The URL used to access the disk image.
	Url *string

	// The Amazon S3 bucket for the disk image.
	UserBucket *UserBucketDetails
	// contains filtered or unexported fields
}

Describes the snapshot created from the imported disk.

type SnapshotDiskContainer

type SnapshotDiskContainer struct {

	// The description of the disk image being imported.
	Description *string

	// The format of the disk image being imported. Valid values: VHD | VMDK | RAW
	Format *string

	// The URL to the Amazon S3-based disk image being imported. It can either be a
	// https URL (https://..) or an Amazon S3 URL (s3://..).
	Url *string

	// The Amazon S3 bucket for the disk image.
	UserBucket *UserBucket
	// contains filtered or unexported fields
}

The disk container object for the import snapshot request.

type SnapshotInfo

type SnapshotInfo struct {

	// Description specified by the CreateSnapshotRequest that has been applied to all
	// snapshots.
	Description *string

	// Indicates whether the snapshot is encrypted.
	Encrypted *bool

	// The ARN of the Outpost on which the snapshot is stored. For more information,
	// see Amazon EBS local snapshots on Outposts
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html) in
	// the Amazon Elastic Compute Cloud User Guide.
	OutpostArn *string

	// Account id used when creating this snapshot.
	OwnerId *string

	// Progress this snapshot has made towards completing.
	Progress *string

	// Snapshot id that can be used to describe this snapshot.
	SnapshotId *string

	// Time this snapshot was started. This is the same for all snapshots initiated by
	// the same request.
	StartTime *time.Time

	// Current state of the snapshot.
	State SnapshotState

	// Tags associated with this snapshot.
	Tags []Tag

	// Source volume from which this snapshot was created.
	VolumeId *string

	// Size of the volume from which this snapshot was created.
	VolumeSize *int32
	// contains filtered or unexported fields
}

Information about a snapshot.

type SnapshotRecycleBinInfo added in v1.24.0

type SnapshotRecycleBinInfo struct {

	// The description for the snapshot.
	Description *string

	// The date and time when the snaphsot entered the Recycle Bin.
	RecycleBinEnterTime *time.Time

	// The date and time when the snapshot is to be permanently deleted from the
	// Recycle Bin.
	RecycleBinExitTime *time.Time

	// The ID of the snapshot.
	SnapshotId *string

	// The ID of the volume from which the snapshot was created.
	VolumeId *string
	// contains filtered or unexported fields
}

Information about a snapshot that is currently in the Recycle Bin.

type SnapshotState

type SnapshotState string
const (
	SnapshotStatePending     SnapshotState = "pending"
	SnapshotStateCompleted   SnapshotState = "completed"
	SnapshotStateError       SnapshotState = "error"
	SnapshotStateRecoverable SnapshotState = "recoverable"
	SnapshotStateRecovering  SnapshotState = "recovering"
)

Enum values for SnapshotState

func (SnapshotState) Values added in v0.29.0

func (SnapshotState) Values() []SnapshotState

Values returns all known values for SnapshotState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SnapshotTaskDetail

type SnapshotTaskDetail struct {

	// The description of the snapshot.
	Description *string

	// The size of the disk in the snapshot, in GiB.
	DiskImageSize *float64

	// Indicates whether the snapshot is encrypted.
	Encrypted *bool

	// The format of the disk image from which the snapshot is created.
	Format *string

	// The identifier for the KMS key that was used to create the encrypted snapshot.
	KmsKeyId *string

	// The percentage of completion for the import snapshot task.
	Progress *string

	// The snapshot ID of the disk being imported.
	SnapshotId *string

	// A brief status for the import snapshot task.
	Status *string

	// A detailed status message for the import snapshot task.
	StatusMessage *string

	// The URL of the disk image from which the snapshot is created.
	Url *string

	// The Amazon S3 bucket for the disk image.
	UserBucket *UserBucketDetails
	// contains filtered or unexported fields
}

Details about the import snapshot task.

type SnapshotTierStatus added in v1.24.0

type SnapshotTierStatus struct {

	// The date and time when the last archive process was completed.
	ArchivalCompleteTime *time.Time

	// The status of the last archive or restore process.
	LastTieringOperationStatus TieringOperationStatus

	// A message describing the status of the last archive or restore process.
	LastTieringOperationStatusDetail *string

	// The progress of the last archive or restore process, as a percentage.
	LastTieringProgress *int32

	// The date and time when the last archive or restore process was started.
	LastTieringStartTime *time.Time

	// The ID of the Amazon Web Services account that owns the snapshot.
	OwnerId *string

	// Only for archived snapshots that are temporarily restored. Indicates the date
	// and time when a temporarily restored snapshot will be automatically re-archived.
	RestoreExpiryTime *time.Time

	// The ID of the snapshot.
	SnapshotId *string

	// The state of the snapshot.
	Status SnapshotState

	// The storage tier in which the snapshot is stored. standard indicates that the
	// snapshot is stored in the standard snapshot storage tier and that it is ready
	// for use. archive indicates that the snapshot is currently archived and that it
	// must be restored before it can be used.
	StorageTier StorageTier

	// The tags that are assigned to the snapshot.
	Tags []Tag

	// The ID of the volume from which the snapshot was created.
	VolumeId *string
	// contains filtered or unexported fields
}

Provides information about a snapshot's storage tier.

type SpotAllocationStrategy

type SpotAllocationStrategy string
const (
	SpotAllocationStrategyLowestPrice                  SpotAllocationStrategy = "lowest-price"
	SpotAllocationStrategyDiversified                  SpotAllocationStrategy = "diversified"
	SpotAllocationStrategyCapacityOptimized            SpotAllocationStrategy = "capacity-optimized"
	SpotAllocationStrategyCapacityOptimizedPrioritized SpotAllocationStrategy = "capacity-optimized-prioritized"
	SpotAllocationStrategyPriceCapacityOptimized       SpotAllocationStrategy = "price-capacity-optimized"
)

Enum values for SpotAllocationStrategy

func (SpotAllocationStrategy) Values added in v0.29.0

Values returns all known values for SpotAllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SpotCapacityRebalance added in v0.30.0

type SpotCapacityRebalance struct {

	// The replacement strategy to use. Only available for fleets of type maintain.
	// launch - Spot Fleet launches a new replacement Spot Instance when a rebalance
	// notification is emitted for an existing Spot Instance in the fleet. Spot Fleet
	// does not terminate the instances that receive a rebalance notification. You can
	// terminate the old instances, or you can leave them running. You are charged for
	// all instances while they are running. launch-before-terminate - Spot Fleet
	// launches a new replacement Spot Instance when a rebalance notification is
	// emitted for an existing Spot Instance in the fleet, and then, after a delay that
	// you specify (in TerminationDelay), terminates the instances that received a
	// rebalance notification.
	ReplacementStrategy ReplacementStrategy

	// The amount of time (in seconds) that Amazon EC2 waits before terminating the old
	// Spot Instance after launching a new replacement Spot Instance. Required when
	// ReplacementStrategy is set to launch-before-terminate. Not valid when
	// ReplacementStrategy is set to launch. Valid values: Minimum value of 120
	// seconds. Maximum value of 7200 seconds.
	TerminationDelay *int32
	// contains filtered or unexported fields
}

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) in the Amazon EC2 User Guide for Linux Instances.

type SpotDatafeedSubscription

type SpotDatafeedSubscription struct {

	// The name of the Amazon S3 bucket where the Spot Instance data feed is located.
	Bucket *string

	// The fault codes for the Spot Instance request, if any.
	Fault *SpotInstanceStateFault

	// The Amazon Web Services account ID of the account.
	OwnerId *string

	// The prefix for the data feed files.
	Prefix *string

	// The state of the Spot Instance data feed subscription.
	State DatafeedSubscriptionState
	// contains filtered or unexported fields
}

Describes the data feed for a Spot Instance.

type SpotFleetLaunchSpecification

type SpotFleetLaunchSpecification struct {

	// Deprecated.
	AddressingType *string

	// One or more block devices that are mapped to the Spot Instances. You can't
	// specify both a snapshot ID and an encryption value. This is because only blank
	// volumes can be encrypted on creation. If a snapshot is the basis for a volume,
	// it is not blank and its encryption status is used for the volume encryption
	// status.
	BlockDeviceMappings []BlockDeviceMapping

	// Indicates whether the instances are optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS Optimized
	// instance. Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfileSpecification

	// The ID of the AMI.
	ImageId *string

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes. If you specify
	// InstanceRequirements, you can't specify InstanceType.
	InstanceRequirements *InstanceRequirements

	// The instance type.
	InstanceType InstanceType

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Enable or disable monitoring for the instances.
	Monitoring *SpotFleetMonitoring

	// One or more network interfaces. If you specify a network interface, you must
	// specify subnet IDs and security group IDs using the network interface.
	// SpotFleetLaunchSpecification currently does not support Elastic Fabric Adapter
	// (EFA). To specify an EFA, you must use LaunchTemplateConfig
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html).
	NetworkInterfaces []InstanceNetworkInterfaceSpecification

	// The placement information.
	Placement *SpotPlacement

	// The ID of the RAM disk. Some kernels require additional drivers at launch. Check
	// the kernel requirements for information about whether you need to specify a RAM
	// disk. To find kernel requirements, refer to the Amazon Web Services Resource
	// Center and search for the kernel ID.
	RamdiskId *string

	// One or more security groups. When requesting instances in a VPC, you must
	// specify the IDs of the security groups. When requesting instances in
	// EC2-Classic, you can specify the names or the IDs of the security groups.
	SecurityGroups []GroupIdentifier

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	SpotPrice *string

	// The IDs of the subnets in which to launch the instances. To specify multiple
	// subnets, separate them using commas; for example, "subnet-1234abcdeexample1,
	// subnet-0987cdef6example2".
	SubnetId *string

	// The tags to apply during creation.
	TagSpecifications []SpotFleetTagSpecification

	// The Base64-encoded user data that instances use when starting up.
	UserData *string

	// The number of units provided by the specified instance type. These are the same
	// units that you chose to set the target capacity in terms of instances, or a
	// performance characteristic such as vCPUs, memory, or I/O. If the target capacity
	// divided by this value is not a whole number, Amazon EC2 rounds the number of
	// instances to the next whole number. If this value is not specified, the default
	// is 1.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes the launch specification for one or more Spot Instances. If you include On-Demand capacity in your fleet request or want to specify an EFA network device, you can't use SpotFleetLaunchSpecification; you must use LaunchTemplateConfig (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html).

type SpotFleetMonitoring

type SpotFleetMonitoring struct {

	// Enables monitoring for the instance. Default: false
	Enabled *bool
	// contains filtered or unexported fields
}

Describes whether monitoring is enabled.

type SpotFleetRequestConfig

type SpotFleetRequestConfig struct {

	// The progress of the Spot Fleet request. If there is an error, the status is
	// error. After all requests are placed, the status is pending_fulfillment. If the
	// size of the fleet is equal to or greater than its target capacity, the status is
	// fulfilled. If the size of the fleet is decreased, the status is
	// pending_termination while Spot Instances are terminating.
	ActivityStatus ActivityStatus

	// The creation date and time of the request.
	CreateTime *time.Time

	// The configuration of the Spot Fleet request.
	SpotFleetRequestConfig *SpotFleetRequestConfigData

	// The ID of the Spot Fleet request.
	SpotFleetRequestId *string

	// The state of the Spot Fleet request.
	SpotFleetRequestState BatchState

	// The tags for a Spot Fleet resource.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a Spot Fleet request.

type SpotFleetRequestConfigData

type SpotFleetRequestConfigData struct {

	// The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role
	// that grants the Spot Fleet the permission to request, launch, terminate, and tag
	// instances on your behalf. For more information, see Spot Fleet prerequisites
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html#spot-fleet-prerequisites)
	// in the Amazon EC2 User Guide. Spot Fleet can terminate Spot Instances on your
	// behalf when you cancel its Spot Fleet request using CancelSpotFleetRequests
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CancelSpotFleetRequests)
	// or when the Spot Fleet request expires, if you set
	// TerminateInstancesWithExpiration.
	//
	// This member is required.
	IamFleetRole *string

	// The number of units to request for the Spot Fleet. You can choose to set the
	// target capacity in terms of instances or a performance characteristic that is
	// important to your application workload, such as vCPUs, memory, or I/O. If the
	// request type is maintain, you can specify a target capacity of 0 and add
	// capacity later.
	//
	// This member is required.
	TargetCapacity *int32

	// The strategy that determines how to allocate the target Spot Instance capacity
	// across the Spot Instance pools specified by the Spot Fleet launch configuration.
	// For more information, see Allocation strategies for Spot Instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html)
	// in the Amazon EC2 User Guide. lowestPrice - Spot Fleet launches instances from
	// the lowest-price Spot Instance pool that has available capacity. If the cheapest
	// pool doesn't have available capacity, the Spot Instances come from the next
	// cheapest pool that has available capacity. If a pool runs out of capacity before
	// fulfilling your desired capacity, Spot Fleet will continue to fulfill your
	// request by drawing from the next cheapest pool. To ensure that your desired
	// capacity is met, you might receive Spot Instances from several pools.
	// diversified - Spot Fleet launches instances from all of the Spot Instance pools
	// that you specify. capacityOptimized (recommended) - Spot Fleet launches
	// instances from Spot Instance pools with optimal capacity for the number of
	// instances that are launching. To give certain instance types a higher chance of
	// launching first, use capacityOptimizedPrioritized. Set a priority for each
	// instance type by using the Priority parameter for LaunchTemplateOverrides. You
	// can assign the same priority to different LaunchTemplateOverrides. EC2
	// implements the priorities on a best-effort basis, but optimizes for capacity
	// first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a
	// launch template. Note that if the OnDemandAllocationStrategy is set to
	// prioritized, the same priority is applied when fulfilling On-Demand capacity.
	// Default: lowestPrice
	AllocationStrategy AllocationStrategy

	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of your listings. This helps to avoid duplicate listings. For more information,
	// see Ensuring Idempotency
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
	ClientToken *string

	// Reserved.
	Context *string

	// Indicates whether running Spot Instances should be terminated if you decrease
	// the target capacity of the Spot Fleet request below the current size of the Spot
	// Fleet.
	ExcessCapacityTerminationPolicy ExcessCapacityTerminationPolicy

	// The number of units fulfilled by this request compared to the set target
	// capacity. You cannot set this value.
	FulfilledCapacity *float64

	// The behavior when a Spot Instance is interrupted. The default is terminate.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The number of Spot pools across which to allocate your target Spot capacity.
	// Valid only when Spot AllocationStrategy is set to lowest-price. Spot Fleet
	// selects the cheapest Spot pools and evenly allocates your target Spot capacity
	// across the number of Spot pools that you specify. Note that Spot Fleet attempts
	// to draw Spot Instances from the number of pools that you specify on a best
	// effort basis. If a pool runs out of Spot capacity before fulfilling your target
	// capacity, Spot Fleet will continue to fulfill your request by drawing from the
	// next cheapest pool. To ensure that your target capacity is met, you might
	// receive Spot Instances from more than the number of pools that you specified.
	// Similarly, if most of the pools have no Spot capacity, you might receive your
	// full target capacity from fewer than the number of pools that you specified.
	InstancePoolsToUseCount *int32

	// The launch specifications for the Spot Fleet request. If you specify
	// LaunchSpecifications, you can't specify LaunchTemplateConfigs. If you include
	// On-Demand capacity in your request, you must use LaunchTemplateConfigs.
	LaunchSpecifications []SpotFleetLaunchSpecification

	// The launch template and overrides. If you specify LaunchTemplateConfigs, you
	// can't specify LaunchSpecifications. If you include On-Demand capacity in your
	// request, you must use LaunchTemplateConfigs.
	LaunchTemplateConfigs []LaunchTemplateConfig

	// One or more Classic Load Balancers and target groups to attach to the Spot Fleet
	// request. Spot Fleet registers the running Spot Instances with the specified
	// Classic Load Balancers and target groups. With Network Load Balancers, Spot
	// Fleet cannot register instances that have the following instance types: C1, CC1,
	// CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.
	LoadBalancersConfig *LoadBalancersConfig

	// The order of the launch template overrides to use in fulfilling On-Demand
	// capacity. If you specify lowestPrice, Spot Fleet uses price to determine the
	// order, launching the lowest price first. If you specify prioritized, Spot Fleet
	// uses the priority that you assign to each Spot Fleet launch template override,
	// launching the highest priority first. If you do not specify a value, Spot Fleet
	// defaults to lowestPrice.
	OnDemandAllocationStrategy OnDemandAllocationStrategy

	// The number of On-Demand units fulfilled by this request compared to the set
	// target On-Demand capacity.
	OnDemandFulfilledCapacity *float64

	// The maximum amount per hour for On-Demand Instances that you're willing to pay.
	// You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice
	// parameter, or both parameters to ensure that your fleet cost does not exceed
	// your budget. If you set a maximum price per hour for the On-Demand Instances and
	// Spot Instances in your request, Spot Fleet will launch instances until it
	// reaches the maximum amount you're willing to pay. When the maximum amount you're
	// willing to pay is reached, the fleet stops launching instances even if it hasn’t
	// met the target capacity.
	OnDemandMaxTotalPrice *string

	// The number of On-Demand units to request. You can choose to set the target
	// capacity in terms of instances or a performance characteristic that is important
	// to your application workload, such as vCPUs, memory, or I/O. If the request type
	// is maintain, you can specify a target capacity of 0 and add capacity later.
	OnDemandTargetCapacity *int32

	// Indicates whether Spot Fleet should replace unhealthy instances.
	ReplaceUnhealthyInstances *bool

	// The strategies for managing your Spot Instances that are at an elevated risk of
	// being interrupted.
	SpotMaintenanceStrategies *SpotMaintenanceStrategies

	// The maximum amount per hour for Spot Instances that you're willing to pay. You
	// can use the spotdMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter,
	// or both parameters to ensure that your fleet cost does not exceed your budget.
	// If you set a maximum price per hour for the On-Demand Instances and Spot
	// Instances in your request, Spot Fleet will launch instances until it reaches the
	// maximum amount you're willing to pay. When the maximum amount you're willing to
	// pay is reached, the fleet stops launching instances even if it hasn’t met the
	// target capacity.
	SpotMaxTotalPrice *string

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	SpotPrice *string

	// The key-value pair for tagging the Spot Fleet request on creation. The value for
	// ResourceType must be spot-fleet-request, otherwise the Spot Fleet request fails.
	// To tag instances at launch, specify the tags in the launch template
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template)
	// (valid only if you use LaunchTemplateConfigs) or in the
	// SpotFleetTagSpecification
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html)
	// (valid only if you use LaunchSpecifications). For information about tagging
	// after launch, see Tagging Your Resources
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources).
	TagSpecifications []TagSpecification

	// The unit for the target capacity. Default: units (translates to number of
	// instances)
	TargetCapacityUnitType TargetCapacityUnitType

	// Indicates whether running Spot Instances are terminated when the Spot Fleet
	// request expires.
	TerminateInstancesWithExpiration *bool

	// The type of request. Indicates whether the Spot Fleet only requests the target
	// capacity or also attempts to maintain it. When this value is request, the Spot
	// Fleet only places the required requests. It does not attempt to replenish Spot
	// Instances if capacity is diminished, nor does it submit requests in alternative
	// Spot pools if capacity is not available. When this value is maintain, the Spot
	// Fleet maintains the target capacity. The Spot Fleet places the required requests
	// to meet capacity and automatically replenishes any interrupted instances.
	// Default: maintain. instant is listed but is not used by Spot Fleet.
	Type FleetType

	// The start date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). By
	// default, Amazon EC2 starts fulfilling the request immediately.
	ValidFrom *time.Time

	// The end date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).
	// After the end date and time, no new Spot Instance requests are placed or able to
	// fulfill the request. If no value is specified, the Spot Fleet request remains
	// until you cancel it.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

Describes the configuration of a Spot Fleet request.

type SpotFleetTagSpecification

type SpotFleetTagSpecification struct {

	// The type of resource. Currently, the only resource type that is supported is
	// instance. To tag the Spot Fleet request on creation, use the TagSpecifications
	// parameter in SpotFleetRequestConfigData
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html).
	ResourceType ResourceType

	// The tags.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags for a Spot Fleet resource.

type SpotInstanceInterruptionBehavior

type SpotInstanceInterruptionBehavior string
const (
	SpotInstanceInterruptionBehaviorHibernate SpotInstanceInterruptionBehavior = "hibernate"
	SpotInstanceInterruptionBehaviorStop      SpotInstanceInterruptionBehavior = "stop"
	SpotInstanceInterruptionBehaviorTerminate SpotInstanceInterruptionBehavior = "terminate"
)

Enum values for SpotInstanceInterruptionBehavior

func (SpotInstanceInterruptionBehavior) Values added in v0.29.0

Values returns all known values for SpotInstanceInterruptionBehavior. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SpotInstanceRequest

type SpotInstanceRequest struct {

	// Deprecated.
	ActualBlockHourlyPrice *string

	// The Availability Zone group. If you specify the same Availability Zone group for
	// all Spot Instance requests, all Spot Instances are launched in the same
	// Availability Zone.
	AvailabilityZoneGroup *string

	// Deprecated.
	BlockDurationMinutes *int32

	// The date and time when the Spot Instance request was created, in UTC format (for
	// example, YYYY-MM-DDTHH:MM:SSZ).
	CreateTime *time.Time

	// The fault codes for the Spot Instance request, if any.
	Fault *SpotInstanceStateFault

	// The instance ID, if an instance has been launched to fulfill the Spot Instance
	// request.
	InstanceId *string

	// The behavior when a Spot Instance is interrupted.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The instance launch group. Launch groups are Spot Instances that launch together
	// and terminate together.
	LaunchGroup *string

	// Additional information for launching instances.
	LaunchSpecification *LaunchSpecification

	// The Availability Zone in which the request is launched.
	LaunchedAvailabilityZone *string

	// The product description associated with the Spot Instance.
	ProductDescription RIProductDescription

	// The ID of the Spot Instance request.
	SpotInstanceRequestId *string

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	SpotPrice *string

	// The state of the Spot Instance request. Spot request status information helps
	// track your Spot Instance requests. For more information, see Spot request status
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html)
	// in the Amazon EC2 User Guide for Linux Instances.
	State SpotInstanceState

	// The status code and status message describing the Spot Instance request.
	Status *SpotInstanceStatus

	// Any tags assigned to the resource.
	Tags []Tag

	// The Spot Instance request type.
	Type SpotInstanceType

	// The start date of the request, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.
	ValidFrom *time.Time

	// The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).
	//
	// * For a
	// persistent request, the request remains active until the validUntil date and
	// time is reached. Otherwise, the request remains active until you cancel it.
	//
	// *
	// For a one-time request, the request remains active until all instances launch,
	// the request is canceled, or the validUntil date and time is reached. By default,
	// the request is valid for 7 days from the date the request was created.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

Describes a Spot Instance request.

type SpotInstanceState

type SpotInstanceState string
const (
	SpotInstanceStateOpen      SpotInstanceState = "open"
	SpotInstanceStateActive    SpotInstanceState = "active"
	SpotInstanceStateClosed    SpotInstanceState = "closed"
	SpotInstanceStateCancelled SpotInstanceState = "cancelled"
	SpotInstanceStateFailed    SpotInstanceState = "failed"
)

Enum values for SpotInstanceState

func (SpotInstanceState) Values added in v0.29.0

Values returns all known values for SpotInstanceState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SpotInstanceStateFault

type SpotInstanceStateFault struct {

	// The reason code for the Spot Instance state change.
	Code *string

	// The message for the Spot Instance state change.
	Message *string
	// contains filtered or unexported fields
}

Describes a Spot Instance state change.

type SpotInstanceStatus

type SpotInstanceStatus struct {

	// The status code. For a list of status codes, see Spot request status codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html#spot-instance-request-status-understand)
	// in the Amazon EC2 User Guide for Linux Instances.
	Code *string

	// The description for the status code.
	Message *string

	// The date and time of the most recent status update, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	UpdateTime *time.Time
	// contains filtered or unexported fields
}

Describes the status of a Spot Instance request.

type SpotInstanceType

type SpotInstanceType string
const (
	SpotInstanceTypeOneTime    SpotInstanceType = "one-time"
	SpotInstanceTypePersistent SpotInstanceType = "persistent"
)

Enum values for SpotInstanceType

func (SpotInstanceType) Values added in v0.29.0

Values returns all known values for SpotInstanceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SpotMaintenanceStrategies added in v0.30.0

type SpotMaintenanceStrategies struct {

	// The Spot Instance replacement strategy to use when Amazon EC2 emits a signal
	// that your Spot Instance is at an elevated risk of being interrupted. For more
	// information, see Capacity rebalancing
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html)
	// in the Amazon EC2 User Guide for Linux Instances.
	CapacityRebalance *SpotCapacityRebalance
	// contains filtered or unexported fields
}

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

type SpotMarketOptions

type SpotMarketOptions struct {

	// Deprecated.
	BlockDurationMinutes *int32

	// The behavior when a Spot Instance is interrupted. The default is terminate.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The maximum hourly price that you're willing to pay for a Spot Instance. We do
	// not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your Spot Instances will be
	// interrupted more frequently than if you do not specify this parameter.
	MaxPrice *string

	// The Spot Instance request type. For RunInstances
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances),
	// persistent Spot Instance requests are only supported when the instance
	// interruption behavior is either hibernate or stop.
	SpotInstanceType SpotInstanceType

	// The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported
	// only for persistent requests.
	//
	// * For a persistent request, the request remains
	// active until the ValidUntil date and time is reached. Otherwise, the request
	// remains active until you cancel it.
	//
	// * For a one-time request, ValidUntil is not
	// supported. The request remains active until all instances launch or you cancel
	// the request.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

The options for Spot Instances.

type SpotOptions

type SpotOptions struct {

	// The strategy that determines how to allocate the target Spot Instance capacity
	// across the Spot Instance pools specified by the EC2 Fleet launch configuration.
	// For more information, see Allocation strategies for Spot Instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html)
	// in the Amazon EC2 User Guide. lowest-price - EC2 Fleet launches instances from
	// the lowest-price Spot Instance pool that has available capacity. If the cheapest
	// pool doesn't have available capacity, the Spot Instances come from the next
	// cheapest pool that has available capacity. If a pool runs out of capacity before
	// fulfilling your desired capacity, EC2 Fleet will continue to fulfill your
	// request by drawing from the next cheapest pool. To ensure that your desired
	// capacity is met, you might receive Spot Instances from several pools.
	// diversified - EC2 Fleet launches instances from all of the Spot Instance pools
	// that you specify. capacity-optimized (recommended) - EC2 Fleet launches
	// instances from Spot Instance pools with optimal capacity for the number of
	// instances that are launching. To give certain instance types a higher chance of
	// launching first, use capacity-optimized-prioritized. Set a priority for each
	// instance type by using the Priority parameter for LaunchTemplateOverrides. You
	// can assign the same priority to different LaunchTemplateOverrides. EC2
	// implements the priorities on a best-effort basis, but optimizes for capacity
	// first. capacity-optimized-prioritized is supported only if your fleet uses a
	// launch template. Note that if the On-Demand AllocationStrategy is set to
	// prioritized, the same priority is applied when fulfilling On-Demand capacity.
	// Default: lowest-price
	AllocationStrategy SpotAllocationStrategy

	// The behavior when a Spot Instance is interrupted. Default: terminate
	InstanceInterruptionBehavior SpotInstanceInterruptionBehavior

	// The number of Spot pools across which to allocate your target Spot capacity.
	// Supported only when AllocationStrategy is set to lowest-price. EC2 Fleet selects
	// the cheapest Spot pools and evenly allocates your target Spot capacity across
	// the number of Spot pools that you specify. Note that EC2 Fleet attempts to draw
	// Spot Instances from the number of pools that you specify on a best effort basis.
	// If a pool runs out of Spot capacity before fulfilling your target capacity, EC2
	// Fleet will continue to fulfill your request by drawing from the next cheapest
	// pool. To ensure that your target capacity is met, you might receive Spot
	// Instances from more than the number of pools that you specified. Similarly, if
	// most of the pools have no Spot capacity, you might receive your full target
	// capacity from fewer than the number of pools that you specified.
	InstancePoolsToUseCount *int32

	// The strategies for managing your workloads on your Spot Instances that will be
	// interrupted. Currently only the capacity rebalance strategy is available.
	MaintenanceStrategies *FleetSpotMaintenanceStrategies

	// The maximum amount per hour for Spot Instances that you're willing to pay. We do
	// not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your Spot Instances will be
	// interrupted more frequently than if you do not specify this parameter.
	MaxTotalPrice *string

	// The minimum target capacity for Spot Instances in the fleet. If the minimum
	// target capacity is not reached, the fleet launches no instances. Supported only
	// for fleets of type instant. At least one of the following must be specified:
	// SingleAvailabilityZone | SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all Spot Instances into a single Availability
	// Zone. Supported only for fleets of type instant.
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all Spot
	// Instances in the fleet. Supported only for fleets of type instant.
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of Spot Instances in an EC2 Fleet.

type SpotOptionsRequest

type SpotOptionsRequest struct {

	// The strategy that determines how to allocate the target Spot Instance capacity
	// across the Spot Instance pools specified by the EC2 Fleet launch configuration.
	// For more information, see Allocation strategies for Spot Instances
	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html)
	// in the Amazon EC2 User Guide. lowest-price - EC2 Fleet launches instances from
	// the lowest-price Spot Instance pool that has available capacity. If the cheapest
	// pool doesn't have available capacity, the Spot Instances come from the next
	// cheapest pool that has available capacity. If a pool runs out of capacity before
	// fulfilling your desired capacity, EC2 Fleet will continue to fulfill your
	// request by drawing from the next cheapest pool. To ensure that your desired
	// capacity is met, you might receive Spot Instances from several pools.
	// diversified - EC2 Fleet launches instances from all of the Spot Instance pools
	// that you specify. capacity-optimized (recommended) - EC2 Fleet launches
	// instances from Spot Instance pools with optimal capacity for the number of
	// instances that are launching. To give certain instance types a higher chance of
	// launching first, use capacity-optimized-prioritized. Set a priority for each
	// instance type by using the Priority parameter for LaunchTemplateOverrides. You
	// can assign the same priority to different LaunchTemplateOverrides. EC2
	// implements the priorities on a best-effort basis, but optimizes for capacity
	// first. capacity-optimized-prioritized is supported only if your fleet uses a
	// launch template. Note that if the On-Demand AllocationStrategy is set to
	// prioritized, the same priority is applied when fulfilling On-Demand capacity.
	// Default: lowest-price
	AllocationStrategy SpotAllocationStrategy

	// The behavior when a Spot Instance is interrupted. Default: terminate
	InstanceInterruptionBehavior SpotInstanceInterruptionBehavior

	// The number of Spot pools across which to allocate your target Spot capacity.
	// Supported only when Spot AllocationStrategy is set to lowest-price. EC2 Fleet
	// selects the cheapest Spot pools and evenly allocates your target Spot capacity
	// across the number of Spot pools that you specify. Note that EC2 Fleet attempts
	// to draw Spot Instances from the number of pools that you specify on a best
	// effort basis. If a pool runs out of Spot capacity before fulfilling your target
	// capacity, EC2 Fleet will continue to fulfill your request by drawing from the
	// next cheapest pool. To ensure that your target capacity is met, you might
	// receive Spot Instances from more than the number of pools that you specified.
	// Similarly, if most of the pools have no Spot capacity, you might receive your
	// full target capacity from fewer than the number of pools that you specified.
	InstancePoolsToUseCount *int32

	// The strategies for managing your Spot Instances that are at an elevated risk of
	// being interrupted.
	MaintenanceStrategies *FleetSpotMaintenanceStrategiesRequest

	// The maximum amount per hour for Spot Instances that you're willing to pay. We do
	// not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your Spot Instances will be
	// interrupted more frequently than if you do not specify this parameter.
	MaxTotalPrice *string

	// The minimum target capacity for Spot Instances in the fleet. If the minimum
	// target capacity is not reached, the fleet launches no instances. Supported only
	// for fleets of type instant. At least one of the following must be specified:
	// SingleAvailabilityZone | SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all Spot Instances into a single Availability
	// Zone. Supported only for fleets of type instant.
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all Spot
	// Instances in the fleet. Supported only for fleets of type instant.
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of Spot Instances in an EC2 Fleet request.

type SpotPlacement

type SpotPlacement struct {

	// The Availability Zone. [Spot Fleet only] To specify multiple Availability Zones,
	// separate them using commas; for example, "us-west-2a, us-west-2b".
	AvailabilityZone *string

	// The name of the placement group.
	GroupName *string

	// The tenancy of the instance (if the instance is running in a VPC). An instance
	// with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is
	// not supported for Spot Instances.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes Spot Instance placement.

type SpotPlacementScore added in v1.21.0

type SpotPlacementScore struct {

	// The Availability Zone.
	AvailabilityZoneId *string

	// The Region.
	Region *string

	// The placement score, on a scale from 1 to 10. A score of 10 indicates that your
	// Spot request is highly likely to succeed in this Region or Availability Zone. A
	// score of 1 indicates that your Spot request is not likely to succeed.
	Score *int32
	// contains filtered or unexported fields
}

The Spot placement score for this Region or Availability Zone. The score is calculated based on the assumption that the capacity-optimized allocation strategy is used and that all of the Availability Zones in the Region can be used.

type SpotPrice

type SpotPrice struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The instance type.
	InstanceType InstanceType

	// A general description of the AMI.
	ProductDescription RIProductDescription

	// The maximum price per unit hour that you are willing to pay for a Spot Instance.
	// We do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price. If you specify a maximum price, your instances will be interrupted
	// more frequently than if you do not specify this parameter.
	SpotPrice *string

	// The date and time the request was created, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	Timestamp *time.Time
	// contains filtered or unexported fields
}

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

type SpreadLevel added in v1.47.0

type SpreadLevel string
const (
	SpreadLevelHost SpreadLevel = "host"
	SpreadLevelRack SpreadLevel = "rack"
)

Enum values for SpreadLevel

func (SpreadLevel) Values added in v1.47.0

func (SpreadLevel) Values() []SpreadLevel

Values returns all known values for SpreadLevel. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type StaleIpPermission

type StaleIpPermission struct {

	// The start of the port range for the TCP and UDP protocols, or an ICMP type
	// number. A value of -1 indicates all ICMP types.
	FromPort *int32

	// The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers)
	// (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
	IpProtocol *string

	// The IP ranges. Not applicable for stale security group rules.
	IpRanges []string

	// The prefix list IDs. Not applicable for stale security group rules.
	PrefixListIds []string

	// The end of the port range for the TCP and UDP protocols, or an ICMP type number.
	// A value of -1 indicates all ICMP types.
	ToPort *int32

	// The security group pairs. Returns the ID of the referenced security group and
	// VPC, and the ID and status of the VPC peering connection.
	UserIdGroupPairs []UserIdGroupPair
	// contains filtered or unexported fields
}

Describes a stale rule in a security group.

type StaleSecurityGroup

type StaleSecurityGroup struct {

	// The description of the security group.
	Description *string

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string

	// Information about the stale inbound rules in the security group.
	StaleIpPermissions []StaleIpPermission

	// Information about the stale outbound rules in the security group.
	StaleIpPermissionsEgress []StaleIpPermission

	// The ID of the VPC for the security group.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a stale security group (a security group that contains stale rules).

type State

type State string
const (
	StatePendingAcceptance State = "PendingAcceptance"
	StatePending           State = "Pending"
	StateAvailable         State = "Available"
	StateDeleting          State = "Deleting"
	StateDeleted           State = "Deleted"
	StateRejected          State = "Rejected"
	StateFailed            State = "Failed"
	StateExpired           State = "Expired"
)

Enum values for State

func (State) Values added in v0.29.0

func (State) Values() []State

Values returns all known values for State. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type StateReason

type StateReason struct {

	// The reason code for the state change.
	Code *string

	// The message for the state change.
	//
	// * Server.InsufficientInstanceCapacity: There
	// was insufficient capacity available to satisfy the launch request.
	//
	// *
	// Server.InternalError: An internal error caused the instance to terminate during
	// launch.
	//
	// * Server.ScheduledStop: The instance was stopped due to a scheduled
	// retirement.
	//
	// * Server.SpotInstanceShutdown: The instance was stopped because the
	// number of Spot requests with a maximum price equal to or higher than the Spot
	// price exceeded available capacity or because of an increase in the Spot
	// price.
	//
	// * Server.SpotInstanceTermination: The instance was terminated because
	// the number of Spot requests with a maximum price equal to or higher than the
	// Spot price exceeded available capacity or because of an increase in the Spot
	// price.
	//
	// * Client.InstanceInitiatedShutdown: The instance was shut down using the
	// shutdown -h command from the instance.
	//
	// * Client.InstanceTerminated: The
	// instance was terminated or rebooted during AMI creation.
	//
	// *
	// Client.InternalError: A client error caused the instance to terminate during
	// launch.
	//
	// * Client.InvalidSnapshot.NotFound: The specified snapshot was not
	// found.
	//
	// * Client.UserInitiatedHibernate: Hibernation was initiated on the
	// instance.
	//
	// * Client.UserInitiatedShutdown: The instance was shut down using the
	// Amazon EC2 API.
	//
	// * Client.VolumeLimitExceeded: The limit on the number of EBS
	// volumes or total storage was exceeded. Decrease usage or request an increase in
	// your account limits.
	Message *string
	// contains filtered or unexported fields
}

Describes a state change.

type StaticSourcesSupportValue added in v0.31.0

type StaticSourcesSupportValue string
const (
	StaticSourcesSupportValueEnable  StaticSourcesSupportValue = "enable"
	StaticSourcesSupportValueDisable StaticSourcesSupportValue = "disable"
)

Enum values for StaticSourcesSupportValue

func (StaticSourcesSupportValue) Values added in v0.31.0

Values returns all known values for StaticSourcesSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Status

type Status string
const (
	StatusMoveInProgress Status = "MoveInProgress"
	StatusInVpc          Status = "InVpc"
	StatusInClassic      Status = "InClassic"
)

Enum values for Status

func (Status) Values added in v0.29.0

func (Status) Values() []Status

Values returns all known values for Status. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type StatusName

type StatusName string
const (
	StatusNameReachability StatusName = "reachability"
)

Enum values for StatusName

func (StatusName) Values added in v0.29.0

func (StatusName) Values() []StatusName

Values returns all known values for StatusName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type StatusType

type StatusType string
const (
	StatusTypePassed           StatusType = "passed"
	StatusTypeFailed           StatusType = "failed"
	StatusTypeInsufficientData StatusType = "insufficient-data"
	StatusTypeInitializing     StatusType = "initializing"
)

Enum values for StatusType

func (StatusType) Values added in v0.29.0

func (StatusType) Values() []StatusType

Values returns all known values for StatusType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Storage

type Storage struct {

	// An Amazon S3 storage location.
	S3 *S3Storage
	// contains filtered or unexported fields
}

Describes the storage location for an instance store-backed AMI.

type StorageLocation

type StorageLocation struct {

	// The name of the S3 bucket.
	Bucket *string

	// The key.
	Key *string
	// contains filtered or unexported fields
}

Describes a storage location in Amazon S3.

type StorageTier added in v1.24.0

type StorageTier string
const (
	StorageTierArchive  StorageTier = "archive"
	StorageTierStandard StorageTier = "standard"
)

Enum values for StorageTier

func (StorageTier) Values added in v1.24.0

func (StorageTier) Values() []StorageTier

Values returns all known values for StorageTier. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type StoreImageTaskResult added in v1.4.0

type StoreImageTaskResult struct {

	// The ID of the AMI that is being stored.
	AmiId *string

	// The name of the Amazon S3 bucket that contains the stored AMI object.
	Bucket *string

	// The progress of the task as a percentage.
	ProgressPercentage *int32

	// The name of the stored AMI object in the bucket.
	S3objectKey *string

	// If the tasks fails, the reason for the failure is returned. If the task
	// succeeds, null is returned.
	StoreTaskFailureReason *string

	// The state of the store task (InProgress, Completed, or Failed).
	StoreTaskState *string

	// The time the task started.
	TaskStartTime *time.Time
	// contains filtered or unexported fields
}

The information about the AMI store task, including the progress of the task.

type Subnet

type Subnet struct {

	// Indicates whether a network interface created in this subnet (including a
	// network interface created by RunInstances) receives an IPv6 address.
	AssignIpv6AddressOnCreation *bool

	// The Availability Zone of the subnet.
	AvailabilityZone *string

	// The AZ ID of the subnet.
	AvailabilityZoneId *string

	// The number of unused private IPv4 addresses in the subnet. The IPv4 addresses
	// for any stopped instances are considered unavailable.
	AvailableIpAddressCount *int32

	// The IPv4 CIDR block assigned to the subnet.
	CidrBlock *string

	// The customer-owned IPv4 address pool associated with the subnet.
	CustomerOwnedIpv4Pool *string

	// Indicates whether this is the default subnet for the Availability Zone.
	DefaultForAz *bool

	// Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this
	// subnet should return synthetic IPv6 addresses for IPv4-only destinations.
	EnableDns64 *bool

	// Indicates the device position for local network interfaces in this subnet. For
	// example, 1 indicates local network interfaces in this subnet are the secondary
	// network interface (eth1).
	EnableLniAtDeviceIndex *int32

	// Information about the IPv6 CIDR blocks associated with the subnet.
	Ipv6CidrBlockAssociationSet []SubnetIpv6CidrBlockAssociation

	// Indicates whether this is an IPv6 only subnet.
	Ipv6Native *bool

	// Indicates whether a network interface created in this subnet (including a
	// network interface created by RunInstances) receives a customer-owned IPv4
	// address.
	MapCustomerOwnedIpOnLaunch *bool

	// Indicates whether instances launched in this subnet receive a public IPv4
	// address.
	MapPublicIpOnLaunch *bool

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the subnet.
	OwnerId *string

	// The type of hostnames to assign to instances in the subnet at launch. An
	// instance hostname is based on the IPv4 address or ID of the instance.
	PrivateDnsNameOptionsOnLaunch *PrivateDnsNameOptionsOnLaunch

	// The current state of the subnet.
	State SubnetState

	// The Amazon Resource Name (ARN) of the subnet.
	SubnetArn *string

	// The ID of the subnet.
	SubnetId *string

	// Any tags assigned to the subnet.
	Tags []Tag

	// The ID of the VPC the subnet is in.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a subnet.

type SubnetAssociation

type SubnetAssociation struct {

	// The state of the subnet association.
	State TransitGatewayMulitcastDomainAssociationState

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes the subnet association with the transit gateway multicast domain.

type SubnetCidrBlockState

type SubnetCidrBlockState struct {

	// The state of a CIDR block.
	State SubnetCidrBlockStateCode

	// A message about the status of the CIDR block, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of a CIDR block.

type SubnetCidrBlockStateCode

type SubnetCidrBlockStateCode string
const (
	SubnetCidrBlockStateCodeAssociating    SubnetCidrBlockStateCode = "associating"
	SubnetCidrBlockStateCodeAssociated     SubnetCidrBlockStateCode = "associated"
	SubnetCidrBlockStateCodeDisassociating SubnetCidrBlockStateCode = "disassociating"
	SubnetCidrBlockStateCodeDisassociated  SubnetCidrBlockStateCode = "disassociated"
	SubnetCidrBlockStateCodeFailing        SubnetCidrBlockStateCode = "failing"
	SubnetCidrBlockStateCodeFailed         SubnetCidrBlockStateCode = "failed"
)

Enum values for SubnetCidrBlockStateCode

func (SubnetCidrBlockStateCode) Values added in v0.29.0

Values returns all known values for SubnetCidrBlockStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SubnetCidrReservation added in v1.13.0

type SubnetCidrReservation struct {

	// The CIDR that has been reserved.
	Cidr *string

	// The description assigned to the subnet CIDR reservation.
	Description *string

	// The ID of the account that owns the subnet CIDR reservation.
	OwnerId *string

	// The type of reservation.
	ReservationType SubnetCidrReservationType

	// The ID of the subnet CIDR reservation.
	SubnetCidrReservationId *string

	// The ID of the subnet.
	SubnetId *string

	// The tags assigned to the subnet CIDR reservation.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a subnet CIDR reservation.

type SubnetCidrReservationType added in v1.13.0

type SubnetCidrReservationType string
const (
	SubnetCidrReservationTypePrefix   SubnetCidrReservationType = "prefix"
	SubnetCidrReservationTypeExplicit SubnetCidrReservationType = "explicit"
)

Enum values for SubnetCidrReservationType

func (SubnetCidrReservationType) Values added in v1.13.0

Values returns all known values for SubnetCidrReservationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SubnetIpv6CidrBlockAssociation

type SubnetIpv6CidrBlockAssociation struct {

	// The ID of the association.
	AssociationId *string

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string

	// The state of the CIDR block.
	Ipv6CidrBlockState *SubnetCidrBlockState
	// contains filtered or unexported fields
}

Describes an association between a subnet and an IPv6 CIDR block.

type SubnetState

type SubnetState string
const (
	SubnetStatePending   SubnetState = "pending"
	SubnetStateAvailable SubnetState = "available"
)

Enum values for SubnetState

func (SubnetState) Values added in v0.29.0

func (SubnetState) Values() []SubnetState

Values returns all known values for SubnetState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type SuccessfulInstanceCreditSpecificationItem

type SuccessfulInstanceCreditSpecificationItem struct {

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the burstable performance instance whose credit option for CPU usage was successfully modified.

type SuccessfulQueuedPurchaseDeletion

type SuccessfulQueuedPurchaseDeletion struct {

	// The ID of the Reserved Instance.
	ReservedInstancesId *string
	// contains filtered or unexported fields
}

Describes a Reserved Instance whose queued purchase was successfully deleted.

type SummaryStatus

type SummaryStatus string
const (
	SummaryStatusOk               SummaryStatus = "ok"
	SummaryStatusImpaired         SummaryStatus = "impaired"
	SummaryStatusInsufficientData SummaryStatus = "insufficient-data"
	SummaryStatusNotApplicable    SummaryStatus = "not-applicable"
	SummaryStatusInitializing     SummaryStatus = "initializing"
)

Enum values for SummaryStatus

func (SummaryStatus) Values added in v0.29.0

func (SummaryStatus) Values() []SummaryStatus

Values returns all known values for SummaryStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Tag

type Tag struct {

	// The key of the tag. Constraints: Tag keys are case-sensitive and accept a
	// maximum of 127 Unicode characters. May not begin with aws:.
	Key *string

	// The value of the tag. Constraints: Tag values are case-sensitive and accept a
	// maximum of 256 Unicode characters.
	Value *string
	// contains filtered or unexported fields
}

Describes a tag.

type TagDescription

type TagDescription struct {

	// The tag key.
	Key *string

	// The ID of the resource.
	ResourceId *string

	// The resource type.
	ResourceType ResourceType

	// The tag value.
	Value *string
	// contains filtered or unexported fields
}

Describes a tag.

type TagSpecification

type TagSpecification struct {

	// The type of resource to tag on creation.
	ResourceType ResourceType

	// The tags to apply to the resource.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags to apply to a resource when the resource is being created. The Valid Values lists all the resource types that can be tagged. However, the action you're using might not support tagging all of these resource types. If you try to tag a resource type that is unsupported for the action you're using, you'll get an error.

type TargetCapacitySpecification

type TargetCapacitySpecification struct {

	// The default TotalTargetCapacity, which is either Spot or On-Demand.
	DefaultTargetCapacityType DefaultTargetCapacityType

	// The number of On-Demand units to request. If you specify a target capacity for
	// Spot units, you cannot specify a target capacity for On-Demand units.
	OnDemandTargetCapacity *int32

	// The maximum number of Spot units to launch. If you specify a target capacity for
	// On-Demand units, you cannot specify a target capacity for Spot units.
	SpotTargetCapacity *int32

	// The unit for the target capacity. Default: units (translates to number of
	// instances)
	TargetCapacityUnitType TargetCapacityUnitType

	// The number of units to request, filled using DefaultTargetCapacityType.
	TotalTargetCapacity *int32
	// contains filtered or unexported fields
}

The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later. You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice, or both to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_OnDemandOptions.html) and SpotOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotOptions).

type TargetCapacitySpecificationRequest

type TargetCapacitySpecificationRequest struct {

	// The number of units to request, filled using DefaultTargetCapacityType.
	//
	// This member is required.
	TotalTargetCapacity *int32

	// The default TotalTargetCapacity, which is either Spot or On-Demand.
	DefaultTargetCapacityType DefaultTargetCapacityType

	// The number of On-Demand units to request.
	OnDemandTargetCapacity *int32

	// The number of Spot units to request.
	SpotTargetCapacity *int32

	// The unit for the target capacity. Default: units (translates to number of
	// instances)
	TargetCapacityUnitType TargetCapacityUnitType
	// contains filtered or unexported fields
}

The number of units to request. You can choose to set the target capacity as the number of instances. Or you can set the target capacity to a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later. You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptionsRequest (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_OnDemandOptionsRequest) and SpotOptionsRequest (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotOptionsRequest).

type TargetCapacityUnitType added in v1.21.0

type TargetCapacityUnitType string
const (
	TargetCapacityUnitTypeVcpu      TargetCapacityUnitType = "vcpu"
	TargetCapacityUnitTypeMemoryMib TargetCapacityUnitType = "memory-mib"
	TargetCapacityUnitTypeUnits     TargetCapacityUnitType = "units"
)

Enum values for TargetCapacityUnitType

func (TargetCapacityUnitType) Values added in v1.21.0

Values returns all known values for TargetCapacityUnitType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TargetConfiguration

type TargetConfiguration struct {

	// The number of instances the Convertible Reserved Instance offering can be
	// applied to. This parameter is reserved and cannot be specified in a request
	InstanceCount *int32

	// The ID of the Convertible Reserved Instance offering.
	OfferingId *string
	// contains filtered or unexported fields
}

Information about the Convertible Reserved Instance offering.

type TargetConfigurationRequest

type TargetConfigurationRequest struct {

	// The Convertible Reserved Instance offering ID.
	//
	// This member is required.
	OfferingId *string

	// The number of instances the Convertible Reserved Instance offering can be
	// applied to. This parameter is reserved and cannot be specified in a request
	InstanceCount *int32
	// contains filtered or unexported fields
}

Details about the target configuration.

type TargetGroup

type TargetGroup struct {

	// The Amazon Resource Name (ARN) of the target group.
	Arn *string
	// contains filtered or unexported fields
}

Describes a load balancer target group.

type TargetGroupsConfig

type TargetGroupsConfig struct {

	// One or more target groups.
	TargetGroups []TargetGroup
	// contains filtered or unexported fields
}

Describes the target groups to attach to a Spot Fleet. Spot Fleet registers the running Spot Instances with these target groups.

type TargetNetwork

type TargetNetwork struct {

	// The ID of the association.
	AssociationId *string

	// The ID of the Client VPN endpoint with which the target network is associated.
	ClientVpnEndpointId *string

	// The IDs of the security groups applied to the target network association.
	SecurityGroups []string

	// The current state of the target network association.
	Status *AssociationStatus

	// The ID of the subnet specified as the target network.
	TargetNetworkId *string

	// The ID of the VPC in which the target network (subnet) is located.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a target network associated with a Client VPN endpoint.

type TargetReservationValue

type TargetReservationValue struct {

	// The total value of the Convertible Reserved Instances that make up the exchange.
	// This is the sum of the list value, remaining upfront price, and additional
	// upfront cost of the exchange.
	ReservationValue *ReservationValue

	// The configuration of the Convertible Reserved Instances that make up the
	// exchange.
	TargetConfiguration *TargetConfiguration
	// contains filtered or unexported fields
}

The total value of the new Convertible Reserved Instances.

type TargetStorageTier added in v1.24.0

type TargetStorageTier string
const (
	TargetStorageTierArchive TargetStorageTier = "archive"
)

Enum values for TargetStorageTier

func (TargetStorageTier) Values added in v1.24.0

Values returns all known values for TargetStorageTier. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TelemetryStatus

type TelemetryStatus string
const (
	TelemetryStatusUp   TelemetryStatus = "UP"
	TelemetryStatusDown TelemetryStatus = "DOWN"
)

Enum values for TelemetryStatus

func (TelemetryStatus) Values added in v0.29.0

func (TelemetryStatus) Values() []TelemetryStatus

Values returns all known values for TelemetryStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Tenancy

type Tenancy string
const (
	TenancyDefault   Tenancy = "default"
	TenancyDedicated Tenancy = "dedicated"
	TenancyHost      Tenancy = "host"
)

Enum values for Tenancy

func (Tenancy) Values added in v0.29.0

func (Tenancy) Values() []Tenancy

Values returns all known values for Tenancy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TerminateConnectionStatus

type TerminateConnectionStatus struct {

	// The ID of the client connection.
	ConnectionId *string

	// A message about the status of the client connection, if applicable.
	CurrentStatus *ClientVpnConnectionStatus

	// The state of the client connection.
	PreviousStatus *ClientVpnConnectionStatus
	// contains filtered or unexported fields
}

Information about a terminated Client VPN endpoint client connection.

type ThroughResourcesStatement added in v1.25.0

type ThroughResourcesStatement struct {

	// The resource statement.
	ResourceStatement *ResourceStatement
	// contains filtered or unexported fields
}

Describes a through resource statement.

type ThroughResourcesStatementRequest added in v1.25.0

type ThroughResourcesStatementRequest struct {

	// The resource statement.
	ResourceStatement *ResourceStatementRequest
	// contains filtered or unexported fields
}

Describes a through resource statement.

type TieringOperationStatus added in v1.24.0

type TieringOperationStatus string
const (
	TieringOperationStatusArchivalInProgress         TieringOperationStatus = "archival-in-progress"
	TieringOperationStatusArchivalCompleted          TieringOperationStatus = "archival-completed"
	TieringOperationStatusArchivalFailed             TieringOperationStatus = "archival-failed"
	TieringOperationStatusTemporaryRestoreInProgress TieringOperationStatus = "temporary-restore-in-progress"
	TieringOperationStatusTemporaryRestoreCompleted  TieringOperationStatus = "temporary-restore-completed"
	TieringOperationStatusTemporaryRestoreFailed     TieringOperationStatus = "temporary-restore-failed"
	TieringOperationStatusPermanentRestoreInProgress TieringOperationStatus = "permanent-restore-in-progress"
	TieringOperationStatusPermanentRestoreCompleted  TieringOperationStatus = "permanent-restore-completed"
	TieringOperationStatusPermanentRestoreFailed     TieringOperationStatus = "permanent-restore-failed"
)

Enum values for TieringOperationStatus

func (TieringOperationStatus) Values added in v1.24.0

Values returns all known values for TieringOperationStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TotalLocalStorageGB added in v1.21.0

type TotalLocalStorageGB struct {

	// The maximum amount of total local storage, in GB. If this parameter is not
	// specified, there is no maximum limit.
	Max *float64

	// The minimum amount of total local storage, in GB. If this parameter is not
	// specified, there is no minimum limit.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of total local storage, in GB.

type TotalLocalStorageGBRequest added in v1.21.0

type TotalLocalStorageGBRequest struct {

	// The maximum amount of total local storage, in GB. To specify no maximum limit,
	// omit this parameter.
	Max *float64

	// The minimum amount of total local storage, in GB. To specify no minimum limit,
	// omit this parameter.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of total local storage, in GB.

type TpmSupportValues added in v1.41.0

type TpmSupportValues string
const (
	TpmSupportValuesV20 TpmSupportValues = "v2.0"
)

Enum values for TpmSupportValues

func (TpmSupportValues) Values added in v1.41.0

Values returns all known values for TpmSupportValues. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficDirection

type TrafficDirection string
const (
	TrafficDirectionIngress TrafficDirection = "ingress"
	TrafficDirectionEgress  TrafficDirection = "egress"
)

Enum values for TrafficDirection

func (TrafficDirection) Values added in v0.29.0

Values returns all known values for TrafficDirection. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorFilter

type TrafficMirrorFilter struct {

	// The description of the Traffic Mirror filter.
	Description *string

	// Information about the egress rules that are associated with the Traffic Mirror
	// filter.
	EgressFilterRules []TrafficMirrorFilterRule

	// Information about the ingress rules that are associated with the Traffic Mirror
	// filter.
	IngressFilterRules []TrafficMirrorFilterRule

	// The network service traffic that is associated with the Traffic Mirror filter.
	NetworkServices []TrafficMirrorNetworkService

	// The tags assigned to the Traffic Mirror filter.
	Tags []Tag

	// The ID of the Traffic Mirror filter.
	TrafficMirrorFilterId *string
	// contains filtered or unexported fields
}

Describes the Traffic Mirror filter.

type TrafficMirrorFilterRule

type TrafficMirrorFilterRule struct {

	// The description of the Traffic Mirror rule.
	Description *string

	// The destination CIDR block assigned to the Traffic Mirror rule.
	DestinationCidrBlock *string

	// The destination port range assigned to the Traffic Mirror rule.
	DestinationPortRange *TrafficMirrorPortRange

	// The protocol assigned to the Traffic Mirror rule.
	Protocol *int32

	// The action assigned to the Traffic Mirror rule.
	RuleAction TrafficMirrorRuleAction

	// The rule number of the Traffic Mirror rule.
	RuleNumber *int32

	// The source CIDR block assigned to the Traffic Mirror rule.
	SourceCidrBlock *string

	// The source port range assigned to the Traffic Mirror rule.
	SourcePortRange *TrafficMirrorPortRange

	// The traffic direction assigned to the Traffic Mirror rule.
	TrafficDirection TrafficDirection

	// The ID of the Traffic Mirror filter that the rule is associated with.
	TrafficMirrorFilterId *string

	// The ID of the Traffic Mirror rule.
	TrafficMirrorFilterRuleId *string
	// contains filtered or unexported fields
}

Describes the Traffic Mirror rule.

type TrafficMirrorFilterRuleField

type TrafficMirrorFilterRuleField string
const (
	TrafficMirrorFilterRuleFieldDestinationPortRange TrafficMirrorFilterRuleField = "destination-port-range"
	TrafficMirrorFilterRuleFieldSourcePortRange      TrafficMirrorFilterRuleField = "source-port-range"
	TrafficMirrorFilterRuleFieldProtocol             TrafficMirrorFilterRuleField = "protocol"
	TrafficMirrorFilterRuleFieldDescription          TrafficMirrorFilterRuleField = "description"
)

Enum values for TrafficMirrorFilterRuleField

func (TrafficMirrorFilterRuleField) Values added in v0.29.0

Values returns all known values for TrafficMirrorFilterRuleField. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorNetworkService

type TrafficMirrorNetworkService string
const (
	TrafficMirrorNetworkServiceAmazonDns TrafficMirrorNetworkService = "amazon-dns"
)

Enum values for TrafficMirrorNetworkService

func (TrafficMirrorNetworkService) Values added in v0.29.0

Values returns all known values for TrafficMirrorNetworkService. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorPortRange

type TrafficMirrorPortRange struct {

	// The start of the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	FromPort *int32

	// The end of the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes the Traffic Mirror port range.

type TrafficMirrorPortRangeRequest

type TrafficMirrorPortRangeRequest struct {

	// The first port in the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	FromPort *int32

	// The last port in the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	ToPort *int32
	// contains filtered or unexported fields
}

Information about the Traffic Mirror filter rule port range.

type TrafficMirrorRuleAction

type TrafficMirrorRuleAction string
const (
	TrafficMirrorRuleActionAccept TrafficMirrorRuleAction = "accept"
	TrafficMirrorRuleActionReject TrafficMirrorRuleAction = "reject"
)

Enum values for TrafficMirrorRuleAction

func (TrafficMirrorRuleAction) Values added in v0.29.0

Values returns all known values for TrafficMirrorRuleAction. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorSession

type TrafficMirrorSession struct {

	// The description of the Traffic Mirror session.
	Description *string

	// The ID of the Traffic Mirror session's network interface.
	NetworkInterfaceId *string

	// The ID of the account that owns the Traffic Mirror session.
	OwnerId *string

	// The number of bytes in each packet to mirror. These are the bytes after the
	// VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror.
	// For example, if you set this value to 100, then the first 100 bytes that meet
	// the filter criteria are copied to the target. Do not specify this parameter when
	// you want to mirror the entire packet
	PacketLength *int32

	// The session number determines the order in which sessions are evaluated when an
	// interface is used by multiple sessions. The first session with a matching filter
	// is the one that mirrors the packets. Valid values are 1-32766.
	SessionNumber *int32

	// The tags assigned to the Traffic Mirror session.
	Tags []Tag

	// The ID of the Traffic Mirror filter.
	TrafficMirrorFilterId *string

	// The ID for the Traffic Mirror session.
	TrafficMirrorSessionId *string

	// The ID of the Traffic Mirror target.
	TrafficMirrorTargetId *string

	// The virtual network ID associated with the Traffic Mirror session.
	VirtualNetworkId *int32
	// contains filtered or unexported fields
}

Describes a Traffic Mirror session.

type TrafficMirrorSessionField

type TrafficMirrorSessionField string
const (
	TrafficMirrorSessionFieldPacketLength     TrafficMirrorSessionField = "packet-length"
	TrafficMirrorSessionFieldDescription      TrafficMirrorSessionField = "description"
	TrafficMirrorSessionFieldVirtualNetworkId TrafficMirrorSessionField = "virtual-network-id"
)

Enum values for TrafficMirrorSessionField

func (TrafficMirrorSessionField) Values added in v0.29.0

Values returns all known values for TrafficMirrorSessionField. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorTarget

type TrafficMirrorTarget struct {

	// Information about the Traffic Mirror target.
	Description *string

	// The ID of the Gateway Load Balancer endpoint.
	GatewayLoadBalancerEndpointId *string

	// The network interface ID that is attached to the target.
	NetworkInterfaceId *string

	// The Amazon Resource Name (ARN) of the Network Load Balancer.
	NetworkLoadBalancerArn *string

	// The ID of the account that owns the Traffic Mirror target.
	OwnerId *string

	// The tags assigned to the Traffic Mirror target.
	Tags []Tag

	// The ID of the Traffic Mirror target.
	TrafficMirrorTargetId *string

	// The type of Traffic Mirror target.
	Type TrafficMirrorTargetType
	// contains filtered or unexported fields
}

Describes a Traffic Mirror target.

type TrafficMirrorTargetType

type TrafficMirrorTargetType string
const (
	TrafficMirrorTargetTypeNetworkInterface            TrafficMirrorTargetType = "network-interface"
	TrafficMirrorTargetTypeNetworkLoadBalancer         TrafficMirrorTargetType = "network-load-balancer"
	TrafficMirrorTargetTypeGatewayLoadBalancerEndpoint TrafficMirrorTargetType = "gateway-load-balancer-endpoint"
)

Enum values for TrafficMirrorTargetType

func (TrafficMirrorTargetType) Values added in v0.29.0

Values returns all known values for TrafficMirrorTargetType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrafficType

type TrafficType string
const (
	TrafficTypeAccept TrafficType = "ACCEPT"
	TrafficTypeReject TrafficType = "REJECT"
	TrafficTypeAll    TrafficType = "ALL"
)

Enum values for TrafficType

func (TrafficType) Values added in v0.29.0

func (TrafficType) Values() []TrafficType

Values returns all known values for TrafficType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGateway

type TransitGateway struct {

	// The creation time.
	CreationTime *time.Time

	// The description of the transit gateway.
	Description *string

	// The transit gateway options.
	Options *TransitGatewayOptions

	// The ID of the Amazon Web Services account that owns the transit gateway.
	OwnerId *string

	// The state of the transit gateway.
	State TransitGatewayState

	// The tags for the transit gateway.
	Tags []Tag

	// The Amazon Resource Name (ARN) of the transit gateway.
	TransitGatewayArn *string

	// The ID of the transit gateway.
	TransitGatewayId *string
	// contains filtered or unexported fields
}

Describes a transit gateway.

type TransitGatewayAssociation

type TransitGatewayAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the association.
	State TransitGatewayAssociationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes an association between a resource attachment and a transit gateway route table.

type TransitGatewayAssociationState

type TransitGatewayAssociationState string
const (
	TransitGatewayAssociationStateAssociating    TransitGatewayAssociationState = "associating"
	TransitGatewayAssociationStateAssociated     TransitGatewayAssociationState = "associated"
	TransitGatewayAssociationStateDisassociating TransitGatewayAssociationState = "disassociating"
	TransitGatewayAssociationStateDisassociated  TransitGatewayAssociationState = "disassociated"
)

Enum values for TransitGatewayAssociationState

func (TransitGatewayAssociationState) Values added in v0.29.0

Values returns all known values for TransitGatewayAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayAttachment

type TransitGatewayAttachment struct {

	// The association.
	Association *TransitGatewayAttachmentAssociation

	// The creation time.
	CreationTime *time.Time

	// The ID of the resource.
	ResourceId *string

	// The ID of the Amazon Web Services account that owns the resource.
	ResourceOwnerId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The attachment state. Note that the initiating state has been deprecated.
	State TransitGatewayAttachmentState

	// The tags for the attachment.
	Tags []Tag

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the Amazon Web Services account that owns the transit gateway.
	TransitGatewayOwnerId *string
	// contains filtered or unexported fields
}

Describes an attachment between a resource and a transit gateway.

type TransitGatewayAttachmentAssociation

type TransitGatewayAttachmentAssociation struct {

	// The state of the association.
	State TransitGatewayAssociationState

	// The ID of the route table for the transit gateway.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes an association.

type TransitGatewayAttachmentBgpConfiguration added in v0.31.0

type TransitGatewayAttachmentBgpConfiguration struct {

	// The BGP status.
	BgpStatus BgpStatus

	// The interior BGP peer IP address for the appliance.
	PeerAddress *string

	// The peer Autonomous System Number (ASN).
	PeerAsn *int64

	// The interior BGP peer IP address for the transit gateway.
	TransitGatewayAddress *string

	// The transit gateway Autonomous System Number (ASN).
	TransitGatewayAsn *int64
	// contains filtered or unexported fields
}

The BGP configuration information.

type TransitGatewayAttachmentPropagation

type TransitGatewayAttachmentPropagation struct {

	// The state of the propagation route table.
	State TransitGatewayPropagationState

	// The ID of the propagation route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a propagation route table.

type TransitGatewayAttachmentResourceType

type TransitGatewayAttachmentResourceType string
const (
	TransitGatewayAttachmentResourceTypeVpc                  TransitGatewayAttachmentResourceType = "vpc"
	TransitGatewayAttachmentResourceTypeVpn                  TransitGatewayAttachmentResourceType = "vpn"
	TransitGatewayAttachmentResourceTypeDirectConnectGateway TransitGatewayAttachmentResourceType = "direct-connect-gateway"
	TransitGatewayAttachmentResourceTypeConnect              TransitGatewayAttachmentResourceType = "connect"
	TransitGatewayAttachmentResourceTypePeering              TransitGatewayAttachmentResourceType = "peering"
	TransitGatewayAttachmentResourceTypeTgwPeering           TransitGatewayAttachmentResourceType = "tgw-peering"
)

Enum values for TransitGatewayAttachmentResourceType

func (TransitGatewayAttachmentResourceType) Values added in v0.29.0

Values returns all known values for TransitGatewayAttachmentResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayAttachmentState

type TransitGatewayAttachmentState string
const (
	TransitGatewayAttachmentStateInitiating        TransitGatewayAttachmentState = "initiating"
	TransitGatewayAttachmentStateInitiatingRequest TransitGatewayAttachmentState = "initiatingRequest"
	TransitGatewayAttachmentStatePendingAcceptance TransitGatewayAttachmentState = "pendingAcceptance"
	TransitGatewayAttachmentStateRollingBack       TransitGatewayAttachmentState = "rollingBack"
	TransitGatewayAttachmentStatePending           TransitGatewayAttachmentState = "pending"
	TransitGatewayAttachmentStateAvailable         TransitGatewayAttachmentState = "available"
	TransitGatewayAttachmentStateModifying         TransitGatewayAttachmentState = "modifying"
	TransitGatewayAttachmentStateDeleting          TransitGatewayAttachmentState = "deleting"
	TransitGatewayAttachmentStateDeleted           TransitGatewayAttachmentState = "deleted"
	TransitGatewayAttachmentStateFailed            TransitGatewayAttachmentState = "failed"
	TransitGatewayAttachmentStateRejected          TransitGatewayAttachmentState = "rejected"
	TransitGatewayAttachmentStateRejecting         TransitGatewayAttachmentState = "rejecting"
	TransitGatewayAttachmentStateFailing           TransitGatewayAttachmentState = "failing"
)

Enum values for TransitGatewayAttachmentState

func (TransitGatewayAttachmentState) Values added in v0.29.0

Values returns all known values for TransitGatewayAttachmentState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayConnect added in v0.31.0

type TransitGatewayConnect struct {

	// The creation time.
	CreationTime *time.Time

	// The Connect attachment options.
	Options *TransitGatewayConnectOptions

	// The state of the attachment.
	State TransitGatewayAttachmentState

	// The tags for the attachment.
	Tags []Tag

	// The ID of the Connect attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the attachment from which the Connect attachment was created.
	TransportTransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes a transit gateway Connect attachment.

type TransitGatewayConnectOptions added in v0.31.0

type TransitGatewayConnectOptions struct {

	// The tunnel protocol.
	Protocol ProtocolValue
	// contains filtered or unexported fields
}

Describes the Connect attachment options.

type TransitGatewayConnectPeer added in v0.31.0

type TransitGatewayConnectPeer struct {

	// The Connect peer details.
	ConnectPeerConfiguration *TransitGatewayConnectPeerConfiguration

	// The creation time.
	CreationTime *time.Time

	// The state of the Connect peer.
	State TransitGatewayConnectPeerState

	// The tags for the Connect peer.
	Tags []Tag

	// The ID of the Connect attachment.
	TransitGatewayAttachmentId *string

	// The ID of the Connect peer.
	TransitGatewayConnectPeerId *string
	// contains filtered or unexported fields
}

Describes a transit gateway Connect peer.

type TransitGatewayConnectPeerConfiguration added in v0.31.0

type TransitGatewayConnectPeerConfiguration struct {

	// The BGP configuration details.
	BgpConfigurations []TransitGatewayAttachmentBgpConfiguration

	// The range of interior BGP peer IP addresses.
	InsideCidrBlocks []string

	// The Connect peer IP address on the appliance side of the tunnel.
	PeerAddress *string

	// The tunnel protocol.
	Protocol ProtocolValue

	// The Connect peer IP address on the transit gateway side of the tunnel.
	TransitGatewayAddress *string
	// contains filtered or unexported fields
}

Describes the Connect peer details.

type TransitGatewayConnectPeerState added in v0.31.0

type TransitGatewayConnectPeerState string
const (
	TransitGatewayConnectPeerStatePending   TransitGatewayConnectPeerState = "pending"
	TransitGatewayConnectPeerStateAvailable TransitGatewayConnectPeerState = "available"
	TransitGatewayConnectPeerStateDeleting  TransitGatewayConnectPeerState = "deleting"
	TransitGatewayConnectPeerStateDeleted   TransitGatewayConnectPeerState = "deleted"
)

Enum values for TransitGatewayConnectPeerState

func (TransitGatewayConnectPeerState) Values added in v0.31.0

Values returns all known values for TransitGatewayConnectPeerState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayConnectRequestBgpOptions added in v0.31.0

type TransitGatewayConnectRequestBgpOptions struct {

	// The peer Autonomous System Number (ASN).
	PeerAsn *int64
	// contains filtered or unexported fields
}

The BGP options for the Connect attachment.

type TransitGatewayMulitcastDomainAssociationState

type TransitGatewayMulitcastDomainAssociationState string
const (
	TransitGatewayMulitcastDomainAssociationStatePendingAcceptance TransitGatewayMulitcastDomainAssociationState = "pendingAcceptance"
	TransitGatewayMulitcastDomainAssociationStateAssociating       TransitGatewayMulitcastDomainAssociationState = "associating"
	TransitGatewayMulitcastDomainAssociationStateAssociated        TransitGatewayMulitcastDomainAssociationState = "associated"
	TransitGatewayMulitcastDomainAssociationStateDisassociating    TransitGatewayMulitcastDomainAssociationState = "disassociating"
	TransitGatewayMulitcastDomainAssociationStateDisassociated     TransitGatewayMulitcastDomainAssociationState = "disassociated"
	TransitGatewayMulitcastDomainAssociationStateRejected          TransitGatewayMulitcastDomainAssociationState = "rejected"
	TransitGatewayMulitcastDomainAssociationStateFailed            TransitGatewayMulitcastDomainAssociationState = "failed"
)

Enum values for TransitGatewayMulitcastDomainAssociationState

func (TransitGatewayMulitcastDomainAssociationState) Values added in v0.29.0

Values returns all known values for TransitGatewayMulitcastDomainAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayMulticastDeregisteredGroupMembers

type TransitGatewayMulticastDeregisteredGroupMembers struct {

	// The network interface IDs of the deregistered members.
	DeregisteredNetworkInterfaceIds []string

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the deregistered transit gateway multicast group members.

type TransitGatewayMulticastDeregisteredGroupSources

type TransitGatewayMulticastDeregisteredGroupSources struct {

	// The network interface IDs of the non-registered members.
	DeregisteredNetworkInterfaceIds []string

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the deregistered transit gateway multicast group sources.

type TransitGatewayMulticastDomain

type TransitGatewayMulticastDomain struct {

	// The time the transit gateway multicast domain was created.
	CreationTime *time.Time

	// The options for the transit gateway multicast domain.
	Options *TransitGatewayMulticastDomainOptions

	// The ID of the Amazon Web Services account that owns the transit gateway
	// multicast domain.
	OwnerId *string

	// The state of the transit gateway multicast domain.
	State TransitGatewayMulticastDomainState

	// The tags for the transit gateway multicast domain.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The Amazon Resource Name (ARN) of the transit gateway multicast domain.
	TransitGatewayMulticastDomainArn *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the transit gateway multicast domain.

type TransitGatewayMulticastDomainAssociation

type TransitGatewayMulticastDomainAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The ID of the Amazon Web Services account that owns the transit gateway
	// multicast domain association resource.
	ResourceOwnerId *string

	// The type of resource, for example a VPC attachment.
	ResourceType TransitGatewayAttachmentResourceType

	// The subnet associated with the transit gateway multicast domain.
	Subnet *SubnetAssociation

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes the resources associated with the transit gateway multicast domain.

type TransitGatewayMulticastDomainAssociations

type TransitGatewayMulticastDomainAssociations struct {

	// The ID of the resource.
	ResourceId *string

	// The ID of the Amazon Web Services account that owns the resource.
	ResourceOwnerId *string

	// The type of resource, for example a VPC attachment.
	ResourceType TransitGatewayAttachmentResourceType

	// The subnets associated with the multicast domain.
	Subnets []SubnetAssociation

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the multicast domain associations.

type TransitGatewayMulticastDomainOptions added in v0.31.0

type TransitGatewayMulticastDomainOptions struct {

	// Indicates whether to automatically cross-account subnet associations that are
	// associated with the transit gateway multicast domain.
	AutoAcceptSharedAssociations AutoAcceptSharedAssociationsValue

	// Indicates whether Internet Group Management Protocol (IGMP) version 2 is turned
	// on for the transit gateway multicast domain.
	Igmpv2Support Igmpv2SupportValue

	// Indicates whether support for statically configuring transit gateway multicast
	// group sources is turned on.
	StaticSourcesSupport StaticSourcesSupportValue
	// contains filtered or unexported fields
}

Describes the options for a transit gateway multicast domain.

type TransitGatewayMulticastDomainState

type TransitGatewayMulticastDomainState string
const (
	TransitGatewayMulticastDomainStatePending   TransitGatewayMulticastDomainState = "pending"
	TransitGatewayMulticastDomainStateAvailable TransitGatewayMulticastDomainState = "available"
	TransitGatewayMulticastDomainStateDeleting  TransitGatewayMulticastDomainState = "deleting"
	TransitGatewayMulticastDomainStateDeleted   TransitGatewayMulticastDomainState = "deleted"
)

Enum values for TransitGatewayMulticastDomainState

func (TransitGatewayMulticastDomainState) Values added in v0.29.0

Values returns all known values for TransitGatewayMulticastDomainState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayMulticastGroup

type TransitGatewayMulticastGroup struct {

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// Indicates that the resource is a transit gateway multicast group member.
	GroupMember *bool

	// Indicates that the resource is a transit gateway multicast group member.
	GroupSource *bool

	// The member type (for example, static).
	MemberType MembershipType

	// The ID of the transit gateway attachment.
	NetworkInterfaceId *string

	// The ID of the resource.
	ResourceId *string

	// The ID of the Amazon Web Services account that owns the transit gateway
	// multicast domain group resource.
	ResourceOwnerId *string

	// The type of resource, for example a VPC attachment.
	ResourceType TransitGatewayAttachmentResourceType

	// The source type.
	SourceType MembershipType

	// The ID of the subnet.
	SubnetId *string

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes the transit gateway multicast group resources.

type TransitGatewayMulticastRegisteredGroupMembers

type TransitGatewayMulticastRegisteredGroupMembers struct {

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The ID of the registered network interfaces.
	RegisteredNetworkInterfaceIds []string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the registered transit gateway multicast group members.

type TransitGatewayMulticastRegisteredGroupSources

type TransitGatewayMulticastRegisteredGroupSources struct {

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The IDs of the network interfaces members registered with the transit gateway
	// multicast group.
	RegisteredNetworkInterfaceIds []string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the members registered with the transit gateway multicast group.

type TransitGatewayOptions

type TransitGatewayOptions struct {

	// A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	// The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for
	// 32-bit ASNs.
	AmazonSideAsn *int64

	// The ID of the default association route table.
	AssociationDefaultRouteTableId *string

	// Indicates whether attachment requests are automatically accepted.
	AutoAcceptSharedAttachments AutoAcceptSharedAttachmentsValue

	// Indicates whether resource attachments are automatically associated with the
	// default association route table.
	DefaultRouteTableAssociation DefaultRouteTableAssociationValue

	// Indicates whether resource attachments automatically propagate routes to the
	// default propagation route table.
	DefaultRouteTablePropagation DefaultRouteTablePropagationValue

	// Indicates whether DNS support is enabled.
	DnsSupport DnsSupportValue

	// Indicates whether multicast is enabled on the transit gateway
	MulticastSupport MulticastSupportValue

	// The ID of the default propagation route table.
	PropagationDefaultRouteTableId *string

	// The transit gateway CIDR blocks.
	TransitGatewayCidrBlocks []string

	// Indicates whether Equal Cost Multipath Protocol support is enabled.
	VpnEcmpSupport VpnEcmpSupportValue
	// contains filtered or unexported fields
}

Describes the options for a transit gateway.

type TransitGatewayPeeringAttachment

type TransitGatewayPeeringAttachment struct {

	// Information about the accepter transit gateway.
	AccepterTgwInfo *PeeringTgwInfo

	// The ID of the accepter transit gateway attachment.
	AccepterTransitGatewayAttachmentId *string

	// The time the transit gateway peering attachment was created.
	CreationTime *time.Time

	// Details about the transit gateway peering attachment.
	Options *TransitGatewayPeeringAttachmentOptions

	// Information about the requester transit gateway.
	RequesterTgwInfo *PeeringTgwInfo

	// The state of the transit gateway peering attachment. Note that the initiating
	// state has been deprecated.
	State TransitGatewayAttachmentState

	// The status of the transit gateway peering attachment.
	Status *PeeringAttachmentStatus

	// The tags for the transit gateway peering attachment.
	Tags []Tag

	// The ID of the transit gateway peering attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes the transit gateway peering attachment.

type TransitGatewayPeeringAttachmentOptions added in v1.48.0

type TransitGatewayPeeringAttachmentOptions struct {

	// Describes whether dynamic routing is enabled or disabled for the transit gateway
	// peering attachment.
	DynamicRouting DynamicRoutingValue
	// contains filtered or unexported fields
}

Describes dynamic routing for the transit gateway peering attachment.

type TransitGatewayPolicyRule added in v1.48.0

type TransitGatewayPolicyRule struct {

	// The destination CIDR block for the transit gateway policy rule.
	DestinationCidrBlock *string

	// The port range for the transit gateway policy rule. Currently this is set to *
	// (all).
	DestinationPortRange *string

	// The meta data tags used for the transit gateway policy rule.
	MetaData *TransitGatewayPolicyRuleMetaData

	// The protocol used by the transit gateway policy rule.
	Protocol *string

	// The source CIDR block for the transit gateway policy rule.
	SourceCidrBlock *string

	// The port range for the transit gateway policy rule. Currently this is set to *
	// (all).
	SourcePortRange *string
	// contains filtered or unexported fields
}

Describes a rule associated with a transit gateway policy.

type TransitGatewayPolicyRuleMetaData added in v1.48.0

type TransitGatewayPolicyRuleMetaData struct {

	// The key name for the transit gateway policy rule meta data tag.
	MetaDataKey *string

	// The value of the key for the transit gateway policy rule meta data tag.
	MetaDataValue *string
	// contains filtered or unexported fields
}

Describes the meta data tags associated with a transit gateway policy rule.

type TransitGatewayPolicyTable added in v1.48.0

type TransitGatewayPolicyTable struct {

	// The timestamp when the transit gateway policy table was created.
	CreationTime *time.Time

	// The state of the transit gateway policy table
	State TransitGatewayPolicyTableState

	// he key-value pairs associated with the transit gateway policy table.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the transit gateway policy table.
	TransitGatewayPolicyTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway policy table.

type TransitGatewayPolicyTableAssociation added in v1.48.0

type TransitGatewayPolicyTableAssociation struct {

	// The resource ID of the transit gateway attachment.
	ResourceId *string

	// The resource type for the transit gateway policy table association.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the transit gateway policy table association.
	State TransitGatewayAssociationState

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway policy table.
	TransitGatewayPolicyTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway policy table association.

type TransitGatewayPolicyTableEntry added in v1.48.0

type TransitGatewayPolicyTableEntry struct {

	// The policy rule associated with the transit gateway policy table.
	PolicyRule *TransitGatewayPolicyRule

	// The rule number for the transit gateway policy table entry.
	PolicyRuleNumber *string

	// The ID of the target route table.
	TargetRouteTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway policy table entry

type TransitGatewayPolicyTableState added in v1.48.0

type TransitGatewayPolicyTableState string
const (
	TransitGatewayPolicyTableStatePending   TransitGatewayPolicyTableState = "pending"
	TransitGatewayPolicyTableStateAvailable TransitGatewayPolicyTableState = "available"
	TransitGatewayPolicyTableStateDeleting  TransitGatewayPolicyTableState = "deleting"
	TransitGatewayPolicyTableStateDeleted   TransitGatewayPolicyTableState = "deleted"
)

Enum values for TransitGatewayPolicyTableState

func (TransitGatewayPolicyTableState) Values added in v1.48.0

Values returns all known values for TransitGatewayPolicyTableState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayPrefixListAttachment added in v0.29.0

type TransitGatewayPrefixListAttachment struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The ID of the attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes a transit gateway prefix list attachment.

type TransitGatewayPrefixListReference added in v0.29.0

type TransitGatewayPrefixListReference struct {

	// Indicates whether traffic that matches this route is dropped.
	Blackhole *bool

	// The ID of the prefix list.
	PrefixListId *string

	// The ID of the prefix list owner.
	PrefixListOwnerId *string

	// The state of the prefix list reference.
	State TransitGatewayPrefixListReferenceState

	// Information about the transit gateway attachment.
	TransitGatewayAttachment *TransitGatewayPrefixListAttachment

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a prefix list reference.

type TransitGatewayPrefixListReferenceState added in v0.29.0

type TransitGatewayPrefixListReferenceState string
const (
	TransitGatewayPrefixListReferenceStatePending   TransitGatewayPrefixListReferenceState = "pending"
	TransitGatewayPrefixListReferenceStateAvailable TransitGatewayPrefixListReferenceState = "available"
	TransitGatewayPrefixListReferenceStateModifying TransitGatewayPrefixListReferenceState = "modifying"
	TransitGatewayPrefixListReferenceStateDeleting  TransitGatewayPrefixListReferenceState = "deleting"
)

Enum values for TransitGatewayPrefixListReferenceState

func (TransitGatewayPrefixListReferenceState) Values added in v0.29.0

Values returns all known values for TransitGatewayPrefixListReferenceState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayPropagation

type TransitGatewayPropagation struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state.
	State TransitGatewayPropagationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes route propagation.

type TransitGatewayPropagationState

type TransitGatewayPropagationState string
const (
	TransitGatewayPropagationStateEnabling  TransitGatewayPropagationState = "enabling"
	TransitGatewayPropagationStateEnabled   TransitGatewayPropagationState = "enabled"
	TransitGatewayPropagationStateDisabling TransitGatewayPropagationState = "disabling"
	TransitGatewayPropagationStateDisabled  TransitGatewayPropagationState = "disabled"
)

Enum values for TransitGatewayPropagationState

func (TransitGatewayPropagationState) Values added in v0.29.0

Values returns all known values for TransitGatewayPropagationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRequestOptions

type TransitGatewayRequestOptions struct {

	// A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	// The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for
	// 32-bit ASNs. The default is 64512.
	AmazonSideAsn *int64

	// Enable or disable automatic acceptance of attachment requests. Disabled by
	// default.
	AutoAcceptSharedAttachments AutoAcceptSharedAttachmentsValue

	// Enable or disable automatic association with the default association route
	// table. Enabled by default.
	DefaultRouteTableAssociation DefaultRouteTableAssociationValue

	// Enable or disable automatic propagation of routes to the default propagation
	// route table. Enabled by default.
	DefaultRouteTablePropagation DefaultRouteTablePropagationValue

	// Enable or disable DNS support. Enabled by default.
	DnsSupport DnsSupportValue

	// Indicates whether multicast is enabled on the transit gateway
	MulticastSupport MulticastSupportValue

	// One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24
	// CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.
	TransitGatewayCidrBlocks []string

	// Enable or disable Equal Cost Multipath Protocol support. Enabled by default.
	VpnEcmpSupport VpnEcmpSupportValue
	// contains filtered or unexported fields
}

Describes the options for a transit gateway.

type TransitGatewayRoute

type TransitGatewayRoute struct {

	// The CIDR block used for destination matches.
	DestinationCidrBlock *string

	// The ID of the prefix list used for destination matches.
	PrefixListId *string

	// The state of the route.
	State TransitGatewayRouteState

	// The attachments.
	TransitGatewayAttachments []TransitGatewayRouteAttachment

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string

	// The route type.
	Type TransitGatewayRouteType
	// contains filtered or unexported fields
}

Describes a route for a transit gateway route table.

type TransitGatewayRouteAttachment

type TransitGatewayRouteAttachment struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The ID of the attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes a route attachment.

type TransitGatewayRouteState

type TransitGatewayRouteState string
const (
	TransitGatewayRouteStatePending   TransitGatewayRouteState = "pending"
	TransitGatewayRouteStateActive    TransitGatewayRouteState = "active"
	TransitGatewayRouteStateBlackhole TransitGatewayRouteState = "blackhole"
	TransitGatewayRouteStateDeleting  TransitGatewayRouteState = "deleting"
	TransitGatewayRouteStateDeleted   TransitGatewayRouteState = "deleted"
)

Enum values for TransitGatewayRouteState

func (TransitGatewayRouteState) Values added in v0.29.0

Values returns all known values for TransitGatewayRouteState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteTable

type TransitGatewayRouteTable struct {

	// The creation time.
	CreationTime *time.Time

	// Indicates whether this is the default association route table for the transit
	// gateway.
	DefaultAssociationRouteTable *bool

	// Indicates whether this is the default propagation route table for the transit
	// gateway.
	DefaultPropagationRouteTable *bool

	// The state of the transit gateway route table.
	State TransitGatewayRouteTableState

	// Any tags assigned to the route table.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway route table.

type TransitGatewayRouteTableAnnouncement added in v1.48.0

type TransitGatewayRouteTableAnnouncement struct {

	// The direction for the route table announcement.
	AnnouncementDirection TransitGatewayRouteTableAnnouncementDirection

	// The ID of the core network for the transit gateway route table announcement.
	CoreNetworkId *string

	// The timestamp when the transit gateway route table announcement was created.
	CreationTime *time.Time

	// The ID of the core network ID for the peer.
	PeerCoreNetworkId *string

	// The ID of the peer transit gateway.
	PeerTransitGatewayId *string

	// The ID of the peering attachment.
	PeeringAttachmentId *string

	// The state of the transit gateway announcement.
	State TransitGatewayRouteTableAnnouncementState

	// The key-value pairs associated with the route table announcement.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway route table announcement.

type TransitGatewayRouteTableAnnouncementDirection added in v1.48.0

type TransitGatewayRouteTableAnnouncementDirection string
const (
	TransitGatewayRouteTableAnnouncementDirectionOutgoing TransitGatewayRouteTableAnnouncementDirection = "outgoing"
	TransitGatewayRouteTableAnnouncementDirectionIncoming TransitGatewayRouteTableAnnouncementDirection = "incoming"
)

Enum values for TransitGatewayRouteTableAnnouncementDirection

func (TransitGatewayRouteTableAnnouncementDirection) Values added in v1.48.0

Values returns all known values for TransitGatewayRouteTableAnnouncementDirection. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteTableAnnouncementState added in v1.48.0

type TransitGatewayRouteTableAnnouncementState string
const (
	TransitGatewayRouteTableAnnouncementStateAvailable TransitGatewayRouteTableAnnouncementState = "available"
	TransitGatewayRouteTableAnnouncementStatePending   TransitGatewayRouteTableAnnouncementState = "pending"
	TransitGatewayRouteTableAnnouncementStateFailing   TransitGatewayRouteTableAnnouncementState = "failing"
	TransitGatewayRouteTableAnnouncementStateFailed    TransitGatewayRouteTableAnnouncementState = "failed"
	TransitGatewayRouteTableAnnouncementStateDeleting  TransitGatewayRouteTableAnnouncementState = "deleting"
	TransitGatewayRouteTableAnnouncementStateDeleted   TransitGatewayRouteTableAnnouncementState = "deleted"
)

Enum values for TransitGatewayRouteTableAnnouncementState

func (TransitGatewayRouteTableAnnouncementState) Values added in v1.48.0

Values returns all known values for TransitGatewayRouteTableAnnouncementState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteTableAssociation

type TransitGatewayRouteTableAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the association.
	State TransitGatewayAssociationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes an association between a route table and a resource attachment.

type TransitGatewayRouteTablePropagation

type TransitGatewayRouteTablePropagation struct {

	// The ID of the resource.
	ResourceId *string

	// The type of resource. Note that the tgw-peering resource type has been
	// deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the resource.
	State TransitGatewayPropagationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string
	// contains filtered or unexported fields
}

Describes a route table propagation.

type TransitGatewayRouteTableRoute added in v1.33.0

type TransitGatewayRouteTableRoute struct {

	// The ID of the route attachment.
	AttachmentId *string

	// The CIDR block used for destination matches.
	DestinationCidr *string

	// The ID of the prefix list.
	PrefixListId *string

	// The ID of the resource for the route attachment.
	ResourceId *string

	// The resource type for the route attachment.
	ResourceType *string

	// The route origin. The following are the possible values:
	//
	// * static
	//
	// * propagated
	RouteOrigin *string

	// The state of the route.
	State *string
	// contains filtered or unexported fields
}

Describes a route in a transit gateway route table.

type TransitGatewayRouteTableState

type TransitGatewayRouteTableState string
const (
	TransitGatewayRouteTableStatePending   TransitGatewayRouteTableState = "pending"
	TransitGatewayRouteTableStateAvailable TransitGatewayRouteTableState = "available"
	TransitGatewayRouteTableStateDeleting  TransitGatewayRouteTableState = "deleting"
	TransitGatewayRouteTableStateDeleted   TransitGatewayRouteTableState = "deleted"
)

Enum values for TransitGatewayRouteTableState

func (TransitGatewayRouteTableState) Values added in v0.29.0

Values returns all known values for TransitGatewayRouteTableState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteType

type TransitGatewayRouteType string
const (
	TransitGatewayRouteTypeStatic     TransitGatewayRouteType = "static"
	TransitGatewayRouteTypePropagated TransitGatewayRouteType = "propagated"
)

Enum values for TransitGatewayRouteType

func (TransitGatewayRouteType) Values added in v0.29.0

Values returns all known values for TransitGatewayRouteType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayState

type TransitGatewayState string
const (
	TransitGatewayStatePending   TransitGatewayState = "pending"
	TransitGatewayStateAvailable TransitGatewayState = "available"
	TransitGatewayStateModifying TransitGatewayState = "modifying"
	TransitGatewayStateDeleting  TransitGatewayState = "deleting"
	TransitGatewayStateDeleted   TransitGatewayState = "deleted"
)

Enum values for TransitGatewayState

func (TransitGatewayState) Values added in v0.29.0

Values returns all known values for TransitGatewayState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayVpcAttachment

type TransitGatewayVpcAttachment struct {

	// The creation time.
	CreationTime *time.Time

	// The VPC attachment options.
	Options *TransitGatewayVpcAttachmentOptions

	// The state of the VPC attachment. Note that the initiating state has been
	// deprecated.
	State TransitGatewayAttachmentState

	// The IDs of the subnets.
	SubnetIds []string

	// The tags for the VPC attachment.
	Tags []Tag

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the VPC.
	VpcId *string

	// The ID of the Amazon Web Services account that owns the VPC.
	VpcOwnerId *string
	// contains filtered or unexported fields
}

Describes a VPC attachment.

type TransitGatewayVpcAttachmentOptions

type TransitGatewayVpcAttachmentOptions struct {

	// Indicates whether appliance mode support is enabled.
	ApplianceModeSupport ApplianceModeSupportValue

	// Indicates whether DNS support is enabled.
	DnsSupport DnsSupportValue

	// Indicates whether IPv6 support is disabled.
	Ipv6Support Ipv6SupportValue
	// contains filtered or unexported fields
}

Describes the VPC attachment options.

type TransportProtocol

type TransportProtocol string
const (
	TransportProtocolTcp TransportProtocol = "tcp"
	TransportProtocolUdp TransportProtocol = "udp"
)

Enum values for TransportProtocol

func (TransportProtocol) Values added in v0.29.0

Values returns all known values for TransportProtocol. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TrunkInterfaceAssociation added in v1.10.0

type TrunkInterfaceAssociation struct {

	// The ID of the association.
	AssociationId *string

	// The ID of the branch network interface.
	BranchInterfaceId *string

	// The application key when you use the GRE protocol.
	GreKey *int32

	// The interface protocol. Valid values are VLAN and GRE.
	InterfaceProtocol InterfaceProtocolType

	// The tags for the trunk interface association.
	Tags []Tag

	// The ID of the trunk network interface.
	TrunkInterfaceId *string

	// The ID of the VLAN when you use the VLAN protocol.
	VlanId *int32
	// contains filtered or unexported fields
}

Currently available in limited preview only. If you are interested in using this feature, contact your account manager. Information about an association between a branch network interface with a trunk network interface.

type TunnelInsideIpVersion added in v0.29.0

type TunnelInsideIpVersion string
const (
	TunnelInsideIpVersionIpv4 TunnelInsideIpVersion = "ipv4"
	TunnelInsideIpVersionIpv6 TunnelInsideIpVersion = "ipv6"
)

Enum values for TunnelInsideIpVersion

func (TunnelInsideIpVersion) Values added in v0.29.0

Values returns all known values for TunnelInsideIpVersion. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type TunnelOption

type TunnelOption struct {

	// The action to take after a DPD timeout occurs.
	DpdTimeoutAction *string

	// The number of seconds after which a DPD timeout occurs.
	DpdTimeoutSeconds *int32

	// The IKE versions that are permitted for the VPN tunnel.
	IkeVersions []IKEVersionsListValue

	// Options for logging VPN tunnel activity.
	LogOptions *VpnTunnelLogOptions

	// The external IP address of the VPN tunnel.
	OutsideIpAddress *string

	// The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE
	// negotiations.
	Phase1DHGroupNumbers []Phase1DHGroupNumbersListValue

	// The permitted encryption algorithms for the VPN tunnel for phase 1 IKE
	// negotiations.
	Phase1EncryptionAlgorithms []Phase1EncryptionAlgorithmsListValue

	// The permitted integrity algorithms for the VPN tunnel for phase 1 IKE
	// negotiations.
	Phase1IntegrityAlgorithms []Phase1IntegrityAlgorithmsListValue

	// The lifetime for phase 1 of the IKE negotiation, in seconds.
	Phase1LifetimeSeconds *int32

	// The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE
	// negotiations.
	Phase2DHGroupNumbers []Phase2DHGroupNumbersListValue

	// The permitted encryption algorithms for the VPN tunnel for phase 2 IKE
	// negotiations.
	Phase2EncryptionAlgorithms []Phase2EncryptionAlgorithmsListValue

	// The permitted integrity algorithms for the VPN tunnel for phase 2 IKE
	// negotiations.
	Phase2IntegrityAlgorithms []Phase2IntegrityAlgorithmsListValue

	// The lifetime for phase 2 of the IKE negotiation, in seconds.
	Phase2LifetimeSeconds *int32

	// The pre-shared key (PSK) to establish initial authentication between the virtual
	// private gateway and the customer gateway.
	PreSharedKey *string

	// The percentage of the rekey window determined by RekeyMarginTimeSeconds during
	// which the rekey time is randomly selected.
	RekeyFuzzPercentage *int32

	// The margin time, in seconds, before the phase 2 lifetime expires, during which
	// the Amazon Web Services side of the VPN connection performs an IKE rekey.
	RekeyMarginTimeSeconds *int32

	// The number of packets in an IKE replay window.
	ReplayWindowSize *int32

	// The action to take when the establishing the VPN tunnels for a VPN connection.
	StartupAction *string

	// The range of inside IPv4 addresses for the tunnel.
	TunnelInsideCidr *string

	// The range of inside IPv6 addresses for the tunnel.
	TunnelInsideIpv6Cidr *string
	// contains filtered or unexported fields
}

The VPN tunnel options.

type UnlimitedSupportedInstanceFamily

type UnlimitedSupportedInstanceFamily string
const (
	UnlimitedSupportedInstanceFamilyT2  UnlimitedSupportedInstanceFamily = "t2"
	UnlimitedSupportedInstanceFamilyT3  UnlimitedSupportedInstanceFamily = "t3"
	UnlimitedSupportedInstanceFamilyT3a UnlimitedSupportedInstanceFamily = "t3a"
	UnlimitedSupportedInstanceFamilyT4g UnlimitedSupportedInstanceFamily = "t4g"
)

Enum values for UnlimitedSupportedInstanceFamily

func (UnlimitedSupportedInstanceFamily) Values added in v0.29.0

Values returns all known values for UnlimitedSupportedInstanceFamily. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type UnsuccessfulInstanceCreditSpecificationErrorCode

type UnsuccessfulInstanceCreditSpecificationErrorCode string
const (
	UnsuccessfulInstanceCreditSpecificationErrorCodeInvalidInstanceId                       UnsuccessfulInstanceCreditSpecificationErrorCode = "InvalidInstanceID.Malformed"
	UnsuccessfulInstanceCreditSpecificationErrorCodeInstanceNotFound                        UnsuccessfulInstanceCreditSpecificationErrorCode = "InvalidInstanceID.NotFound"
	UnsuccessfulInstanceCreditSpecificationErrorCodeIncorrectInstanceState                  UnsuccessfulInstanceCreditSpecificationErrorCode = "IncorrectInstanceState"
	UnsuccessfulInstanceCreditSpecificationErrorCodeInstanceCreditSpecificationNotSupported UnsuccessfulInstanceCreditSpecificationErrorCode = "InstanceCreditSpecification.NotSupported"
)

Enum values for UnsuccessfulInstanceCreditSpecificationErrorCode

func (UnsuccessfulInstanceCreditSpecificationErrorCode) Values added in v0.29.0

Values returns all known values for UnsuccessfulInstanceCreditSpecificationErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type UnsuccessfulInstanceCreditSpecificationItem

type UnsuccessfulInstanceCreditSpecificationItem struct {

	// The applicable error for the burstable performance instance whose credit option
	// for CPU usage was not modified.
	Error *UnsuccessfulInstanceCreditSpecificationItemError

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the burstable performance instance whose credit option for CPU usage was not modified.

type UnsuccessfulInstanceCreditSpecificationItemError

type UnsuccessfulInstanceCreditSpecificationItemError struct {

	// The error code.
	Code UnsuccessfulInstanceCreditSpecificationErrorCode

	// The applicable error message.
	Message *string
	// contains filtered or unexported fields
}

Information about the error for the burstable performance instance whose credit option for CPU usage was not modified.

type UnsuccessfulItem

type UnsuccessfulItem struct {

	// Information about the error.
	Error *UnsuccessfulItemError

	// The ID of the resource.
	ResourceId *string
	// contains filtered or unexported fields
}

Information about items that were not successfully processed in a batch call.

type UnsuccessfulItemError

type UnsuccessfulItemError struct {

	// The error code.
	Code *string

	// The error message accompanying the error code.
	Message *string
	// contains filtered or unexported fields
}

Information about the error that occurred. For more information about errors, see Error codes (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).

type UsageClassType

type UsageClassType string
const (
	UsageClassTypeSpot     UsageClassType = "spot"
	UsageClassTypeOnDemand UsageClassType = "on-demand"
)

Enum values for UsageClassType

func (UsageClassType) Values added in v0.29.0

func (UsageClassType) Values() []UsageClassType

Values returns all known values for UsageClassType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type UserBucket

type UserBucket struct {

	// The name of the Amazon S3 bucket where the disk image is located.
	S3Bucket *string

	// The file name of the disk image.
	S3Key *string
	// contains filtered or unexported fields
}

Describes the Amazon S3 bucket for the disk image.

type UserBucketDetails

type UserBucketDetails struct {

	// The Amazon S3 bucket from which the disk image was created.
	S3Bucket *string

	// The file name of the disk image.
	S3Key *string
	// contains filtered or unexported fields
}

Describes the Amazon S3 bucket for the disk image.

type UserData

type UserData struct {

	// The user data. If you are using an Amazon Web Services SDK or command line tool,
	// Base64-encoding is performed for you, and you can load the text from a file.
	// Otherwise, you must provide Base64-encoded text.
	Data *string
	// contains filtered or unexported fields
}

Describes the user data for an instance.

type UserIdGroupPair

type UserIdGroupPair struct {

	// A description for the security group rule that references this user ID group
	// pair. Constraints: Up to 255 characters in length. Allowed characters are a-z,
	// A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
	Description *string

	// The ID of the security group.
	GroupId *string

	// The name of the security group. In a request, use this parameter for a security
	// group in EC2-Classic or a default VPC only. For a security group in a nondefault
	// VPC, use the security group ID. For a referenced security group in another VPC,
	// this value is not returned if the referenced security group is deleted.
	GroupName *string

	// The status of a VPC peering connection, if applicable.
	PeeringStatus *string

	// The ID of an Amazon Web Services account. For a referenced security group in
	// another VPC, the account ID of the referenced security group is returned in the
	// response. If the referenced security group is deleted, this value is not
	// returned. [EC2-Classic] Required when adding or removing rules that reference a
	// security group in another Amazon Web Services account.
	UserId *string

	// The ID of the VPC for the referenced security group, if applicable.
	VpcId *string

	// The ID of the VPC peering connection, if applicable.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a security group and Amazon Web Services account ID pair. We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide.

type VCpuCountRange added in v1.21.0

type VCpuCountRange struct {

	// The maximum number of vCPUs. If this parameter is not specified, there is no
	// maximum limit.
	Max *int32

	// The minimum number of vCPUs. If the value is 0, there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of vCPUs.

type VCpuCountRangeRequest added in v1.21.0

type VCpuCountRangeRequest struct {

	// The minimum number of vCPUs. To specify no minimum limit, specify 0.
	//
	// This member is required.
	Min *int32

	// The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
	Max *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of vCPUs.

type VCpuInfo

type VCpuInfo struct {

	// The default number of cores for the instance type.
	DefaultCores *int32

	// The default number of threads per core for the instance type.
	DefaultThreadsPerCore *int32

	// The default number of vCPUs for the instance type.
	DefaultVCpus *int32

	// The valid number of cores that can be configured for the instance type.
	ValidCores []int32

	// The valid number of threads per core that can be configured for the instance
	// type.
	ValidThreadsPerCore []int32
	// contains filtered or unexported fields
}

Describes the vCPU configurations for the instance type.

type ValidationError

type ValidationError struct {

	// The error code that indicates why the parameter or parameter combination is not
	// valid. For more information about error codes, see Error codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).
	Code *string

	// The error message that describes why the parameter or parameter combination is
	// not valid. For more information about error messages, see Error codes
	// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html).
	Message *string
	// contains filtered or unexported fields
}

The error code and error message that is returned for a parameter or parameter combination that is not valid when a new launch template or new version of a launch template is created.

type ValidationWarning

type ValidationWarning struct {

	// The error codes and error messages.
	Errors []ValidationError
	// contains filtered or unexported fields
}

The error codes and error messages that are returned for the parameters or parameter combinations that are not valid when a new launch template or new version of a launch template is created.

type VgwTelemetry

type VgwTelemetry struct {

	// The number of accepted routes.
	AcceptedRouteCount *int32

	// The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate.
	CertificateArn *string

	// The date and time of the last change in status.
	LastStatusChange *time.Time

	// The Internet-routable IP address of the virtual private gateway's outside
	// interface.
	OutsideIpAddress *string

	// The status of the VPN tunnel.
	Status TelemetryStatus

	// If an error occurs, a description of the error.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes telemetry for a VPN tunnel.

type VirtualizationType

type VirtualizationType string
const (
	VirtualizationTypeHvm         VirtualizationType = "hvm"
	VirtualizationTypeParavirtual VirtualizationType = "paravirtual"
)

Enum values for VirtualizationType

func (VirtualizationType) Values added in v0.29.0

Values returns all known values for VirtualizationType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Volume

type Volume struct {

	// Information about the volume attachments.
	Attachments []VolumeAttachment

	// The Availability Zone for the volume.
	AvailabilityZone *string

	// The time stamp when volume creation was initiated.
	CreateTime *time.Time

	// Indicates whether the volume is encrypted.
	Encrypted *bool

	// Indicates whether the volume was created using fast snapshot restore.
	FastRestored *bool

	// The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,
	// this represents the number of IOPS that are provisioned for the volume. For gp2
	// volumes, this represents the baseline performance of the volume and the rate at
	// which the volume accumulates I/O credits for bursting.
	Iops *int32

	// The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that
	// was used to protect the volume encryption key for the volume.
	KmsKeyId *string

	// Indicates whether Amazon EBS Multi-Attach is enabled.
	MultiAttachEnabled *bool

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The size of the volume, in GiBs.
	Size *int32

	// The snapshot from which the volume was created, if applicable.
	SnapshotId *string

	// The volume state.
	State VolumeState

	// Any tags assigned to the volume.
	Tags []Tag

	// The throughput that the volume supports, in MiB/s.
	Throughput *int32

	// The ID of the volume.
	VolumeId *string

	// The volume type.
	VolumeType VolumeType
	// contains filtered or unexported fields
}

Describes a volume.

type VolumeAttachment

type VolumeAttachment struct {

	// The time stamp when the attachment initiated.
	AttachTime *time.Time

	// Indicates whether the EBS volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The device name.
	Device *string

	// The ID of the instance.
	InstanceId *string

	// The attachment state of the volume.
	State VolumeAttachmentState

	// The ID of the volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes volume attachment details.

type VolumeAttachmentState

type VolumeAttachmentState string
const (
	VolumeAttachmentStateAttaching VolumeAttachmentState = "attaching"
	VolumeAttachmentStateAttached  VolumeAttachmentState = "attached"
	VolumeAttachmentStateDetaching VolumeAttachmentState = "detaching"
	VolumeAttachmentStateDetached  VolumeAttachmentState = "detached"
	VolumeAttachmentStateBusy      VolumeAttachmentState = "busy"
)

Enum values for VolumeAttachmentState

func (VolumeAttachmentState) Values added in v0.29.0

Values returns all known values for VolumeAttachmentState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VolumeAttributeName

type VolumeAttributeName string
const (
	VolumeAttributeNameAutoEnableIO VolumeAttributeName = "autoEnableIO"
	VolumeAttributeNameProductCodes VolumeAttributeName = "productCodes"
)

Enum values for VolumeAttributeName

func (VolumeAttributeName) Values added in v0.29.0

Values returns all known values for VolumeAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VolumeDetail

type VolumeDetail struct {

	// The size of the volume, in GiB.
	//
	// This member is required.
	Size *int64
	// contains filtered or unexported fields
}

Describes an EBS volume.

type VolumeModification

type VolumeModification struct {

	// The modification completion or failure time.
	EndTime *time.Time

	// The current modification state. The modification state is null for unmodified
	// volumes.
	ModificationState VolumeModificationState

	// The original IOPS rate of the volume.
	OriginalIops *int32

	// The original setting for Amazon EBS Multi-Attach.
	OriginalMultiAttachEnabled *bool

	// The original size of the volume, in GiB.
	OriginalSize *int32

	// The original throughput of the volume, in MiB/s.
	OriginalThroughput *int32

	// The original EBS volume type of the volume.
	OriginalVolumeType VolumeType

	// The modification progress, from 0 to 100 percent complete.
	Progress *int64

	// The modification start time.
	StartTime *time.Time

	// A status message about the modification progress or failure.
	StatusMessage *string

	// The target IOPS rate of the volume.
	TargetIops *int32

	// The target setting for Amazon EBS Multi-Attach.
	TargetMultiAttachEnabled *bool

	// The target size of the volume, in GiB.
	TargetSize *int32

	// The target throughput of the volume, in MiB/s.
	TargetThroughput *int32

	// The target EBS volume type of the volume.
	TargetVolumeType VolumeType

	// The ID of the volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes the modification status of an EBS volume. If the volume has never been modified, some element values will be null.

type VolumeModificationState

type VolumeModificationState string
const (
	VolumeModificationStateModifying  VolumeModificationState = "modifying"
	VolumeModificationStateOptimizing VolumeModificationState = "optimizing"
	VolumeModificationStateCompleted  VolumeModificationState = "completed"
	VolumeModificationStateFailed     VolumeModificationState = "failed"
)

Enum values for VolumeModificationState

func (VolumeModificationState) Values added in v0.29.0

Values returns all known values for VolumeModificationState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VolumeState

type VolumeState string
const (
	VolumeStateCreating  VolumeState = "creating"
	VolumeStateAvailable VolumeState = "available"
	VolumeStateInUse     VolumeState = "in-use"
	VolumeStateDeleting  VolumeState = "deleting"
	VolumeStateDeleted   VolumeState = "deleted"
	VolumeStateError     VolumeState = "error"
)

Enum values for VolumeState

func (VolumeState) Values added in v0.29.0

func (VolumeState) Values() []VolumeState

Values returns all known values for VolumeState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VolumeStatusAction

type VolumeStatusAction struct {

	// The code identifying the operation, for example, enable-volume-io.
	Code *string

	// A description of the operation.
	Description *string

	// The ID of the event associated with this operation.
	EventId *string

	// The event type associated with this operation.
	EventType *string
	// contains filtered or unexported fields
}

Describes a volume status operation code.

type VolumeStatusAttachmentStatus

type VolumeStatusAttachmentStatus struct {

	// The ID of the attached instance.
	InstanceId *string

	// The maximum IOPS supported by the attached instance.
	IoPerformance *string
	// contains filtered or unexported fields
}

Information about the instances to which the volume is attached.

type VolumeStatusDetails

type VolumeStatusDetails struct {

	// The name of the volume status.
	Name VolumeStatusName

	// The intended status of the volume status.
	Status *string
	// contains filtered or unexported fields
}

Describes a volume status.

type VolumeStatusEvent

type VolumeStatusEvent struct {

	// A description of the event.
	Description *string

	// The ID of this event.
	EventId *string

	// The type of this event.
	EventType *string

	// The ID of the instance associated with the event.
	InstanceId *string

	// The latest end time of the event.
	NotAfter *time.Time

	// The earliest start time of the event.
	NotBefore *time.Time
	// contains filtered or unexported fields
}

Describes a volume status event.

type VolumeStatusInfo

type VolumeStatusInfo struct {

	// The details of the volume status.
	Details []VolumeStatusDetails

	// The status of the volume.
	Status VolumeStatusInfoStatus
	// contains filtered or unexported fields
}

Describes the status of a volume.

type VolumeStatusInfoStatus

type VolumeStatusInfoStatus string
const (
	VolumeStatusInfoStatusOk               VolumeStatusInfoStatus = "ok"
	VolumeStatusInfoStatusImpaired         VolumeStatusInfoStatus = "impaired"
	VolumeStatusInfoStatusInsufficientData VolumeStatusInfoStatus = "insufficient-data"
)

Enum values for VolumeStatusInfoStatus

func (VolumeStatusInfoStatus) Values added in v0.29.0

Values returns all known values for VolumeStatusInfoStatus. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VolumeStatusItem

type VolumeStatusItem struct {

	// The details of the operation.
	Actions []VolumeStatusAction

	// Information about the instances to which the volume is attached.
	AttachmentStatuses []VolumeStatusAttachmentStatus

	// The Availability Zone of the volume.
	AvailabilityZone *string

	// A list of events associated with the volume.
	Events []VolumeStatusEvent

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The volume ID.
	VolumeId *string

	// The volume status.
	VolumeStatus *VolumeStatusInfo
	// contains filtered or unexported fields
}

Describes the volume status.

type VolumeStatusName

type VolumeStatusName string
const (
	VolumeStatusNameIoEnabled     VolumeStatusName = "io-enabled"
	VolumeStatusNameIoPerformance VolumeStatusName = "io-performance"
)

Enum values for VolumeStatusName

func (VolumeStatusName) Values added in v0.29.0

Values returns all known values for VolumeStatusName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VolumeType

type VolumeType string
const (
	VolumeTypeStandard VolumeType = "standard"
	VolumeTypeIo1      VolumeType = "io1"
	VolumeTypeIo2      VolumeType = "io2"
	VolumeTypeGp2      VolumeType = "gp2"
	VolumeTypeSc1      VolumeType = "sc1"
	VolumeTypeSt1      VolumeType = "st1"
	VolumeTypeGp3      VolumeType = "gp3"
)

Enum values for VolumeType

func (VolumeType) Values added in v0.29.0

func (VolumeType) Values() []VolumeType

Values returns all known values for VolumeType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type Vpc

type Vpc struct {

	// The primary IPv4 CIDR block for the VPC.
	CidrBlock *string

	// Information about the IPv4 CIDR blocks associated with the VPC.
	CidrBlockAssociationSet []VpcCidrBlockAssociation

	// The ID of the set of DHCP options you've associated with the VPC.
	DhcpOptionsId *string

	// The allowed tenancy of instances launched into the VPC.
	InstanceTenancy Tenancy

	// Information about the IPv6 CIDR blocks associated with the VPC.
	Ipv6CidrBlockAssociationSet []VpcIpv6CidrBlockAssociation

	// Indicates whether the VPC is the default VPC.
	IsDefault *bool

	// The ID of the Amazon Web Services account that owns the VPC.
	OwnerId *string

	// The current state of the VPC.
	State VpcState

	// Any tags assigned to the VPC.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a VPC.

type VpcAttachment

type VpcAttachment struct {

	// The current state of the attachment.
	State AttachmentStatus

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes an attachment between a virtual private gateway and a VPC.

type VpcAttributeName

type VpcAttributeName string
const (
	VpcAttributeNameEnableDnsSupport                 VpcAttributeName = "enableDnsSupport"
	VpcAttributeNameEnableDnsHostnames               VpcAttributeName = "enableDnsHostnames"
	VpcAttributeNameEnableNetworkAddressUsageMetrics VpcAttributeName = "enableNetworkAddressUsageMetrics"
)

Enum values for VpcAttributeName

func (VpcAttributeName) Values added in v0.29.0

Values returns all known values for VpcAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpcCidrBlockAssociation

type VpcCidrBlockAssociation struct {

	// The association ID for the IPv4 CIDR block.
	AssociationId *string

	// The IPv4 CIDR block.
	CidrBlock *string

	// Information about the state of the CIDR block.
	CidrBlockState *VpcCidrBlockState
	// contains filtered or unexported fields
}

Describes an IPv4 CIDR block associated with a VPC.

type VpcCidrBlockState

type VpcCidrBlockState struct {

	// The state of the CIDR block.
	State VpcCidrBlockStateCode

	// A message about the status of the CIDR block, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of a CIDR block.

type VpcCidrBlockStateCode

type VpcCidrBlockStateCode string
const (
	VpcCidrBlockStateCodeAssociating    VpcCidrBlockStateCode = "associating"
	VpcCidrBlockStateCodeAssociated     VpcCidrBlockStateCode = "associated"
	VpcCidrBlockStateCodeDisassociating VpcCidrBlockStateCode = "disassociating"
	VpcCidrBlockStateCodeDisassociated  VpcCidrBlockStateCode = "disassociated"
	VpcCidrBlockStateCodeFailing        VpcCidrBlockStateCode = "failing"
	VpcCidrBlockStateCodeFailed         VpcCidrBlockStateCode = "failed"
)

Enum values for VpcCidrBlockStateCode

func (VpcCidrBlockStateCode) Values added in v0.29.0

Values returns all known values for VpcCidrBlockStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpcClassicLink struct {

	// Indicates whether the VPC is enabled for ClassicLink.
	ClassicLinkEnabled *bool

	// Any tags assigned to the VPC.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide. Describes whether a VPC is enabled for ClassicLink.

type VpcEndpoint

type VpcEndpoint struct {

	// The date and time that the endpoint was created.
	CreationTimestamp *time.Time

	// (Interface endpoint) The DNS entries for the endpoint.
	DnsEntries []DnsEntry

	// The DNS options for the endpoint.
	DnsOptions *DnsOptions

	// (Interface endpoint) Information about the security groups that are associated
	// with the network interface.
	Groups []SecurityGroupIdentifier

	// The IP address type for the endpoint.
	IpAddressType IpAddressType

	// The last error that occurred for endpoint.
	LastError *LastError

	// (Interface endpoint) One or more network interfaces for the endpoint.
	NetworkInterfaceIds []string

	// The ID of the Amazon Web Services account that owns the endpoint.
	OwnerId *string

	// The policy document associated with the endpoint, if applicable.
	PolicyDocument *string

	// (Interface endpoint) Indicates whether the VPC is associated with a private
	// hosted zone.
	PrivateDnsEnabled *bool

	// Indicates whether the endpoint is being managed by its service.
	RequesterManaged *bool

	// (Gateway endpoint) One or more route tables associated with the endpoint.
	RouteTableIds []string

	// The name of the service to which the endpoint is associated.
	ServiceName *string

	// The state of the endpoint.
	State State

	// (Interface endpoint) The subnets for the endpoint.
	SubnetIds []string

	// Any tags assigned to the endpoint.
	Tags []Tag

	// The ID of the endpoint.
	VpcEndpointId *string

	// The type of endpoint.
	VpcEndpointType VpcEndpointType

	// The ID of the VPC to which the endpoint is associated.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a VPC endpoint.

type VpcEndpointConnection

type VpcEndpointConnection struct {

	// The date and time that the VPC endpoint was created.
	CreationTimestamp *time.Time

	// The DNS entries for the VPC endpoint.
	DnsEntries []DnsEntry

	// The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
	GatewayLoadBalancerArns []string

	// The IP address type for the endpoint.
	IpAddressType IpAddressType

	// The Amazon Resource Names (ARNs) of the network load balancers for the service.
	NetworkLoadBalancerArns []string

	// The ID of the service to which the endpoint is connected.
	ServiceId *string

	// The tags.
	Tags []Tag

	// The ID of the VPC endpoint connection.
	VpcEndpointConnectionId *string

	// The ID of the VPC endpoint.
	VpcEndpointId *string

	// The ID of the Amazon Web Services account that owns the VPC endpoint.
	VpcEndpointOwner *string

	// The state of the VPC endpoint.
	VpcEndpointState State
	// contains filtered or unexported fields
}

Describes a VPC endpoint connection to a service.

type VpcEndpointType

type VpcEndpointType string
const (
	VpcEndpointTypeInterface           VpcEndpointType = "Interface"
	VpcEndpointTypeGateway             VpcEndpointType = "Gateway"
	VpcEndpointTypeGatewayLoadBalancer VpcEndpointType = "GatewayLoadBalancer"
)

Enum values for VpcEndpointType

func (VpcEndpointType) Values added in v0.29.0

func (VpcEndpointType) Values() []VpcEndpointType

Values returns all known values for VpcEndpointType. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpcIpv6CidrBlockAssociation

type VpcIpv6CidrBlockAssociation struct {

	// The association ID for the IPv6 CIDR block.
	AssociationId *string

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string

	// Information about the state of the CIDR block.
	Ipv6CidrBlockState *VpcCidrBlockState

	// The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.
	Ipv6Pool *string

	// The name of the unique set of Availability Zones, Local Zones, or Wavelength
	// Zones from which Amazon Web Services advertises IP addresses, for example,
	// us-east-1-wl1-bos-wlz-1.
	NetworkBorderGroup *string
	// contains filtered or unexported fields
}

Describes an IPv6 CIDR block associated with a VPC.

type VpcPeeringConnection

type VpcPeeringConnection struct {

	// Information about the accepter VPC. CIDR block information is only returned when
	// describing an active VPC peering connection.
	AccepterVpcInfo *VpcPeeringConnectionVpcInfo

	// The time that an unaccepted VPC peering connection will expire.
	ExpirationTime *time.Time

	// Information about the requester VPC. CIDR block information is only returned
	// when describing an active VPC peering connection.
	RequesterVpcInfo *VpcPeeringConnectionVpcInfo

	// The status of the VPC peering connection.
	Status *VpcPeeringConnectionStateReason

	// Any tags assigned to the resource.
	Tags []Tag

	// The ID of the VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a VPC peering connection.

type VpcPeeringConnectionOptionsDescription

type VpcPeeringConnectionOptionsDescription struct {

	// Indicates whether a local VPC can resolve public DNS hostnames to private IP
	// addresses when queried from instances in a peer VPC.
	AllowDnsResolutionFromRemoteVpc *bool

	// Indicates whether a local ClassicLink connection can communicate with the peer
	// VPC over the VPC peering connection.
	AllowEgressFromLocalClassicLinkToRemoteVpc *bool

	// Indicates whether a local VPC can communicate with a ClassicLink connection in
	// the peer VPC over the VPC peering connection.
	AllowEgressFromLocalVpcToRemoteClassicLink *bool
	// contains filtered or unexported fields
}

We are retiring EC2-Classic. We recommend that you migrate from EC2-Classic to a VPC. For more information, see Migrate from EC2-Classic to a VPC (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html) in the Amazon Elastic Compute Cloud User Guide. Describes the VPC peering connection options.

type VpcPeeringConnectionStateReason

type VpcPeeringConnectionStateReason struct {

	// The status of the VPC peering connection.
	Code VpcPeeringConnectionStateReasonCode

	// A message that provides more information about the status, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of a VPC peering connection.

type VpcPeeringConnectionStateReasonCode

type VpcPeeringConnectionStateReasonCode string
const (
	VpcPeeringConnectionStateReasonCodeInitiatingRequest VpcPeeringConnectionStateReasonCode = "initiating-request"
	VpcPeeringConnectionStateReasonCodePendingAcceptance VpcPeeringConnectionStateReasonCode = "pending-acceptance"
	VpcPeeringConnectionStateReasonCodeActive            VpcPeeringConnectionStateReasonCode = "active"
	VpcPeeringConnectionStateReasonCodeDeleted           VpcPeeringConnectionStateReasonCode = "deleted"
	VpcPeeringConnectionStateReasonCodeRejected          VpcPeeringConnectionStateReasonCode = "rejected"
	VpcPeeringConnectionStateReasonCodeFailed            VpcPeeringConnectionStateReasonCode = "failed"
	VpcPeeringConnectionStateReasonCodeExpired           VpcPeeringConnectionStateReasonCode = "expired"
	VpcPeeringConnectionStateReasonCodeProvisioning      VpcPeeringConnectionStateReasonCode = "provisioning"
	VpcPeeringConnectionStateReasonCodeDeleting          VpcPeeringConnectionStateReasonCode = "deleting"
)

Enum values for VpcPeeringConnectionStateReasonCode

func (VpcPeeringConnectionStateReasonCode) Values added in v0.29.0

Values returns all known values for VpcPeeringConnectionStateReasonCode. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpcPeeringConnectionVpcInfo

type VpcPeeringConnectionVpcInfo struct {

	// The IPv4 CIDR block for the VPC.
	CidrBlock *string

	// Information about the IPv4 CIDR blocks for the VPC.
	CidrBlockSet []CidrBlock

	// The IPv6 CIDR block for the VPC.
	Ipv6CidrBlockSet []Ipv6CidrBlock

	// The ID of the Amazon Web Services account that owns the VPC.
	OwnerId *string

	// Information about the VPC peering connection options for the accepter or
	// requester VPC.
	PeeringOptions *VpcPeeringConnectionOptionsDescription

	// The Region in which the VPC is located.
	Region *string

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a VPC in a VPC peering connection.

type VpcState

type VpcState string
const (
	VpcStatePending   VpcState = "pending"
	VpcStateAvailable VpcState = "available"
)

Enum values for VpcState

func (VpcState) Values added in v0.29.0

func (VpcState) Values() []VpcState

Values returns all known values for VpcState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpcTenancy

type VpcTenancy string
const (
	VpcTenancyDefault VpcTenancy = "default"
)

Enum values for VpcTenancy

func (VpcTenancy) Values added in v0.29.0

func (VpcTenancy) Values() []VpcTenancy

Values returns all known values for VpcTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpnConnection

type VpnConnection struct {

	// The category of the VPN connection. A value of VPN indicates an Amazon Web
	// Services VPN connection. A value of VPN-Classic indicates an Amazon Web Services
	// Classic VPN connection.
	Category *string

	// The ARN of the core network.
	CoreNetworkArn *string

	// The ARN of the core network attachment.
	CoreNetworkAttachmentArn *string

	// The configuration information for the VPN connection's customer gateway (in the
	// native XML format). This element is always present in the CreateVpnConnection
	// response; however, it's present in the DescribeVpnConnections response only if
	// the VPN connection is in the pending or available state.
	CustomerGatewayConfiguration *string

	// The ID of the customer gateway at your end of the VPN connection.
	CustomerGatewayId *string

	// The current state of the gateway association.
	GatewayAssociationState GatewayAssociationState

	// The VPN connection options.
	Options *VpnConnectionOptions

	// The static routes associated with the VPN connection.
	Routes []VpnStaticRoute

	// The current state of the VPN connection.
	State VpnState

	// Any tags assigned to the VPN connection.
	Tags []Tag

	// The ID of the transit gateway associated with the VPN connection.
	TransitGatewayId *string

	// The type of VPN connection.
	Type GatewayType

	// Information about the VPN tunnel.
	VgwTelemetry []VgwTelemetry

	// The ID of the VPN connection.
	VpnConnectionId *string

	// The ID of the virtual private gateway at the Amazon Web Services side of the VPN
	// connection.
	VpnGatewayId *string
	// contains filtered or unexported fields
}

Describes a VPN connection.

type VpnConnectionDeviceType added in v1.18.0

type VpnConnectionDeviceType struct {

	// Customer gateway device platform.
	Platform *string

	// Customer gateway device software version.
	Software *string

	// Customer gateway device vendor.
	Vendor *string

	// Customer gateway device identifier.
	VpnConnectionDeviceTypeId *string
	// contains filtered or unexported fields
}

List of customer gateway devices that have a sample configuration file available for use. You can also see the list of device types with sample configuration files available under Your customer gateway device (https://docs.aws.amazon.com/vpn/latest/s2svpn/your-cgw.html) in the Amazon Web Services Site-to-Site VPN User Guide.

type VpnConnectionOptions

type VpnConnectionOptions struct {

	// Indicates whether acceleration is enabled for the VPN connection.
	EnableAcceleration *bool

	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv4NetworkCidr *string

	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv6NetworkCidr *string

	// The type of IPv4 address assigned to the outside interface of the customer
	// gateway. Valid values: PrivateIpv4 | PublicIpv4 Default: PublicIpv4
	OutsideIpAddressType *string

	// The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
	RemoteIpv4NetworkCidr *string

	// The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
	RemoteIpv6NetworkCidr *string

	// Indicates whether the VPN connection uses static routes only. Static routes must
	// be used for devices that don't support BGP.
	StaticRoutesOnly *bool

	// The transit gateway attachment ID in use for the VPN tunnel.
	TransportTransitGatewayAttachmentId *string

	// Indicates whether the VPN tunnels process IPv4 or IPv6 traffic.
	TunnelInsideIpVersion TunnelInsideIpVersion

	// Indicates the VPN tunnel options.
	TunnelOptions []TunnelOption
	// contains filtered or unexported fields
}

Describes VPN connection options.

type VpnConnectionOptionsSpecification

type VpnConnectionOptionsSpecification struct {

	// Indicate whether to enable acceleration for the VPN connection. Default: false
	EnableAcceleration *bool

	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	// Default: 0.0.0.0/0
	LocalIpv4NetworkCidr *string

	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	// Default: ::/0
	LocalIpv6NetworkCidr *string

	// The type of IPv4 address assigned to the outside interface of the customer
	// gateway device. Valid values: PrivateIpv4 | PublicIpv4 Default: PublicIpv4
	OutsideIpAddressType *string

	// The IPv4 CIDR on the Amazon Web Services side of the VPN connection. Default:
	// 0.0.0.0/0
	RemoteIpv4NetworkCidr *string

	// The IPv6 CIDR on the Amazon Web Services side of the VPN connection. Default:
	// ::/0
	RemoteIpv6NetworkCidr *string

	// Indicate whether the VPN connection uses static routes only. If you are creating
	// a VPN connection for a device that does not support BGP, you must specify true.
	// Use CreateVpnConnectionRoute to create a static route. Default: false
	StaticRoutesOnly *bool

	// The transit gateway attachment ID to use for the VPN tunnel. Required if
	// OutsideIpAddressType is set to PrivateIpv4.
	TransportTransitGatewayAttachmentId *string

	// Indicate whether the VPN tunnels process IPv4 or IPv6 traffic. Default: ipv4
	TunnelInsideIpVersion TunnelInsideIpVersion

	// The tunnel options for the VPN connection.
	TunnelOptions []VpnTunnelOptionsSpecification
	// contains filtered or unexported fields
}

Describes VPN connection options.

type VpnEcmpSupportValue

type VpnEcmpSupportValue string
const (
	VpnEcmpSupportValueEnable  VpnEcmpSupportValue = "enable"
	VpnEcmpSupportValueDisable VpnEcmpSupportValue = "disable"
)

Enum values for VpnEcmpSupportValue

func (VpnEcmpSupportValue) Values added in v0.29.0

Values returns all known values for VpnEcmpSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpnGateway

type VpnGateway struct {

	// The private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	AmazonSideAsn *int64

	// The Availability Zone where the virtual private gateway was created, if
	// applicable. This field may be empty or not returned.
	AvailabilityZone *string

	// The current state of the virtual private gateway.
	State VpnState

	// Any tags assigned to the virtual private gateway.
	Tags []Tag

	// The type of VPN connection the virtual private gateway supports.
	Type GatewayType

	// Any VPCs attached to the virtual private gateway.
	VpcAttachments []VpcAttachment

	// The ID of the virtual private gateway.
	VpnGatewayId *string
	// contains filtered or unexported fields
}

Describes a virtual private gateway.

type VpnProtocol

type VpnProtocol string
const (
	VpnProtocolOpenvpn VpnProtocol = "openvpn"
)

Enum values for VpnProtocol

func (VpnProtocol) Values added in v0.29.0

func (VpnProtocol) Values() []VpnProtocol

Values returns all known values for VpnProtocol. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpnState

type VpnState string
const (
	VpnStatePending   VpnState = "pending"
	VpnStateAvailable VpnState = "available"
	VpnStateDeleting  VpnState = "deleting"
	VpnStateDeleted   VpnState = "deleted"
)

Enum values for VpnState

func (VpnState) Values added in v0.29.0

func (VpnState) Values() []VpnState

Values returns all known values for VpnState. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpnStaticRoute

type VpnStaticRoute struct {

	// The CIDR block associated with the local subnet of the customer data center.
	DestinationCidrBlock *string

	// Indicates how the routes were provided.
	Source VpnStaticRouteSource

	// The current state of the static route.
	State VpnState
	// contains filtered or unexported fields
}

Describes a static route for a VPN connection.

type VpnStaticRouteSource

type VpnStaticRouteSource string
const (
	VpnStaticRouteSourceStatic VpnStaticRouteSource = "Static"
)

Enum values for VpnStaticRouteSource

func (VpnStaticRouteSource) Values added in v0.29.0

Values returns all known values for VpnStaticRouteSource. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

type VpnTunnelLogOptions added in v1.53.0

type VpnTunnelLogOptions struct {

	// Options for sending VPN tunnel logs to CloudWatch.
	CloudWatchLogOptions *CloudWatchLogOptions
	// contains filtered or unexported fields
}

Options for logging VPN tunnel activity.

type VpnTunnelLogOptionsSpecification added in v1.53.0

type VpnTunnelLogOptionsSpecification struct {

	// Options for sending VPN tunnel logs to CloudWatch.
	CloudWatchLogOptions *CloudWatchLogOptionsSpecification
	// contains filtered or unexported fields
}

Options for logging VPN tunnel activity.

type VpnTunnelOptionsSpecification

type VpnTunnelOptionsSpecification struct {

	// The action to take after DPD timeout occurs. Specify restart to restart the IKE
	// initiation. Specify clear to end the IKE session. Valid Values: clear | none |
	// restart Default: clear
	DPDTimeoutAction *string

	// The number of seconds after which a DPD timeout occurs. Constraints: A value
	// greater than or equal to 30. Default: 30
	DPDTimeoutSeconds *int32

	// The IKE versions that are permitted for the VPN tunnel. Valid values: ikev1 |
	// ikev2
	IKEVersions []IKEVersionsRequestListValue

	// Options for logging VPN tunnel activity.
	LogOptions *VpnTunnelLogOptionsSpecification

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 1 IKE negotiations. Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20
	// | 21 | 22 | 23 | 24
	Phase1DHGroupNumbers []Phase1DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 1 IKE negotiations. Valid values: AES128 | AES256 | AES128-GCM-16 |
	// AES256-GCM-16
	Phase1EncryptionAlgorithms []Phase1EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for phase
	// 1 IKE negotiations. Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase1IntegrityAlgorithms []Phase1IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 1 of the IKE negotiation, in seconds. Constraints: A
	// value between 900 and 28,800. Default: 28800
	Phase1LifetimeSeconds *int32

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 2 IKE negotiations. Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 19
	// | 20 | 21 | 22 | 23 | 24
	Phase2DHGroupNumbers []Phase2DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 2 IKE negotiations. Valid values: AES128 | AES256 | AES128-GCM-16 |
	// AES256-GCM-16
	Phase2EncryptionAlgorithms []Phase2EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for phase
	// 2 IKE negotiations. Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase2IntegrityAlgorithms []Phase2IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 2 of the IKE negotiation, in seconds. Constraints: A
	// value between 900 and 3,600. The value must be less than the value for
	// Phase1LifetimeSeconds. Default: 3600
	Phase2LifetimeSeconds *int32

	// The pre-shared key (PSK) to establish initial authentication between the virtual
	// private gateway and customer gateway. Constraints: Allowed characters are
	// alphanumeric characters, periods (.), and underscores (_). Must be between 8 and
	// 64 characters in length and cannot start with zero (0).
	PreSharedKey *string

	// The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during
	// which the rekey time is randomly selected. Constraints: A value between 0 and
	// 100. Default: 100
	RekeyFuzzPercentage *int32

	// The margin time, in seconds, before the phase 2 lifetime expires, during which
	// the Amazon Web Services side of the VPN connection performs an IKE rekey. The
	// exact time of the rekey is randomly selected based on the value for
	// RekeyFuzzPercentage. Constraints: A value between 60 and half of
	// Phase2LifetimeSeconds. Default: 540
	RekeyMarginTimeSeconds *int32

	// The number of packets in an IKE replay window. Constraints: A value between 64
	// and 2048. Default: 1024
	ReplayWindowSize *int32

	// The action to take when the establishing the tunnel for the VPN connection. By
	// default, your customer gateway device must initiate the IKE negotiation and
	// bring up the tunnel. Specify start for Amazon Web Services to initiate the IKE
	// negotiation. Valid Values: add | start Default: add
	StartupAction *string

	// The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same virtual private
	// gateway. Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The
	// following CIDR blocks are reserved and cannot be used:
	//
	// * 169.254.0.0/30
	//
	// *
	// 169.254.1.0/30
	//
	// * 169.254.2.0/30
	//
	// * 169.254.3.0/30
	//
	// * 169.254.4.0/30
	//
	// *
	// 169.254.5.0/30
	//
	// * 169.254.169.252/30
	TunnelInsideCidr *string

	// The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same transit gateway.
	// Constraints: A size /126 CIDR block from the local fd00::/8 range.
	TunnelInsideIpv6Cidr *string
	// contains filtered or unexported fields
}

The tunnel options for a single VPN tunnel.

type WeekDay added in v1.13.0

type WeekDay string
const (
	WeekDaySunday    WeekDay = "sunday"
	WeekDayMonday    WeekDay = "monday"
	WeekDayTuesday   WeekDay = "tuesday"
	WeekDayWednesday WeekDay = "wednesday"
	WeekDayThursday  WeekDay = "thursday"
	WeekDayFriday    WeekDay = "friday"
	WeekDaySaturday  WeekDay = "saturday"
)

Enum values for WeekDay

func (WeekDay) Values added in v1.13.0

func (WeekDay) Values() []WeekDay

Values returns all known values for WeekDay. Note that this can be expanded in the future, and so it is only as up to date as the client. The ordering of this slice is not guaranteed to be stable across updates.

Jump to

Keyboard shortcuts

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