

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

# EC2Snowball Edge 上支持兼容的实例元数据和用户数据
<a name="edge-compute-instance-metadata"></a>

*实例元数据* 是有关您的实例的数据，可以用来配置或管理正在运行的实例。Snowball Edge 为您的计算实例支持一部分实例元数据类别。有关更多信息，请参阅 Amazon [用户指南中的实例元数据和](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) EC2 用户数据。

支持以下类别。使用任何其他类别将返回 `404` 错误消息。


**Snowball Edge 设备上支持的实例元数据类别**  

| 数据 | 描述 | 
| --- | --- | 
|  ami-id  | 用于启动实例的 AMI ID。 | 
| hostname | 实例的私 IPv4 有 DNS 主机名。 | 
|  instance-id  | 此实例的 ID。 | 
|  instance-type  | 实例的类型。 | 
|  local-hostname  | 实例的私 IPv4 有 DNS 主机名。 | 
|  local-ipv4  | 实例的私有 IPv4 地址。 | 
|  mac  | 实例的媒体访问控制（MAC）地址。 | 
|  network/interfaces/macs/mac/local-hostname  | 实例的本地主机名称。 | 
|  network/interfaces/macs/mac/local-ipv4s  | 与接口关联的私有 IPv4 地址。 | 
|  network/interfaces/macs/mac/mac  | 该实例的 MAC 地址。 | 
|  network/interfaces/macs/mac/public-ipv4s  | 与接口关联的弹性 IP 地址。 | 
|  public-ipv4  | 公共 IPv4 地址。 | 
|  public-keys/0/openssh-key  | 公有密钥。仅在实例启动时提供了公有密钥的情况下可用。 | 
|  reservation-id  | 预留的 ID。 | 
| userData | Shell 脚本，用于在启动时向实例发送指令。 | 


**Snowball Edge 设备上支持的实例动态数据类别**  

| 数据 | 描述 | 
| --- | --- | 
| instance-identity/document | 包含实例属性的 JSON。只有 instanceId、imageId、privateIp 和 instanceType 有值，其他返回的属性为 Null。有关更多信息，请参阅 Amazon EC2 用户指南中的[实例身份证件](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-identity-documents.html)。 | 

## Snowball Edge 上的计算机实例用户数据
<a name="userdatasupport"></a>

使用 Shell 脚本来访问 Snowball Edge 设备上的计算实例用户数据。使用 Shell 脚本，可以在启动时向实例发送指令。您可以使用`modify-instance-attribute` AWS CLI 命令或 `ModifyInstanceAttribute` API 操作更改用户数据。

**更改用户数据**

1. 使用`stop-instances` AWS CLI 命令停止计算实例。

1. 使用`modify-instance-attribute` AWS CLI 命令修改`userData`属性。

1. 使用`start-instances` AWS CLI 命令重启计算实例。

计算实例仅支持使用 Shell 脚本。在 Snowball Edge 设备上运行的计算实例不支持 `cloud-init` 软件包指令。有关使用 AWS CLI 命令的更多信息，请参阅《*[AWS CLI 命令参考](https://docs.aws.amazon.com/cli/latest/reference/)》。*