CloudFormation: So erhalten Sie eine Liste von Schlüsselpaaren in einer bestimmten Region

CloudFormation: So erhalten Sie eine Liste von Schlüsselpaaren in einer bestimmten Region

Ich habe eine sehr einfache CF-Vorlage, die eine EC2-Instanz erstellt. Das Schlüsselpaar wird als Parameter angegeben. Ich möchte, dass die Liste der möglichen Schlüsselpaare automatisch ausgefüllt wird.

Resources:
  MyInstance:
    Type: AWS::EC2::Instance
    Properties:
      AvailabilityZone: eu-west-2a
      ImageId: ami-0e80a462ede03e653
      InstanceType: t3.nano
      KeyName: !Ref SSHKey

Parameters:
  SSHKey:
    Type: String
    Description: name of the key pair to ssh into the instance
    AllowedValues:
      # populate automatically

Wie kann ich mit CloudFormation die Liste der Schlüsselpaare in der Region abrufen, in der die Vorlage bereitgestellt wird?

Antwort1

Statt zu Type: StringverwendenType: AWS::EC2::KeyPair::KeyNameund die Liste sollte für Sie ausgefüllt sein.

Dies sollte Folgendes bewirken:

Parameters:
  SSHKey:
    Type: AWS::EC2::KeyPair::KeyName
    Description: name of the key pair to ssh into the instance

KasseAWS-spezifische Parametertypenfür eine vollständige Liste der Parametertypen, die Sie verwenden können. Einige füllen die verfügbaren Werte aus (wie die SSH-Schlüssel, VPC-IDs, Subnetz-IDs usw.), andere nicht (z. B. die AMI-Image-IDs).

Hoffentlich hilft das :)

verwandte Informationen