Elastic Beanstalk Java SE-Plattform verwenden - 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.

Elastic Beanstalk Java SE-Plattform verwenden

In diesem Thema wird beschrieben, wie Sie Ihre Java-Anwendungen konfigurieren, erstellen und ausführen, die auf dem AWS Elastic Beanstalk Java SE-Plattform.

Die Elastic Beanstalk Java SE-Plattform besteht aus einer Reihe von Plattformversionen für Java-Webanwendungen, die aus einer kompilierten JAR Datei eigenständig ausgeführt werden können. Sie können Ihre Anwendung lokale kompilieren oder den Quellcode mit einem Build-Skript hochladen, um die Anwendung auf der Instance zu kompilieren. Die Versionen der Java SE-Plattform sind in Plattformzweige gruppiert, von denen jede einer Hauptversion von Java entspricht.

Anmerkung

Elastic Beanstalk analysiert die Datei Ihrer Anwendung nicht. JAR Bewahren Sie Dateien, die Elastic Beanstalk benötigt, außerhalb der JAR Datei auf. Fügen Sie beispielsweise die cron.yaml Datei einer Worker-Umgebung im Stammverzeichnis des Quellpakets Ihrer Anwendung neben der JAR Datei ein.

In der Elastic Beanstalk-Konsole sind Konfigurationsoptionen für das Ändern der Konfiguration einer ausgeführten Umgebung verfügbar. Um zu verhindern, dass die Umgebungskonfiguration beim Beenden verloren geht, können Sie gespeicherte Konfigurationen verwenden, um Ihre Einstellungen zu speichern und sie später für eine andere Umgebung zu übernehmen.

Zum Speichern der Einstellungen im Quellcode können Sie Konfigurationsdateien einschließen. Die Einstellungen in Konfigurationsdateien werden jedes Mal verwendet, wenn Sie eine Umgebung erstellen oder Ihre Anwendung bereitstellen. Mit Konfigurationsdateien können Sie auch Pakete installieren, Skripts ausführen und andere Instance-Anpassungen bei Bereitstellungen vornehmen.

Die Java SE-Plattform in Elastic Beanstalk umfasst einen nginx-Server, der als Reverse-Proxy-Server fungiert und zwischengespeicherte statische Inhalte liefert sowie Anforderungen an die Anwendung weiterleitet. Die Plattform stellt auch Konfigurationsoptionen bereit, um den Proxy-Server zur Verarbeitung statischer Komponenten aus einem Ordner im Quellcode zu konfigurieren und so die Auslastung für die Anwendung zu reduzieren. In erweiterten Szenarien können Sie eigene CONF-Dateien in das Quell-Bundle einbinden, um die Proxy-Konfiguration von Elastic Beanstalk zu erweitern oder zu überschreiben.

Wenn Sie nur eine einzige JAR Datei für Ihre Anwendungsquelle bereitstellen (eigenständig, nicht innerhalb eines Quellpakets), benennt Elastic Beanstalk Ihre JAR Datei um application.jar in und führt sie dann mit. java -jar application.jar Schließen Sie eine optionale Procfile-Datei in Ihr Quell-Bundle ein, um die Prozesse zu konfigurieren, die auf den Server-Instances in Ihrer Umgebung ausgeführt werden. A Procfile ist erforderlich, wenn Sie mehr als eine JAR in Ihrem Quellpaket-Stammverzeichnis haben oder wenn Sie den Java-Befehl anpassen möchten, um Optionen festzulegen. JVM

Wir empfehlen, immer eine Procfile im Quellpaket mit Ihrer Anwendung bereitzustellen. Auf diese Weise können Sie genau steuern, welche Prozesse Elastic Beanstalk für Ihre Anwendung ausführt und welche Argumente diese Prozesse erhalten.

Um Java-Klassen zu kompilieren und andere Build-Befehle für die EC2 Instanzen in Ihrer Umgebung zum Zeitpunkt der Bereitstellung auszuführen, fügen Sie Ihrem Anwendungsquellpaket eine Buildfile hinzu. A Buildfile ermöglicht es Ihnen, Ihren Quellcode unverändert bereitzustellen und auf dem Server zu bauen, anstatt ihn lokal zu kompilieren. JARs Die Java SE-Plattform bietet gängige Build-Tools für Server-Builds.

Details zu den verschiedenen Möglichkeiten für das Erweitern einer Linux-basierten Elastic Beanstalk-Plattform finden Sie unter Erweitern von Elastic Beanstalk-Linux-Plattformen.

Konfigurieren der Java SE-Umgebung

Mit den Java SE-Plattformeinstellungen können Sie das Verhalten Ihrer EC2 Amazon-Instances optimieren. Sie können die EC2 Amazon-Instance-Konfiguration der Elastic Beanstalk Beanstalk-Umgebung mithilfe der Elastic Beanstalk Beanstalk-Konsole bearbeiten.

Mithilfe der Elastic Beanstalk-Konsole aktivieren Sie die Protokollrotation an Amazon S3 und konfigurieren Variablen, die die Anwendung aus der Umgebung auslesen kann.

So konfigurieren Sie Ihre Java SE-Umgebung in der Elastic Beanstalk-Konsole:
  1. Öffnen Sie die Elastic Beanstalk Beanstalk-Konsole und wählen Sie in der Regionenliste Ihre AWS-Region.

  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, verwenden Sie die Suchleiste, um die Umgebungsliste zu filtern.

  3. Wählen Sie im Navigationsbereich Configuration (Konfiguration) aus.

  4. Wählen Sie in der Konfigurationskategorie Updates, monitoring and logging  (Updates, Überwachung und Protokolle) die Option Edit (Bearbeiten) aus.

Protokolloptionen

Im Abschnitt mit den Protokolloptionen sind zwei Einstellungen vorhanden:

  • Instance profile (Instance-Profil) – Gibt das Instance-Profil an, das zum Zugriff auf den entsprechenden Amazon S3-Bucket der Anwendung berechtigt ist.

  • Rotation der Protokolldateien nach Amazon S3 aktivieren — Gibt an, ob Protokolldateien für die EC2 Amazon-Instances Ihrer Anwendung in den Amazon S3-Bucket kopiert werden, der Ihrer Anwendung zugeordnet ist.

Statische Dateien

Um die Leistung zu verbessern, können Sie den Abschnitt Statische Dateien verwenden, um den Proxy-Server so zu konfigurieren, dass statische Dateien (z. HTML B. Bilder) aus einer Reihe von Verzeichnissen in Ihrer Webanwendung bereitgestellt werden. Legen Sie für jedes Verzeichnis den virtuellen Pfad zum Verzeichnis-Mapping fest. Wenn der Proxy-Server eine Anfrage nach einer Datei unter dem angegebenen Pfad erhält, stellt er die Datei direkt bereit, anstatt die Anfrage an Ihre Anwendung weiterzuleiten.

Weitere Informationen zum Konfigurieren statischer Dateien mit der Elastic Beanstalk-Konsole finden Sie unter Bereitstellen von statischen Dateien.

Umgebungseigenschaften

Im Abschnitt Umgebungseigenschaften können Sie die Umgebungskonfigurationseinstellungen für die EC2 Amazon-Instances angeben, auf denen Ihre Anwendung ausgeführt wird. Umgebungseigenschaften werden als Schlüssel/Wert-Paare an die Anwendung weitergeleitet.

In der Java SE-Umgebung mit Elastic Beanstalk-Ausführung kann über auf die Umgebungsvariablen zugegriffen werde System.getenv(). Beispielsweise können Sie mit folgendem Code eine Eigenschaft mit dem Namen API_ENDPOINT als Variable lesen:

String endpoint = System.getenv("API_ENDPOINT");

Weitere Informationen finden Sie unter Umgebungseigenschaften und andere Softwareeinstellungen.

Java SE-Konfigurations-Namespace

Mithilfe einer Konfigurationsdatei können Sie im Rahmen der Bereitstellung Konfigurationsoptionen festlegen und andere Instance-Konfigurationsaufgaben ausführen. Die Konfigurationsoptionen können plattformspezifisch sein oder für alle Plattformen im Elastic Beanstalk-Service als Ganzes gelten. Die Konfigurationsoptionen sind in Namespaces organisiert.

Die Java SE-Plattform definiert keine plattformspezifischen Namespaces. Sie können den Proxy so konfigurieren, dass statische Dateien mittels des Namespace aws:elasticbeanstalk:environment:proxy:staticfiles bereitgestellt werden. Einzelheiten und ein Beispiel finden Sie unter Bereitstellen von statischen Dateien.

Elastic Beanstalk bietet zahlreiche Konfigurationsoptionen für die Anpassung Ihrer Umgebung. Zusätzlich zu den Konfigurationsdateien können Sie Konfigurationsoptionen auch über die Konsole, gespeicherte Konfigurationen, den EB CLI oder den AWS CLI. KonfigurationsoptionenWeitere Informationen finden Sie unter.

Wenn Ihre Elastic Beanstalk Java SE-Umgebung eine Amazon AMI Linux-Plattformversion (vor Amazon Linux 2) verwendet, lesen Sie die zusätzlichen Informationen in diesem Abschnitt.

Hinweise
  • Die Informationen in diesem Thema gelten nur für Plattformbranches, die auf Amazon Linux AMI (AL1) basieren. AL2023/ AL2 Plattformzweige sind nicht mit früheren Amazon Linux AMI (AL1) -Plattformversionen kompatibel und erfordern andere Konfigurationseinstellungen.

  • Am 18. Juli 2022 hat Elastic Beanstalk den Status aller Plattformbranchen, die auf Amazon Linux AMI (AL1) basieren, auf eingestellt gesetzt. Weitere Informationen zur Migration zu einem aktuellen und vollständig unterstützten Plattformzweig für Amazon Linux 2023 finden Sie unter Migrieren der Elastic-Beanstalk-Linux-Anwendung zu Amazon Linux 2023 oder Amazon Linux 2.

Mithilfe einer Konfigurationsdatei können Sie im Rahmen der Bereitstellung Konfigurationsoptionen festlegen und andere Instance-Konfigurationsaufgaben durchführen. Die Konfigurationsoptionen können plattformspezifisch sein oder für alle Plattformen im Elastic Beanstalk-Service als Ganzes gelten. Die Konfigurationsoptionen sind in Namespaces organisiert.

Die Java SE-Plattform unterstützt zusätzlich zu den von allen Plattformen unterstützten Namespaces eine weitere Konfigurationsoption für einen plattformspezifischen Namespace. Mit dem Namespace aws:elasticbeanstalk:container:java:staticfiles können Sie Optionen definieren, um für die Webanwendung Pfade zu Ordnern im Quell-Bundle der Anwendung zuzuweisen, die statische Inhalte enthalten.

Zum Beispiel werden mit diesem option_settings-Snippet zwei Optionen im Namespace der statischen Dateien definiert. Die erste ordnet den Pfad /public dem Ordner public zu, die zweite ordnet den Pfad /images dem Ordner img zu:

option_settings: aws:elasticbeanstalk:container:java:staticfiles: /html: statichtml /images: staticimages

Die über diesen Namespace zugewiesenen Ordner müssen sich tatsächlich im Stamm des Quell-Bundles befinden. Sie können einem Ordner in einer Datei keinen Pfad zuordnen. JAR

Elastic Beanstalk bietet zahlreiche Konfigurationsoptionen für die Anpassung Ihrer Umgebung. Neben den Konfigurationsdateien können Sie auch Konfigurationsoptionen mithilfe der Konsole, gespeicherten Konfigurationen, der EB CLI oder der AWS CLI. KonfigurationsoptionenWeitere Informationen finden Sie unter.