descibe-images 命令的输出:
aws ec2 describe-images --image-id ami-0b898040803850657 --region us-east-1 --output json
包含 ImageLocation 行:
{
"Images": [
{
"Architecture": "x86_64",
"CreationDate": "2019-06-19T21:59:15.000Z",
"ImageId": "ami-0b898040803850657",
"ImageLocation": "amazon/amzn2-ami-hvm-2.0.20190618-x86_64-gp2",
"ImageType": "machine",
"Public": true,
"OwnerId": "137112412989",
"State": "available",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/xvda",
"Ebs": {
"Encrypted": false,
"DeleteOnTermination": true,
"SnapshotId": "snap-08091107f3acb12b2",
"VolumeSize": 8,
"VolumeType": "gp2"
}
}
],
"Description": "Amazon Linux 2 AMI 2.0.20190618 x86_64 HVM gp2",
"EnaSupport": true,
"Hypervisor": "xen",
"ImageOwnerAlias": "amazon",
"Name": "amzn2-ami-hvm-2.0.20190618-x86_64-gp2",
"RootDeviceName": "/dev/xvda",
"RootDeviceType": "ebs",
"SriovNetSupport": "simple",
"VirtualizationType": "hvm"
}
]
}
它是什么?我如何访问此位置?我可以在此位置找到哪种数据?
答案1
对于 AMI 映像,该ImageLocation
字段的含义根据 AMI 映像的类型而不同。
EBS 支持的 AMI 映像:
对于 EBS 支持的图像(根目录下的 EBS 卷),该ImageLocation
字段是图像所有者(通常是 12 位 AWS 帐号)和图像名称的组合。
它不是指实际位置(除非它是指 AWS 已知的某个内部位置)。但对我们来说,这不是一个可访问的位置。
S3 支持的 AMI 图像:
对于 S3 支持的图像(根处的实例存储),该ImageLocation
字段是图像清单文件(XML)在 S3 中的位置。
如果您有权访问 S3 存储桶,则实际上可以访问此位置。
从 AWS 管理控制台
在 AWS 管理控制台中ImageLocation
显示为“源”。将鼠标悬停在“源”字段上时,帮助气泡文本显示:
对于由 Amazon 实例存储支持的 AMI,这是 Amazon S3 源清单的位置。对于由 Amazon EBS 支持的 AMI,这是 AMI 的所有者和名称。
答案2
ImageLocation -> (string)
The location of the AMI.
ImageLocation 是所有者和图像名称的组合。
即:属于我:
account-number/ubuntu-1804-consul-2019-08-07T0834
归亚马逊所有:
aws-marketplace/zs9-ubuntu14-pro-php7.0-552-619b1fcc-9dc9-4c4d-87d5-5de08f456bd7-ami-a5e920b3.4
我想问题是您为什么需要访问它?您想做什么?