Festlegen von Konfigurationsoptionen vor der Umgebungserstellung - AWS Elastic Beanstalk

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.

Festlegen von Konfigurationsoptionen vor der Umgebungserstellung

AWS Elastic Beanstalk unterstützt eine große Anzahl von Konfigurationsoptionen, mit denen Sie die Einstellungen, die für die Ressourcen in der Umgebung gelten, ändern können. Viele dieser Optionen haben Standardwerte, die Sie überschreiben können, um Ihre Umgebung anzupassen. Andere Optionen lassen sich für die Aktivierung zusätzlicher Funktionen konfigurieren.

Elastic Beanstalk unterstützt zwei Methoden, um die Einstellungen der Konfigurationsoptionen zu speichern. Konfigurationsdateien im YAML- oder JSON-Format können im Quellcode der Anwendung in ein Verzeichnis mit dem Namen .ebextensions eingebunden und als Teil des Quell-Bundles der Anwendung bereitgestellt werden. Die Konfigurationsdateien lassen sich lokal erstellen und verwalten.

Gespeicherte Konfigurationen sind Vorlagen, die Sie aus einer ausgeführten Umgebung oder einer JSON-Optionsdatei erstellen und in Elastic Beanstalk speichern. Vorhandene gespeicherte Konfigurationen können auch erweitert werden, um eine neue Konfiguration zu erstellen.

Anmerkung

Die in Konfigurationsdateien und gespeicherten Konfigurationen definierten Einstellungen haben eine geringere Priorität als Einstellungen, die während oder nach der Umgebungserstellung konfiguriert wurden, einschließlich der empfohlenen Werte, die von der Elastic-Beanstalk-Konsole und der EB-CLI zugewiesen werden. Details dazu finden Sie unter Precedence.

Zudem können Optionen auch in Form eines JSON-Dokuments angegeben und im Rahmen einer Umgebungserstellung oder -aktualisierung mit der EB-CLI oder der direkt in Elastic Beanstalk bereitgestellt werde AWS CLI. Werden Optionen auf diese Weise direkt in Elastic Beanstalk bereitgestellt, setzt dies alle anderen Methoden außer Kraft.

Eine vollständige Liste der verfügbaren Optionen finden Sie unter Konfigurationsoptionen.

Konfigurationsdateien (.ebextensions)

Konfigurieren Sie mit .ebextensions die Optionen, die für eine ordnungsgemäße Funktionsweise der Anwendung erforderlich sind, und stellen Sie Standardwerte für andere Optionen bereit, die mit einer höheren Priorität überschrieben werden können. Die in .ebextensions spezifizierten Optionen weisen die niedrigste Priorität auf und werden von Einstellungen mit jeder anderen Priorität außer Kraft gesetzt.

Zur Verwendung von Konfigurationsdateien erstellen Sie einen Ordner mit dem Namen .ebextensions auf der obersten Ebene des Projektquellcodes. Fügen Sie eine Datei mit der Erweiterung .config hinzu und geben Sie die Optionen wie folgt an:

option_settings: - namespace: namespace option_name: option name value: option value - namespace: namespace option_name: option name value: option value

Beispielsweise wird mit der folgenden Konfigurationsdatei die Zustandsprüfungs-URL für die Anwendung auf festgeleg /health:

healthcheckurl.config

option_settings: - namespace: aws:elasticbeanstalk:application option_name: Application Healthcheck URL value: /health

Im JSON-Format:

{ "option_settings" : [ { "namespace" : "aws:elasticbeanstalk:application", "option_name" : "Application Healthcheck URL", "value" : "/health" } ] }

Damit wird der Elastic-Load-Balancing-Load-Balancer in der Elastic-Beanstalk-Umgebung so konfiguriert, dass eine HTTP-Anforderung über den Pfad /health an die einzelnen EC2-Instances gesendet wird, um deren Zustand zu bestimmen.

Anmerkung

Für YAML sind konsistente Einrückungen erforderlich. Wählen Sie die entsprechende Einrückungsebene aus, wenn Sie Inhalte in einer Beispielkonfigurationsdatei ersetzen, und stellen Sie sicher, dass Ihr Texteditor Leerzeichen statt Tabulatorzeichen zum Einrücken verwendet.

Binden Sie das Verzeichnis .ebextensions in das Quell-Bundle der Anwendung ein und stellen Sie es in einer neuen oder vorhandenen Elastic-Beanstalk-Umgebung bereit.

Konfigurationsdateien unterstützen neben option_settings noch weitere Abschnitte für die Anpassung der Software und Dateien, die auf den Servern in der Umgebung ausgeführt werden. Weitere Informationen finden Sie unter .Ebextensions.

Gespeicherte Konfigurationen

Erstellen Sie eine gespeicherte Konfiguration, um Einstellungen zu speichern, die Sie während oder nach einer Umgebungserstellung mit der Elastic-Beanstalk-Konsole, der EB-CLI oder der einer vorhandenen Umgebung zugewiesenen habe AWS CLI. Gespeicherte Konfigurationen gehören zu einer Anwendung und können auf neue oder bestehende Umgebungen für die Anwendung angewendet werden.

Elastic-Beanstalk-Konsole

So erstellen Sie eine gespeicherte Konfiguration (Elastic-Beanstalk-Konsole)
  1. Öffnen Sie die Elastic-Beanstalk-Konsole und wählen Sie in der Liste Regions (Regionen) Ihre AWS-Region aus.

  2. Wählen Sie im Navigationsbereich Environments (Umgebungen) aus und wählen Sie dann in der Liste den Namen Ihrer Umgebung aus.

    Anmerkung

    Wenn Sie viele Umgebungen haben, filtern Sie Umgebungsliste mit der Suchleiste.

  3. Wählen Sie Actions (Aktionen) und anschließend Save Configuration (Konfiguration speichern) aus.

  4. Verwenden Sie das Dialogfeld auf dem Bildschirm, um die Aktion abzuschließen.

Gespeicherte Konfigurationen werden im S3-Bucket von Elastic Beanstalk in einem Ordner gespeichert, der nach der Anwendung benannt ist. Beispielsweise befinden sich Konfigurationen für die Anwendung my-app in der Region us-west-2 für die Kontonummer 123456789012 unter s3://elasticbeanstalk-us-west-2-123456789012/resources/templates/my-app.

EB-CLI

Die EB-CLI bietet unter eb config auch Unterbefehle für die Interaktion mit gespeicherten Konfigurationen:

So erstellen Sie eine gespeicherte Konfiguration (EB-CLI)
  1. Speichern Sie die zugeordnete aktuelle Konfiguration der Umgebung:

    ~/project$ eb config save --cfg my-app-v1

    In der EB-CLI wird die Konfiguration unter gespeichert ~/project/.elasticbeanstalk/saved_configs/my-app-v1.cfg.yml

  2. Nehmen Sie bei Bedarf lokale Änderungen an der gespeicherten Konfiguration vor.

  3. Laden Sie die gespeicherte Konfiguration in S3 hoch:

    ~/project$ eb config put my-app-v1

AWS CLI

Erstellen Sie mit eine gespeicherte Konfiguration aus einer ausgeführten Umgebung aws elasticbeanstalk create-configuration-template

So erstellen Sie eine gespeicherte Konfiguration (AWS CLI)
  1. Ermitteln Sie die Umgebungs-ID der Elastic-Beanstalk-Umgebung mit describe-environments:

    $ aws elasticbeanstalk describe-environments --environment-name my-env { "Environments": [ { "ApplicationName": "my-env", "EnvironmentName": "my-env", "VersionLabel": "89df", "Status": "Ready", "Description": "Environment created from the EB CLI using \"eb create\"", "EnvironmentId": "e-vcghmm2zwk", "EndpointURL": "awseb-e-v-AWSEBLoa-1JUM8159RA11M-43V6ZI1194.us-west-2.elb.amazonaws.com", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.2 running Multi-container Docker 1.7.1 (Generic)", "CNAME": "my-env-nfptuqaper.elasticbeanstalk.com", "Health": "Green", "AbortableOperationInProgress": false, "Tier": { "Version": " ", "Type": "Standard", "Name": "WebServer" }, "HealthStatus": "Ok", "DateUpdated": "2015-10-01T00:24:04.045Z", "DateCreated": "2015-09-30T23:27:55.768Z" } ] }
  2. Speichern Sie die aktuelle Konfiguration der Umgebung mit create-configuration-template:

    $ aws elasticbeanstalk create-configuration-template --environment-id e-vcghmm2zwk --application-name my-app --template-name v1

Elastic Beanstalk speichert die Konfiguration in Ihrem Elastic-Beanstalk-Bucket in Amazon-S3.

JSON-Dokument

Sofern Sie Umgebungen mit der AWS CLI erstellen und aktualisieren, können Sie auch Konfigurationsoptionen im JSON-Format bereitstellen. Eine Bibliothek mit Konfigurationsdateien im JSON-Format ist hilfreich, wenn Sie Umgebungen mit der AWS CLI erstellen und verwalten.

Beispielsweise wird mit folgendem JSON-Dokument die Zustandsprüfungs-URL für die Anwendung auf festgeleg /health:

~/ebconfigs/healthcheckurl.json

[ { "Namespace": "aws:elasticbeanstalk:application", "OptionName": "Application Healthcheck URL", "Value": "/health" } ]

EB-CLI-Konfiguration

Die EB-CLI unterstützt nicht nur gespeicherte Konfigurationen sowie die direkte Umgebungskonfiguration mit eb config-Befehlen, sondern verfügt auch über eine Konfigurationsdatei. Mithilfe der darin enthaltenen Option default_ec2_keyname können Sie ein Amazon-EC2-Schlüsselpaar für den SSH-Zugriff auf Instances in der Umgebung angeben. In der EB-CLI wird diese Option verwendet, um die Konfigurationsoption EC2KeyName im Namespace aws:autoscaling:launchconfiguration festzulegen.

~/workspace/my-app/.elasticbeanstalk/config.yml

branch-defaults: master: environment: my-env develop: environment: my-env-dev deploy: artifact: ROOT.war global: application_name: my-app default_ec2_keyname: my-keypair default_platform: Tomcat 8 Java 8 default_region: us-west-2 profile: null sc: git