81 lines
2.1 KiB
HCL
81 lines
2.1 KiB
HCL
# 查看美国区 Oracle Cloud 资源
|
|
terraform {
|
|
required_providers {
|
|
oci = {
|
|
source = "oracle/oci"
|
|
version = "~> 7.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
# 直接配置美国区域 Provider - 不依赖 Consul
|
|
provider "oci" {
|
|
alias = "us_check"
|
|
tenancy_ocid = var.tenancy_ocid
|
|
user_ocid = var.user_ocid
|
|
fingerprint = var.fingerprint
|
|
private_key_path = "./oci_api_key.pem"
|
|
region = "us-ashburn-1"
|
|
}
|
|
|
|
# 获取美国区域的所有实例
|
|
data "oci_core_instances" "us_instances" {
|
|
provider = oci.us_check
|
|
compartment_id = var.tenancy_ocid
|
|
}
|
|
|
|
# 获取美国区域的所有磁盘卷
|
|
data "oci_core_volumes" "us_volumes" {
|
|
provider = oci.us_check
|
|
compartment_id = var.tenancy_ocid
|
|
}
|
|
|
|
# 获取美国区域的所有启动卷
|
|
data "oci_core_boot_volumes" "us_boot_volumes" {
|
|
provider = oci.us_check
|
|
availability_domain = "TZXJ:US-ASHBURN-AD-1"
|
|
compartment_id = var.tenancy_ocid
|
|
}
|
|
|
|
# 输出所有实例信息
|
|
output "us_instances_status" {
|
|
value = {
|
|
for instance in data.oci_core_instances.us_instances.instances :
|
|
instance.display_name => {
|
|
id = instance.id
|
|
state = instance.state
|
|
shape = instance.shape
|
|
availability_domain = instance.availability_domain
|
|
time_created = instance.time_created
|
|
}
|
|
}
|
|
description = "美国区域所有实例状态"
|
|
}
|
|
|
|
# 输出磁盘状态 - 关键信息!
|
|
output "us_volumes_status" {
|
|
value = {
|
|
for volume in data.oci_core_volumes.us_volumes.volumes :
|
|
volume.display_name => {
|
|
id = volume.id
|
|
state = volume.state
|
|
size_in_gbs = volume.size_in_gbs
|
|
time_created = volume.time_created
|
|
}
|
|
}
|
|
description = "美国区域所有数据磁盘状态"
|
|
}
|
|
|
|
# 输出启动磁盘状态 - 更关键!
|
|
output "us_boot_volumes_status" {
|
|
value = {
|
|
for boot_volume in data.oci_core_boot_volumes.us_boot_volumes.boot_volumes :
|
|
boot_volume.display_name => {
|
|
id = boot_volume.id
|
|
state = boot_volume.state
|
|
size_in_gbs = boot_volume.size_in_gbs
|
|
time_created = boot_volume.time_created
|
|
}
|
|
}
|
|
description = "美国区域所有启动磁盘状态"
|
|
} |