web-dev-qa-db-fra.com

Les instances non Windows avec un type de virtualisation 'hvm' ne sont actuellement pas prises en charge pour ce type d'instance: [AWS Cloudformation]

J'essaie de créer une instance t2.micro ec2 avec Amazon linux en tant qu'OS utilisant cloudformation. Voici le fichier json (les parties qui comptent).

    "FileName" :{
        "Type" : "String",
        "Default" : "cf-file.sh",
        "AllowedValues": [ "cf-file.sh"]
    },
    "InstanceType" : {
      "Description" : "WebServer EC2 instance type",
      "Type" : "String",
      "Default" : "t2.micro",
      "AllowedValues" : ["t2.micro"],
      "ConstraintDescription" : "must be a valid EC2 instance type."
    },

       "AMIID" :{
         "Type": "String",
        "Default":"AMI-1ecae776",
        "AllowedValues":["AMI-1ecae776"]
    }
  },
  "Resources" : {
    "EC2Instance" : {
      "Type" : "AWS::EC2::Instance",
      "Properties" : {
        "UserData" : {
                "Fn::Base64" : {
                    "Fn::Join" : [ 
                            "", 
                            [
                                "#!/bin/bash\n",
                                "yes y | yum install dos2unix\n",
                                "touch ",{ "Ref" : "FileName" },"\n",
                                "chmod 777 ",{ "Ref" : "FileName" },"\n" 
                            ]
                    ]
                 } 
        },
          "KeyName" : { "Ref" : "KeyName" },
        "ImageId" : { "Ref" : "AMIID" }
      }
    },

Quand j'exécute ce fichier, j'obtiens l'erreur suivante

Non-Windows instances with a virtualization type of 'hvm' are currently not supported for this instance type

Je suppose que cette erreur survient lorsque nous utilisons le type d'instance de famille t1 mais que j'utilise t2.micro. S'il vous plaît expliquer la raison pour laquelle est-ce?

14
Subham Tripathi

L'attribut " InstanceType " est manquant dans la section Propriétés de Ressources. Par conséquent, le type d'instance par défaut (m1.small) qui ne prend pas en charge le type de virtualisation 'HVM' peut être pris. J'ai fait face au problème similaire, corrigé en ajoutant l'attribut Type d'instance. De plus, le type d'instance ' t2.micro ' ne prend pas en charge le périphérique racine de stockage d'instance. Veuillez vous référer à l'extrait de code ci-dessous pour référence:


"Parameters":{
    "ServerKeyName":{
        "Description" :"key pair to connect to  Server",
        "Type": "AWS::EC2::KeyPair::KeyName"
    },
    "InstanceType" : {
        "Description" : "Type of EC2 instance to launch",
        "Type" : "String",
        "Default" : "t2.micro"
    },
    ....
    ....
}
....
....
"Properties" : {
    "KeyName" : { "Ref" : "ServerKeyName" },

    "Tags" : [
    {
        "Key" : "Name",
        "Value" : "test Server"
    }],

    "ImageId" : { "Ref" : "InstanceAMI" },
    "InstanceType" : { "Ref" : "InstanceType"},
    ....
    ....
    ....
}
21
randhirkr

Si quelqu'un rencontre cette erreur en essayant de créer une AMI de Packer. Assurez-vous que votre fichier de modèle porte le nom d'une extension de packer et non de json.

Par exemple, "packer build template.json" échouait avec 

Erreur lors du lancement de l'instance source: InvalidParameterCombination: les instances non Windows avec un type de virtualisation «hvm» ne sont actuellement pas prises en charge pour ce type d'instance. code d'état: 400, identifiant de la demande:

Alors que packer build template.packer fonctionne très bien. 

0
Mike Padg