~> 弃用通知 Equinix Metal 将于2026年6月30日停止服务。所有 Metal 数据源将在该提供商的 5.0.0 版本中移除。如需继续使用,请使用该提供商的 4.x 版本直至服务终止。更多信息,请访问 https://docs.equinix.com/metal/。
equinix_metal_devices
可以利用该数据源查找符合筛选条件的设备列表。
如果您需要按 ID 或按项目 ID 和主机名获取单个设备,请使用 equinix_metal_device 数据源。
用法示例
# Following example will select c3.small.x86 devices which are deplyed in metro 'da' (Dallas)
# OR 'sv' (Sillicon Valley).
data "equinix_metal_devices" "example" {
project_id = local.project_id
filter {
attribute = "plan"
values = ["c3.small.x86"]
}
filter {
attribute = "metro"
values = ["da", "sv"]
}
}
output "devices" {
organization_id = local.org_id
value = data.equinix_metal_devices.example.devices
}
# Following example takes advantage of the `search` field in the API request, and will select devices with
# string "database" in one of the searched attributes. See `search` in argument reference.
data "equinix_metal_devices" "example" {
search = "database"
}
output "devices" {
value = data.equinix_metal_devices.example.devices
}
搜索与筛选
search 和 filter 的区别在于 search 是一个 API 参数,由 Equinix Metal 服务解析。“filter”参数会通过应用客户端过滤(在此提供程序内)来减少 API 列表(或搜索结果)。
论证参考
以下论点得到支持:
project_id- (可选)包含设备的项目的 ID。project_id和organization_id中必须设置一个。organization_id- (可选)包含设备的组织 ID。search- (可选) - 用于按主机名、描述、短 ID、预订短 ID、标签、计划名称、计划别名、设施代码、设施名称、操作系统名称、操作系统别名、IP 地址筛选设备的搜索字符串。filter- (可选)要筛选的一个或多个属性/值对。要筛选的属性列表可以在equinix_metal_device数据源的 schema 中找到。attribute- (必填)用于筛选的属性。筛选属性区分大小写。values- (必填)筛选值。筛选值区分大小写。如果为筛选器指定多个值,则默认情况下这些值使用“或”连接,并且请求返回与任何指定值匹配的所有结果。match_by- (可选)要应用的比较类型。取值范围为:in、re、substring、less_than、less_than_or_equal、greater_than、greater_than_or_equal。默认值为in。all- (可选)如果设置为 true,则值之间使用 AND 连接,请求仅返回与所有指定值都匹配的结果。默认值为false。
下面定义的 devices 块中的所有字段都可以用作 sort 和 filter 块的属性。
属性参考
除了上述所有参数外,还会导出以下属性:
devices- 具有类似 equninix_metal_device 数据源 中属性的资源列表。