Automatisches Hinzufügen von Knoten OpsWorks für Puppet Enterprise - AWS OpsWorks

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.

Automatisches Hinzufügen von Knoten OpsWorks für Puppet Enterprise

Wichtig

AWS OpsWorks for Puppet Enterpriseakzeptiert keine neuen Kunden. Bestandskunden sind bis zum 31. März 2024 davon nicht betroffen. Zu diesem Zeitpunkt wird der Service nicht mehr verfügbar sein. Wir empfehlen bestehenden Kunden, so schnell wie möglich auf andere Lösungen zu migrieren. Weitere Informationen erhalten Sie unter AWS OpsWorks for Puppet EnterpriseHäufig gestellte Fragen zum Lebensende und So migrieren Sie einen Server OpsWorks für Puppet Enterprise zu Amazon Elastic Compute Cloud (Amazon EC2).

In diesem Thema wird beschrieben, wie Sie Ihrem OpsWorks for Puppet Enterprise-Server automatisch Amazon Elastic Compute Cloud (Amazon EC2) -Knoten hinzufügen. In Hinzufügen von Knoten, die vom Puppet-Master verwaltet werden, haben Sie erfahren, wie Sie mit dem Befehl associate-node einzelne Knoten nacheinander zu Ihrem Puppet Enterprise-Server hinzufügen. Der Code in diesem Thema veranschaulicht das automatische Hinzufügen von Knoten mit der unbeaufsichtigten Methode. Die empfohlene Methode für die unbeaufsichtigte (oder automatische) Zuordnung neuer Knoten ist die Konfiguration der Amazon EC2-Benutzerdaten. Standardmäßig ist ein Server OpsWorks für Puppet Enterprise bereits für Ubuntu-, Amazon Linux- und RHEL-Knotenbetriebssysteme puppet-agentverfügbar.

Informationen darüber, wie Sie die Verknüpfung eines Knotens aufheben, finden Sie Trennen Sie einen Knoten von einem OpsWorks für Puppet Enterprise Server in diesem Handbuch und disassociate-nodein der Dokumentation OpsWorks zur Puppet Enterprise API.

Schritt 1: Erstellen Sie eine IAM-Rolle, die Sie als Instanzprofil verwenden möchten

Erstellen Sie eine AWS Identity and Access Management (IAM-) Rolle, die Sie als Ihr EC2-Instance-Profil verwenden möchten, und fügen Sie der IAM-Rolle die folgende Richtlinie hinzu. Diese Richtlinie ermöglicht der opsworks-cm-API die Kommunikation mit der EC2 Instance während der Knotenregistrierung. Weitere Informationen zu Instance-Profilen finden Sie unter Using Instance Profiles in der Amazon EC2-Dokumentation. Informationen zum Erstellen einer IAM-Rolle finden Sie unter Erstellen einer IAM-Rolle in der Konsole in der Amazon EC2-Dokumentation.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "opsworks-cm:AssociateNode", "opsworks-cm:DescribeNodeAssociationStatus", "opsworks-cm:DescribeServers", "ec2:DescribeTags" ], "Resource": "*", "Effect": "Allow" } ] }

AWS OpsWorksstellt eine AWS CloudFormation Vorlage bereit, die Sie verwenden können, um die IAM-Rolle mit der vorherigen Richtlinienerklärung zu erstellen. Der folgende AWS CLI-Befehl erstellt unter Verwendung dieser Vorlage die Instance-Profil Rolle für Sie. Sie können den --region-Parameter weglassen, wenn Sie den neuen AWS CloudFormation-Stack in Ihrer Standard-Region erstellen wollen.

aws cloudformation --region region ID create-stack --stack-name myPuppetinstanceprofile --template-url https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/owpe/opsworks-cm-nodes-roles.yaml --capabilities CAPABILITY_IAM

Schritt 2: Erstellen von Instances mit einem unbeaufsichtigten Skript für die Zuordnung

Um EC2-Instances zu erstellen, können Sie das im Starter Kit enthaltene Benutzerdatenskript in den userdata Abschnitt der EC2-Instance-Anweisungen, Amazon EC2 Auto Scaling-Gruppenstartkonfigurationen oder eine Vorlage kopieren. AWS CloudFormation Das Skript wird nur für EC2-Instances mit Ubuntu- und Amazon Linux-Betriebssystemen unterstützt. Weitere Informationen zum Hinzufügen von Skripts zu Benutzerdaten finden Sie in der Amazon EC2-Dokumentation unter Ausführen von Befehlen auf Ihrer Linux-Instance beim Start. Der einfachste Weg, einen neuen Knoten zu erstellen, besteht darin, den Amazon EC2-Instance-Startassistenten zu verwenden. In dieser exemplarischen Vorgehensweise wird das Beispielmodul-Setup für den Apache-Webserver verwendet, das unter beschrieben Erste Schritte mit OpsWorks für Puppet Enterprise wird.

  1. Das Benutzerdatenskript im Starter Kit führt den opsworks-cm-API-Befehl associate-node aus, um dem Puppet-Master einen neuen Knoten zuzuordnen. In dieser Version installiert es auch die aktuelle Version von AWS CLI auf dem Knoten für Sie, falls nicht bereits die neueste up-to-date Version ausgeführt wird. Speichern Sie dieses Skript an einem leicht erreichbaren Speicherort als userdata.sh.

    Standardmäßig ist der Name des neu registrierten Knoten die Instance-ID.

  2. Befolgen Sie die Anleitung in Starten einer Instance in der EC2-Dokumentation mit Änderungen. Wählen Sie im EC2-Instance-Startassistenten ein Amazon Linux AMI.

  3. Wählen Sie auf der Seite Configure Instance Details (Instance-Details konfigurieren) myPuppetinstanceprofile, die Rolle, die Sie in Schritt 1: Erstellen Sie eine IAM-Rolle, die Sie als Instanzprofil verwenden möchten erstellt haben, als Ihre IAM-Rolle aus.

  4. Laden Sie in den Bereich Advanced Details (Weitere Details) das userdata.sh-Skript hoch, das Sie in Schritt 1 erstellt haben.

  5. Auf der Seite Add Storage (Speicher hinzufügen) sind keine Änderungen erforderlich. Gehen Sie weiter zu Add Tags (Tags hinzufügen).

    Durch die Anwendung von Tags auf Ihre EC2-Instance können Sie das Verhalten von userdata.sh anpassen. Für dieses Beispiel wenden Sie die Rolle apache_webserver auf Ihren Knoten an, indem Sie das folgende Tag hinzufügen: pp_role mit dem Wert apache_webserver.

    Wenn dem Knoten der Wert pp_role zugeordnet wird, werden Datenwerte festgelegt, die permanent im Agent-Zertifikat des Knoten gespeichert werden, sodass eine vertrauenswürdige Klassifizierung des Knoten möglich ist. Weitere Informationen finden Sie unter Extension-Anfragen (permanente Zertifikatdaten) in der Puppet-Plattform-Dokumentation.

  6. Wählen Sie auf der Seite „Sicherheitsgruppe konfigurieren“ die Option Regel hinzufügen und dann den Typ HTTP aus, um in diesem Beispiel Port 8080 für den Apache-Webserver zu öffnen.

  7. Wählen Sie Review and Launch (Überprüfen und starten) und dann Launch (Starten) aus. Wenn Ihr neuer Knoten startet, wendet er die Apache-Konfiguration des Beispielmoduls an, in dem Sie es eingerichtet habenDas Starterkit einrichten Apache Example.

  8. Wenn Sie die Webseite öffnen, die mit dem öffentlichen DNS Ihres neuen Knotens verknüpft ist, sollten Sie eine Website sehen, die von Ihrem von Puppet verwalteten Apache-Webserver gehostet wird.