Erstellen Sie eine Amazon EC2 EC2-Instance für CodeDeploy (AWS CloudFormation Vorlage) - AWS CodeDeploy

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen Sie eine Amazon EC2 EC2-Instance für CodeDeploy (AWS CloudFormation Vorlage)

Sie können unsere AWS CloudFormation Vorlage verwenden, um schnell eine Amazon EC2 EC2-Instance zu starten, auf der Amazon Linux oder Windows Server ausgeführt wird. Sie können die AWS CLI, die CodeDeploy Konsole oder die AWS APIs verwenden, um die Instance mit der Vorlage zu starten. Zusätzlich zum Starten der Instance übernimmt die Vorlage folgende Aufgaben:

  • Weist an AWS CloudFormation , der Instanz die Erlaubnis zu erteilen, an CodeDeploy Bereitstellungen teilzunehmen.

  • Markiert die Instanz, sodass sie während einer Bereitstellung gefunden werden CodeDeploy kann.

  • Installiert den CodeDeploy Agenten und führt ihn auf der Instanz aus.

Sie müssen unsere AWS CloudFormation nicht verwenden, um eine Amazon EC2 EC2-Instance einzurichten. Alternativen finden Sie unter Arbeiten mit Instanzen für CodeDeploy.

Wir stellen keine AWS CloudFormation Vorlage für Amazon EC2 EC2-Instances bereit, auf denen Ubuntu Server oder Red Hat Enterprise Linux (RHEL) ausgeführt werden.

Bevor Sie beginnen

Bevor Sie die AWS CloudFormation Vorlage zum Starten von Amazon EC2 EC2-Instances verwenden können, stellen Sie sicher, dass Sie die folgenden Schritte ausführen.

  1. Stellen Sie sicher, dass Sie einen Administratorbenutzer erstellt haben, wie unter beschriebenSchritt 1: Einrichtung. Vergewissern Sie sich, dass der Benutzer über die folgenden Mindestberechtigungen verfügt, und fügen Sie alle Rechte hinzu, die nicht vorhanden sind:

    • Wolkenbildung: *

    • codedeploy:*

    • ec2:*

    • ich bin: AddRoleToInstanceProfile

    • ich bin: CreateInstanceProfile

    • ich bin: CreateRole

    • ich bin: DeleteInstanceProfile

    • ich bin: DeleteRole

    • ich bin: DeleteRolePolicy

    • ich bin: GetRole

    • ich bin: DeleteRolePolicy

    • ich bin: PutRolePolicy

    • ich bin: RemoveRoleFromInstanceProfile

  2. Stellen Sie sicher, dass Sie über ein Instance-Schlüsselpaar verfügen, um den SSH-Zugriff auf die Amazon EC2-Instance, auf der Amazon Linux ausgeführt wird, oder den RDP-Zugriff auf die Instance, auf der Windows Server ausgeführt wird, zu ermöglichen.

    Um einen Schlüsselpaarnamen zu finden, öffnen Sie die Amazon EC2 EC2-Konsole unter https://console.aws.amazon.com/ec2. Wählen Sie im Navigationsbereich unter Network & Security (Netzwerk und Sicherheit) Key Pairs (Schlüsselpaare) aus und notieren Sie den Schlüsselpaarnamen in der Liste.

    Informationen zum Generieren eines neuen key pair finden Sie unter Erstellen Ihres key pair mit Amazon EC2. Stellen Sie sicher, dass das key pair in einer der unter Region und Endpunkte in Allgemeine AWS-Referenzaufgeführten Regionen erstellt wurde. Andernfalls können Sie das Instanzschlüsselpaar nicht mit verwenden CodeDeploy.

Starten Sie eine Amazon EC2 EC2-Instance mit der AWS CloudFormation Vorlage (Konsole)

  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS CloudFormation Konsole unter https://console.aws.amazon.com/cloudformation.

    Wichtig

    Melden Sie sich AWS Management Console mit demselben Konto an, das Sie verwendet habenErste Schritte mit CodeDeploy. Wählen Sie in der Navigationsleiste in der Regionsauswahl eine der Regionen aus, die unter Region und Endpunkte in aufgeführt sind. Allgemeine AWS-Referenz CodeDeploy unterstützt nur diese Regionen.

  2. Wählen Sie Stapel erstellen aus.

  3. Wählen Sie unter Vorlage auswählen die Option Geben Sie eine Amazon S3 S3-Vorlagen-URL an. Geben Sie in das Feld den Speicherort der AWS CloudFormation Vorlage für Ihre Region ein und wählen Sie dann Weiter aus.

    Region Speicherort der AWS CloudFormation Vorlage
    Region USA Ost (Ohio) http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region USA Ost (Nord-Virginia) http://s3.amazonaws.com/aws-codedeploy-us-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region US West (N. California) http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region USA West (Oregon) http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Kanada (Zentral) http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (Irland) http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (London) http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (Paris) http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (Frankfurt) http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Israel (Tel Aviv) http://s3-il-central-1.amazonaws.com/aws-codedeploy-il-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asien-Pazifik (Hongkong)-Region http://s3-ap-east-1.amazonaws.com/aws-codedeploy-ap-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asia Pacific (Tokyo) Region http://s3-ap-northeast-1.amazonaws.com/aws-codedeploy-ap-northeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asia Pacific (Seoul) Region http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Singapur) http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Sydney) http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Melbourne) https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Mumbai) http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Südamerika (São Paulo) aws-codedeploy-ap-northeast-1.s3.sa-east-1.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json
  4. Geben Sie in das Feld Stack name (Stack-Name) einen Namen ein (z. B. CodeDeployDemoStack).

  5. Geben Sie im Feld Parameters (Parameter) Folgendes ein und wählen Sie dann Next (Weiter) aus.

    • Geben Sie für InstanceCountdie Anzahl der Instances ein, die Sie starten möchten. (Wir empfehlen, den Standardwert 1 beizubehalten.)

    • Geben Sie für den Instance-Typ ein InstanceType, den Sie starten möchten (oder behalten Sie den Standardwert t1.micro bei).

    • Geben Sie für KeyPairNameden Namen des Instanzschlüsselpaars key pair. Geben Sie nur den Namen des Schlüsselpaars ein, nicht die Dateierweiterung des Schlüsselpaars.

    • Geben Sie im OperatingSystemFeld ein, Windows um Instanzen zu starten, auf denen Windows Server ausgeführt wird (oder behalten Sie die Standardeinstellung Linux bei).

    • Geben Sie im Feld SSHLocation den IP-Adressbereich ein, der für die Verbindung mit der Instance über SSH oder RDP verwendet werden soll (oder behalten Sie die Standardeinstellung 0.0.0.0/0 bei).

      Wichtig

      Die Standardeinstellung von 0.0.0.0/0 wird nur zu Demonstrationszwecken bereitgestellt. CodeDeploy erfordert nicht, dass Amazon EC2 EC2-Instances uneingeschränkten Zugriff auf Ports haben. Als bewährte Methode empfehlen wir, Zugriff auf SSH- (und HTTP)-Ports einzuschränken. Weitere Informationen finden Sie unter Tipps zur Sicherung Ihrer Amazon EC2 EC2-Instance.

    • Geben Sie den Instance-Tag-Schlüssel ein TagKey, mit dem die Instances während der Bereitstellung identifiziert CodeDeploy werden sollen (oder behalten Sie die Standardeinstellung Name bei).

    • Geben Sie für den Instanz-Tag-Wert ein TagValue, mit dem die Instances während der Bereitstellung identifiziert CodeDeploy werden sollen (oder behalten Sie den Standardwert von bei CodeDeployDemo).

  6. Lassen Sie auf der Seite Options (Optionen) die Optionsfelder leer, und wählen Sie Next (Weiter).

    Wichtig

    AWS CloudFormation Tags unterscheiden sich von CodeDeploy Tags. AWS CloudFormation verwendet Tags, um die Verwaltung Ihrer Infrastruktur zu vereinfachen. CodeDeploy verwendet Tags, um Amazon EC2 EC2-Instances zu identifizieren. Sie haben CodeDeploy Tags auf der Seite „Parameter angeben“ angegeben.

  7. Wählen Sie auf der Seite Überprüfen unter Funktionen das Feld Ich bestätige, dass AWS CloudFormation möglicherweise IAM-Ressourcen erstellt werden, und wählen Sie dann Erstellen aus.

    Nachdem AWS CloudFormation der Stack erstellt und die Amazon EC2 EC2-Instances gestartet wurden, wird CREATE_COMPLETE in der Spalte Status in der AWS CloudFormation Konsole angezeigt. Dieser Vorgang kann einige Minuten dauern.

Informationen zur Überprüfung, ob der CodeDeploy Agent auf den Amazon EC2 EC2-Instances ausgeführt wird, finden Sie unterVerwaltung des CodeDeploy Agentenbetriebs, und fahren Sie dann fort mit. Erstellen Sie eine Anwendung mit CodeDeploy

Starten Sie eine Amazon EC2 EC2-Instance mit der AWS CloudFormation Vorlage ()AWS CLI

  1. Verwenden Sie unsere AWS CloudFormation Vorlage in einem Aufruf des create-stack Befehls. Dieser Stack startet eine neue Amazon EC2 EC2-Instance, auf der der CodeDeploy Agent installiert ist.

    So starten Sie eine Amazon EC2 EC2-Instance, auf der Amazon Linux ausgeführt wird:

    aws cloudformation create-stack \ --stack-name CodeDeployDemoStack \ --template-url templateURL \ --parameters ParameterKey=InstanceCount,ParameterValue=1 ParameterKey=InstanceType,ParameterValue=t1.micro \ ParameterKey=KeyPairName,ParameterValue=keyName ParameterKey=OperatingSystem,ParameterValue=Linux \ ParameterKey=SSHLocation,ParameterValue=0.0.0.0/0 ParameterKey=TagKey,ParameterValue=Name \ ParameterKey=TagValue,ParameterValue=CodeDeployDemo \ --capabilities CAPABILITY_IAM

    So starten Sie eine Amazon EC2 EC2-Instance, auf der Windows Server ausgeführt wird:

    aws cloudformation create-stack --stack-name CodeDeployDemoStack --template-url template-url --parameters ParameterKey=InstanceCount,ParameterValue=1 ParameterKey=InstanceType,ParameterValue=t1.micro ParameterKey=KeyPairName,ParameterValue=keyName ParameterKey=OperatingSystem,ParameterValue=Windows ParameterKey=SSHLocation,ParameterValue=0.0.0.0/0 ParameterKey=TagKey,ParameterValue=Name ParameterKey=TagValue,ParameterValue=CodeDeployDemo --capabilities CAPABILITY_IAM

    KeyName ist der Name des Instanzschlüsselpaars. Geben Sie nur den Namen des Schlüsselpaars ein, nicht die Dateierweiterung des Schlüsselpaars.

    template-url ist der Speicherort der AWS CloudFormation Vorlage für Ihre Region:

    Region Speicherort der Vorlage AWS CloudFormation
    Region USA Ost (Ohio) http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region USA Ost (Nord-Virginia) http://s3.amazonaws.com/aws-codedeploy-us-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region US West (N. California) http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region USA West (Oregon) http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Kanada (Zentral) http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (Irland) http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (London) http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (Paris) http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Europa (Frankfurt) http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Israel (Tel Aviv) http://s3-il-central-1.amazonaws.com/aws-codedeploy-il-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asien-Pazifik (Hongkong)-Region http://s3-ap-east-1.amazonaws.com/aws-codedeploy-ap-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asia Pacific (Tokyo) Region http://s3-ap-northeast-1.amazonaws.com/aws-codedeploy-ap-northeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asia Pacific (Seoul) Region http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Singapur) http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Sydney) http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Melbourne) https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Asien-Pazifik (Mumbai) http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Region Südamerika (São Paulo) aws-codedeploy-ap-northeast-1.s3.sa-east-1.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json

    Dieser Befehl erstellt einen AWS CloudFormation Stack mit dem NamenCodeDeployDemoStack, der die AWS CloudFormation Vorlage im angegebenen Amazon S3 S3-Bucket verwendet. Die Amazon EC2 EC2-Instance basiert auf dem Instance-Typ t1.micro, Sie können jedoch jeden beliebigen Typ verwenden. Sie ist mit dem Wert CodeDeployDemo getaggt, aber Sie können sie mit jedem beliebigen Wert taggen. Das angegebene Instance-Schlüsselpaar wurde darauf angewendet.

  2. Rufen Sie den describe-stacks Befehl auf, um zu überprüfen, ob der angegebene AWS CloudFormation Stack erfolgreich erstellt CodeDeployDemoStack wurde:

    aws cloudformation describe-stacks --stack-name CodeDeployDemoStack --query "Stacks[0].StackStatus" --output text

    Fahren Sie erst fort, wenn der Wert CREATE_COMPLETE zurückgegeben wurde.

Informationen zur Überprüfung, ob der CodeDeploy Agent auf der Amazon EC2 EC2-Instance ausgeführt wird, finden Sie unterVerwaltung des CodeDeploy Agentenbetriebs, und fahren Sie dann fort mit. Erstellen Sie eine Anwendung mit CodeDeploy