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.
Verwenden Sie den Befehl register (IAM-Benutzer-ARN), um eine lokale Instance zu registrieren
Wichtig
Die Registrierung einer Instance mithilfe eines IAM-Benutzers wird nicht empfohlen, da für die Authentifizierung statische (permanente) Anmeldeinformationen verwendet werden. Zur Verbesserung der Sicherheit empfehlen wir, eine Instance mit temporären Anmeldeinformationen für die Authentifizierung zu registrieren. Weitere Informationen finden Sie unter Verwenden Sie den Befehl register-on-premises-instance (IAM Session ARN), um eine lokale Instanz zu registrieren.
Wichtig
Stellen Sie sicher, dass Sie über einen Plan verfügen, um die Zugriffsschlüssel (permanente Anmeldeinformationen) des IAM-Benutzers zu rotieren. Weitere Informationen finden Sie unter Rotieren von Zugriffsschlüsseln.
In diesem Abschnitt wird beschrieben, wie Sie eine lokale Instance konfigurieren und registrieren und sie mit CodeDeploy mit dem geringsten Aufwand mit Tags versehen. Der Befehl register ist besonders nützlich, wenn Sie mit einer einzigen oder einer kleinen Anzahl von lokalen Instances arbeiten. Sie können den register Befehl nur verwenden, wenn Sie einen IAM-Benutzer-ARN zur Authentifizierung einer Instance verwenden. Sie können den register Befehl nicht mit einem IAM-Sitzungs-ARN zur Authentifizierung verwenden.
Wenn Sie den register Befehl verwenden, können Sie Folgendes CodeDeploy tun lassen:
-
Erstellen Sie einen IAM-Benutzer AWS Identity and Access Management für die lokale Instance, falls Sie keinen mit dem Befehl angeben.
-
Speichern Sie die Anmeldeinformationen des IAM-Benutzers in einer lokalen Instanzkonfigurationsdatei.
-
Registrieren Sie die lokale Instanz bei. CodeDeploy
-
Fügen Sie Tags zur lokalen Instance hinzu, indem Sie diese als Teil des Befehls angeben.
Anmerkung
Der Befehl register-on-premises-instance ist eine Alternative zum Befehl register. https://docs.aws.amazon.com/cli/latest/reference/deploy/register.html Sie verwenden den Befehl register-on-premises-instance, wenn Sie eine Instance vor Ort konfigurieren möchten und sie bei CodeDeploy eigenständig registrieren und mit Tags versehen möchten. Der register-on-premises-instance Befehl bietet Ihnen auch die Möglichkeit, anstelle eines IAM-Benutzer-ARN einen IAM-Sitzungs-ARN zur Registrierung von Instances zu verwenden. Dieser Ansatz bietet einen großen Vorteil, wenn Sie große Serverfarmen für lokale Instances haben. Insbesondere können Sie einen einzelnen IAM-Sitzungs-ARN verwenden, um mehrere Instanzen zu authentifizieren, anstatt für jede lokale Instance einzeln einen IAM-Benutzer erstellen zu müssen. Weitere Informationen erhalten Sie unter Verwenden Sie den Befehl register-on-premises-instance (IAM-Benutzer-ARN), um eine lokale Instance zu registrieren und Verwenden Sie den Befehl register-on-premises-instance (IAM Session ARN), um eine lokale Instanz zu registrieren.
Themen
Schritt 1: Installieren und konfigurieren Sie AWS CLI auf der lokalen Instanz
-
Installieren Sie die AWS CLI auf der lokalen Instanz. Folgen Sie den Anweisungen unter Erste Schritte mit dem AWS CLI im AWS Command Line Interface Benutzerhandbuch.
Anmerkung
CodeDeploy Befehle für die Arbeit mit lokalen Instanzen sind in AWS CLI Version 1.7.19 und höher verfügbar. Wenn Sie das AWS CLI bereits installiert haben, rufen Sie an, aws --version um die Version zu überprüfen.
-
Konfigurieren Sie die AWS CLI auf der lokalen Instanz. Folgen Sie den Anweisungen unter Konfiguration des AWS CLI AWS Command Line Interface Benutzerleitfadens.
Wichtig
Achten Sie bei der Konfiguration AWS CLI (z. B. durch Aufrufen des aws configure Befehls) darauf, die geheime Schlüssel-ID und den geheimen Zugriffsschlüssel eines IAM-Benutzers anzugeben, der zusätzlich zu den unter angegebenen Berechtigungen mindestens über die folgenden AWS Zugriffsberechtigungen verfügt. Voraussetzungen für die Konfiguration einer lokalen Instanz Dadurch ist es möglich, den CodeDeploy Agenten auf die lokale Instanz herunterzuladen und zu installieren. Die Zugriffsberechtigungen können etwa wie folgt aussehen:
Anmerkung
Wenn Sie versuchen, auf einen der zuvor angezeigten Amazon S3-Buckets zuzugreifen, die Fehler „Zugriff verweigert“ sehen, versuchen Sie beispielsweise, den
/*Teil des Ressourcen-ARN des Buckets wegzulassen.arn:aws:s3:::aws-codedeploy-sa-east-1
Schritt 2: Rufen Sie den Befehl register auf
Bei diesem Schritt gehen wir davon aus, dass Sie die Registrierung des lokalen Instance von der lokalen Instance aus durchführen. Sie können eine lokale Instanz auch von einem separaten Gerät oder einer separaten Instanz aus registrieren, auf der die Instanz AWS CLI installiert und konfiguriert ist, wie im vorherigen Schritt beschrieben.
Verwenden Sie den AWS CLI , um den Befehl register aufzurufen, und geben Sie dabei Folgendes an:
-
Ein Name, der die lokale Instanz eindeutig identifiziert CodeDeploy (mit der
--instance-nameOption).Wichtig
Um die lokale Instance später identifizieren zu können, insbesondere für Debugging-Zwecke, empfehlen wir dringend, dass Sie einen Namen verwenden, die einige eindeutige Merkmale der lokalen Instance enthält (z. B. die Seriennummer oder eine eindeutige interne Asset-ID, falls zutreffend). Wenn Sie eine MAC-Adresse für einen Namen angeben, beachten Sie, dass MAC-Adressen Zeichen enthalten, die CodeDeploy nicht zulässig sind, wie z. B. Doppelpunkt (
:). Eine Liste der zulässigen Zeichen finden Sie unter CodeDeploy Kontingente. -
Optional der ARN eines vorhandenen IAM-Benutzers, den Sie dieser lokalen Instance zuordnen möchten (mit der
--iam-user-arnOption). Um den ARN eines IAM-Benutzers abzurufen, rufen Sie den Befehl get-user auf, oder wählen Sie den IAM-Benutzernamen im Abschnitt Benutzer der IAM-Konsole aus und suchen Sie dann im Abschnitt Zusammenfassung nach dem Benutzer-ARN-Wert. Wenn diese Option nicht angegeben ist, CodeDeploy wird in Ihrem Namen in Ihrem AWS Konto ein IAM-Benutzer erstellt und dieser der lokalen Instance zugeordnet.Wichtig
Wenn Sie die Option
--iam-user-arnfestlegen, müssen Sie die lokale Instance-Konfigurationsdatei manuell erstellen, wie in Schritt 4: Fügen Sie der lokalen Instanz eine Konfigurationsdatei hinzu beschrieben.Sie können nur einen IAM-Benutzer mit nur einer lokalen Instance verknüpfen. Der Versuch, einen einzelnen IAM-Benutzer mehreren lokalen Instances zuzuordnen, kann zu Fehlern, fehlgeschlagenen Bereitstellungen auf diesen lokalen Instances oder zu Bereitstellungen auf lokalen Instances führen, die in einem permanenten Ausstehen-Status feststecken.
-
Optional eine Reihe von lokalen Instance-Tags (mit der
--tagsOption), die zur Identifizierung der Amazon EC2-Instances verwendet CodeDeploy werden, für die die Bereitstellung verwendet werden soll. Geben Sie jeden Tag mitKey=an (z. B.tag-key,Value=tag-valueKey=Name,Value=Beta Key=Name,Value=WestRegion). Wenn diese Option nicht angegeben ist, werden keine Tags registriert. Um Tags später zu registrieren, rufen Sie den Befehl https://docs.aws.amazon.com/cli/latest/reference/deploy/add-tags-to-on-premises-instances.html add-tags-to-on-premises-instances auf. -
Optional die AWS Region, in der die lokale Instanz registriert wird (mit der Option). CodeDeploy
--regionDies muss eine der unterstützten Regionen sein, die unter Region aufgeführt sind, und Endpunkte in Allgemeine AWS-Referenz (z. B.us-west-2). Wenn diese Option nicht angegeben ist, wird die AWS Standardregion verwendet, die dem anrufenden IAM-Benutzer zugeordnet ist.
Beispiel:
aws deploy register --instance-name AssetTag12010298EX --iam-user-arn arn:aws:iam::444455556666:user/CodeDeployUser-OnPrem --tags Key=Name,Value=CodeDeployDemo-OnPrem --region us-west-2
Der Befehl register hat folgende Auswirkungen:
-
Wenn kein vorhandener IAM-Benutzer angegeben ist, wird ein IAM-Benutzer erstellt, ihm die erforderlichen Berechtigungen zugewiesen und ein entsprechender geheimer Schlüssel und ein geheimer Zugriffsschlüssel generiert. Die lokale Instance verwendet diesen IAM-Benutzer und seine Berechtigungen und Anmeldeinformationen, um sich zu authentifizieren und mit ihm zu interagieren. CodeDeploy
-
Registriert die lokale Instanz bei. CodeDeploy
-
Falls angegeben, ordnet es CodeDeploy den Tags, die mit der
--tagsOption angegeben sind, dem registrierten lokalen Instanznamen zu. -
Wenn ein IAM-Benutzer erstellt wurde, erstellt außerdem die erforderliche Konfigurationsdatei in demselben Verzeichnis, aus dem der register Befehl aufgerufen wurde.
Wenn dieser Befehl Fehler erkennt, wird eine Fehlermeldung angezeigt, in der beschrieben wird, wie Sie die verbleibenden Schritte manuell durchführen können. Andernfalls wird eine Erfolgsmeldung angezeigt, die beschreibt, wie Sie den Befehl install aufrufen, wie im nächsten Schritt beschrieben.
Schritt 3: Rufen Sie den Installationsbefehl auf
Verwenden Sie von der lokalen Instanz aus den, AWS CLI um den https://docs.aws.amazon.com/cli/latest/reference/deploy/install.html Installationsbefehl aufzurufen, und geben Sie dabei Folgendes an:
-
Der Pfad zur Konfigurationsdatei (mit der Option
--config-file). -
Optional, ob die Konfigurationsdatei ersetzt werden soll, die bereits auf der lokalen Instance vorhanden ist (mit der
--override-configOption). Wenn nicht angegeben, wird die vorhandene Konfigurationsdatei nicht ersetzt. -
Optional die AWS Region, in der die lokale Instanz registriert wird CodeDeploy (mit der
--regionOption). Dies muss eine der unterstützten Regionen sein, die unter Region aufgeführt sind, und Endpunkte in Allgemeine AWS-Referenz (z. B.us-west-2). Wenn diese Option nicht angegeben ist, wird die AWS Standardregion verwendet, die dem anrufenden IAM-Benutzer zugeordnet ist. -
Optional ein benutzerdefinierter Speicherort, von dem aus der CodeDeploy Agent installiert werden soll (mit der
--agent-installerOption). Diese Option ist nützlich, um eine benutzerdefinierte Version des CodeDeploy Agenten zu installieren, die CodeDeploy nicht offiziell unterstützt wird (z. B. eine benutzerdefinierte Version, die auf dem CodeDeployAgenten-Repository in basiert GitHub). Der Wert muss der Pfad zu einem Amazon S3-Bucket sein, der entweder Folgendes enthält: -
Ein CodeDeploy Agenteninstallationsskript (für Linux- oder Unix-based Betriebssysteme, ähnlich der Installationsdatei im CodeDeploy
Agenten-Repository in GitHub). -
Eine CodeDeploy Agenteninstallationspaketdatei (.msi) (für Windows-based Betriebssysteme).
Wenn diese Option nicht angegeben ist, CodeDeploy wird nach besten Kräften versucht, von ihrem eigenen Standort aus eine offiziell unterstützte Version des CodeDeploy Agenten zu installieren, die mit dem Betriebssystem auf der lokalen Instanz kompatibel ist.
-
Beispiel:
aws deploy install --override-config --config-file /tmp/codedeploy.onpremises.yml --region us-west-2 --agent-installer s3://aws-codedeploy-us-west-2/latest/codedeploy-agent.msi
Der Befehl install hat folgende Auswirkungen:
-
Überprüft, ob es sich bei der lokalen Instance um eine Amazon EC2-Instance handelt. Wenn dies der Fall ist, wird eine Fehlermeldung angezeigt.
-
Kopiert die Konfigurationsdatei für lokale Instances vom angegebenen Speicherort auf der Instance an den Speicherort, an dem der CodeDeploy Agent sie voraussichtlich finden wird, vorausgesetzt, die Datei befindet sich nicht bereits an diesem Speicherort.
Für Ubuntu Server und Red Hat Enterprise Linux (RHEL) ist
/etc/codedeploy-agent/confdies/.codedeploy.onpremises.ymlFür Windows Server ist dies
C:\ProgramData\Amazon\CodeDeploy\conf.onpremises.yml.Wenn die Option
--override-configangegeben wurde, wird die Datei erstellt oder überschrieben. -
Installiert den CodeDeploy Agenten auf der lokalen Instanz und startet ihn dann.
Schritt 4: Stellen Sie Anwendungsrevisionen auf der lokalen Instanz bereit
Sie können nun auf den registrierten und mit einem Tag markierten lokalen Instances Anwendungsrevisionen bereitstellen.
Sie stellen Anwendungsrevisionen auf lokalen Instances auf eine Weise bereit, die der Bereitstellung von Anwendungsrevisionen auf Amazon EC2-Instances ähnelt. Detaillierte Anweisungen finden Sie unter Erstellen Sie eine Bereitstellung mit CodeDeploy. Diese Anweisungen bieten einen Link zu den Voraussetzungen, wie dem Erstellen einer Anwendung, Erstellen einer Bereitstellungsgruppe und Vorbereiten einer Anwendungsrevision. Wenn Sie eine einfache Beispielanwendungsrevision bereitstellen möchten, können Sie die unter Schritt 2: Erstellen Sie eine Version der Beispielanwendung im Tutorial: Bereitstellen einer Anwendung auf einer lokalen Instanz mit CodeDeploy (Windows Server, Ubuntu Server oder Red Hat Enterprise Linux) beschriebene Revision verwenden.
Wichtig
Wenn Sie im Rahmen der Erstellung einer Bereitstellungsgruppe, die auf lokale Instances abzielt, eine vorhandene CodeDeploy Servicerolle wiederverwenden, müssen Sie dem Action Teil der Tag:get* Richtlinienerklärung der Servicerolle beifügen. Weitere Informationen finden Sie unter Schritt 2: Erstellen Sie eine Servicerolle für CodeDeploy.
Schritt 5: Verfolgen Sie die Bereitstellungen auf der lokalen Instanz
Nachdem Sie eine Anwendungsrevision auf einer registrierten und markierten lokalen Instance bereitgestellt haben, können Sie den Fortschritt der Bereitstellung nachverfolgen.
Sie verfolgen Bereitstellungen auf lokalen Instances auf eine Weise, die der Verfolgung von Bereitstellungen auf Amazon EC2-Instances ähnelt. Detaillierte Anweisungen finden Sie unter CodeDeploy Bereitstellungsdetails anzeigen.
Weitere Optionen finden Sie unter Verwaltung von Vorgängen für lokale Instanzen in CodeDeploy.