Richten Sie UiPath RPA Bots bei Amazon automatisch ein, EC2 indem Sie AWS CloudFormation - AWS Prescriptive Guidance

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.

Richten Sie UiPath RPA Bots bei Amazon automatisch ein, EC2 indem Sie AWS CloudFormation

Erstellt von Dr. Rahul Sharad Gaikwad () und Tamilselvan P () AWS AWS

Umgebung: PoC oder Pilotprojekt

Technologien: Infrastruktur; DevOps

Arbeitslast: Alle anderen Workloads

AWSDienstleistungen: Amazon CloudWatch; EC2 Image Builder; AWS Systems Manager; AWS CloudFormation

Übersicht

Dieses Muster erklärt, wie Sie Robotic Process Automation (RPA) -Bots auf Amazon Elastic Compute Cloud (AmazonEC2) -Instances bereitstellen können. Es verwendet eine EC2Image Builder Builder-Pipeline, um ein benutzerdefiniertes Amazon Machine Image (AMI) zu erstellen. An AMI ist ein vorkonfiguriertes Image einer virtuellen Maschine (VM), das das Betriebssystem (OS) und die vorinstallierte Software zur Bereitstellung EC2 von Instances enthält. Dieses Muster verwendet AWS CloudFormation Vorlagen, um die UiPath Studio Community Edition auf der benutzerdefinierten Version zu installieren. AMI UiPath ist ein RPA Tool, mit dem Sie Roboter einrichten können, um Ihre Aufgaben zu automatisieren.

Im Rahmen dieser Lösung werden EC2 Windows-Instanzen mithilfe der Basis gestartetAMI, und die UiPath Studio-Anwendung wird auf den Instanzen installiert. Das Muster verwendet das Microsoft System Preparation (Sysprep) -Tool, um die benutzerdefinierte Windows-Installation zu duplizieren. Danach werden die Host-Informationen entfernt und ein Final AMI aus der Instanz erstellt. Sie können die Instances dann bei Bedarf starten, indem Sie die endgültige Version AMI mit Ihren eigenen Benennungskonventionen und Ihrem eigenen Monitoring-Setup verwenden.

Hinweis: Dieses Muster enthält keine Informationen zur Verwendung von RPA Bots. Diese Informationen finden Sie in der UiPath Dokumentation. Sie können dieses Muster auch verwenden, um andere RPA Bot-Anwendungen einzurichten, indem Sie die Installationsschritte an Ihre Anforderungen anpassen.

Dieses Muster bietet die folgenden Automatisierungen und Vorteile:

  • Bereitstellung und gemeinsame Nutzung von Anwendungen: Sie können Amazon EC2 AMIs für die Anwendungsbereitstellung erstellen und diese über eine EC2 Image Builder Builder-Pipeline, die AWS CloudFormation Vorlagen als Infrastructure-as-Code-Skripts (IaC) verwendet, für mehrere Konten gemeinsam nutzen.

  • EC2Bereitstellung und Skalierung durch Amazon: CloudFormation IaC-Vorlagen bieten benutzerdefinierte Computernamenssequenzen und die Automatisierung von Active Directory-Verknüpfungen.

  • Beobachtbarkeit und Überwachung: Das Muster richtet CloudWatch Amazon-Dashboards ein, mit denen Sie EC2 Amazon-Metriken (z. B. CPU die Festplattennutzung) überwachen können.

  • RPAVorteile für Ihr Unternehmen: RPA verbessert die Genauigkeit, da Roboter zugewiesene Aufgaben automatisch und konsistent ausführen können. RPAerhöht auch die Geschwindigkeit und Produktivität, da Abläufe, die keinen Mehrwert bieten, wegfallen und sich wiederholende Tätigkeiten erledigt werden.

Voraussetzungen und Einschränkungen

Voraussetzungen

Architektur

Zielarchitektur für die Einrichtung von RPA Bots auf Amazon EC2
  1. Der Administrator stellt das Basis-Windows AMI in der ec2-image-builder.yaml Datei bereit und stellt den Stack in der CloudFormation Konsole bereit.

  2. Der CloudFormation Stack stellt die EC2 Image Builder Builder-Pipeline bereit, die die folgenden Ressourcen umfasst:

    • Ec2ImageInfraConfiguration

    • Ec2ImageComponent

    • Ec2ImageRecipe

    • Ec2AMI

  3. Die EC2 Image Builder Builder-Pipeline startet mithilfe der Basis eine temporäre EC2 Windows-Instanz AMI und installiert die erforderlichen Komponenten (in diesem Fall UiPath Studio).

  4. Der EC2 Image Builder entfernt alle Hostinformationen und erstellt eine AMI von Windows Server.

  5. Sie aktualisieren die ec2-provisioning yaml Datei mit der benutzerdefinierten Datei AMI und starten eine Reihe von EC2 Instanzen, die Ihren Anforderungen entsprechen.

  6. Sie stellen das Count-Makro mithilfe einer CloudFormation Vorlage bereit. Dieses Makro stellt eine Count-Eigenschaft für CloudFormation Ressourcen bereit, sodass Sie auf einfache Weise mehrere Ressourcen desselben Typs angeben können.

  7. Sie aktualisieren den Namen des Makros in der CloudFormation ec2-provisioning.yaml Datei und stellen den Stapel bereit.

  8. Der Administrator aktualisiert die ec2-provisioning.yaml Datei je nach Bedarf und startet den Stack.

  9. Die Vorlage stellt EC2 Instanzen mit der UiPath Studio-Anwendung bereit.

Tools

AWSDienste

  • AWS CloudFormationhilft Ihnen dabei, Infrastrukturressourcen automatisiert und sicher zu modellieren und zu verwalten.

  • Amazon CloudWatch unterstützt Sie bei der Beobachtung und Überwachung von Ressourcen und Anwendungen inAWS, vor Ort und in anderen Clouds.

  • Amazon Elastic Compute Cloud (Amazon EC2) bietet sichere und anpassbare Rechenkapazität in der AWS Cloud. Sie können so viele virtuelle Server wie nötig nutzen und sie schnell nach oben oder unten skalieren.

  • EC2Image Builder vereinfacht das Erstellen, Testen und Bereitstellen von virtuellen Maschinen und Container-Images für den Einsatz vor Ort AWS oder vor Ort.

  • Amazon EventBridge unterstützt Sie bei der Entwicklung ereignisgesteuerter Anwendungen in AWS großem Maßstab für bestehende Systeme oder Software-as-a-Service (SaaS) -Anwendungen.

  • AWSIdentity and Access Management (IAM) hilft Ihnen, den Zugriff auf AWS Ressourcen sicher zu kontrollieren. Mit können Sie Berechtigungen zentral verwaltenIAM, mit denen gesteuert wird, auf welche AWS Ressourcen Benutzer zugreifen können. Sie steuern IAM damit, wer authentifiziert (angemeldet) und autorisiert ist (über Berechtigungen verfügt), um Ressourcen zu verwenden.

  • AWSLambda ist ein serverloser, ereignisgesteuerter Rechendienst, mit dem Sie Code für praktisch jede Art von Anwendung oder Backend-Service ausführen können, ohne Server bereitstellen oder verwalten zu müssen. Sie können Lambda-Funktionen von über 200 AWS Diensten und SaaS-Anwendungen aus aufrufen und zahlen nur für das, was Sie tatsächlich nutzen.

  • Amazon Simple Storage Service (Amazon S3) ist ein cloudbasierter Objektspeicherservice, mit dem Sie beliebige Datenmengen speichern, schützen und abrufen können.

  • AWSSystems Manager Agent (SSMAgent) unterstützt Systems Manager bei der Aktualisierung, Verwaltung und Konfiguration von EC2 Instanzen, Edge-Geräten, lokalen Servern und virtuellen Maschinen (VMs).

Code-Repositorys

Der Code für dieses Muster ist im GitHub UiPath RPABot-Setup unter Verwendung des CloudFormation Repositorys verfügbar. Das Muster verwendet auch ein Makro, das im AWS CloudFormation Macros-Repository verfügbar ist.

Bewährte Methoden

  • AWSveröffentlicht AMIs jeden Monat ein neues Windows. Diese enthalten die neuesten Betriebssystem-Patches, Treiber und Launch-Agents. Wir empfehlen, dass Sie die neueste Version verwendenAMI, wenn Sie neue Instances starten oder wenn Sie Ihre eigenen benutzerdefinierten Images erstellen.

  • Wenden Sie bei der Image-Erstellung alle verfügbaren Windows- oder Linux-Sicherheitspatches an.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Richten Sie eine EC2 Image Builder Builder-Pipeline ein.

  1. Klonen Sie das UiPath RPABot-Setup mithilfe des CloudFormation Repositorys, oder laden Sie die ec2-image-builder.yaml Vorlage aus dem Repository herunter.

  2. Melden Sie sich bei der AWS Management Console an und öffnen Sie die AWS CloudFormation Konsole.

  3. Wählen Sie Stack erstellen aus.

  4. Wählen Sie im Abschnitt Specify template (Vorlage angeben) die Option Upload a template file (Vorlagendatei hochladen) aus.

  5. Suchen Sie nach der ec2-image-builder.yaml Vorlage, laden Sie sie von Ihrem Computer hoch und wählen Sie dann Weiter.

  6. Geben Sie Eingabeparameter für Ihren Stack ein oder akzeptieren Sie die Standardwerte. Wählen Sie Weiter.

    Hinweis: Die Anzahl und die Werte der Parameter können je nach Ihren Eingabewerten variieren.

  7. Konfigurieren Sie optional die Stack-Optionen und wählen Sie dann Weiter.

  8. Überprüfen Sie Ihre Stack-Details.

  9. Aktivieren Sie am Ende des Bildschirms das Kontrollkästchen, um die Funktionen zu bestätigen, und klicken Sie dann auf Absenden.

  10. Überwachen Sie den Fortschritt des Stacks. Wenn der Status lautetCREATE_COMPLETE, ist die Bereitstellung bereit.

AWS DevOps

Zeigen Sie die EC2 Image Builder Builder-Einstellungen an.

Die EC2 Image Builder Builder-Einstellungen umfassen die Infrastrukturkonfiguration, die Verteilungseinstellungen und die Einstellungen für Sicherheitsscans. So zeigen Sie die Einstellungen an:

  1. Öffnen Sie die EC2Image Builder Builder-Konsole.

  2. Navigieren Sie im Navigationsbereich zu verschiedenen Image Builder Builder-Einstellungen.

Hinweis: Es hat sich bewährt, dass Sie Aktualisierungen von EC2 Image Builder nur über die CloudFormation Vorlage vornehmen sollten.

AWS DevOps

Sehen Sie sich die Image-Pipeline an.

So zeigen Sie die bereitgestellte Image-Pipeline an:

  1. Wählen Sie in der EC2 Image Builder Builder-Konsole im Navigationsbereich Image-Pipelines aus.

  2. Wählen Sie die Image-Pipeline aus, die Sie erstellt haben.

  3. Sehen Sie sich die Konfigurationsdetails der Ausgabebilder, das Image-Rezept, die Infrastrukturkonfiguration, die Vertriebseinstellungen, EventBridge Amazon-Regeln und Tags an.

AWS DevOps

Image Builder Builder-Protokolle anzeigen.

EC2Image Builder Builder-Protokolle werden in CloudWatch Protokollgruppen zusammengefasst. So zeigen Sie die Protokolle an in CloudWatch:

  1. Öffnen Sie die CloudWatch Konsole.

  2. Wählen Sie im Navigationsbereich Logs (Protokolle), Log groups (Protokollgruppen) aus.

  3. Wählen Sie den Namen der Protokollgruppe. EC2Image Builder Builder-Protokolle werden in der Protokollgruppe /aws/imagebuilder/XXX zusammengefasst.

  4. Überprüfen Sie die neuesten Protokolle im jeweiligen Protokollstream auf Fehler, die beim Ausführen der Image-Pipeline aufgetreten sind.

EC2Image Builder Builder-Protokolle werden auch in einem S3-Bucket gespeichert. So zeigen Sie die Protokolle im Bucket an:

  1. Öffnen Sie die Amazon S3-Konsole.

  2. Wählen Sie in der Liste Buckets den Namen des Buckets aus. Die Protokolle werden im S3-Bucket <stack-name>-XXXXXX zusammengefasst.

AWS DevOps

Laden Sie die UiPath Datei in einen S3-Bucket hoch.

  1. Laden Sie die .msi Datei für UiPath Studio vom Speicherort https://download.uipath.com/ UiPathStudioCommunity .msi herunter.

  2. Laden Sie die Datei zu einem S3-Bucket hoch.

  3. Aktualisieren Sie den Bucket-Namen und den ec2-image-builder.yaml Dateischlüssel in der Vorlage im Bereich Benutzerdaten, Zeile 310.

AWS DevOps
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie das Count-Makro bereit.

  1. Klonen Sie das CloudFormation Count-Makro oder laden Sie es herunter.

  2. Navigieren Sie zum Verzeichnis Count.

  3. Sie benötigen einen S3-Bucket, um die CloudFormation Artefakte zu speichern. Wenn Sie noch keinen S3-Bucket haben, erstellen Sie einen mit dem Namenaws s3 mb s3://<bucket name>.

  4. Package Sie die Count Makrovorlage. Die Vorlage verwendet das AWSServerless Application Model (SAM), sodass sie transformiert werden muss, bevor Sie sie bereitstellen können.

    aws cloudformation package \ --template-file template.yaml \ --s3-bucket <your bucket name here> \ --output-template-file packaged.yaml

    Beispielsweise:

    aws cloudformation package \ --template-file template.yaml \ --s3-bucket count-macro-ec2 \ --output-template-file packaged.yaml
  5. Stellen Sie die verpackte Vorlage bereit, um einen CloudFormation Stack zu erstellen.

    aws cloudformation deploy \ --stack-name Count-macro \ --template-file packaged.yaml \ --capabilities CAPABILITY_IAM

Wenn du die Konsole verwenden möchtest, befolge die Anweisungen im vorherigen Epic oder in der CloudFormation Dokumentation

DevOps Ingenieur

Testen Sie das Count-Makro.

Um die Funktionen des Makros zu testen, versuchen Sie, die Beispielvorlage zu starten, die im Lieferumfang des Makros enthalten ist. 

aws cloudformation deploy \ --stack-name Count-test \ --template-file test.yaml \ --capabilities CAPABILITY_IAM
DevOps Ingenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die EC2 Amazon-Bereitstellungsvorlage bereit.

So stellen Sie EC2 Image Pipeline bereit, indem Sie CloudFormation:

  1. Laden Sie die ec2-provisioning.yaml Vorlage aus dem GitHub Repository herunter, oder suchen Sie sie auf Ihrem Computer, falls Sie das Repository geklont haben.

  2. Öffnen Sie die CloudFormation Konsole.

  3. Wiederhole zur Bereitstellung die Schritte vom ersten Epic (oder folge den Anweisungen in der CloudFormation Dokumentation)ec2-provisioning.yaml.

AWS DevOps

EC2Amazon-Einstellungen anzeigen.

Zu den EC2 Amazon-Einstellungen gehören Sicherheits-, Netzwerk-, Speicher-, Statusprüfungen, Überwachung und Tag-Konfigurationen. So sehen Sie sich diese Konfigurationen an:

  1. Öffnen Sie die EC2Amazon-Konsole.

  2. Wählen Sie im Navigationsbereich Instances und dann die EC2 Instance aus, die mit der EC2 Amazon-Bereitstellungsvorlage erstellt wurde.

  3. Wählen Sie in der Instanzübersicht die Tabs aus, um die entsprechenden EC2 Amazon-Einstellungen anzuzeigen.

AWS DevOps

Sehen Sie sich das CloudWatch Dashboard an.

  1. Öffnen Sie die CloudWatch Konsole.

  2. Wählen Sie im Navigationsbereich Dashboards aus.

  3. Wählen Sie das Dashboard mit Ihrem Stack-Namen.

Hinweis: Nachdem Sie den Stack bereitgestellt haben, dauert es einige Zeit, bis das Dashboard mit Metriken gefüllt ist.

Das Dashboard bietet die folgenden Metriken:CPUUtilization,DiskUtilization,MemoryUtilization,NetworkIn,NetworkOut,StatusCheckFailed.

AWS DevOps

Zeigen Sie benutzerdefinierte Messwerte für die Speicher- und Festplattennutzung an.

  1. Wählen Sie auf der CloudWatch Konsole Dashboards aus.

  2. Wählen Sie im Navigationsbereich Metrics (Metriken) All metrics (Alle Metriken) aus.

  3. Wählen Sie Benutzerdefinierte Namespaces,. CWAgent

AWS DevOps

Alarme zur Speicher- und Festplattennutzung anzeigen.

  1. Wählen Sie auf der CloudWatch Konsole im Navigationsbereich Dashboards aus.

  2. Wählen Sie All alarms (Alle Warnungen) aus.

AWS DevOps

Überprüfen Sie die Snapshot-Lebenszyklusregel.

  1. Öffnen Sie die EC2Amazon-Konsole.

  2. Wählen Sie im Navigationsbereich Lifecycle Manager aus.

  3. Überprüfen Sie die Einstellungen für den AMI Lebenszyklus.

AWS DevOps
AufgabeBeschreibungErforderliche Fähigkeiten

Lösche die Stapel.

Wenn Ihr PoC- oder Pilotprojekt abgeschlossen ist, empfehlen wir Ihnen, die von Ihnen erstellten Stacks zu löschen, um sicherzustellen, dass Ihnen diese Ressourcen nicht in Rechnung gestellt werden.

  1. Öffnen Sie die Konsole AWS CloudFormation . 

  2. Wählen Sie im Navigationsbereich Stacks aus und wählen Sie dann einen oder beide Stapel aus, die Sie zuvor erstellt haben und die Sie löschen möchten. Der Stack muss aktuell ausgeführt werden.

  3. Wählen Sie im Stack-Detailbereich Delete (Löschen) aus.

  4. Wählen Sie bei Aufforderung Delete stack (Stack löschen) aus.

Wichtig: Der Vorgang zum Löschen von Stacks kann nicht gestoppt werden, nachdem er begonnen hat. Der Stack wird in den Status DELETE_IN_PROGRESS versetzt.

Schlägt der Löschvorgang fehl, befindet sich der Stapel im DELETE_FAILED Status. Lösungen finden Sie in der Dokumentation AWS CloudFormation zur Fehlerbehebung unter Fehler beim Löschen des Stacks.

Informationen zum Schutz von Stacks vor versehentlichem Löschen finden Sie in der AWS CloudFormation Dokumentation unter Stapel vor dem Löschen schützen.

AWS DevOps

Fehlerbehebung

ProblemLösung

Wenn Sie die EC2 Amazon-Bereitstellungsvorlage bereitstellen, erhalten Sie die folgende Fehlermeldung: Falsch formatierte Antwort von der Transformation 123xxxx: :Count erhalten.

Dies ist ein bekanntes Problem. (Weitere Informationen finden Sie in der benutzerdefinierten Lösung und im PR im Makro-Repository.) AWS CloudFormation

Um dieses Problem zu beheben, öffnen Sie die AWS Lambda-Konsole und aktualisieren Sie index.py mit dem Inhalt aus dem GitHub Repository

Zugehörige Ressourcen

GitHub Repositorien

AWSVerweise

Zusätzliche Referenzen