Java Aws ImportImageTask失败,出现内部错误500
我不熟悉AWS(AmazonWeb服务)和AWSSDK(JAVA)。起初,我试图找到如何在amazon中使用aws sdk创建VM,但a找不到任何方法。 我发现另一个解决方案是使用EC2Java Aws ImportImageTask失败,出现内部错误500,java,amazon-web-services,amazon-ec2,amazon-s3,Java,Amazon Web Services,Amazon Ec2,Amazon S3,我不熟悉AWS(AmazonWeb服务)和AWSSDK(JAVA)。起初,我试图找到如何在amazon中使用aws sdk创建VM,但a找不到任何方法。 我发现另一个解决方案是使用EC2Imageimport可以使用本地磁盘在AWS中创建VM,因此我尝试为其实现流程,但由于下面的内部错误而失败 错误消息:发生内部错误(服务:AmazonEC2; 状态代码:500;错误代码:InternalError;请求ID: c3bab0f1-d70a-4c72-ba91-21004045088a)HTTP状
Imageimport
可以使用本地磁盘在AWS中创建VM,因此我尝试为其实现流程,但由于下面的内部错误而失败
错误消息:发生内部错误(服务:AmazonEC2;
状态代码:500;错误代码:InternalError;请求ID:
c3bab0f1-d70a-4c72-ba91-21004045088a)HTTP状态代码:500 AWS错误
代码:内部错误错误类型:未知请求ID:c3bab0f1-d70a-4c72-ba91-21004045088a 任何一个谁是家庭与AWS请帮助我,如果有人知道如何在AWS中创建虚拟机与磁盘上传在桶请分享它。 下面是我试过的
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import com.amazonaws.AmazonClientException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.regions.Region;
import com.amazonaws.regions.Regions;
import com.amazonaws.regions.ServiceAbbreviations;
import com.amazonaws.services.ec2.AmazonEC2;
import com.amazonaws.services.ec2.AmazonEC2AsyncClient;
import com.amazonaws.services.ec2.model.ImageDiskContainer;
import com.amazonaws.services.ec2.model.ImportImageRequest;
import com.amazonaws.services.ec2.model.UserBucket;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.Bucket;
public class SSBucketFinder {
static AmazonS3 s3;
static AmazonEC2 ec2;
static AWSCredentials credentials = null;
private static void init() throws Exception {
credentials = new BasicAWSCredentials("#################",
"###############################");
s3 = new AmazonS3Client(credentials);
ec2 = new AmazonEC2AsyncClient(credentials);
}
public static void main(String[] args) throws Exception {
System.out.println("List of buckets:");
init();
try {
List<Bucket> buckets = s3.listBuckets();
for (Bucket bucket : buckets) {
System.out.println(bucket.getName());
}
} catch (AmazonServiceException ase) {
System.out.println("Error Message: " + ase.getMessage());
System.out.println("HTTP Status Code: " + ase.getStatusCode());
System.out.println("AWS Error Code: " + ase.getErrorCode());
System.out.println("Error Type: " + ase.getErrorType());
System.out.println("Request ID: " + ase.getRequestId());
} catch (AmazonClientException ace) {
System.out.println("Error Message: " + ace.getMessage());
}
UserBucket ub = new UserBucket();
ub.setS3Bucket("surebkt1");
ImportImageRequest iir = new ImportImageRequest();
Collection<ImageDiskContainer> diskContainers = new ArrayList<ImageDiskContainer>();
ImageDiskContainer idc = new ImageDiskContainer();
idc.setDeviceName("C:\\ubuntuminimal\\87EA3BAC-A8C0-4F76-ACA8-FE440C5C7B85_1.vhd");
idc.setFormat("vhd");
idc.setUserBucket(ub);
diskContainers.add(idc);
iir.setDiskContainers(diskContainers);
iir.setArchitecture("x86_64");
iir.setDescription("Import Task");
iir.setHypervisor("xen");
iir.setRequestCredentials(credentials);
iir.setPlatform("linux");
try {
System.out.println("EC2 Import image");
ec2.importImage(iir);
} catch (AmazonServiceException ase) {
System.out.println("Error Message: " + ase.getMessage());
System.out.println("HTTP Status Code: " + ase.getStatusCode());
System.out.println("AWS Error Code: " + ase.getErrorCode());
System.out.println("Error Type: " + ase.getErrorType());
System.out.println("Request ID: " + ase.getRequestId());
}
}
}
import java.util.ArrayList;
导入java.util.Collection;
导入java.util.List;
导入com.amazonaws.AmazonClientException;
导入com.amazonaws.AmazonServiceException;
导入com.amazonaws.auth.AWSCredentials;
导入com.amazonaws.auth.BasicAWSCredentials;
导入com.amazonaws.regions.Region;
导入com.amazonaws.regions.regions;
导入com.amazonaws.regions.servicebroviations;
导入com.amazonaws.services.ec2.AmazonEC2;
导入com.amazonaws.services.ec2.AmazonEC2AsyncClient;
导入com.amazonaws.services.ec2.model.ImageDiskContainer;
导入com.amazonaws.services.ec2.model.ImportImageRequest;
导入com.amazonaws.services.ec2.model.UserBucket;
导入com.amazonaws.services.s3.AmazonS3;
导入com.amazonaws.services.s3.amazon3Client;
导入com.amazonaws.services.s3.model.Bucket;
公共类SSBucketFinder{
静态amazons3s3;
静态AmazonEC2-ec2;
静态AWSCredentials凭证=null;
私有静态void init()引发异常{
凭证=新的基本凭证(“凭证”),
"###############################");
s3=新AmazonS3Client(凭证);
ec2=新AmazonEC2AsyncClient(凭据);
}
公共静态void main(字符串[]args)引发异常{
System.out.println(“存储桶列表:”);
init();
试一试{
List bucket=s3.listbakes();
用于(铲斗:铲斗){
System.out.println(bucket.getName());
}
}捕获(AmazonServiceException ase){
System.out.println(“错误消息:+ase.getMessage());
System.out.println(“HTTP状态代码:+ase.getStatusCode());
System.out.println(“AWS错误代码:+ase.getErrorCode());
System.out.println(“错误类型:+ase.getErrorType());
System.out.println(“请求ID:+ase.getRequestId());
}捕获(AmazonClientException ace){
System.out.println(“错误消息:+ace.getMessage());
}
UserBucket ub=新的UserBucket();
ub.设置3桶(“surebkt1”);
ImportImageRequest iir=新的ImportImageRequest();
Collection diskContainers=new ArrayList();
ImageDiskContainer idc=新的ImageDiskContainer();
idc.setDeviceName(“C:\\ubuntuminimal\\87EA3BAC-A8C0-4F76-ACA8-FE440C5C7B85_1.vhd”);
idc.setFormat(“vhd”);
idc.setUserBucket(ub);
diskContainers.add(idc);
iir.设置磁盘容器(磁盘容器);
iir.setArchitecture(“x86_64”);
iir.setDescription(“导入任务”);
iir.setHypervisor(“xen”);
iir.setRequestCredentials(凭证);
iir.setPlatform(“linux”);
试一试{
System.out.println(“EC2导入图像”);
ec2.进口量(iir);
}捕获(AmazonServiceException ase){
System.out.println(“错误消息:+ase.getMessage());
System.out.println(“HTTP状态代码:+ase.getStatusCode());
System.out.println(“AWS错误代码:+ase.getErrorCode());
System.out.println(“错误类型:+ase.getErrorType());
System.out.println(“请求ID:+ase.getRequestId());
}
}
}
我认为您没有满足此处提到的一个或多个要求: