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.
Schritt 3: Richten Sie Ihre Umgebung für die Ausführung des Skripts ein
Richten Sie Ihre Umgebung für die Ausführung des Skripts ein, indem Sie den folgenden Befehl verwenden.
pipenv install -r requirements.txt pipenv shell
Anmerkung
Derzeit kann das Skript nur einschichtige Anwendungen in Application Manager bereitstellen. Wenn Sie das Skript beispielsweise zweimal für zwei Ebenen im selben Stapel ausführen, erstellt das Skript zwei verschiedene Anwendungen in Application Manager.
Nachdem Sie Ihre Umgebung eingerichtet haben, überprüfen Sie die Skriptparameter. Sie können die verfügbaren Optionen für das Migrationsskript anzeigen, indem python3
stack_exporter.py --help Sie den Befehl ausführen.
| Parameter | Beschreibung | Erforderlich | Typ | Standardwert |
|---|---|---|---|---|
--layer-id |
Exportiert eine CloudFormation Vorlage für diese OpsWorks Layer-ID. | Ja | Zeichenfolge | |
--region |
Die AWS Region für den OpsWorks Stapel. Wenn sich Ihre OpsWorks Stack-Region und Ihre API-Endpunktregion unterscheiden, verwenden Sie die Stack-Region. Dies ist dieselbe Region wie die anderen Ressourcen in Ihrem OpsWorks Stack (z. B. EC2 Instances und Subnetze). | Nein | Zeichenfolge | us-east-1 |
--provision-application |
Standardmäßig stellt das Skript die von der CloudFormation Vorlage exportierte Anwendung bereit. Übergeben Sie diesen Parameter mit dem Wert FALSE an das Skript, um die Bereitstellung der CloudFormation Vorlage zu überspringen. | Nein | Boolesch | TRUE |
--launch-template |
Dieser Parameter definiert, ob eine vorhandene Startvorlage verwendet oder eine neue Startvorlage erstellt werden soll. Sie können eine neue Startvorlage erstellen, die die empfohlenen Instanzeigenschaften verwendet oder die Instanzeigenschaften verwendet, die einer Online-Instance entsprechen. Gültige Werte sind:
|
Nein | Zeichenfolge | RECOMMENDED |
--system-updates |
Definiert, ob Kernel- und Paket-Updates durchgeführt werden sollen, wenn die Instance gestartet wird. Gültige Werte sind:
|
Nein | Zeichenfolge | ALL_UPDATES |
--http-username |
Der Name des Systems Manager SecureString Manager-Parameters, der den Benutzernamen speichert, der für die Authentifizierung im HTTP-Archiv verwendet wird, das die benutzerdefinierten Kochbücher enthält. |
Nein | Zeichenfolge | |
--http-password |
Der Name des Systems Manager SecureString Manager-Parameters, der das Passwort speichert, das für die Authentifizierung im HTTP-Archiv verwendet wird, das die benutzerdefinierten Kochbücher enthält. |
Nein | Zeichenfolge | |
--repo-private-key |
Der Name des Systems Manager SecureString Manager-Parameters, der den SSH-Schlüssel speichert, der zur Authentifizierung bei dem Repository verwendet wird, das die benutzerdefinierten Kochbücher enthält. Wenn das Repository aktiviert ist GitHub, müssen Sie einen neuen Ed25519 SSH-Schlüssel generieren. Wenn Sie keinen neuen Ed25519 SSH-Schlüssel generieren, schlägt die Verbindung zum GitHub Repository fehl. |
Nein | Zeichenfolge | |
--lb-type |
Der Typ des Load Balancers, falls vorhanden, der bei der Migration Ihres vorhandenen Load Balancers erstellt werden soll. Gültige Werte sind:
|
Nein | Zeichenfolge | ALB |
--lb-access-logs-path |
Der Pfad zu einem vorhandenen S3-Bucket und das Präfix zum Speichern der Load Balancer-Zugriffsprotokolle. Der S3-Bucket und der Load Balancer müssen sich in derselben Region befinden. Wenn Sie keinen Wert angeben und der --lb-type Parameterwert auf gesetzt istNone, erstellt das Skript einen neuen S3-Bucket und ein neues Präfix. Stellen Sie sicher, dass es eine geeignete Bucket-Richtlinie für dieses Präfix gibt. |
Nein | Zeichenfolge | |
--enable-instance-protection |
Wenn auf gesetztTRUE, erstellt das Skript eine benutzerdefinierte Kündigungsrichtlinie (Lambda-Funktion) für Ihre Auto Scaling Scaling-Gruppe. EC2Instanzen mit einem protected_instance Tag sind vor Scale-In-Ereignissen geschützt. Fügen Sie jeder EC2 Instanz, die Sie vor Scale-In-Ereignissen schützen möchten, ein protected_instance Tag hinzu. |
Nein | Boolesch | FALSE |
--command-logs-bucket |
Der Name eines vorhandenen S3-Buckets, in dem die AWS ApplyChefRecipe AND-Protokolle gespeichert werden sollen. MountEBSVolumes Wenn Sie keinen Wert angeben, erstellt das Skript einen neuen S3-Bucket. |
Nein | Zeichenfolge | aws-opsworks-application-manager-logs- |
--custom-json-bucket |
Der Name eines vorhandenen S3-Buckets zum Speichern von benutzerdefiniertem JSON. Wenn Sie keinen Wert angeben, erstellt das Skript einen neuen S3-Bucket. | Nein | Zeichenfolge | aws-apply-chef-application-manager-transition-data- |
Hinweise:
-
Wenn Sie ein privates GitHub Repository verwenden, müssen Sie einen neuen
Ed25519Hostschlüssel für SSH erstellen. Dies liegt daran, dass GitHub geändert wurde, welche Schlüssel in SSH unterstützt werden, und das unverschlüsselte Git-Protokoll entfernt wurde. Weitere Informationen zumEd25519Hostschlüssel findest du im GitHub Blogbeitrag Improving Git protocol security on GitHub. Nachdem Sie einen neuen Ed25519Hostschlüssel generiert haben, erstellen Sie einen Systems ManagerSecureStringManager-Parameter für den SSH-Schlüssel und verwenden Sie denSecureStringParameternamen als Wert für den--repo-private-keyParameter. Weitere Informationen zum Erstellen eines Systems ManagerSecureStringManager-Parameters finden Sie unter Erstellen eines SecureString Parameters (AWS CLI) oder Erstellen eines Systems Manager Manager-Parameters (Konsole) im AWS Systems Manager Benutzerhandbuch. -
Die
--http-username--repo-private-keyParameter--http-passwordund beziehen sich auf den Namen eines Systems ManagerSecureStringManager-Parameters. Das Migrationsskript verwendet diese Parameter, wenn Sie dasAWS-ApplyChefRecipesDokument ausführen. -
Der
--http-usernameParameter erfordert, dass Sie auch einen Wert für den--http-passwordParameter angeben. -
Für den
--http-passwordParameter müssen Sie auch einen Wert für den--http-usernameParameter angeben. -
Legen Sie keine Werte für
--http-passwordsowohl als auch fest--repo-private-key. Geben Sie entweder den Systems ManagerSecureStringManager-Parameternamen eines SSH-Schlüssels (--repo-private-key) oder einen Repository-Benutzernamen (--http-username) und ein Passwort (--http-password) an.