Java Aws ImportImageTask失败,出现内部错误500

Java 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状

我不熟悉AWS(AmazonWeb服务)和AWSSDK(JAVA)。起初,我试图找到如何在amazon中使用aws sdk创建VM,但a找不到任何方法。 我发现另一个解决方案是使用EC2
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());
}
}
}

我认为您没有满足此处提到的一个或多个要求: