实例元数据包含了 ECS 实例在阿里云系统中的基本信息,例如实例 ID、IP 地址、网卡 MAC 地址和操作系统类型等。您可以使用元数据管理或配置 ECS 实例。

使用限制

仅支持获取专有网络 VPC 类型实例的元数据。

说明 如果您手动更改了部分实例信息,这种更改不会体现到实例元数据中。

为 Windows 实例获取元数据

  1. 远程连接实例。关于如何远程连接实例,请参见 连接实例概述

  2. 使用 PowerShell 执行命令 Invoke-RestMethod http://100.100.100.200/2016-01-01/meta-data/ 可以获取元数据信息。

  3. 在 URL 中添加具体的元数据名称即可获取具体的元数据(具体参见下文 实例元数据列表动态实例元数据项 ),例如:

    • 执行命令 Invoke-RestMethod http://100.100.100.200/2016-01-01/meta-data/instance-id 获取实例 ID。

    • 执行命令 Invoke-RestMethod http://100.100.100.200/2016-01-01/meta-data/image-id 获取创建实例时所使用的镜像 ID。

为 Linux 实例获取元数据

  1. 远程连接实例。关于如何远程连接实例,请参见 连接实例概述

  2. 执行命令 curl http://100.100.100.200/2016-01-01/meta-data/ 可以访问元数据的根目录。

  3. 在 URL 中添加具体的元数据名称即可获取具体的元数据(具体参见下文 实例元数据列表动态实例元数据项 ),例如:
    • 执行命令 curl http://100.100.100.200/2016-01-01/meta-data/instance-id 获取实例 ID。

    • 执行命令 curl http://100.100.100.200/2016-01-01/meta-data/image-id 获取创建实例时所使用的镜像 ID。

实例元数据列表

下表包含了 ECS 实例目前能获取的所有元数据项:

元数据项 元数据说明 引入版本
dns-conf/nameservers 实例的 DNS 配置。 2016-01-01
eipv4 实例挂载的弹性公网 IP(IPv4类型)。 2016-01-01
hostname 实例的主机名。 2016-01-01
image-id 创建实例时所使用的镜像 ID。 2016-01-01
image/market-place/product-code 镜像市场镜像的商品码。 2016-01-01
image/market-place/charge-type 镜像市场镜像的计费方式。 2016-01-01
instance-id 实例 ID。 2016-01-01
mac 实例的 MAC 地址,如果实例存在多个网卡,只显示 eth0 上的 MAC 地址。 2016-01-01
network-type 网络类型,只支持 VPC 类型实例。 2016-01-01
network/interfaces/macs 多网卡的 MAC 地址列表。 2016-01-01
network/interfaces/macs/[mac]/network-interface-id 网卡的标识 ID,其中[mac]参数需要替换为实例 MAC 地址。 2016-01-01
network/interfaces/macs/[mac]/ipv6s 实例的 IPv6 地址。 2016-01-01
network/interfaces/macs/[mac]/ipv6-gateway 实例的 IPv6 网关。 2016-01-01
network/interfaces/macs/[mac]/vswitch-ipv6-cidr-block 实例的 IPv6 虚拟交换机 CIDR 地址段。 2016-01-01
private-ipv4 实例的私网 IPv4 地址。 2016-01-01
public-ipv4 实例的公网 IPv4 地址。 2016-01-01
ntp-conf/ntp-servers NTP 服务器地址。 2016-01-01
owner-account-id 实例拥有者的阿里云账号 ID。 2016-01-01
public-keys 当前实例所有公钥的列表。 2016-01-01
region-id 实例所属地域。 2016-01-01
zone-id 实例所属可用区。 2016-01-01
serial-number 实例所对应的序列号。 2016-01-01
source-address Yum 或者 apt 源,只支持 Linux 实例。 2016-01-01
kms-server KMS 激活服务器,只支持 Windows 实例。 2016-01-01
wsus-server/wu-server 更新服务器,只支持 Windows 实例。 2016-01-01
wsus-server/wu-status-server 实例更新状态监控服务器,只支持 Windows 实例。 2016-01-01
vpc-id 实例所属 VPC ID。 2016-01-01
vpc-cidr-block 实例所属 VPC 的网段。 2016-01-01
vswitch-cidr-block 实例所属虚拟交换机的网段。 2016-01-01
vswitch-id 实例所属虚拟交换机 ID。 2016-01-01
ram/security-credentials/[role-name] 由实例 RAM 角色的策略所生成的 STS 临时凭证。只有在实例指定了 RAM 角色后,您才能获取 STS 临时凭证。其中 [role-name] 参数需要替换为实例 RAM 角色的名称。
说明 STS 临时凭证更新时间早于凭证失效前半小时,在这半小时内,新旧 STS 临时凭证均可以使用。
2016-01-01
instance/spot/termination-time 抢占式实例的操作系统设置的停机释放时间,时区标准为 UTC,格式为 yyyy-MM-ddThh:mm:ssZ。例如,2018-04-07T17:03:00Z。 2016-01-01
instance/virtualization-solution ECS 虚拟化方案,支持 Virt 1.0 和 Virt 2.0。 2016-01-01
instance/virtualization-solution-version 内部 Build 号。 2016-01-01
instance/last-host-landing-time 实例所在宿主机的最新变更时间。 2016-01-01
instance-identity/pkcs7 实例标识签名。 2016-01-01

动态实例元数据项

实例同时可以获取一些动态变化的元数据。动态实例元数据是在实例初次启动后产生的数据,目前支持下列数据项:

  • 运维类:活跃中的 系统事件,在实例内部运行:
    curl http://100.100.100.200/2016-01-01/maintenance/active-system-events
  • 标识类实例标识,在实例内部运行:
    curl http://100.100.100.200/2016-01-01/dynamic/instance-identity/document
  • 实例配置类:实例 自定义数据,在实例内部运行:
    curl http://100.100.100.200/2016-01-01/user-data