Struct aws_sdk_ec2::types::Instance

source ·
#[non_exhaustive]
pub struct Instance {
Show 57 fields pub ami_launch_index: Option<i32>, pub image_id: Option<String>, pub instance_id: Option<String>, pub instance_type: Option<InstanceType>, pub kernel_id: Option<String>, pub key_name: Option<String>, pub launch_time: Option<DateTime>, pub monitoring: Option<Monitoring>, pub placement: Option<Placement>, pub platform: Option<PlatformValues>, pub private_dns_name: Option<String>, pub private_ip_address: Option<String>, pub product_codes: Option<Vec<ProductCode>>, pub public_dns_name: Option<String>, pub public_ip_address: Option<String>, pub ramdisk_id: Option<String>, pub state: Option<InstanceState>, pub state_transition_reason: Option<String>, pub subnet_id: Option<String>, pub vpc_id: Option<String>, pub architecture: Option<ArchitectureValues>, pub block_device_mappings: Option<Vec<InstanceBlockDeviceMapping>>, pub client_token: Option<String>, pub ebs_optimized: Option<bool>, pub ena_support: Option<bool>, pub hypervisor: Option<HypervisorType>, pub iam_instance_profile: Option<IamInstanceProfile>, pub instance_lifecycle: Option<InstanceLifecycleType>, pub elastic_gpu_associations: Option<Vec<ElasticGpuAssociation>>, pub elastic_inference_accelerator_associations: Option<Vec<ElasticInferenceAcceleratorAssociation>>, pub network_interfaces: Option<Vec<InstanceNetworkInterface>>, pub outpost_arn: Option<String>, pub root_device_name: Option<String>, pub root_device_type: Option<DeviceType>, pub security_groups: Option<Vec<GroupIdentifier>>, pub source_dest_check: Option<bool>, pub spot_instance_request_id: Option<String>, pub sriov_net_support: Option<String>, pub state_reason: Option<StateReason>, pub tags: Option<Vec<Tag>>, pub virtualization_type: Option<VirtualizationType>, pub cpu_options: Option<CpuOptions>, pub capacity_reservation_id: Option<String>, pub capacity_reservation_specification: Option<CapacityReservationSpecificationResponse>, pub hibernation_options: Option<HibernationOptions>, pub licenses: Option<Vec<LicenseConfiguration>>, pub metadata_options: Option<InstanceMetadataOptionsResponse>, pub enclave_options: Option<EnclaveOptions>, pub boot_mode: Option<BootModeValues>, pub platform_details: Option<String>, pub usage_operation: Option<String>, pub usage_operation_update_time: Option<DateTime>, pub private_dns_name_options: Option<PrivateDnsNameOptionsResponse>, pub ipv6_address: Option<String>, pub tpm_support: Option<String>, pub maintenance_options: Option<InstanceMaintenanceOptions>, pub current_instance_boot_mode: Option<InstanceBootModeValues>,
}
Expand description

Describes an instance.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§ami_launch_index: Option<i32>

The AMI launch index, which can be used to find this instance in the launch group.

§image_id: Option<String>

The ID of the AMI used to launch the instance.

§instance_id: Option<String>

The ID of the instance.

§instance_type: Option<InstanceType>

The instance type.

§kernel_id: Option<String>

The kernel associated with this instance, if applicable.

§key_name: Option<String>

The name of the key pair, if this instance was launched with an associated key pair.

§launch_time: Option<DateTime>

The time the instance was launched.

§monitoring: Option<Monitoring>

The monitoring for the instance.

§placement: Option<Placement>

The location where the instance launched, if applicable.

§platform: Option<PlatformValues>

The value is Windows for Windows instances; otherwise blank.

§private_dns_name: Option<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.

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.

§private_ip_address: Option<String>

The private IPv4 address assigned to the instance.

§product_codes: Option<Vec<ProductCode>>

The product codes attached to this instance, if applicable.

§public_dns_name: Option<String>

[IPv4 only] The public DNS name assigned to the instance. This name is not available until the instance enters the running state. This name is only available if you've enabled DNS hostnames for your VPC.

§public_ip_address: Option<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.

§ramdisk_id: Option<String>

The RAM disk associated with this instance, if applicable.

§state: Option<InstanceState>

The current state of the instance.

§state_transition_reason: Option<String>

The reason for the most recent state transition. This might be an empty string.

§subnet_id: Option<String>

The ID of the subnet in which the instance is running.

§vpc_id: Option<String>

The ID of the VPC in which the instance is running.

§architecture: Option<ArchitectureValues>

The architecture of the image.

§block_device_mappings: Option<Vec<InstanceBlockDeviceMapping>>

Any block device mapping entries for the instance.

§client_token: Option<String>

The idempotency token you provided when you launched the instance, if applicable.

§ebs_optimized: Option<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 I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

§ena_support: Option<bool>

Specifies whether enhanced networking with ENA is enabled.

§hypervisor: Option<HypervisorType>

The hypervisor type of the instance. The value xen is used for both Xen and Nitro hypervisors.

§iam_instance_profile: Option<IamInstanceProfile>

The IAM instance profile associated with the instance, if applicable.

§instance_lifecycle: Option<InstanceLifecycleType>

Indicates whether this is a Spot Instance or a Scheduled Instance.

§elastic_gpu_associations: Option<Vec<ElasticGpuAssociation>>

The Elastic GPU associated with the instance.

§elastic_inference_accelerator_associations: Option<Vec<ElasticInferenceAcceleratorAssociation>>

The elastic inference accelerator associated with the instance.

§network_interfaces: Option<Vec<InstanceNetworkInterface>>

The network interfaces for the instance.

§outpost_arn: Option<String>

The Amazon Resource Name (ARN) of the Outpost.

§root_device_name: Option<String>

The device name of the root device volume (for example, /dev/sda1).

§root_device_type: Option<DeviceType>

The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

§security_groups: Option<Vec<GroupIdentifier>>

The security groups for the instance.

§source_dest_check: Option<bool>

Indicates whether source/destination checking is enabled.

§spot_instance_request_id: Option<String>

If the request is a Spot Instance request, the ID of the request.

§sriov_net_support: Option<String>

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

§state_reason: Option<StateReason>

The reason for the most recent state transition.

§tags: Option<Vec<Tag>>

Any tags assigned to the instance.

§virtualization_type: Option<VirtualizationType>

The virtualization type of the instance.

§cpu_options: Option<CpuOptions>

The CPU options for the instance.

§capacity_reservation_id: Option<String>

The ID of the Capacity Reservation.

§capacity_reservation_specification: Option<CapacityReservationSpecificationResponse>

Information about the Capacity Reservation targeting option.

§hibernation_options: Option<HibernationOptions>

Indicates whether the instance is enabled for hibernation.

§licenses: Option<Vec<LicenseConfiguration>>

The license configurations for the instance.

§metadata_options: Option<InstanceMetadataOptionsResponse>

The metadata options for the instance.

§enclave_options: Option<EnclaveOptions>

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

§boot_mode: Option<BootModeValues>

The boot mode that was specified by the AMI. If the value is uefi-preferred, the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode parameter is the boot mode that is used to boot the instance at launch or start.

The operating system contained in the AMI must be configured to support the specified boot mode.

For more information, see Boot modes in the Amazon EC2 User Guide.

§platform_details: Option<String>

The platform details value for the instance. For more information, see AMI billing information fields in the Amazon EC2 User Guide.

§usage_operation: Option<String>

The usage operation value for the instance. For more information, see AMI billing information fields in the Amazon EC2 User Guide.

§usage_operation_update_time: Option<DateTime>

The time that the usage operation was last updated.

§private_dns_name_options: Option<PrivateDnsNameOptionsResponse>

The options for the instance hostname.

§ipv6_address: Option<String>

The IPv6 address assigned to the instance.

§tpm_support: Option<String>

If the instance is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon EC2 User Guide.

§maintenance_options: Option<InstanceMaintenanceOptions>

Provides information on the recovery and maintenance options of your instance.

§current_instance_boot_mode: Option<InstanceBootModeValues>

The boot mode that is used to boot the instance at launch or start. For more information, see Boot modes in the Amazon EC2 User Guide.

Implementations§

source§

impl Instance

source

pub fn ami_launch_index(&self) -> Option<i32>

The AMI launch index, which can be used to find this instance in the launch group.

source

pub fn image_id(&self) -> Option<&str>

The ID of the AMI used to launch the instance.

source

pub fn instance_id(&self) -> Option<&str>

The ID of the instance.

source

pub fn instance_type(&self) -> Option<&InstanceType>

The instance type.

source

pub fn kernel_id(&self) -> Option<&str>

The kernel associated with this instance, if applicable.

source

pub fn key_name(&self) -> Option<&str>

The name of the key pair, if this instance was launched with an associated key pair.

source

pub fn launch_time(&self) -> Option<&DateTime>

The time the instance was launched.

source

pub fn monitoring(&self) -> Option<&Monitoring>

The monitoring for the instance.

source

pub fn placement(&self) -> Option<&Placement>

The location where the instance launched, if applicable.

source

pub fn platform(&self) -> Option<&PlatformValues>

The value is Windows for Windows instances; otherwise blank.

source

pub fn private_dns_name(&self) -> Option<&str>

[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.

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.

source

pub fn private_ip_address(&self) -> Option<&str>

The private IPv4 address assigned to the instance.

source

pub fn product_codes(&self) -> Option<&[ProductCode]>

The product codes attached to this instance, if applicable.

source

pub fn public_dns_name(&self) -> Option<&str>

[IPv4 only] The public DNS name assigned to the instance. This name is not available until the instance enters the running state. This name is only available if you've enabled DNS hostnames for your VPC.

source

pub fn public_ip_address(&self) -> Option<&str>

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.

source

pub fn ramdisk_id(&self) -> Option<&str>

The RAM disk associated with this instance, if applicable.

source

pub fn state(&self) -> Option<&InstanceState>

The current state of the instance.

source

pub fn state_transition_reason(&self) -> Option<&str>

The reason for the most recent state transition. This might be an empty string.

source

pub fn subnet_id(&self) -> Option<&str>

The ID of the subnet in which the instance is running.

source

pub fn vpc_id(&self) -> Option<&str>

The ID of the VPC in which the instance is running.

source

pub fn architecture(&self) -> Option<&ArchitectureValues>

The architecture of the image.

source

pub fn block_device_mappings(&self) -> Option<&[InstanceBlockDeviceMapping]>

Any block device mapping entries for the instance.

source

pub fn client_token(&self) -> Option<&str>

The idempotency token you provided when you launched the instance, if applicable.

source

pub fn ebs_optimized(&self) -> Option<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 I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

source

pub fn ena_support(&self) -> Option<bool>

Specifies whether enhanced networking with ENA is enabled.

source

pub fn hypervisor(&self) -> Option<&HypervisorType>

The hypervisor type of the instance. The value xen is used for both Xen and Nitro hypervisors.

source

pub fn iam_instance_profile(&self) -> Option<&IamInstanceProfile>

The IAM instance profile associated with the instance, if applicable.

source

pub fn instance_lifecycle(&self) -> Option<&InstanceLifecycleType>

Indicates whether this is a Spot Instance or a Scheduled Instance.

source

pub fn elastic_gpu_associations(&self) -> Option<&[ElasticGpuAssociation]>

The Elastic GPU associated with the instance.

source

pub fn elastic_inference_accelerator_associations( &self ) -> Option<&[ElasticInferenceAcceleratorAssociation]>

The elastic inference accelerator associated with the instance.

source

pub fn network_interfaces(&self) -> Option<&[InstanceNetworkInterface]>

The network interfaces for the instance.

source

pub fn outpost_arn(&self) -> Option<&str>

The Amazon Resource Name (ARN) of the Outpost.

source

pub fn root_device_name(&self) -> Option<&str>

The device name of the root device volume (for example, /dev/sda1).

source

pub fn root_device_type(&self) -> Option<&DeviceType>

The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

source

pub fn security_groups(&self) -> Option<&[GroupIdentifier]>

The security groups for the instance.

source

pub fn source_dest_check(&self) -> Option<bool>

Indicates whether source/destination checking is enabled.

source

pub fn spot_instance_request_id(&self) -> Option<&str>

If the request is a Spot Instance request, the ID of the request.

source

pub fn sriov_net_support(&self) -> Option<&str>

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

source

pub fn state_reason(&self) -> Option<&StateReason>

The reason for the most recent state transition.

source

pub fn tags(&self) -> Option<&[Tag]>

Any tags assigned to the instance.

source

pub fn virtualization_type(&self) -> Option<&VirtualizationType>

The virtualization type of the instance.

source

pub fn cpu_options(&self) -> Option<&CpuOptions>

The CPU options for the instance.

source

pub fn capacity_reservation_id(&self) -> Option<&str>

The ID of the Capacity Reservation.

source

pub fn capacity_reservation_specification( &self ) -> Option<&CapacityReservationSpecificationResponse>

Information about the Capacity Reservation targeting option.

source

pub fn hibernation_options(&self) -> Option<&HibernationOptions>

Indicates whether the instance is enabled for hibernation.

source

pub fn licenses(&self) -> Option<&[LicenseConfiguration]>

The license configurations for the instance.

source

pub fn metadata_options(&self) -> Option<&InstanceMetadataOptionsResponse>

The metadata options for the instance.

source

pub fn enclave_options(&self) -> Option<&EnclaveOptions>

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

source

pub fn boot_mode(&self) -> Option<&BootModeValues>

The boot mode that was specified by the AMI. If the value is uefi-preferred, the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode parameter is the boot mode that is used to boot the instance at launch or start.

The operating system contained in the AMI must be configured to support the specified boot mode.

For more information, see Boot modes in the Amazon EC2 User Guide.

source

pub fn platform_details(&self) -> Option<&str>

The platform details value for the instance. For more information, see AMI billing information fields in the Amazon EC2 User Guide.

source

pub fn usage_operation(&self) -> Option<&str>

The usage operation value for the instance. For more information, see AMI billing information fields in the Amazon EC2 User Guide.

source

pub fn usage_operation_update_time(&self) -> Option<&DateTime>

The time that the usage operation was last updated.

source

pub fn private_dns_name_options(&self) -> Option<&PrivateDnsNameOptionsResponse>

The options for the instance hostname.

source

pub fn ipv6_address(&self) -> Option<&str>

The IPv6 address assigned to the instance.

source

pub fn tpm_support(&self) -> Option<&str>

If the instance is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon EC2 User Guide.

source

pub fn maintenance_options(&self) -> Option<&InstanceMaintenanceOptions>

Provides information on the recovery and maintenance options of your instance.

source

pub fn current_instance_boot_mode(&self) -> Option<&InstanceBootModeValues>

The boot mode that is used to boot the instance at launch or start. For more information, see Boot modes in the Amazon EC2 User Guide.

source§

impl Instance

source

pub fn builder() -> InstanceBuilder

Creates a new builder-style object to manufacture Instance.

Trait Implementations§

source§

impl Clone for Instance

source§

fn clone(&self) -> Instance

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Instance

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq<Instance> for Instance

source§

fn eq(&self, other: &Instance) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for Instance

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more