amazon.aws.ec2_launch_template 模块 – 管理 EC2 启动模板

注意

此模块是 amazon.aws 集合(版本 9.0.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install amazon.aws。您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。

要在 playbook 中使用它,请指定:amazon.aws.ec2_launch_template

community.aws 1.0.0 中的新增功能

概要

  • 创建、修改和删除 EC2 启动模板,这些模板可用于创建单个实例或与自动扩展组一起使用。

  • amazon.aws.ec2_instancecommunity.aws.autoscaling_group 模块可以传递一个启动模板,其中包含实例大小、磁盘类型、子网等设置,而不是在这些任务上指定所有参数。

要求

执行此模块的主机需要以下要求。

  • python >= 3.6

  • boto3 >= 1.28.0

  • botocore >= 1.31.0

参数

参数

注释

access_key

别名:aws_access_key_id, aws_access_key, ec2_access_key

字符串

AWS 访问密钥 ID。

有关访问令牌的更多信息,请参阅 AWS 文档 https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys

也可以按优先级递减的顺序使用 AWS_ACCESS_KEY_IDAWS_ACCESS_KEYEC2_ACCESS_KEY 环境变量。

aws_access_keyprofile 选项互斥。

为了与 AWS botocore SDK 保持一致,在 5.1.0 版本中添加了 aws_access_key_id 别名。

ec2_access_key 别名已弃用,将在 2024-12-01 之后的版本中删除。

EC2_ACCESS_KEY 环境变量的支持已弃用,将在 2024-12-01 之后的版本中删除。

aws_ca_bundle

路径

在验证 SSL 证书时使用的 CA 包的位置。

也可以使用 AWS_CA_BUNDLE 环境变量。

aws_config

字典

用于修改 botocore 配置的字典。

参数可以在 AWS 文档中找到 https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config

block_device_mappings

列表 / 元素=字典

块设备映射。为块设备映射提供快照 ID 和加密值作为参数会导致错误。这是因为只有空白卷才能在启动时加密,而这些卷不是从快照创建的。如果快照是卷的基础,则它包含定义的数据,并且无法使用此操作更改其加密状态。

device_name

字符串

设备名称(例如,/dev/sdhxvdh)。

ebs

字典

用于在实例启动时自动设置 EBS 卷的参数。

delete_on_termination

布尔值

指示是否在实例终止时删除 EBS 卷。

选项

  • false

  • true

encrypted

布尔值

指示 EBS 卷是否加密。加密的卷只能附加到支持 Amazon EBS 加密的实例。如果要从快照创建卷,则不能指定加密值。

选项

  • false

  • true

iops

整数

该卷支持的每秒 I/O 操作 (IOPS) 次数。对于 io1,这表示为卷预配置的 IOPS 次数。对于 gp2,这表示卷的基准性能以及卷累积用于突发的 I/O 积分的速率。有关通用 SSD 基准性能、I/O 积分和突发的更多信息,请参阅 Amazon Elastic Compute Cloud 用户指南中的 Amazon EBS 卷类型。

条件:此参数是创建 io1 卷的请求所必需的;它不用于创建 gp2、st1、sc1 或标准卷的请求。

kms_key_id

字符串

用于加密的 AWS 密钥管理服务 (AWS KMS) CMK 的 ARN。

snapshot_id

字符串

从中创建卷的快照的 ID。

throughput

整数

在 amazon.aws 9.0.0 中添加

为 gp3 卷预配置的吞吐量,最大为 1,000 MiB/s。有效范围 - 最小值为 125。最大值为 1000

volume_size

整数

卷的大小,以 GiB 为单位。

默认值:如果您要从快照创建卷且未指定卷大小,则默认值为快照大小。

volume_type

字符串

卷类型

no_device

字符串

禁止 AMI 的块设备映射中包含的指定设备。

virtual_name

字符串

虚拟设备名称 (ephemeralN)。实例存储卷从 0 开始编号。具有 2 个可用实例存储卷的实例类型可以为 ephemeral0 和 ephemeral1 指定映射。可用实例存储卷的数量取决于实例类型。连接到实例后,必须挂载卷。

cpu_options

字典

为此模板创建的 EC2 实例选择 CPU 设置。

更多信息,请参阅http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html

core_count

整数

实例的 CPU 核心数。

threads_per_core

整数

每个 CPU 核心的线程数。要禁用实例的 Intel 超线程技术,请指定值 1。否则,请指定默认值 2

credit_specification

字典

实例 CPU 使用的信用选项。仅对 T2 或 T3 实例有效。

cpu_credits

字符串

T2 或 T3 实例 CPU 使用的信用选项。有效值为 standardunlimited

debug_botocore_endpoint_logs

布尔值

使用 botocore.endpoint 日志记录器来解析任务期间进行的唯一(而不是总计)"resource:action" API 调用,并将该集合输出到任务结果中的 resource_actions 键。使用 aws_resource_action 回调输出在剧本期间制作的总列表。

也可以使用 ANSIBLE_DEBUG_BOTOCORE_LOGS 环境变量。

选项

  • false ← (默认)

  • true

default_version

字符串

当用户基于此模板启动新实例时,哪个版本应为默认版本?默认情况下,最新版本将成为默认版本。

默认值: "latest"

disable_api_termination

布尔值

这有助于保护实例免受意外终止。

如果设置为 true,则无法使用 Amazon EC2 控制台、CLI 或 API 终止实例。

选项

  • false

  • true

ebs_optimized

布尔值

指示该实例是否针对 Amazon EBS I/O 进行了优化。此优化为 Amazon EBS 提供专用吞吐量和优化的配置堆栈,以提供最佳的 Amazon EBS I/O 性能。并非所有实例类型都提供此优化。使用 EBS 优化实例时,需支付额外的使用费。

选项

  • false

  • true

elastic_gpu_specifications

列表 / 元素=字典

弹性 GPU 附件的设置。有关详细信息,请参阅 https://aws.amazon.com/ec2/elastic-gpus/

type

字符串

要附加的弹性 GPU 的类型

endpoint_url

别名: ec2_url, aws_endpoint_url, s3_url

字符串

连接到默认 AWS 端点之外的 URL。虽然这可用于连接到其他 AWS 兼容服务,但 amazon.aws 和 community.aws 集合仅针对 AWS 进行测试。

也可以使用 AWS_URLEC2_URL 环境变量,优先级依次降低。

ec2_urls3_url 别名已弃用,将在 2024-12-01 之后的版本中删除。

EC2_URL 环境变量的支持已弃用,将在 2024-12-01 之后的版本中删除。

iam_instance_profile

字符串

IAM 实例配置文件的名称或 ARN。需要描述现有实例角色的权限以确认 ARN 格式正确。

image_id

字符串

用于使用此模板启动的新实例的 AMI ID。由于 AMI 不是全局资源,因此此值取决于区域。

instance_initiated_shutdown_behavior

字符串

指示当您使用操作系统关机命令从实例启动关机时,实例是停止还是终止。

选项

  • "stop"

  • "terminate"

instance_market_options

字典

备用实例市场的选项,目前仅支持竞价市场。

market_type

字符串

市场类型。这应始终为 spot

spot_options

字典

竞价市场特定设置。

block_duration_minutes

整数

竞价型实例(也称为竞价块)所需的持续时间(以分钟为单位)。

此值必须是 60 的倍数 (60, 120, 180, 240, 300360)。

instance_interruption_behavior

字符串

当竞价型实例中断时的行为。默认为 terminate

选项

  • "hibernate"

  • "stop"

  • "terminate"

max_price

字符串

您愿意为这个竞价型实例支付的最高小时价格。

spot_instance_type

字符串

要发送的请求类型。

选项

  • "one-time"

  • "persistent"

instance_type

字符串

实例类型,例如 c5.2xlarge。有关实例类型的完整列表,请参阅 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html

kernel_id

字符串

内核的 ID。

我们建议您使用 PV-GRUB 而不是内核和 RAM 磁盘。有关详细信息,请参阅 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html

key_name

字符串

密钥对的名称。您可以使用 amazon.aws.ec2_key 创建密钥对。

如果您不指定密钥对,则除非您选择配置为允许用户以其他方式登录的 AMI,否则您无法连接到实例。

metadata_options

字典

在 amazon.aws 1.5.0 中添加

配置 EC2 元数据选项。

有关详细信息,请参阅 IMDS 文档 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html

http_endpoint

字符串

此参数启用或禁用实例上的 HTTP 元数据端点。

选项

  • "enabled" ← (默认)

  • "disabled"

http_protocol_ipv6

字符串

在 amazon.aws 3.1.0 中添加

实例元数据端点是否可通过 IPv6 访问。

选项

  • "enabled"

  • "disabled" ← (默认)

http_put_response_hop_limit

整数

实例元数据请求所需的 HTTP PUT 响应跃点限制。

数值越大,实例元数据请求可以传输的距离越远。

默认值: 1

http_tokens

字符串

实例元数据请求的令牌使用状态。

选项

  • "optional" ← (默认)

  • "required"

instance_metadata_tags

字符串

在 amazon.aws 3.1.0 中添加

是否可通过元数据端点使用实例标签(enabled)或不使用(disabled)。

选项

  • "enabled"

  • "disabled" ← (默认)

monitoring

字典

实例监控的设置。

enabled

布尔值

是否为新实例启用详细监控。这将产生额外的费用。

选项

  • false

  • true

network_interfaces

列表 / 元素=字典

一个或多个网络接口。

associate_public_ip_address

布尔值

将公共 IPv4 地址与新网络接口的 eth0 关联。

选项

  • false

  • true

delete_on_termination

布尔值

指示当实例终止时是否删除网络接口。

选项

  • false

  • true

description

字符串

网络接口的描述。

device_index

整数

网络接口附件的设备索引。

groups

列表 / 元素=字符串

要在此实例上包含的安全组 ID 列表。

ipv6_address_count

整数

要分配给网络接口的 IPv6 地址数量。

Amazon EC2 会自动从子网范围中选择 IPv6 地址。

如果指定 network_interfaces.ipv6_addresses 选项,则不能使用此选项。

ipv6_addresses

列表 / 元素=字符串

子网 IPv6 CIDR 块范围中的一个或多个特定 IPv6 地址的列表。

如果指定 network_interfaces.ipv6_address_count 选项,则不能使用此选项。

network_interface_id

字符串

要附加的网络接口的 eni ID。

private_ip_address

字符串

网络接口的主私有 IPv4 地址。

subnet_id

字符串

网络接口的子网 ID。

placement

字典

实例的放置组设置。

affinity

字符串

专用主机上实例的亲和性设置。

availability_zone

字符串

实例的可用区。

group_name

字符串

实例的放置组的名称。

host_id

字符串

实例的专用主机的 ID。

tenancy

字符串

实例的租户(如果实例在 VPC 中运行)。租户为 dedicated 的实例在单租户硬件上运行。

profile

别名: aws_profile

字符串

用于身份验证的已命名 AWS 配置文件。

有关命名配置文件的更多信息,请参阅 AWS 文档:https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html

也可以使用 AWS_PROFILE 环境变量。

profile 选项与 aws_access_keyaws_secret_keysecurity_token 选项互斥。

purge_tags

布尔值

如果 purge_tags=true 且设置了 tags,则现有标签将从资源中清除,以精确匹配 tags 参数定义的标签。

如果未设置 tags 参数,则即使 purge_tags=True,也不会修改标签。

aws: 开头的标签键由 Amazon 保留,无法修改。因此,为了 purge_tags 参数的目的,它们将被忽略。有关更多信息,请参阅 Amazon 文档:https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html#tag-conventions

选项

  • false

  • true ← (默认)

ram_disk_id

字符串

用于启动实例的 RAM 磁盘的 ID。我们建议您使用 PV-GRUB 而不是内核和 RAM 磁盘。有关更多信息,请参阅 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html

region

别名:aws_region, ec2_region

字符串

要使用的 AWS 区域。

对于 IAM、Route53 和 CloudFront 等全局服务,region 将被忽略。

也可以使用 AWS_REGIONEC2_REGION 环境变量。

有关更多信息,请参阅 Amazon AWS 文档:http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

ec2_region 别名已弃用,将在 2024-12-01 之后的版本中删除。

EC2_REGION 环境变量的支持已弃用,将在 2024-12-01 之后的版本中删除。

secret_key

别名:aws_secret_access_key, aws_secret_key, ec2_secret_key

字符串

AWS 私有访问密钥。

有关访问令牌的更多信息,请参阅 AWS 文档 https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys

也可以按优先级降序使用 AWS_SECRET_ACCESS_KEYAWS_SECRET_KEYEC2_SECRET_KEY 环境变量。

secret_keyprofile 选项互斥。

aws_secret_access_key 别名在 5.1.0 版本中添加,以与 AWS botocore SDK 保持一致。

ec2_secret_key 别名已弃用,将在 2024-12-01 之后的版本中删除。

EC2_SECRET_KEY 环境变量的支持已弃用,将在 2024-12-01 之后的版本中删除。

security_group_ids

列表 / 元素=字符串

新实例将添加到其中的安全组 ID 列表(VPC 或 EC2-Classic)。

security_groups

列表 / 元素=字符串

新实例将添加到其中的安全组名称列表(默认 VPC 或 EC2-Classic)。对于除默认 VPC 之外的任何 VPC,您必须使用 security_group_ids

session_token

别名:aws_session_token, security_token, aws_security_token, access_token

字符串

用于临时凭证的 AWS STS 会话令牌。

有关访问令牌的更多信息,请参阅 AWS 文档 https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys

也可以按优先级降序使用 AWS_SESSION_TOKENAWS_SECURITY_TOKENEC2_SECURITY_TOKEN 环境变量。

security_tokenprofile 选项互斥。

别名 aws_session_tokensession_token 在 3.2.0 版本中添加,该参数在 6.0.0 版本中从 security_token 重命名为 session_token

security_tokenaws_security_tokenaccess_token 别名已弃用,将在 2024-12-01 之后的版本中删除。

EC2_SECRET_KEYAWS_SECURITY_TOKEN 环境变量的支持已弃用,将在 2024-12-01 之后的版本中删除。

source_version

字符串

在 amazon.aws 4.1.0 中添加

新版本所基于的启动模板版本的版本号。

新版本继承了源版本相同的启动参数,但您明确指定的参数除外。

除非明确包含,否则在创建新版本时,应用于 block_device_mappings 的快照将被忽略。

默认值: "latest"

state

字符串

启动模板是否应存在。

目前不支持删除启动模板的特定版本。

选项

  • "present" ← (默认)

  • "absent"

tag_specifications

列表 / 元素=字典

在 amazon.aws 9.0.0 中添加

当使用此启动模板时,要应用于资源的标签。

resource_type

字符串

要标记的资源类型。

如果实例不包含您指定的资源类型,则实例启动将失败。

选项

  • "instance" ← (默认)

  • "volume"

  • "network-interface"

  • "spot-instances-request"

tags

字典

要应用于资源类型的一组键值对。

标签键约束:标签键区分大小写,最多接受 127 个 Unicode 字符。不能以 aws: 开头

标签值约束:标签值区分大小写,最多接受 255 个 Unicode 字符。

tags

别名:resource_tags

字典

表示要应用于资源的标签的字典。

如果未设置 tags 参数,则不会修改标签。

template_id

别名:id

字符串

启动模板的 ID,可用于除创建新启动模板外的所有情况。

必须指定 template_idtemplate_name 中的至少一个。

template_name

别名:name

字符串

模板名称。这在您使用的区域-帐户组合中必须是唯一的。

如果不存在具有指定名称的启动模板,则会创建新的启动模板。

如果已存在具有指定名称的启动模板,且配置未更改,则不会发生任何操作。

如果已存在具有指定名称的启动模板,且配置已更改,则会创建启动模板的新版本。

必须指定 template_idtemplate_name 中的至少一个。

user_data

字符串

要提供给实例的 Base64 编码的用户数据。有关更多信息,请参阅 Linux http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html 和 Windows http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data 上关于用户数据的文档。

validate_certs

布尔值

设置为 false 时,将不会验证与 AWS API 通信的 SSL 证书。

强烈建议不要设置 validate_certs=false,作为替代方案,请考虑改为设置 aws_ca_bundle

选项

  • false

  • true ← (默认)

version_description

字符串

在 amazon.aws 5.5.0 中添加

启动模板版本的描述。

默认值: ""

versions_to_delete

list / elements=integer

在 amazon.aws 9.0.0 中添加

要删除的启动模板版本的版本号。

删除当前默认版本时,请使用 default_version 指定新的默认版本。

默认情况下,最新版本将成为默认版本。

state=present 时,将被忽略。

注释

注意

  • 使用的 tags 选项已在 9.0.0 版本中更新,以应用于启动模板资源而不是启动模板资源。

  • 使用 tag_specifications 定义当使用此启动模板时要应用于资源的标签。

  • 在 9.0.0 版本中增加了对 purge_tags 的支持。

  • 注意: 对于模块,环境变量和配置文件是从 Ansible “主机” 上下文读取的,而不是从“控制器”上下文读取的。因此,可能需要将文件显式复制到“主机”。对于查找和连接插件,环境变量和配置文件是从 Ansible “控制器” 上下文读取的,而不是从“主机”上下文读取的。

  • Ansible 使用的 AWS SDK (boto3) 也可能从 Ansible “主机” 上下文中的配置文件(通常是 ~/.aws/credentials)读取凭证和其他设置的默认值,例如区域。有关更多信息,请参阅 https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html

示例

- name: Create an ec2 launch template
  amazon.aws.ec2_launch_template:
    name: "my_template"
    image_id: "ami-04b762b4289fba92b"
    key_name: my_ssh_key
    instance_type: t2.micro
    iam_instance_profile: myTestProfile
    disable_api_termination: true

- name: >
    Create a new version of an existing ec2 launch template with a different instance type,
    while leaving an older version as the default version
  amazon.aws.ec2_launch_template:
    name: "my_template"
    default_version: 1
    instance_type: c5.4xlarge

- name: Delete an ec2 launch template
  amazon.aws.ec2_launch_template:
    name: "my_template"
    state: absent

- name: Delete a specific version of an ec2 launch template
  amazon.aws.ec2_launch_template:
    name: "my_template"
    versions_to_delete:
      - 2
    state: absent

- name: Delete a specific version of an ec2 launch template and change the default version
  amazon.aws.ec2_launch_template:
    name: "my_template"
    versions_to_delete:
      - 1
    default_version: 2
    state: absent

- name: Create an ec2 launch template with specific tags
  amazon.aws.ec2_launch_template:
    name: "my_template"
    image_id: "ami-04b762b4289fba92b"
    instance_type: t2.micro
    disable_api_termination: true
    tags:
      Some: tag
      Another: tag

- name: Create an ec2 launch template with different tag for volume and instance
  amazon.aws.ec2_launch_template:
    name: "my_template"
    image_id: "ami-04b762b4289fba92b"
    instance_type: t2.micro
    block_device_mappings:
      - device_name: /dev/sdb
        ebs:
          volume_size: 20
          delete_on_termination: true
          volume_type: standard
    tag_specifications:
      - resource_type: instance
        tags:
          OsType: Linux
      - resource_type: volume
        tags:
          foo: bar

返回值

常见的返回值已在此处记录 此处,以下是此模块独有的字段

描述

default_template

复杂

如果仅指定模板名称,则将使用的启动模板版本。

通常这与最新版本相同,但不总是这样。

返回:state=present

create_time

字符串

创建启动模板的时间。

返回: 总是

created_by

字符串

创建启动模板的主体。

返回: 总是

default_version_number

整数

启动模板默认版本的版本号。

返回: 总是

latest_version_number

整数

启动模板最新版本的版本号。

返回: 总是

launch_template_id

字符串

启动模板的 ID。

返回: 总是

launch_template_name

字符串

启动模板的名称。

返回: 总是

tags

字典

分配给映像的标签字典。

返回: 当 AMI 创建或已存在时

示例: {"Env": "devel", "Name": "nat-server"}

default_version

整数

如果仅指定模板名称,则将使用的版本。通常这与最新版本相同,但不总是这样。

返回:default_template 具有版本号时。

deleted_template

复杂

有关已删除的启动模板的信息。

返回:state=absent

create_time

字符串

创建启动模板的时间。

返回: 总是

created_by

字符串

创建启动模板的主体。

返回: 总是

default_version_number

整数

启动模板默认版本的版本号。

返回: 总是

latest_version_number

整数

启动模板最新版本的版本号。

返回: 总是

launch_template_id

字符串

启动模板的 ID。

返回: 总是

launch_template_name

字符串

启动模板的名称。

返回: 总是

tags

字典

分配给映像的标签字典。

返回: 当 AMI 创建或已存在时

示例: {"Env": "devel", "Name": "nat-server"}

deleted_versions

列表 / 元素=字典

有关已删除的启动模板版本的信息。

返回:state=absent

launch_template_id

字符串

启动模板的 ID。

返回: 总是

launch_template_name

字符串

启动模板的名称。

返回: 总是

version_number

整数

启动模板的版本号。

返回: 总是

latest_template

复杂

启动模板的最新可用版本。

返回:state=present

create_time

字符串

创建启动模板的时间。

返回: 总是

created_by

字符串

创建启动模板的主体。

返回: 总是

default_version_number

整数

启动模板默认版本的版本号。

返回: 总是

latest_version_number

整数

启动模板最新版本的版本号。

返回: 总是

launch_template_id

字符串

启动模板的 ID。

返回: 总是

launch_template_name

字符串

启动模板的名称。

返回: 总是

tags

字典

分配给映像的标签字典。

返回: 当 AMI 创建或已存在时

示例: {"Env": "devel", "Name": "nat-server"}

latest_version

整数

启动模板的最新可用版本号。

返回:latest_template 具有版本号时。

template

复杂

启动模板的最新可用版本。

返回:state=present

create_time

字符串

创建启动模板的时间。

返回: 总是

created_by

字符串

创建启动模板的主体。

返回: 总是

default_version_number

整数

启动模板默认版本的版本号。

返回: 总是

latest_version_number

整数

启动模板最新版本的版本号。

返回: 总是

launch_template_id

字符串

启动模板的 ID。

返回: 总是

launch_template_name

字符串

启动模板的名称。

返回: 总是

tags

字典

分配给映像的标签字典。

返回: 当 AMI 创建或已存在时

示例: {"Env": "devel", "Name": "nat-server"}

versions

列表 / 元素=字典

启动模板的所有可用版本。

返回:state=present

create_time

字符串

创建版本的时间。

返回: 总是

created_by

字符串

创建版本的主体。

返回: 总是

default_version

布尔值

指示该版本是否为默认版本。

返回: 总是

launch_template_data

字典

有关启动模板的信息。

返回: 总是

示例: {"block_device_mappings": [{"device_name": "/dev/sdb", "ebs": {"delete_on_termination": true, "encrypted": true, "volumeSize": 5}}], "ebs_optimized": false, "image_id": "ami-0231217be14a6f3ba", "instance_type": "t2.micro", "network_interfaces": [{"associate_public_ip_address": false, "device_index": 0, "ipv6_addresses": [{"ipv6_address": "2001:0:130F:0:0:9C0:876A:130B"}]}]}

block_device_mappings

列表 / 元素=字典

块设备映射。

返回: 如果适用

device_name

字符串

设备名称。

返回: 总是

ebs

字符串

有关 EBS 卷的块设备的信息。

返回: 如果适用

delete_on_termination

布尔值

指示是否在实例终止时删除 EBS 卷。

返回: 总是

encrypted

布尔值

指示 EBS 卷是否已加密。

返回: 总是

iops

整数

该卷支持的每秒 I/O 操作数 (IOPS)。

返回: 总是

kms_key_id

整数

用于加密的密钥管理服务 (KMS) CMK 的 ARN。

返回: 总是

snapshot_id

字符串

快照的 ID。

返回: 总是

throughput

整数

该卷支持的吞吐量,以 MiB/s 为单位。

返回: 总是

volume_size

整数

卷的大小,以 GiB 为单位。

返回: 总是

volume_type

字符串

卷类型。

返回: 总是

no_device

字符串

要从块设备映射中省略设备,请指定一个空字符串。

返回: 成功

virtual_name

字符串

虚拟设备名称。

返回: 总是

cpu_options

字典

实例的 CPU 选项。

返回: 如果适用

amd_sev_snp

整数

指示是否为实例启用了 AMD SEV-SNP。

返回: 如果适用

core_count

整数

实例的 CPU 核心数。

返回: 如果适用

threads_per_core

整数

每个 CPU 核心的线程数。

返回: 如果适用

disable_api_termination

布尔值

如果设置为 true,则表示无法使用 Amazon EC2 控制台、命令行工具或 API 终止实例。

返回: 如果适用

ebs_optimized

布尔值

指示实例是否针对 Amazon EBS I/O 进行了优化。

返回: 总是

enclave_options

字典

指示是否为实例启用了 Amazon Web Services Nitro Enclaves。

返回: 如果适用

enabled

布尔值

如果此参数设置为 true,则为实例启用 Amazon Web Services Nitro Enclaves。

返回: 总是

iam_instance_profile

字典

IAM 实例配置文件。

返回: 如果应用

arn

字符串

实例配置文件的 Amazon 资源名称 (ARN)。

返回: 总是

name

字符串

实例配置文件的名称。

返回: 总是

image_id

字符串

AMI 的 ID 或 Systems Manager 参数。

返回: 如果适用

instance_initiated_shutdown_behavior

字符串

指示当您从实例启动关闭时,实例是停止还是终止。

返回: 如果适用

instance_type

字符串

实例类型。

返回: 如果适用

kernel_id

字符串

内核的 ID。

返回: 如果适用

key_name

字符串

密钥对的名称。

返回: 如果适用

metadata_options

字典

实例的元数据选项。

返回: 如果适用

http_endpoint

字符串

启用或禁用实例上的 HTTP 元数据端点。

返回: 如果适用

http_protocol_ipv6

字符串

为实例元数据服务启用或禁用 IPv6 端点。

返回: 如果适用

http_put_response_hop_limit

整数

实例元数据请求所需的 HTTP PUT 响应跃点限制。

返回: 如果适用

http_tokens

字符串

指示是否需要 IMDSv2。

返回: 如果适用

instance_metadata_tags

字符串

设置为启用以允许从实例元数据访问实例标签。

返回: 如果适用

state

字符串

元数据选项更改的状态。

返回: 如果适用

monitoring

字典

实例的监控。

返回: 如果适用

enabled

布尔值

指示是否启用详细监控。否则,将启用基本监控。

返回: 总是

network_interfaces

列表 / 元素=字典

网络接口。

返回: 如果适用

associate_carrier_ip_address

布尔值

指示是否将运营商 IP 地址与新网络接口的 eth0 关联。

返回: 总是

associate_public_ip_address

布尔值

指示是否将公共 IPv4 地址与新网络接口的 eth0 关联。

返回: 总是

connection_tracking_specification

字典

安全组连接跟踪规范,使您可以设置弹性网络接口上连接跟踪的超时时间。

返回: 如果适用

tcp_established_timeout

整数

处于已建立状态的空闲 TCP 连接的超时时间(以秒为单位)。

返回: 总是

udp_stream_timeout

整数

被归类为流的空闲 UDP 流的超时时间(以秒为单位),这些流已看到多个请求-响应事务。

返回: 总是

udp_timeout

整数

仅在一个方向或单个请求-响应事务中看到流量的空闲 UDP 流的超时时间(以秒为单位)。

返回: 总是

delete_on_termination

布尔值

指示当实例终止时是否删除网络接口。

返回: 总是

description

字符串

网络接口的描述。

返回: 总是

device_index

整数

网络接口附件的设备索引。

返回: 总是

ena_srd_specification

字典

包含从启动模板启动的实例的 ENA Express 设置。

返回: 如果适用

ena_srd_enabled

布尔值

指示是否为网络接口启用了 ENA Express。

返回: 总是

ena_srd_udp_specification

字典

为 UDP 网络流量配置 ENA Express。

返回: 总是

ena_srd_udp_enabled

布尔值

指示与实例之间的 UDP 流量是否使用 ENA Express。

返回: 总是

groups

列表 / 元素=字符串

一个或多个安全组的 ID。

返回: 如果适用

interface_type

字符串

网络接口的类型。

返回: 总是

ipv4_prefix_count

整数

Amazon Web Services 自动分配给网络接口的 IPv4 前缀的数量。

返回: 如果适用

ipv4_prefixes

列表 / 元素=字典

分配给网络接口的 IPv4 前缀列表。

返回: 如果适用

ipv4_prefix

字符串

分配给网络接口的 IPv4 委托前缀。

返回: 总是

ipv6_address_count

整数

网络接口的 IPv6 地址数。

返回: 如果适用

ipv6_addresses

列表 / 元素=字典

网络接口的 IPv6 地址。

返回: 如果适用

ipv6_address

字符串

IPv6 地址。

返回: 总是

is_primary_ipv6

布尔值

确定与网络接口关联的 IPv6 地址是否为主要 IPv6 地址。

返回: 总是

ipv6_prefix_count

整数

Amazon Web Services 自动分配给网络接口的 IPv6 前缀的数量。

返回: 如果适用

ipv6_prefixes

列表 / 元素=字典

分配给网络接口的 IPv6 前缀列表。

返回: 如果适用

ipv6_prefix

字符串

分配给网络接口的 IPv6 委托前缀。

返回: 总是

network_card_index

整数

网卡的索引。

返回: 如果适用

network_interface_id

字符串

网络接口的 ID。

返回: 总是

primary_ipv6

字符串

网络接口的主要 IPv6 地址。

返回: 如果适用

private_ip_address

字符串

网络接口的主私有 IPv4 地址。

返回: 如果适用

private_ip_addresses

列表 / 元素=字符串

私有 IPv4 地址列表。

返回: 如果适用

primary

布尔值

指示私有 IPv4 地址是否为主要私有 IPv4 地址。

返回: 总是

private_ip_address

布尔值

私有 IPv4 地址。

返回: 总是

secondary_private_ip_address_count

整数

网络接口的辅助私有 IPv4 地址数。

返回: 如果适用

subnet_id

字符串

网络接口的子网 ID。

返回: 总是

placement

字典

实例的放置位置。

返回: 如果适用

affinity

字符串

专用主机上实例的亲和性设置。

返回: 如果适用

availability_zone

字符串

实例的可用区。

返回: 如果适用

group_id

字符串

放置组的组 ID。

返回: 如果适用

group_name

字符串

实例的放置组的名称。

返回: 如果适用

host_id

字符串

实例的专用主机的 ID。

返回: 如果适用

host_resource_group_arn

字符串

在其中启动实例的主机资源组的 ARN。

返回: 如果适用

partition_number

整数

实例应在其中启动的分区号。

返回: 如果适用

tenancy

字符串

实例的租户。

返回: 如果适用

ram_disk_id

字符串

RAM 磁盘的 ID(如果适用)。

返回: 如果适用

security_group_ids

列表 / 元素=字符串

安全组 ID。

返回: 如果适用

security_groups

列表 / 元素=字符串

安全组名称。

返回: 如果适用

tag_specifications

列表 / 元素=字典

应用于实例启动期间创建的资源的标签。

返回: 如果适用

resource_type

字符串

要标记的资源类型。

返回: 总是

tags

列表 / 元素=字典

资源的标签。

返回: 成功

key

字符串

标签的键。

返回: 总是

value

字符串

标签的值。

返回: 总是

user_data

字符串

实例的用户数据。

返回: 如果适用

launch_template_id

字符串

启动模板的 ID。

返回: 总是

launch_template_name

字符串

启动模板的名称。

返回: 总是

version_description

字符串

版本的描述。

返回: 总是

version_number

整数

版本号。

返回: 总是

作者

  • Ryan Scott Brown (@ryansb)