Direkt zum Inhalt

Wie verwende ich .ebextensions, um meine Elastic Beanstalk-Umgebung anzupassen?

Lesedauer: 4 Minute
0

Ich möchte .ebextensions verwenden, um meine AWS Elastic Beanstalk-Umgebung anzupassen.

Lösung

Hinweis: Wenn du Fehler erhältst, wenn du AWS Command Line Interface (AWS CLI)-Befehle ausführst, findest du weitere Informationen unter Beheben von Fehlern für die AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.

.ebextensions-Verzeichnis einrichten

Führe die folgenden Schritte aus:

  1. Erstelle im Stammverzeichnis deines Anwendungspakets ein Verzeichnis mit dem Namen ebextensions.
  2. Speichere deine Konfigurationsdateien in diesem Verzeichnis. Dein Anwendungsquellpaket ähnelt dem folgenden Beispiel:
    ~/workspace/my-application/
    |-- .ebextensions
    |   |-- 01-server-configuration.config
    |   `-- 02-asg-healthcheck.config
    |-- index.php
    `-- styles.css
    Hinweis: Elastic Beanstalk verarbeitet Konfigurationsdateien im Verzeichnis .ebextensions in alphabetischer Reihenfolge. Verwende nummerierte Präfixe in deinen Dateinamen, um die Reihenfolge deiner Konfigurationen zu steuern.

Elastic Beanstalk-Umgebung anpassen

Verwende den Schlüssel option_settings, um deine Umgebungskonfiguration zu ändern.

Wenn du eine Umgebung mit der Elastic Beanstalk-Konsole oder der Elastic Beanstalk Command Line Interface (EB CLI) erstellen oder aktualisieren, wenden diese Clients die empfohlenen Werte an. Empfohlene Werte werden auf API-Ebene festgelegt und haben die höchste Priorität. Du kannst option_settings nicht verwenden, um die Konfigurationseinstellung zu ändern.

Prioritätsregeln können verhindern, dass deine Änderungen an option_settings auf die Umgebungskonfiguration angewendet werden. Verwende die Elastic Beanstalk-API-Operation UpdateEnvironment, um Einstellungen zu entfernen, die Elastic Beanstalk bei der Erstellung der Umgebung direkt auf die Umgebung angewendet hat. Du kannst auch den folgenden update-environment-AWS-CLI-Befehl verwenden:

aws elasticbeanstalk update-environment --application-name applicationname --environment-name environmentnamename --options-to-remove Namespace=aws:elasticbeanstalk:application:environment,OptionName==yourpropertyname

Hinweis: Ersetze **applicationname ** durch deinen Anwendungsnamen, environmentname durch deinen Umgebungsnamen und yourpropertyname durch deinen Eigenschaftsnamen.

Wenn du option_settings nicht verwenden kannst, um deine Konfiguration zu ändern, verwende den Resources-Schlüssel zur ](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-resources.html)Anpassung der Ressourcen[ in der Elastic Beanstalk-Umgebung.

Elastic Beanstalk fügt die Ressourcen, die du in den Konfigurationsdateien definierst, zur AWS CloudFormation-Vorlage hinzu, die deine Umgebung startet. Die CloudFormation-Vorlage unterstützt alle CloudFormation-Ressourcentypen. Weitere Informationen zu logischen Ressourcennamen findest du unter Ressourcen ändern, die Elastic Beanstalk für deine Umgebung erstellt.

Konfigurationsdateien müssen die Dateierweiterung .config haben und entweder das YAML- oder das JSON-Format verwenden.

Wenn deine Konfigurationsdatei das YAML-Format verwendet, stelle sicher, dass in deiner Datei einheitliche Leerzeichen für Einrückungen verwendet werden. Eine falsche Einrückung kann zu Fehlern bei der Bereitstellung führen.

Verwende Schlüssel, um Software auf Linux- oder Windows-Servern anzupassen. Verwende jeden Schlüssel in jeder Konfigurationsdatei nur einmal.

Für Plattformen, die auf Amazon Linux 2 und Amazon Linux 2023 basieren, ist es eine bewährte Methode, ** Buildfile**-, Procfile- und Plattform-Hooks zu verwenden, um benutzerdefinierten Code während der Instance-Bereitstellung auszuführen. Du kannst auch weiterhin Befehle und container_commands in deinen Konfigurationsdateien verwenden. Weitere Informationen findest du unter Wie verwende ich Plattform-Hooks, um meine Elastic Beanstalk-Umgebung anzupassen?

Wenn du deine Anwendung auf Elastic Beanstalk bereitstellst, verwende deine .ebextensions-Konfigurationsdateien, um die Amazon Elastic Compute Cloud (Amazon EC2)-Instances anzupassen. Beispiele für Konfigurationsdateien findest du unter elastic-beanstalk-samples auf der GitHub-Website.

Informationen zur Verwendung von.ebextensions zur Konfiguration von HTTPS für deine Umgebung findest du unter Konfigurieren von HTTPS für die Elastic-Beanstalk-Umgebung.

Benutzerdefinierte Einstellungen auf deine Anwendung anwenden

Erstelle ein Anwendungsquellpaket, das deine Konfigurationsdateien enthält, und stelle dann deine aktualisierte Anwendung bereit.

Hinweis: Tools zur Dateiarchivierung schließen möglicherweise keine versteckten Verzeichnisse ein, wenn du eine ZIP-Datei erstellst. Dateibrowser verbergen möglicherweise Ordner, die mit einem Punkt beginnen, z. B. .ebextensions. Füge den Ordner .ebextensions in das Stammverzeichnis des Anwendungspakets ein, wenn du das Anwendungsquellpaket erstellst.

Probleme mit der Konfiguration von.ebextensions beheben

Wenn Elastic Beanstalk deine .ebextensions-Konfiguration nach der Bereitstellung nicht anwendet, gehe wie folgt vor:

Überprüfen von Verzeichnis und Dateierweiterung

Prüfe die jüngsten Umgebungsereignisse in der Elastic Beanstalk-Konsole. Bereitstellungs- und Konfigurationsnachrichten von Elastic Beanstalk werden auf der Seite Ereignisse angezeigt. Vergewisser dich, dass du das Verzeichnis .ebextensions im Stammverzeichnis deines Quellpakets konfiguriert hast und dass deine Konfigurationsdateien die Dateierweiterung .config verwenden.

Überprüfen der Bereitstellungsprotokolle

Stelle eine Verbindung zu deiner Amazon EC2-Instance her und überprüfe /var/log/eb-engine.log auf Fehler, Startup-Fehler oder Bereitstellungsprobleme im Zusammenhang mit deinen Konfigurationsdateien. Überprüfe auch /var/log/cfn-init.log und /var/log/cfn-init-cmd.log auf Bereitstellungsergebnisse.

Informationen zum Anzeigen von Bereitstellungsprotokollen findest du unter Anzeigen der Bereitstellungsprotokolle in der Konsole.

Informationen zum Abrufen von Protokollen findest du unter Abrufen von Instance-Protokollen unter Anzeigen von Amazon EC2-Instances in der Elastic Beanstalk-Umgebung.

Letzte Konfigurationsänderungen rückgängig machen

Wenn deine Konfigurationsänderung für .ebextensions zu einem Bereitstellungsfehler geführt hat, stelle deine Anwendungsversion erneut bereit.

Ähnliche Informationen

Problembehebung in der Elastic Beanstalk-Umgebung

AWS OFFICIALAktualisiert vor 2 Monaten