

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在 Snowball EC2 Edge 上使用与亚马逊兼容的终端节点
<a name="using-ec2-endpoint"></a>

接下来，您可以找到与 Amazon EC2 兼容的终端节点的概述。使用此终端节点，您可以使用与亚马逊 EC2兼容的 API 操作以编程方式管理您的亚马逊系统映像 (AMIs) 和计算实例。

## 将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点
<a name="using-ec2-adapter-cli-endpoint"></a>

当您使用 AWS CLI 向 AWS Snowball Edge 设备发出命令时，可以指定终端节点是与 Amazon EC2 兼容的终端节点。您可以选择使用 HTTPS 端点，或不安全的 HTTP 端点，如下所示。

**HTTPS 安全端点**

```
aws ec2 describe-instances --endpoint https://192.0.2.0:8243 --ca-bundle path/to/certificate
```

**HTTP 不安全端点**

```
aws ec2 describe-instances --endpoint http://192.0.2.0:8008
```

如果您使用 HTTPS 端点 `8243`，传输中的数据将加密。使用 Snowball Edge 在解锁时所生成的证书来确保此加密。在您具有证书后，可以将其保存到本地 `ca-bundle.pem` 文件。然后，可以将 AWS CLI 配置文件配置为包含您的证书的路径，如下所述。

**将您的证书与 EC2兼容 Amazon 的终端节点相关联**

1. 为 Snowball Edge 接通电源并将其连接到网络，然后启动它。

1. 在设备解锁完成后，记下其在本地网络上的 IP 地址。

1. 从您的网络上的终端，确保您可以对 Snowball Edge 执行 ping 操作。

1. 在您的终端中运行 `snowballEdge get-certificate` 命令。有关此命令的更多信息，请参阅 [在 Snowball Edge 上管理公钥证书](snowball-edge-certificates-cli.md)。

1. 将 `snowballEdge get-certificate` 命令的输出保存到文件，例如 `ca-bundle.pem`。

1. 从您的终端运行以下命令。

   ```
   aws configure set profile.snowballEdge.ca_bundle /path/to/ca-bundle.pem
   ```

在您完成此过程之后，可以使用这些本地凭证、您的证书和您指定的端点运行 CLI 命令。

## 在 Snowball EC2 E AWS CLI dge 上支持与亚马逊兼容的命令
<a name="cli-support-ec2-edge"></a>

您可以通过与亚马逊 EC2兼容的终端节点在 Snowball Edge 设备上管理计算实例。这种类型的终端节点支持许多 Amazon EC2 CLI 命令和操作 AWS SDKs。有关安装和设置的信息 AWS CLI，包括指定 AWS 区域 要对哪个进行 AWS CLI 呼叫，请参阅《[AWS Command Line Interface 用户指南》](https://docs.aws.amazon.com/cli/latest/userguide/)。

### Snowball EC2 E AWS CLI dge 上支持的兼容命令列表
<a name="list-cli-commands-ec2-edge"></a>

接下来，您可以找到 Snowball Edge 设备支持的亚马逊 AWS CLI EC2 命令和选项子集的描述。如果某个命令或选项未在下方列出，则表明它不受支持。您可以声明一些不受支持的选项以及一个命令。但是，这些都会被忽略。
+ [associate-address](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-address.html)：将虚拟 IP 地址与实例关联，以用于设备上的三个物理网络接口之一：
  + --instance-id：单个 `sbe` 实例的 ID。
  + --public-ip：要用来访问您的实例的虚拟 IP 地址。
+ [attach-volume](https://docs.aws.amazon.com/cli/latest/reference/ec2/attach-volume.html)：将 Amazon EBS 卷挂载到您设备上的一个已停止或正在运行的实例上，然后将其公开给具有指定设备名称的实例。
  + --device `value`：设备名称。
  + --instance-id — 与亚马逊 EC2兼容的目标实例的 ID。
  + ---volume-id `value`：EBS 卷的 ID。
+ [authorize-security-group-egress](https://docs.aws.amazon.com/cli/latest/reference/ec2/authorize-security-group-egress.html)— 向安全组添加一条或多条出口规则，以便与 Snowball Edge 设备配合使用。具体而言，此操作允许实例将流量发送到一个或多个目标 IPv4 CIDR 地址范围。有关更多信息，请参阅 [在 Snowball Edge 上使用安全组控制网络流量](edge-security-groups.md)。
  + --group-id `value`：安全组的 ID。
  + [--ip-permissions `value`]：一个或多个 IP 权限集。
+ [authorize-security-group-ingress](https://docs.aws.amazon.com/cli/latest/reference/ec2/authorize-security-group-ingress.html)— 向安全组添加一条或多条入口规则。当调用 `authorize-security-group-ingress` 时，您必须为 `group-name` 或 `group-id` 指定一个值。
  + [--group-name `value`]：安全组的名称。
  + [--group-id `value`]：安全组的 ID
  + [--ip-permissions `value`]：一个或多个 IP 权限集。
  + [--protocol `value`] IP 协议。可能的值为 `tcp`、`udp` 和 `icmp`。`--port` 参数是必填项，除非“所有协议”值指定为（-1）。
  + [--port `value`]：对于 TCP 或 UDP，允许的端口范围。此值可以是单个整数或范围（最小值–最大值）。

    对于 ICMP，为单个整数或范围（`type`-`code`），其中，`type` 表示 ICMP 类型编号，`code` 表示 ICMP 代码编号。值为 -1 表示所有 ICMP 类型的所有 ICMP 代码。仅 `type` 的值为 -1 表示指定 ICMP 类型的所有 ICMP 代码。
  + [--cidr `value`]：CIDR IP 范围。
+ [create-launch-template](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-launch-template.html)— 创建启动模板。*启动模板*包含用于启动实例的参数。当您使用 `RunInstances` 启动实例时，您可以指定启动模板，而不是在请求中提供启动参数。您最多可以为每个 设备创建 100 个模板。
  + --launch-template-name `string` — 启动模板的名称。
  + -launch-template-data `structure`--启动模板的信息。支持以下属性：
    + `ImageId`
    + `InstanceType`
    + `SecurityGroupIds`
    + `TagSpecifications`
    + `UserData`

    JSON 语法：

    ```
    {
        "ImageId":"string",
        "InstanceType":"sbe-c.large",
        "SecurityGroupIds":["string", ...],
        "TagSpecifications":[{"ResourceType":"instance","Tags":[{"Key":"Name","Value":"Test"},
        {"Key":"Stack","Value":"Gamma"}]}],
        "UserData":"this is my user data"
    }
    ```
  + [--version-description `string`]：第一版启动模板的说明。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [create-launch-template-version](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-launch-template-version.html)— 为启动模板创建新版本。您可以指定启动模板的一个现有版本作为新版本的基础。启动模板版本是按创建顺序编号的。您无法指定、更改或替换启动模板版本的编号。您可以为每个启动模板创建多达 100 个版本。

  在请求中指定启动模板 ID 或启动模板名称。
  + --launch-template-id `string` — 启动模板的 ID。
  + --launch-template-name `string` — 启动模板的名称。
  + -launch-template-data `structure`--启动模板的信息。支持以下属性：
    + `ImageId`
    + `InstanceType`
    + `SecurityGroupIds`
    + `TagSpecifications`
    + `UserData`

    JSON 语法：

    ```
    {
        "ImageId":"string",
        "InstanceType":"sbe-c.large",
        "SecurityGroupIds":["string", ...],
        "TagSpecifications":[{"ResourceType":"instance","Tags":[{"Key":"Name","Value":"Test"},
         {"Key":"Stack","Value":"Gamma"}]}],
        "UserData":"this is my user data"
    }
    ```
  + [--source-version `string`]：作为新版本基础的启动模板的版本号。新版本继承和源版本相同的启动参数，但在 `launch-template-data` 中指定的参数除外。
  + [--version-description `string`]：第一版启动模板的说明。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [create-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-tags.html)：添加或覆盖指定资源的一个或多个标签。每个资源最多可以有 50 个标签。每个标签由一个键和一个可选值组成。资源的标签键必须是唯一的。支持以下资源：
  + AMI
  + 实例
  + 启动模板
  + 安全组
  + 密钥对
+ [create-security-group](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-security-group.html)— 在你的 Snowball Edge 上创建一个安全组。您最多可以创建 50 个安全组。创建安全组时，您可以指定选择的友好名称：
  + --group-name `value`：安全组的名称。
  + --description `value`：安全组的描述。此仅为信息性。此值最长可达 255 个字符。
+ [create-volume](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-volume.html)：创建一个 Amazon EBS 卷，您可以将此卷连接到设备上的实例。
  + [--size`value`] — 中的卷的大小 GiBs，可以从 1 GiB 到 1 TB ( GiBs1000) 不等。
  + [--snapshot-id `value`]：从中创建卷的快照。
  + [--volume-type `value`]：卷类型。如果未指定值，则默认值为 `sbg1`。可能的值包括：
    + 对于磁性介质卷为 `sbg1`
    + 对于 SSD 卷为 `sbp1`
  + [--tag-specification `value`]：在创建期间应用到卷的标签列表。
+ [delete-launch-template](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-launch-template.html)— 删除启动模板。如果删除启动模板，则会删除该模板的所有版本。

  在请求中指定启动模板 ID 或启动模板名称。
  + --launch-template-id `string` — 启动模板的 ID。
  + --launch-template-name `string` — 启动模板的名称。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [delete-launch-template-version](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-launch-template-version.html)— 删除启动模板的一个或多个版本。您无法删除启动模板的默认版本；您必须先分配一个不同的版本以作为默认版本。如果默认版本是唯一启动模板的版本，请使用 `delete-launch-template` 命令删除整个启动模板版本。

  在请求中指定启动模板 ID 或启动模板名称。
  + --launch-template-id `string` — 启动模板的 ID。
  + --launch-template-name `string` — 启动模板的名称。
  + --versions (list) `"string" "string"` ：要删除的一个或多个启动模板版本的版本号。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [delete-security-group](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-security-group.html)— 删除安全组。

  如果您尝试删除与实例关联的安全组或由另一个安全组引用的安全组，则操作将失败，并显示 `DependencyViolation`。
  + --group-name `value`：安全组的名称。
  + --description `value`：安全组的描述。此仅为信息性。此值最长可达 255 个字符。
+ [delete-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-tags.html)：从指定资源（AMI、计算实例、启动模板或安全组）中删除一组指定的标签。
+ [delete-volume](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-volume.html)：删除指定的 Amazon EBS 卷。该卷必须处于 `available` 状态（未附加到实例）。
  + --volume-id `value`：卷的 ID。
+ [describe-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-addresses.html)：描述与您设备上相同数量的 实例关联的一个或多个虚拟 IP 地址。
  + --public-ips：与您的实例关联的一个或多个虚拟 IP 地址。
+ [describe-images](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) — 描述可供您使用的一张或多张图片 (AMIs)。在创建作业期间，可供您使用的映像会添加到 Snowball Edge 设备上。
  + --image-id：AMI 的 Snowball AMI ID。
+ [describe-instance-attribute](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-attribute.html)— 描述指定实例的指定属性。一次只能指定一个属性。支持以下属性：
  + `instanceInitiatedShutdownBehavior` 
  + `instanceType`
  + `userData`
+ [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html)：描述一个或多个实例。该响应会返回分配给该实例的任何安全组。
  + --instance-id — 设备上已停止的一个或多个`sbe`实例。 IDs 
  + --page-size：调用中获取的每个页面的大小。此值不会影响命令的输出中返回的项目数。设置较小的页面大小会导致对设备进行更多调用，每次调用检索的项目数较少。这样做有助于防止调用超时。
  + --max-items：命令的输出中要返回的项目总数。如果可用的总项目数超过指定的值，则命令的输出中会提供 `NextToken`。要恢复分页，请在后续命令的 `starting-token` 参数中提供 `NextToken` 值。
  + --starting-token：指定从何处开始分页的令牌。此令牌是先前截断的响应中的 `NextToken` 值。
+ [describe-instance-status](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-status.html)— 描述指定实例或所有实例的状态。默认情况下，仅描述正在运行的实例，除非您特别指定返回所有实例的状态。实例状态包括以下组件：
  + **状态检查** — Snow 设备对正在运行的与 Amazon EC2 兼容的实例执行状态检查，以识别硬件和软件问题。
  + **实例状态**：您可以在实例启动直至实例终止期间管理您的实例。

  使用此命令时，支持以下筛选条件。
  + `[--filters]` (list)

    筛选条件。
    + `instance-state-code`：实例状态的代码，采用 16 位无符号整数表示。高字节用于内部服务报告目的，应予以忽略。低字节根据所表示的状态设置。有效值为 0（待处理）、16（正在运行）、32（正在关闭）、48（已终止）、64（正在停止）和 80（已停止）。
    + `instance-state-name`：实例的状态（`pending` \$1 `running` \$1 `shutting-down` \$1 `terminated` \$1 `stopping` \$1 `stopped` ）。
    + `instance-status.reachability`：筛选名称为 `reachability`（`passed` \$1 `failed` \$1 `initializing` \$1 `insufficient-data` ）的实例状态。
    + `instance-status.status`：实例的状态（`ok` \$1 `impaired` \$1 `initializing` \$1 `insufficient-data` \$1 `not-applicable` ）。
    + `system-status.reachability`：筛选名称为可到达性（`passed` \$1 `failed` \$1 `initializing` \$1 `insufficient-data` ）的系统状态。
    + `system-status.status`：实例的状态（`ok` \$1 `impaired` \$1 `initializing` \$1 `insufficient-data` \$1 `not-applicable` ）。
  + JSON 语法：

    ```
    [
      {
        "Name": "string",
        "Values": ["string", ...]
      }
      ...
    ]
    ```
  + `[--instance-ids]` (list)

    实例 IDs。

    默认：描述您的所有实例。
  + `[--dry-run|--no-dry-run]`（布尔值）

    检查您是否拥有操作所需的权限，但不实际发出请求，并提供错误响应。如果您拥有所需的权限，则错误响应为 `DryRunOperation`。

    否则为 `UnauthorizedOperation`。
  + `[--include-all-instances | --no-include-all-instances]`（布尔值）

    如果为 `true`，则包括所有实例的运行状况。如果为 `false`，则仅包括正在运行实例的运行状况。

    默认值：`false`
  + `[--page-size]` (integer)：调用中获取的每个页面的大小。此值不会影响命令的输出中返回的项目数。设置较小的页面大小会导致对设备进行更多调用，每次调用检索的项目数较少。这样做有助于防止调用超时。
  + `[--max-items]` (integer)：命令的输出中要返回的项目总数。如果可用的总项目数超过指定的值，则命令的输出中会提供 `NextToken`。要恢复分页，请在后续命令的 `starting-token` 参数中提供 `NextToken` 值。
  + `[--starting-token]` (string)：用于指定从何处开始分页的令牌。此令牌是先前截断的响应中的 `NextToken` 值。
+ [describe-launch-templates](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-launch-templates.html)— 描述一个或多个启动模板。`describe-launch-templates` 命令是一个分页操作。您可以进行多个调用以检索结果的整个数据集。

  在请求中指定启动模板 IDs 或启动模板的名称。
  + --launch-template-ids （列表）`"string" "string"`-启动模板列表。 IDs 
  + --launch-template-names （列表）`"string" "string"`-启动模板的名称列表。
  + --page-size：调用中获取的每个页面的大小。此值不会影响命令的输出中返回的项目数。设置较小的页面大小会导致对设备进行更多调用，每次调用检索的项目数较少。这样做有助于防止调用超时。
  + --max-items：命令的输出中要返回的项目总数。如果可用的总项目数超过指定的值，则命令的输出中会提供 `NextToken`。要恢复分页，请在后续命令的 `starting-token` 参数中提供 `NextToken` 值。
  + --starting-token：指定从何处开始分页的令牌。此令牌是先前截断的响应中的 `NextToken` 值。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [describe-launch-template-versions](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-launch-template-versions.html)— 描述指定启动模板的一个或多个版本。您可以描述所有版本、单个版本或一系列版本。`describe-launch-template-versions` 命令是一个分页操作。您可以进行多个调用以检索结果的整个数据集。

  在请求中指定启动模板 IDs 或启动模板的名称。
  + --launch-template-id `string` — 启动模板的 ID。
  + --launch-template-name `string` — 启动模板的名称。
  + [--versions (list) `"string" "string"`] ：要删除的一个或多个启动模板版本的版本号。
  + [--min-version `string`]：用于描述启动模板版本的最小版本号。
  + [--max-version `string`]：用于描述启动模板版本的最大版本号。
  + --page-size：调用中获取的每个页面的大小。此值不会影响命令的输出中返回的项目数。设置较小的页面大小会导致对设备进行更多调用，每次调用检索的项目数较少。这样做有助于防止调用超时。
  + --max-items：命令的输出中要返回的项目总数。如果可用的总项目数超过指定的值，则命令的输出中会提供 `NextToken`。要恢复分页，请在后续命令的 `starting-token` 参数中提供 `NextToken` 值。
  + --starting-token：指定从何处开始分页的令牌。此令牌是先前截断的响应中的 `NextToken` 值。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [describe-security-groups](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-security-groups.html)— 描述您的一个或多个安全组。

  `describe-security-groups` 命令是一个分页操作。您可以发出多个 API 调用以检索结果的整个数据集。
  + [--group-name `value`]：安全组的名称。
  + [--group-id `value`]：安全组的 ID。
  + [--page-size`value`]-服务调用中要获取的每页的大小。 AWS 此大小不会影响命令的输出中返回的项目数。设置较小的页面大小会导致对 AWS 服务进行更多调用，每次调用检索的项目数较少。这种方法可以帮助防止 AWS 服务呼叫超时。有关用法示例，请参阅《AWS Command Line Interface 用户指南》**中的[分页](https://docs.aws.amazon.com/cli/latest/userguide/pagination.html)。
  + [--max-items `value`]：命令的输出中要返回的项目总数。如果可用的总项目数超过指定的值，则命令的输出中会提供 `NextToken`。要恢复分页，请在后续命令的 `starting-token` 参数中提供 `NextToken` 值。请勿在 AWS CLI之外直接使用 `NextToken` 响应元素。有关用法示例，请参阅《AWS Command Line Interface 用户指南》**中的[分页](https://docs.aws.amazon.com/cli/latest/userguide/pagination.html)。
  + [--starting-token `value`]：指定从何处开始分页的令牌。此令牌是先前截断的响应中的 `NextToken` 值。有关用法示例，请参阅《AWS Command Line Interface 用户指南》**中的[分页](https://docs.aws.amazon.com/cli/latest/userguide/pagination.html)。
+ [describe-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-tags.html)：描述用于指定资源（`image`、`instance` 或安全组）的一个或多个标签。使用此命令时，支持以下筛选条件：
  + launch-template
  + resource-id
  + resource-type：`image` 或 `instance`
  + 键
  + value
+ [describe-volumes](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-volumes.html)：描述指定的 Amazon EBS 卷。
  + [--max-items `value`]：命令的输出中要返回的项目总数。如果可用的总项目数超过指定的值，则命令的输出中会提供 `NextToken`。要恢复分页，请在后续命令的 `starting-token` 参数中提供 `NextToken` 值。
  + [--starting-token `value`]：指定从何处开始分页的令牌。此令牌是先前截断的响应中的 `NextToken` 值。
  + [--volume-id`value`]-一个或多个卷。 IDs
+ [detach-volume](https://docs.aws.amazon.com/cli/latest/reference/ec2/detach-volume.html)：从已停止或正在运行的实例中分离 Amazon EBS 卷。
  + [--device `value`]：设备名称。
  + [--instance-id]-目标亚马逊实例的 ID。 EC2
  + --volume-id `value`：卷的 ID。
+ [disassociate-address](https://docs.aws.amazon.com/cli/latest/reference/ec2/disassociate-address.html)：取消虚拟 IP 地址与所关联实例的关联。
  + --public-ip：您要与实例取消关联的虚拟 IP 地址。
+ [get-launch-template-data](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-launch-template-data.html)— 检索指定实例的配置数据。您可以使用此数据来创建启动模板。
  + --instance-id：单个 `sbe` 实例的 ID。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [modify-launch-template](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-launch-template.html)— 修改启动模板。您可以指定要设置为默认版本的启动模板版本。在未指定启动模板版本的情况下启动实例时，将会应用启动模板的默认版本。

  在请求中指定启动模板 ID 或启动模板名称。
  + --launch-template-id `string` — 启动模板的 ID。
  + --launch-template-name `string` — 启动模板的名称。
  + --default-version `string`：设置为默认版本的启动模板版本号。
  + --endpoint `snowballEndpoint` — 一个允许您使用与亚马逊 EC2兼容的 API 操作以编程方式管理计算实例的值。有关更多信息，请参阅 [将 EC2兼容的端点指定为 Snowball AWS CLI Edge 上的端点](#using-ec2-adapter-cli-endpoint)。
+ [modify-instance-attribute](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-attribute.html)— 修改指定实例的属性。支持以下属性：
  + `instanceInitiatedShutdownBehavior`
  + `userData`
+ [revoke-security-group-egress](https://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-egress.html)— 从安全组中移除一条或多条出口规则：
  + [--group-id `value`]：安全组的 ID
  + [--ip-permissions `value`]：一个或多个 IP 权限集。
+ [revoke-security-group-ingress](https://docs.aws.amazon.com/cli/latest/reference/ec2/revoke-security-group-ingress.html)— 撤销安全组的一个或多个入口规则。当调用 `revoke-security-group-ingress` 时，您必须为 `group-name` 或 `group-id` 指定一个值。
  + [--group-name `value`]：安全组的名称。
  + [--group-id `value`]：安全组的 ID。
  + [--ip-permissions `value`]：一个或多个 IP 权限集。
  + [--protocol `value`] IP 协议。可能的值为 `tcp`、`udp` 和 `icmp`。`--port` 参数是必填项，除非“所有协议”值指定为（-1）。
  + [--port `value`]：对于 TCP 或 UDP，允许的端口范围。单个整数或范围（最小值–最大值）。

    对于 ICMP，为单个整数或范围（`type`-`code`），其中，`type` 表示 ICMP 类型编号，`code` 表示 ICMP 代码编号。值为 -1 表示所有 ICMP 类型的所有 ICMP 代码。仅 `type` 的值为 -1 表示指定 ICMP 类型的所有 ICMP 代码。
  + [--cidr `value`]：CIDR IP 范围。
+ [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html)：通过将 Snowball AMI ID 用于 AMI，启动一个计算实例。
**注意**  
在 Snowball Edge 上启动计算实例最多需要 1.5 小时，具体取决于实例的大小和类型。
  + [--block-device-mappings `(list)]` — 块储存设备映射条目。支持 `DeleteOnTermination`、`VolumeSize` 和 `VolumeType` 参数。启动卷必须为类型 `sbg1`。

    此命令的 JSON 语法如下所示。

    ```
    {
       "DeviceName": "/dev/sdh",
       "Ebs": 
       {
          "DeleteOnTermination": true|false,
          "VolumeSize": 100,
          "VolumeType": "sbp1"|"sbg1"
       }
    }
    ```
  + --count：要启动的实例数量。如果提供单个数字，则它被视为要启动的最小实例数量（默认为 1）。如果以 `min:max` 形式提供范围，则第一个数字解释为要启动的最小实例数量，第二个数字解释为要启动的最大实例数量。
  + --image-id：AMI 的 Snowball AMI ID，可以通过调用 `describe-images` 获得。启动实例时需要 AMI。
  + --InstanceInitiatedShutdownBehavior — 默认情况下，当您从实例启动关闭操作时（使用诸如关闭或关机之类的命令），实例会停止。您可以更改此行为，以便使其终止。支持 `stop` 和 `terminate` 参数。默认值为 `stop`。有关更多信息，请参阅[《*Amazon Linux 实例 EC2 用户指南》中的更改实例启动的*关闭行为](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior)。
  + --instance-type：`sbe` 实例类型。
  + --launch-template `structure`：设置为默认版本的启动模板的版本号。您在 `run-instances` 命令中指定的任何参数都会覆盖启动模板中的相同参数。您可以指定启动模板的名称或 ID，但不能同时指定二者。

    ```
    {
       "LaunchTemplateId": "string",
       "LaunchTemplateName": "string",
       "Version": "string"
    }
    ```
  + --security-group-ids — 一个或多个安全组 IDs。您可以使用创建安全组[CreateSecurityGroup](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html)。如果未提供任何值，则会将默认安全组的 ID 分配给创建的实例。
  + --tag-specifications：要在启动期间应用于资源的标签。只能在启动时标记实例。指定的标签将应用于在启动期间创建的所有实例。要在创建之后标记资源，请使用 `create-tags`。
  + --user-data：提供给实例的用户数据。如果您使用的是 AWS CLI，则会为您执行 base64 编码，您可以从文件中加载文本。否则，您必须提供 base64 编码文本。
  + --key-name (string)：密钥对的名称。您可以使用 `CreateKeyPair` 或 `ImportKeyPair` 创建密钥对。
**警告**  
如果您未指定密钥对，则无法连接到实例，除非您选择配置为允许用户以其他方式登录的 AMI。
+ [start-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/start-instances.html)：启动您先前停止的 `sbe` 实例。附加到实例的所有资源从启动到停止期间一直持续存在，但在实例终止时会被擦除。
  + --instance-id — 设备上已停止的一个或多个`sbe`实例。 IDs 
+ [stop-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/stop-instances.html)：停止一个正在运行的 `sbe` 实例。附加到实例的所有资源从启动到停止期间一直持续存在，但在实例终止时会被擦除。
  + --instance-id — 设备上要停止的一个或多个`sbe`实例。 IDs 
+ [terminate-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/terminate-instances.html)：关闭一个或多个实例。此操作是幂等的；如果您多次终止某个实例，每个调用都成功。附加到实例的所有资源从启动到停止期间一直持续存在，但在实例终止时数据会被擦除。
**注意**  
默认情况下，当您使用 `shutdown` 或 `poweroff` 等命令启动从实例关闭时，实例将停止。但是，您可以使用 `InstanceInitiatedShutdownBehavior` 属性来更改此行为，以便这些命令可以终止您的实例。有关更多信息，请参阅[《*Amazon Linux 实例 EC2 用户指南》中的更改实例启动的*关闭行为](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior)。
  + --instance-id — 设备上要终止的一个或多个`sbe`实例。 IDs 为这些实例存储的所有关联数据都将丢失。
+ [create-key-pair](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-key-pair.html)— 创建具有指定名称的 2048 位 RSA 密钥对。Amazon EC2 存储公钥并显示私钥供您保存到文件中。私有密钥作为未加密的 PEM 编码的 PKCS\$11 私有密钥返回。如果已存在具有指定名称的密钥，Amazon 将 EC2 返回错误。
  + --key-name (string)：密钥对的唯一名称。

    约束：最多 255 个 ASCII 字符。
  + [--tag-specifications] (list)：要应用于新密钥对的标签。

  ```
  {
      "ResourceType": "image"|"instance"|"key-pair"|"launch-template"|"security-group",
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
        ...
      ]
    }
    ...
  ```
+ [import-key-pair](https://docs.aws.amazon.com/cli/latest/reference/ec2/import-key-pair.html) – 
  + --key-name (string)：密钥对的唯一名称。

    约束：最多 255 个 ASCII 字符。
  + --public-key-material （blob）-公钥。对于 API 调用，文本必须为 base64 编码。对于命令行工具，会为您执行 base64 编码。
  + [--tag-specifications] (list)：要应用于新密钥对的标签。

  ```
  {
      "ResourceType": "image"|"instance"|"key-pair"|"launch-template"|"security-group",
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
        ...
      ]
    }
  ```
+ [describe-key-pairs](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-key-pairs.html) – 

  [--filters] (list)：筛选条件。
  + key-pair-id — 密钥对的 ID。
  + key-name：密钥对的名称。
  + tag-key：资源所分配标签的键。使用此筛选条件查找分配有标签且标签带有特定键的所有资源，无论标签值如何。
  + [--tag-specifications] (list)：要应用于新密钥对的标签。
  + tag: key — 分配给资源的标签的 key/value 组合。使用筛选器名称中的标签键和标签值作为筛选器值。例如，要查找具有键 `Owner` 和值 `Team A` 的标签的所有资源，请为筛选器名称指定 `tag:Owner`，为筛选器值指定 `Team A`。

  ```
  {
      "Name": "string",
      "Values": ["string", ...]
    }
    ...
  ```
+ [--key-names] (list)：密钥对名称。

  默认：描述您的所有密钥对。
+ [--key-pair-ids]（列表）-密钥对。 IDs 
+ [delete-key-pair](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-key-pair.html) – 
  + [--key-name] (string)：密钥对的名称。
  + [--key-pair-id]（字符串）-密钥对的 ID。

## 在 Snowball EC2 Edge 上支持与亚马逊兼容的 API 操作
<a name="using-ec2-adapter-supported-api"></a>

接下来，您可以在 EC2 Snowball Edge 中找到可与 Snowball Edge 一起使用的与亚马逊兼容的 API 操作，并在* EC2 亚马逊* API 参考中找到指向其描述的链接。与亚马逊 EC2兼容的 API 调用需要签名版本 4 (Sigv4) 签名。如果您使用 AWS CLI 或 AWS SDK 进行这些 API 调用，则系统会为您处理 Sigv4 签名。否则，您需要实施自己的 SigV4 签名解决方案。有关更多信息，请参阅 [在 Snowball Edge 上获取和使用本地 Amazon S3 证书](using-adapter.md#adapter-credentials)。
+ [AssociateAddress](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateAddress.html)— 将弹性 IP 地址与实例或网络接口相关联。
+  [AttachVolume](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AttachVolume.html)— 支持以下请求参数：
  + `Device`
  + `InstanceId`
  + `VolumeId`
+ [AuthorizeSecurityGroupEgress](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AuthorizeSecurityGroupEgress.html)— 向安全组添加一条或多条出口规则，以便与 Snowball Edge 设备配合使用。具体而言，此操作允许实例将流量发送到一个或多个目标 IPv4 CIDR 地址范围。
+ [AuthorizeSecurityGroupIngress](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AuthorizeSecurityGroupIngress.html)— 向安全组添加一条或多条入口规则。调用时 AuthorizeSecurityGroupIngress，必须为`GroupName`或指定一个值`GroupId`。
+  [CreateVolume](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html)— 支持以下请求参数：
  + `SnapshotId`
  + `Size`
  + `VolumeType`
  + `TagSpecification.N`
+ [CreateLaunchTemplate](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html)— 支持以下请求参数：
  + `ImageId`
  + `InstanceType`
  + `SecurityGroupIds`
  + `TagSpecifications`
  + `UserData`
+ [CreateLaunchTemplateVersion](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplateVersion.html)
+ [CreateTags](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html)— 支持以下请求参数：
  + `AMI`
  + `Instance`
  + `Launch template`
  + `Security group`
+ [CreateSecurityGroup](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html)— 在你的 Snowball Edge 上创建一个安全组。您最多可以创建 50 个安全组。创建安全组时，您可以指定选择的友好名称。
+ [DeleteLaunchTemplate](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteLaunchTemplate.html)
+ [DeleteLaunchTemplateVersions](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteLaunchTemplateVersions.html)
+ [DeleteSecurityGroup](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteSecurityGroup.html)— 删除安全组。如果您尝试删除与实例关联的安全组或由另一个安全组引用的安全组，则操作将失败，并显示 `DependencyViolation`。
+ [DeleteTags](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteTags.html)— 从指定的一组资源中删除指定的一组标签。
+  [DeleteVolume](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteVolume.html)— 支持以下请求参数：
  + `VolumeId`
+ [DescribeAddresses](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAddresses.html)
+ [DescribeImages](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)
+ [DescribeInstanceAttribute](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstanceAttribute.html)— 支持以下属性：
  + `instanceType`
  + `userData`
+ <a name="API_describe-instance-status"></a>[DescribeInstanceStatus](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstanceStatus.html)
+ [DescribeLaunchTemplates](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html)
+ [DescribeLaunchTemplateVersions](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplateVersions.html)
+ [DescribeInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html)
+ [DescribeSecurityGroups](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html)— 描述您的一个或多个安全组。 `DescribeSecurityGroups`是一个分页操作。您可以发出多个 API 调用以检索结果的整个数据集。
+ [DescribeTags](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTags.html)— 使用此命令，支持以下过滤器：
  + `resource-id`
  + `resource-type`：仅 AMI 或计算实例
  + `key`
  + `value`
+  [DescribeVolume](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVolumes.html)— 支持以下请求参数：
  + `MaxResults`
  + `NextToken`
  + `VolumeId.N`
+  [DetachVolume](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DetachVolumes.html)— 支持以下请求参数：
  + `Device`
  + `InstanceId`
  + `VolumeId`
+ [DisassociateAddress](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateAddress.html)
+ [GetLaunchTemplateData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetLaunchTemplateData.html)
+ [ModifyLaunchTemplate](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyLaunchTemplate.html)
+ [ModifyInstanceAttribute](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html)— 仅支持该`userData`属性。
+ [RevokeSecurityGroupEgress](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RevokeSecurityGroupEgress.html)— 从安全组中移除一条或多条出口规则。
+ [RevokeSecurityGroupIngress](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RevokeSecurityGroupIngress.html)— 撤销安全组的一个或多个入口规则。调用时 RevokeSecurityGroupIngress，必须为`group-name`或指定一个值`group-id`。
+ [RunInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html) –
**注意**  
在 Snowball Edge 上启动计算实例最多需要 1.5 小时，具体取决于实例的大小和类型。
+ [StartInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_StartInstances.html)
+ [StopInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_StopInstances.html)— 与已停止的实例关联的资源仍然存在。您可以终止该实例以释放这些资源。但是，这会删除所有关联的数据。
+ [TerminateInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TerminateInstances.html)