Automatisches Hinzufügen von Knoten inOpsWorksund 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 inOpsWorksund für Puppet Enterprise

In diesem Thema wird beschrieben, wie Sie Amazon Elastic Compute Cloud (Amazon EC2) Knoten zu Ihren hinzufügenOpsWorksautomatisch für Puppet Enterprise Server. 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 eine unbeaufsichtigte (oder automatische) Zuordnung neuer Knoten besteht in der Konfiguration der Amazon EC2 EC2-Benutzerdaten. Standardmäßig stellt einOpsWorksServer für Puppet Enterprise hat bereitspuppet-agentverfügbar für Ubuntu-, Amazon Linux- und RHEL-Knoten-Betriebssysteme.

Weitere Informationen zum Trennen eines Knotens finden Sie unterTrennen eines Knotens von einemOpsWorksund für Puppet Enterprisein dieser Anleitung unddisassociate-nodeimOpsWorks-Dokumentation für Puppet Enterprise

Unterstützte Betriebssysteme

Eine aktuelle Liste von Betriebssystemen, die Knoten unterstützten, finden Sie auf der Puppet-Agent-Plattformen.

Schritt 1: Erstellen einer IAM-Rolle für die Verwendung als Instance-Profil

Erstellen einesAWS Identity and Access Management(IAM) -Rolle zur Verwendung als EC2-Instance-Profil und fügen Sie die folgende Richtlinie zur IAM-Rolle 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 unterVerwenden von Instance-Profilenin der Amazon EC2 EC2-Dokumentation. Weitere Informationen zum Erstellen einer IAM-Rolle finden Sie unterErstellen einer IAM-Rolle in der Konsolein der Amazon EC2 EC2-Dokumentation.

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

AWS OpsWorksbietet eineAWS CloudFormation-Vorlage, die Sie zum Erstellen der IAM-Rolle mit der obigen Richtlinienanweisung verwenden können. 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 Zuordnung

Zum Erstellen von EC2-Instances kopieren Sie das Benutzerdatenskript aus demStarterkitzumuserdata-Abschnitt der EC2-Instance-Anweisungen, -Startkonfigurationen für die Amazon EC2 Auto Scaling Scaling-Gruppe oderAWS CloudFormation-Vorlage. Das Skript wird nur für EC2-Instances mit Ubuntu- und Amazon Linux-Betriebssystemen unterstützt. Weitere Informationen zum Hinzufügen von Skripten zu Benutzerdaten finden Sie unterAusführen von Befehlen auf Linux-Instances beim Startin der Amazon EC2 EC2-Dokumentation. Die einfachste Methode, einen neuen Knoten zu erstellen, ist die Verwendung derStartassistent für Amazon EC2 Instanceaus. Diese Anleitung verwendet das Beispielmodul für den Apache-Webserver, der in beschrieben istErste Schritte mitOpsWorksund für Puppet Enterpriseaus.

  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 wird auch die aktuelle Version derAWS CLIauf dem Knoten für Sie, falls dieser nicht bereits am meisten läuftup-to-date-Version 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 einer IAM-Rolle für die Verwendung als Instance-Profil 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. Auf derKonfigurieren der Sicherheitsgruppe-Seite wählen, wählen SieRegel hinzufügenWählen Sie dann den Typ ausHTTPum 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, das Sie in eingerichtet habenEinrichten des Starter Kit Apache-Beispielsaus.

  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.