Java 如何从Amazon实例获取操作系统信息?
使用JavaAPI从Amazon实例获取操作系统有什么方法吗? 平台上有一些方法,但它只返回“Windows”或null,即使我得到了Windows,我如何才能知道它是什么类型的操作系统系列,比如Windows、Windows+sql标准、Windows+websql、Windows+sql enterpriceJava 如何从Amazon实例获取操作系统信息?,java,api,amazon-ec2,amazon,amazon-ami,Java,Api,Amazon Ec2,Amazon,Amazon Ami,使用JavaAPI从Amazon实例获取操作系统有什么方法吗? 平台上有一些方法,但它只返回“Windows”或null,即使我得到了Windows,我如何才能知道它是什么类型的操作系统系列,比如Windows、Windows+sql标准、Windows+websql、Windows+sql enterprice linux也是一样——我没有找到获取信息的方法——是ubuntu还是redhat?没有AmazonEC2API调用来查看“内部”AmazonEC2实例。但是,您可以获取有关用于启动实例
linux也是一样——我没有找到获取信息的方法——是ubuntu还是redhat?没有AmazonEC2API调用来查看“内部”AmazonEC2实例。但是,您可以获取有关用于启动实例的AMI的信息 下面是一个使用的示例,它对Java进行类似的API调用
$ aws ec2 describe-instances --query 'Reservations[*].Instances[*].ImageId' --filter Name=instance-id,Values=i-xxxxxxxx --output text
ami-d9fe9be3
$ aws ec2 describe-images --image-ids ami-d9fe9be3
{
"Images": [
{
"VirtualizationType": "hvm",
"Name": "amzn-ami-hvm-2014.03.2.x86_64-ebs",
"Hypervisor": "xen",
"ImageOwnerAlias": "amazon",
"SriovNetSupport": "simple",
"ImageId": "ami-d9fe9be3",
"State": "available",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/xvda",
"Ebs": {
"DeleteOnTermination": true,
"SnapshotId": "snap-c90a03fd",
"VolumeSize": 8,
"VolumeType": "standard",
"Encrypted": false
}
}
],
"Architecture": "x86_64",
"ImageLocation": "amazon/amzn-ami-hvm-2014.03.2.x86_64-ebs",
"RootDeviceType": "ebs",
"OwnerId": "137112412989",
"RootDeviceName": "/dev/xvda",
"CreationDate": "2014-06-11T19:46:45.000Z",
"Public": true,
"ImageType": "machine",
"Description": "Amazon Linux AMI x86_64 HVM EBS"
}
]
}
可以从
说明
字段中提取信息。但是,请注意,由于Microsoft提供了更新,Windows AMI每月都会被弃用。这意味着旧Windows实例可能无法访问有关其AMI的信息。没有Amazon EC2 API调用来查看“内部”Amazon EC2实例。但是,您可以获取有关用于启动实例的AMI的信息
下面是一个使用的示例,它对Java进行类似的API调用
$ aws ec2 describe-instances --query 'Reservations[*].Instances[*].ImageId' --filter Name=instance-id,Values=i-xxxxxxxx --output text
ami-d9fe9be3
$ aws ec2 describe-images --image-ids ami-d9fe9be3
{
"Images": [
{
"VirtualizationType": "hvm",
"Name": "amzn-ami-hvm-2014.03.2.x86_64-ebs",
"Hypervisor": "xen",
"ImageOwnerAlias": "amazon",
"SriovNetSupport": "simple",
"ImageId": "ami-d9fe9be3",
"State": "available",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/xvda",
"Ebs": {
"DeleteOnTermination": true,
"SnapshotId": "snap-c90a03fd",
"VolumeSize": 8,
"VolumeType": "standard",
"Encrypted": false
}
}
],
"Architecture": "x86_64",
"ImageLocation": "amazon/amzn-ami-hvm-2014.03.2.x86_64-ebs",
"RootDeviceType": "ebs",
"OwnerId": "137112412989",
"RootDeviceName": "/dev/xvda",
"CreationDate": "2014-06-11T19:46:45.000Z",
"Public": true,
"ImageType": "machine",
"Description": "Amazon Linux AMI x86_64 HVM EBS"
}
]
}
可以从
说明
字段中提取信息。但是,请注意,由于Microsoft提供了更新,Windows AMI每月都会被弃用。这意味着旧的Windows实例可能无法访问有关其AMI的信息。谢谢,我得到了相同的信息-如果AMI不包含说明-则无法确定其内部是什么类型的操作系统。亚马逊如何确定他们为某个虚拟机收取的费用——如果他们的API无法获得这笔费用的话?存在与识别操作系统的磁盘映像相关的隐藏信息。这些信息在创建磁盘时与磁盘关联,并用于确定正在进行的充电。谢谢,我得到了相同的信息-如果AMI不包含描述-则无法确定内部是什么类型的操作系统。亚马逊如何确定他们为某个虚拟机收取的费用——如果他们的API无法获得这笔费用的话?存在与识别操作系统的磁盘映像相关的隐藏信息。此信息在创建磁盘时与磁盘关联,并用于确定正在进行的计费。否,唯一的选项是获取windows计算机平台,但根本没有帮助否,唯一的选项是获取windows计算机平台,但根本没有帮助