eb create - AWS Elastic Beanstalk

eb create

Beschreibung

Erstellt eine neue Umgebung und stellt eine Anwendungsversion darin bereit.

Anmerkung
  • Um den Befehl eb create für eine .NET-Anwendung zu verwenden, müssen Sie ein Bereitstellungspaket wie in Erstellen eines Quell-Bundles für eine .NET-Anwendung beschrieben erstellen und die CLI-Konfiguration zum Bereitstellen des Pakets als Artefakt gemäß der Beschreibung in Bereitstellen eines Artefakts anstelle des Projektordners einrichten.

  • Zum Erstellen von Umgebungen mit der EB-CLI ist eine Service-Rolle erforderlich. Eine Servicerolle generieren Sie, indem Sie eine Umgebung in der Elastic-Beanstalk-Konsole erstellen. Falls keine Servicerolle vorhanden ist, versucht die EB-CLI eine Rolle zu erstellen, wenn Sie ausführen eb create.

Sie können die Anwendungsversion aus unterschiedlichen Quellen bereitstellen:

  • Standardmäßig: die Anwendung wird aus dem Quellcode im lokalen Projektverzeichnis bereitgestellt.

  • Mit der Option --version kann die Anwendung aus einer Anwendungsversion bereitgestellt werden, die bereits in Ihrer Anwendung vorhanden ist.

  • Wenn Ihr Projektverzeichnis keinen Anwendungscode enthält oder wenn Sie die Option --sample verwenden: Bereitgestellt aus einer Beispielanwendung, die für die Plattform Ihrer Umgebung spezifisch ist.

Syntax

eb create

eb create environment-name

Ein Umgebungsname muss zwischen 4 und 40 Zeichen lang sein. Der Name darf nur Buchstaben, Zahlen und Bindestriche (-) enthalten. Ein Umgebungsname darf nicht mit einem Bindestrich beginnen oder enden.

Wenn Sie einen Umgebungsnamen in den Befehl aufnehmen, fordert die EB-CLI Sie nicht auf, eine Auswahl zu treffen oder eine Servicerolle zu erstellen.

Wenn Sie den Befehl ohne Umgebungsnamensargument ausführen, wird er in einem interaktiven Ablauf ausgeführt und Sie werden aufgefordert, Werte für einige Einstellungen auszuwählen. Falls Sie eine Beispielanwendung bereitstellen, werden Sie in diesem interaktiven Ablauf von der EB-CLI auch gefragt, ob Sie diese Beispielanwendung in Ihr lokales Projektverzeichnis herunterladen möchten. Durch Herunterladen können Sie die EB-CLI später mit der neuen Umgebung verwenden, um Vorgänge auszuführen, die den Code der Anwendung erfordern, z. B eb deploy.

Einige interaktive Flow-Aufforderungen werden nur unter bestimmten Bedingungen angezeigt. Wenn Sie beispielsweise einen Application Load Balancer verwenden möchten und Ihr Konto mindestens einen freigebbaren Application Load Balancer enthält, zeigt Elastic Beanstalk eine Aufforderung an, in der Sie gefragt werden, ob Sie einen freigegebenen Load Balancer verwenden möchten. Wenn in Ihrem Konto kein gemeinsam nutzbarer Application Load Balancer vorhanden ist, wird diese Eingabeaufforderung nicht angezeigt.

Optionen

Keine dieser Optionen ist erforderlich. Wenn Sie eb create ohne Optionen ausführen, werden Sie von der EB-CLI aufgefordert, einen Wert für jede Einstellung einzugeben oder auszuwählen.

Name

Beschreibung

-d

oder

--branch_default

Legen Sie die Umgebung als Standard-Umgebung für das aktuelle Repository fest.

--cfg config-name

Verwenden Sie Plattformeinstellungen aus einer gespeicherten Konfiguration in .elasticbeanstalk/saved_configs/ oder Ihrem Amazon-S3-Bucket. Geben Sie den Namen der Datei ohne die .cfg.yml-Erweiterung an.

-c subdomain-name

oder

--cname subdomain-name

Der Name der Subdomäne für ein Präfix des CNAME DNS-Eintrags, der auf Ihre Website weiterleitet.

Typ: Zeichenfolge

Standard: Der Umgebungsname

-db

oder

--database

Fügt eine Datenbank an die Umgebung an. Wenn Sie eb create mit der Option --database, jedoch ohne die Optionen --database.username und --database.password ausführen, werden Sie von EB-CLI aufgefordert, den Master-Benutzernamen und das Master-Passwort der Datenbank einzugeben.

-db.engine engine

oder

--database.engine engine

Der Typ der Datenbank-Engine. Wenn Sie eb create mit dieser Option ausführen, startet EB-CLI die Umgebung mit einer angefügten Datenbank. Dies ist auch dann der Fall, wenn Sie den Befehl nicht mit der Option --databaseausgeführt haben.

Typ: Zeichenfolge

Zulässige Werte: mysql, oracle-se1, postgres, sqlserver-ex, sqlserver-web, sqlserver-se

-db.i instance_type

oder

--database.instance instance_type

Der Typ der Amazon-EC2-Instance für die Datenbank. Wenn Sie eb create mit dieser Option ausführen, startet EB-CLI die Umgebung mit einer angefügten Datenbank. Dies ist auch dann der Fall, wenn Sie den Befehl nicht mit der Option --databaseausgeführt haben.

Typ: Zeichenfolge

Zulässige Werte:

Amazon RDS unterstützt einen Standardsatz DB-Instances. Beachten Sie bei der Auswahl der geeigneten DB-Instance diese spezifischen Aspekte. Weitere Informationen finden Sie unter Erstellen einer DB-Instance im Amazon RDS-Benutzerhandbuch.

-db.pass password

oder

--database.password password

Das Passwort für die Datenbank. Wenn Sie eb create mit dieser Option ausführen, startet EB-CLI die Umgebung mit einer angefügten Datenbank. Dies ist auch dann der Fall, wenn Sie den Befehl nicht mit der Option --databaseausgeführt haben.

-db.size number_of_gigabytes

oder

--database.size number_of_gigabytes

Die Anzahl der Gigabyte (GB) für die Datenbankspeicherung. Wenn Sie eb create mit dieser Option ausführen, startet EB-CLI die Umgebung mit einer angefügten Datenbank. Dies ist auch dann der Fall, wenn Sie den Befehl nicht mit der Option --databaseausgeführt haben.

Typ: Zahl

Zulässige Werte:

  • MySQL5 bis 1024. Der Standardwert ist 5.

  • Postgres5 bis 1024. Der Standardwert ist 5.

  • Oracle10 bis 1024. Der Standardwert ist 10.

  • Microsoft SQL Server Express Edition30.

  • Microsoft SQL Server Web Edition30.

  • Microsoft SQL Server Standard Edition200.

-db.user username (Benutzername

oder

--database.username username (Benutzername

Der Benutzername für die Datenbank. Wenn Sie eb create mit dieser Option ausführen, startet EB-CLI die Umgebung mit einer angefügten Datenbank, auch wenn Sie den Befehl nicht mit der --database-Option ausgeführt haben. Wenn Sie eb create mit der --database-Option, jedoch ohne die --database.username- und --database.password-Optionen ausführen, werden Sie von EB-CLI aufgefordert, den Benutzernamen und das Passwort der Master-Datenbank einzugeben.

-db.version Version

oder

--database.version Version

Wird verwendet, um die Version des Datenbankmoduls anzugeben. Wenn diese Markierung vorhanden ist, startet die Umgebung mit einer Datenbank mit der angegebenen Versionsnummer, auch wenn die --database Markierung nicht vorhanden ist.

--elb-type Typ

Der Load Balancer-Typ.

Typ: Zeichenfolge

Zulässige Werte: classic, application, network

Standard: application

-es

oder

--enable-spot

Aktivieren Sie Spot-Instance-Anforderungen für Ihre Umgebung. Weitere Informationen finden Sie unter Auto Scaling-Gruppe.

Verwandte Optionen:

  • --instance-types

  • --on-demand-base-capacity

  • --on-demand-above-base-capacity

  • --spot-max-price

--env-group-suffix groupname Der Gruppenname, der an den Umgebungsnamen angehängt werden soll. Nur zur Verwendung mit Compose-Umgebungen.

--envvars

Umgebungseigenschaften in einer durch Kommas getrennten Liste mit dem Format name (Name)=value (Wert). Informationen zu den Beschränkungen finden Sie unter Konfigurieren von Umgebungseigenschaften.

-ip profile_name

oder

--instance_profile profile_name

Die Instance-Profil mit der IAM-Rolle mit den temporären Anmeldeinformationen, die Ihre Anwendung für den Zugriff auf temporäre AWS Ressourcen benötigt.

-it

oder

--instance-types type1[,type2 ...]

Eine durch Kommas getrennte Liste von Amazon-EC2-Instance-Typen, die in Ihrer Umgebung verwendet werden sollen. Wenn Sie diese Option nicht angeben, stellt Elastic Beanstalk Standard-Instance-Typen bereit.

Weitere Informationen erhalten Sie unter Amazon EC2-Instances und Auto Scaling-Gruppe.

Wichtig

Die EB-CLI wendet diese Option nur auf Spot-Instances an. Es sei denn, diese Option wird mit dem --enable-spot verwenden, ignoriert die EB-CLI diese Option. Um einen Instanztyp für eine On-Demand-Instance anzugeben, verwenden Sie dazu die--intance-type (keine „s“) Option.

-i

oder

--instance_type

Der Amazon-EC2-Instance-Typ, den Ihre Umgebung verwenden soll. Wenn Sie diese Option nicht angeben, stellt Elastic Beanstalk einen Standard-Instance-Typ bereit.

Weitere Informationen finden Sie unter Amazon EC2-Instances.

Wichtig

Die EB-CLI wendet diese Option nur auf On-Demand-Instances an. Verwenden Sie diese Option nicht mit dem --enable-spot, da die EB-CLI sie ignoriert, wenn Sie dies tun. Um Exemplartypen für eine Spot-Instance anzugeben, verwenden Sie die Option--intance-types (mit der Option „s“).

-k key_name

oder

--keyname key_name

Der Name des Amazon-EC2-Schlüsselpaars zur Verwendung mit dem Secure-Shell-(SSH)-Client zur sicheren Anmeldung bei den Amazon-EC2-Instances, die Ihre Elastic-Beanstalk-Anwendung ausführen. Wenn Sie diese Option mit dem eb create Befehl bereitstellen, überschreibt der Wert alle Schlüsselnamen, die Sie mit eb initangegeben haben.

Zulässige Werte: Ein vorhandener Schlüsselname, der mit Amazon EC2 registriert ist.

-im number-of-instances

oder

--min-instances number-of-instances

Die minimale Anzahl von Amazon-EC2-Instances, die Sie für Ihre Umgebung benötigen.

Typ: Zahl (Ganzzahl)

Standard: 1

Gültige Werte: 1 bis 10000

-ix number-of-instances

oder

--max-instances number-of-instances

Die maximale Anzahl von Amazon-EC2-Instances, die Sie für Ihre Umgebung zulassen.

Typ: Zahl (Ganzzahl)

Standard: 4

Gültige Werte: 1 bis 10000

--modules component-a component-b

Liste der zu erstellenden Komponentenumgebungen. Nur zur Verwendung mit Compose-Umgebungen.

-sb

oder

--on-demand-base-capacity

Die Mindestanzahl von On-Demand-Instances, die von der Auto Scaling-Gruppe bereitgestellt werden, bevor Spot-Instances bei der Skalierung Ihrer Umgebung in Betracht gezogen werden.

Diese Option kann nur mit der Option --enable-spot angegeben werden. Weitere Informationen finden Sie unter Auto Scaling-Gruppe.

Typ: Zahl (Ganzzahl)

Standard: 0

Gültige Werte: 0 bis --max-instances (wenn nicht vorhanden: MaxSize-Option im aws:autoscaling:asg Namespace)

-sp

oder

--on-demand-above-base-capacity

Der Anteil der On-Demand-Instances als Teil der zusätzlichen Kapazität, den Ihre Auto-Scaling-Gruppe über die durch die --on-demand-base-capacity- Option angegebene Anzahl von Instances hinaus bereitstellt.

Diese Option kann nur mit der Option --enable-spot angegeben werden. Weitere Details finden Sie unter Auto Scaling-Gruppe.

Typ: Zahl (Ganzzahl)

Standard: 0 für eine Einzel-Instance-Umgebung; 70 für eine lastverteilte Umgebung

Gültige Werte: 0 bis 100

-p Plattformversion

oder

--platform Plattformversion

Die zu verwendende Plattformversion . Sie können eine Plattform, Name und Version einer Plattform, einen Plattformzweig, einen Lösungs-Stack-Namen oder einen Lösungs-Stack-ARN angeben. Zum Beispiel:

  • php, PHP, node.js – Die aktuelle Plattformversion für die angegebene Plattform

  • php-7.2, "PHP 7.2" – Die empfohlene (typischerweise neueste) PHP 7.2-Plattformversion

  • "PHP 7.2 running on 64bit Amazon Linux" – Die empfohlene (typischerweise neueste) PHP-Plattformversion in diesem Plattformzweig

  • "64bit Amazon Linux 2017.09 v2.6.3 running PHP 7.1" – Die PHP-Plattformversion, die von diesem Lösungs-Stack-Namen angegeben wird

  • "arn:aws:elasticbeanstalk:us-east-2::platform/PHP 7.1 running on 64bit Amazon Linux/2.6.3" – Die PHP-Plattformversion, die durch diesen Lösungs-Stack-ARN angegeben wird

Verwenden Sie eb platform list, um eine Liste der verfügbaren Konfigurationen anzuzeigen.

Wenn Sie die --platform-Option angeben, wird der durch eb init bereitgestellte Wert überschrieben.

-pr

oder

--process

Vorverarbeiten und Validieren des Umgebungsmanifests und der Konfigurationsdateien im Quell-Bundle. Durch die Validierung der Konfigurationsdateien können Probleme vor der Bereitstellung der Anwendungsversion für eine Umgebung identifiziert werden.

-r region

oder

--region region

Die AWS- Region, in der Sie die Anwendung bereitstellen möchten.

Eine Liste der Werte, die Sie für diese Option angeben können, finden Sie unter AWS Elastic Beanstalk Endpunkte und -Kontingente in der AWS Allgemeinen Referenz.

--sample

Stellen Sie die Beispielanwendung für die neue Umgebung anstelle von Code in Ihrem Repository bereit.

--scale number-of-instances

Starten mit der angegebenen Anzahl von Instances

--service-role servicerole Weisen Sie der Umgebung eine nicht standardmäßige Servicerolle zu.
Anmerkung

Geben Sie keine ARN ein. Geben Sie nur den Rollennamen ein. Elastic Beanstalk fügt den Rollennamen mit den richtigen Werten als Präfix hinzu, um den resultierenden ARN intern zu erstellen.

-ls load-balancer

oder

--shared-lb load-balancer

Konfigurieren Sie die Umgebung für die Verwendung eines freigegebenen Load Balancer. Geben Sie den Namen oder ARN eines freigebbaren Load Balancers in Ihrem Konto an. Dabei muss es sich um einen Application Load Balancer handeln, den Sie ausdrücklich erstellt haben. Es darf sich nicht um eine Lastenverteilung handeln, der von einer anderen Elastic-Beanstalk-Umgebung erstellt wurde. Weitere Informationen finden Sie unter Geteile Application Load Balancer.

Parameterbeispiele:

  • FrontEndLB – Ein Load Balancer-Name.

  • arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/FrontEndLB/0dbf78d8ad96abbc – Ein Application-Load-Balancer-ARN.

Sie können diese Option nur mit angebe --elb-type application. Wenn Sie diese Option ohne Angabe von --shared-lb angeben, erstellt Elastic Beanstalk einen dedizierten Load Balancer für die Umgebung.

-lp port

oder

--shared-lb-port port

Der standardmäßige Listener-Port des gemeinsam genutzten Load Balancers für diese Umgebung. Elastic Beanstalk fügt eine Listener-Regel hinzu, die den gesamten Datenverkehr von diesem Listener an den Standardumgebungsprozess weiterleitet. Weitere Informationen finden Sie unter Geteile Application Load Balancer.

Typ: Zahl (Ganzzahl)

Standard: 80

Gültige Werte: Jede Ganzzahl, die einen Listener-Port des freigegebenen Load Balancer darstellt.

--single

Erstellen Sie die Umgebung mit einer einzelnen Amazon-EC2-Instance und ohne Load Balancer.

Warnung

Eine Umgebung mit einer einzelnen Instance ist nicht geeignet für die Produktion. Falls die Instance während der Bereitstellung instabil wird, oder Elastic Beanstalk beendet wird und die Instance während eines Konfigurations-Update neu gestartet wird, steht Ihre Anwendung möglicherweise längere Zeit nicht zur Verfügung. Umgebungen mit einer einzelnen Instance können Sie für die Entwicklung, das Testen oder ein Staging nutzen. Für die Produktion verwenden Sie Umgebungen mit Load Balancing.

-sm

oder

--spot-max-price

Der Höchstpreis pro Einheitsstunde in USD, den Sie für eine Spot-Instance zu zahlen bereit sind.

Diese Option kann nur mit der Option --enable-spot angegeben werden. Weitere Details finden Sie unter Auto Scaling-Gruppe.

Typ: Zahl (Gleitkomma)

Standard: Der On-Demand-Preis für jeden Instance-Typ. Der Wert der Option ist in diesem Fall null.

Gültige Werte: 0.001 bis 20.0

Empfehlungen zu Höchstpreisoptionen für Spot-Instances finden Sie unter Spot-Instance-Preisverlauf im Amazon-EC2-Benutzerhandbuch für Linux-Instances.

--tags key1=value1[,key2=value2 ...]

Markieren Sie die Ressourcen in Ihrer Umgebung. Tags werden als durch Komma getrennte Liste von key=value-Paaren angegeben.

Weitere Informationen finden Sie unter Markieren von Umgebungen mit Tags.

-t worker

oder

--tier worker

Erstellen Sie eine Worker-Umgebung. Lassen Sie diese Option zum Erstellen einer Web-Server-Umgebung aus.

--timeout minutes

Legen Sie Anzahl der Minuten fest, bevor ein Timeout für den Befehl auftritt.

--version version_label

Gibt die Anwendungsversion an, die Sie für die Umgebung bereitgestellt haben möchten, im lokalen Projektverzeichnis an, anstelle des Anwendungsquellcodes.

Typ: Zeichenfolge

Zulässige Werte: Eine vorhandene Anwendungsversionsbezeichnung

--vpc

Konfigurieren Sie eine VPC für die Umgebung. Wenn Sie diese Option einschließen, werden Sie von der EB-CLI aufgefordert, alle erforderlichen Einstellungen vor dem Start der Umgebung einzugeben.

--vpc.dbsubnets subnet1,subnet2

Gibt Subnetze für Datenbank-Instances in einer VPC an. Erforderlich, wenn --vpc.id angegeben ist.

--vpc.ec2subnets subnet1,subnet2

Gibt Subnetze für Amazon-EC2-Instances in einer VPC an. Erforderlich, wenn --vpc.id angegeben ist.

--vpc.elbpublic

Startet den Elastic-Load-Balancing-Lastenverteilung in einem öffentlichen Subnetz in Ihrer VPC.

Diese Option können Sie nicht mit den Optionen --tier worker oder --single angeben.

--vpc.elbsubnets subnet1,subnet2

Gibt Subnetze für den Elastic-Load-Balancing-Lastenverteilung in einer VPC an.

Diese Option können Sie nicht mit den Optionen --tier worker oder --single angeben.

--vpc.id ID

Startet Ihre Umgebung in der angegeben VPC.

--vpc.publicip

Startet die Amazon-EC2-Instances in einem öffentlichen Subnetz in Ihrer VPC.

Diese Option können Sie nicht mit der Option --tier worker angeben.

--vpc.securitygroups securitygroup1,securitygroup2

Gibt Sicherheitsgruppen-IDs an. Erforderlich, wenn --vpc.id angegeben ist.

Allgemeine Optionen

Ausgabe

Wenn der Befehl erfolgreich war, werden Sie aufgefordert, Fragen zu beantworten und gibt den Status des erstellten Vorgangs zurück. Wenn es Probleme beim Starten gibt, können Sie über die eb events-Operation weitere Details erhalten.

Wenn Sie die CodeBuild-Unterstützung in Ihrer Anwendung aktiviert haben, zeigt eb create Informationen von CodeBuild an, wenn Ihr Code erstellt wird. Hinweise zur CodeBuild-Unterstützung in Elastic Beanstalk finden Sie unter Verwenden der EB CLI mit AWS CodeBuild.

Beispiele

Im folgenden Beispiel wird eine Umgebung im interaktiven Modus erstellt.

$ eb create Enter Environment Name (default is tmp-dev): ENTER Enter DNS CNAME prefix (default is tmp-dev): ENTER Select a load balancer type 1) classic 2) application 3) network (default is 2): ENTER Environment details for: tmp-dev Application name: tmp Region: us-east-2 Deployed Version: app-141029_145448 Environment ID: e-um3yfrzq22 Platform: 64bit Amazon Linux 2014.09 v1.0.9 running PHP 5.5 Tier: WebServer-Standard-1.0 CNAME: tmp-dev.elasticbeanstalk.com Updated: 2014-10-29 21:54:51.063000+00:00 Printing Status: ...

Im folgenden Beispiel wird auch eine Umgebung im interaktiven Modus erstellt. In diesem Beispiel enthält das Projektverzeichnis keinen Anwendungscode. Der Befehl stellt eine Beispielanwendung bereit und lädt diese in Ihr lokales Projektverzeichnis herunter.

$ eb create Enter Environment Name (default is tmp-dev): ENTER Enter DNS CNAME prefix (default is tmp-dev): ENTER Select a load balancer type 1) classic 2) application 3) network (default is 2): ENTER NOTE: The current directory does not contain any source code. Elastic Beanstalk is launching the sample application instead. Do you want to download the sample application into the current directory? (Y/n): ENTER INFO: Downloading sample application to the current directory. INFO: Download complete. Environment details for: tmp-dev Application name: tmp Region: us-east-2 Deployed Version: Sample Application Environment ID: e-um3yfrzq22 Platform: 64bit Amazon Linux 2014.09 v1.0.9 running PHP 5.5 Tier: WebServer-Standard-1.0 CNAME: tmp-dev.elasticbeanstalk.com Updated: 2017-11-08 21:54:51.063000+00:00 Printing Status: ...

Mithilfe den folgenden Befehlen können Sie eine Umgebung erstellen, ohne eine Eingabeaufforderung anzuzeigen.

$ eb create dev-env Creating application version archive "app-160312_014028". Uploading test/app-160312_014028.zip to S3. This may take a while. Upload Complete. Application test has been created. Environment details for: dev-env Application name: test Region: us-east-2 Deployed Version: app-160312_014028 Environment ID: e-6fgpkjxyyi Platform: 64bit Amazon Linux 2015.09 v2.0.8 running PHP 5.6 Tier: WebServer-Standard CNAME: UNKNOWN Updated: 2016-03-12 01:40:33.614000+00:00 Printing Status: ...

Mit dem folgenden Befehl wird eine Umgebung in einer benutzerdefinierten VPC erstellt.

$ eb create dev-vpc --vpc.id vpc-0ce8dd99 --vpc.elbsubnets subnet-b356d7c6,subnet-02f74b0c --vpc.ec2subnets subnet-0bb7f0cd,subnet-3b6697c1 --vpc.securitygroup sg-70cff265 Creating application version archive "app-160312_014309". Uploading test/app-160312_014309.zip to S3. This may take a while. Upload Complete. Environment details for: dev-vpc Application name: test Region: us-east-2 Deployed Version: app-160312_014309 Environment ID: e-pqkcip3mns Platform: 64bit Amazon Linux 2015.09 v2.0.8 running Java 8 Tier: WebServer-Standard CNAME: UNKNOWN Updated: 2016-03-12 01:43:14.057000+00:00 Printing Status: ...