- Überblick
- Anforderungen
- Vor der Installation
- Vorbereiten der Installation
- Installieren und Konfigurieren des Dienstgeflechts
- Herunterladen der Installationspakete
- Konfigurieren der OCI-konformen Registrierung
- Erteilen von Installationsberechtigungen
- Installieren und Konfigurieren des GitOps-Tools
- Bereitstellen von Redis über OperatorHub
- Erfüllung der Process Mining-Voraussetzungen
- Anwenden verschiedener Konfigurationen
- Ausführen von uipathctl
- Installation
- Nach der Installation
- Migration und Upgrade
- Aktualisieren der Automation Suite
- Migrieren von eigenständigen Produkten zur Automation Suite
- Schritt 1: Wiederherstellen der eigenständigen Produktdatenbank
- Schritt 2: Aktualisieren des Schemas der wiederhergestellten Produktdatenbank
- Schritt 3: Verschieben der Identitätsorganisationsdaten von der eigenständigen Bereitstellung in die Automation Suite
- Schritt 4: Sichern der Plattformdatenbank in der Automation Suite
- Schritt 5: Zusammenführen von Organisationen in der Automation Suite
- Schritt 6: Aktualisieren der migrierten Produktverbindungszeichenfolgen
- Schritt 7: Migrieren des eigenständigen Orchestrator
- Schritt 8: Migrieren von eigenständigen Insights
- Schritt 9: Löschen des Standardmandanten
- Durchführen der Migration eines einzelnen Mandanten
- Migrieren zwischen Automation Suite-Clustern
- Clusterverwaltung
- Produktspezifische Konfiguration
- Konfigurieren von Orchestrator-Parametern
- Konfigurieren von AppSettings
- Konfigurieren der maximalen Anforderungsgröße
- Überschreiben der Speicherkonfiguration auf Clusterebene
- Konfigurieren von NLog
- Speichern von Roboterprotokollen in Elasticsearch
- Konfigurieren von Anmeldeinformationsspeichern
- Konfigurieren der Verwendung von einem Verschlüsselungsschlüssel pro Mandant
- Bereinigen der Orchestrator-Datenbank
- Fehlersuche und ‑behebung

Automation Suite in OpenShift – Installationsanleitung
Erfüllung der Process Mining-Voraussetzungen
Die Dapr-Installation für Process Mining erfordert einen Zertifikatsmanager.
Um den Cert Manager über OpenShift-Operatoren zu installieren, befolgen Sie die Anweisungen unter Installieren des cert-manager-Operators für Red Hat OpenShift.
Um sicherzustellen, dass ArgoCD ein Zertifikat mit dem cert-manager erstellen kann, müssen Sie ArgoCD die erforderlichen Berechtigungen für den cert-manager zur Verfügung stellen.
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: argocd-cert-manager-role
namespace: <uipath>
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "issuers"]
verbs: ["get", "create"]
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: argocd-cert-manager-role
namespace: <uipath>
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "issuers"]
verbs: ["get", "create"]
oc project <uipath>
oc create rolebinding argocd-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<argocd>:argocd-argocd-application-controller
oc project <uipath>
oc create rolebinding argocd-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<argocd>:argocd-argocd-application-controller
oc project <uipath>
oc create rolebinding gitops-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<openshift-gitops>:openshift-gitops-argocd-application-controller
oc project <uipath>
oc create rolebinding gitops-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<openshift-gitops>:openshift-gitops-argocd-application-controller
-
OpenShift-CLI (
oc
) installiert und konfiguriert. -
Entsprechende Berechtigungen zum Löschen von Ressourcen in den Ziel-Namespaces.
Bevor Sie fortfahren, müssen Sie die folgenden Informationen sammeln:
-
UiPath-Namespace, in dem Zertifikatsmanager-Ressourcen verwendet werden.
-
Ob es sich um eine gemeinsam genutzte ArgoCD-Instanz oder eine dedizierte Instanz handelt.
-
Löschen Sie die Rollenbindungen für den cert-manager:
-
Für die dedizierte ArgoCD-Instanz:
# Verify if the role binding exists oc get rolebinding argocd-cert-manager-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding argocd-cert-manager-binding -n <uipath_namespace>
# Verify if the role binding exists oc get rolebinding argocd-cert-manager-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding argocd-cert-manager-binding -n <uipath_namespace> -
Für die freigegebene ArgoCD-Instanz:
# Verify if the role binding exists oc get rolebinding gitops-cert-manager-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding gitops-cert-manager-binding -n <uipath_namespace>
# Verify if the role binding exists oc get rolebinding gitops-cert-manager-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding gitops-cert-manager-binding -n <uipath_namespace>
-
-
Löschen Sie die Zertifikatsmanagerrolle:
# Check if the role exists oc get role argocd-cert-manager-role -n <uipath_namespace> # If it exists, delete it oc delete role argocd-cert-manager-role -n <uipath_namespace>
# Check if the role exists oc get role argocd-cert-manager-role -n <uipath_namespace> # If it exists, delete it oc delete role argocd-cert-manager-role -n <uipath_namespace> -
Bereinigen Sie die Zertifikatsmanager-Ressourcen im Namespace:
# Delete all certificates oc delete certificates.cert-manager.io --all -n <uipath_namespace> # Delete all issuers oc delete issuers.cert-manager.io --all -n <uipath_namespace> # Delete all clusterissuers if you created any oc delete clusterissuers.cert-manager.io --all
# Delete all certificates oc delete certificates.cert-manager.io --all -n <uipath_namespace> # Delete all issuers oc delete issuers.cert-manager.io --all -n <uipath_namespace> # Delete all clusterissuers if you created any oc delete clusterissuers.cert-manager.io --all -
Deinstallieren Sie den Zertifikatsmanager über den Operator Hub in der OpenShift-Konsole.
-
Überprüfen der verbleibenden Ressourcen:
# Check for any remaining cert-manager resources oc get all -n <uipath_namespace> | grep cert-manager oc get crd | grep cert-manager
# Check for any remaining cert-manager resources oc get all -n <uipath_namespace> | grep cert-manager oc get crd | grep cert-manager
Wenn bestimmte Ressourcen nicht gelöscht werden können:
-
Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen verfügen.
-
Überprüfen Sie, ob die Ressourcen von anderen Anwendungen verwendet werden.
-
Bei Ressourcen, die im Status „Wird beendet “ feststecken, müssen Sie möglicherweise die finalisierenden Elemente entfernen.
-
Bei dieser Deinstallation wird davon ausgegangen, dass cert-manager über den OpenShift Operator Hub installiert wurde.
-
Deinstallieren Sie den cert-manager nur, wenn er nicht von anderen Anwendungen in Ihrem Cluster verwendet wird.
-
Wenn mehrere Anwendungen vom Zertifikatsmanager abhängen, sollten Sie erwägen, nur die UiPath-spezifischen Ressourcen zu entfernen.
-
Ersetzen Sie
<uipath_namespace>
durch Ihren tatsächlichen UiPath-Namespace.
Sie können auch das folgende Bash-Skript verwenden, um die YAML-Anwendungsdatei zu generieren:
#!/bin/bash
echo "Enter the namespace of argocd applications"
read argocd_namespace
echo "Enter the name of uipath namespace"
read uipath_namespace
if [[ "${argocd_namespace}" == "openshift-gitops" ]]; then
echo "Enter the argocd project name"
read project
else
project="default"
fi
echo "Enter the registry fqdn"
read registry_fqdn
echo "Enter the DAPR helm chart version"
read dapr_version
echo "-------------------- SUMMARY --------------------"
echo "Argocd Application namespace : $argocd_namespace"
echo "Uipath namespace : $uipath_namespace"
echo "Argocd Project name : $project"
echo "Helm registry FQDN : $registry_fqdn"
echo "DAPR Version : $dapr_version"
echo "------------- Application yaml file-------------"
echo -n "apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: dapr
namespace: $argocd_namespace
spec:
destination:
namespace: $uipath_namespace
server: https://kubernetes.default.svc
ignoreDifferences:
- jsonPointers:
- /data
- /stringData
- /metadata
kind: Secret
- group: apiextensions.k8s.io
jsonPointers:
- /spec/conversion
kind: CustomResourceDefinition
- group: admissionregistration.k8s.io
jsonPointers:
- /webhooks
kind: MutatingWebhookConfiguration
project: $project
source:
chart: helm/dapr
helm:
valueFiles:
- values.yaml
values: |
global:
registry: $registry_fqdn/daprio
imagePullSecrets: uipathpullsecret
mtls:
enabled: true
prometheus:
enabled: false
logAsJson: true
actors:
enabled: false
ha:
enabled: false
replicaCount: 1
rbac:
namespaced: true
seccompProfile: RuntimeDefault
dapr_dashboard:
enabled: false
dapr_operator:
watchInterval: 1m
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: "1"
memory: 200Mi
watchNamespace: $uipath_namespace
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sidecar_injector:
allowedServiceAccounts: $uipath_namespace:default
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
sidecarDropALLCapabilities: true
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sentry:
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_rbac:
secretReader:
enabled: false
createClusterScopedObjects: true
repoURL: $registry_fqdn
targetRevision: $dapr_version
syncPolicy:
automated:
prune: true
selfHeal: true
retry:
backoff:
duration: 10s
factor: 2
maxDuration: 1m
limit: 1000
syncOptions:
- CreateNamespace=true
- RespectIgnoreDifferences=true"
#!/bin/bash
echo "Enter the namespace of argocd applications"
read argocd_namespace
echo "Enter the name of uipath namespace"
read uipath_namespace
if [[ "${argocd_namespace}" == "openshift-gitops" ]]; then
echo "Enter the argocd project name"
read project
else
project="default"
fi
echo "Enter the registry fqdn"
read registry_fqdn
echo "Enter the DAPR helm chart version"
read dapr_version
echo "-------------------- SUMMARY --------------------"
echo "Argocd Application namespace : $argocd_namespace"
echo "Uipath namespace : $uipath_namespace"
echo "Argocd Project name : $project"
echo "Helm registry FQDN : $registry_fqdn"
echo "DAPR Version : $dapr_version"
echo "------------- Application yaml file-------------"
echo -n "apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: dapr
namespace: $argocd_namespace
spec:
destination:
namespace: $uipath_namespace
server: https://kubernetes.default.svc
ignoreDifferences:
- jsonPointers:
- /data
- /stringData
- /metadata
kind: Secret
- group: apiextensions.k8s.io
jsonPointers:
- /spec/conversion
kind: CustomResourceDefinition
- group: admissionregistration.k8s.io
jsonPointers:
- /webhooks
kind: MutatingWebhookConfiguration
project: $project
source:
chart: helm/dapr
helm:
valueFiles:
- values.yaml
values: |
global:
registry: $registry_fqdn/daprio
imagePullSecrets: uipathpullsecret
mtls:
enabled: true
prometheus:
enabled: false
logAsJson: true
actors:
enabled: false
ha:
enabled: false
replicaCount: 1
rbac:
namespaced: true
seccompProfile: RuntimeDefault
dapr_dashboard:
enabled: false
dapr_operator:
watchInterval: 1m
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: "1"
memory: 200Mi
watchNamespace: $uipath_namespace
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sidecar_injector:
allowedServiceAccounts: $uipath_namespace:default
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
sidecarDropALLCapabilities: true
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sentry:
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_rbac:
secretReader:
enabled: false
createClusterScopedObjects: true
repoURL: $registry_fqdn
targetRevision: $dapr_version
syncPolicy:
automated:
prune: true
selfHeal: true
retry:
backoff:
duration: 10s
factor: 2
maxDuration: 1m
limit: 1000
syncOptions:
- CreateNamespace=true
- RespectIgnoreDifferences=true"
-
OpenShift-CLI (
oc
) installiert und konfiguriert. -
Entsprechende Berechtigungen zum Löschen von Ressourcen in den Ziel-Namespaces.
Bevor Sie fortfahren, müssen Sie die folgenden Informationen sammeln:
-
UiPath-Namespace, in dem Dapr installiert ist.
-
ArgoCD-Namespace (normalerweise
argocd
oderopenshift-gitops
). -
Ob es sich um eine gemeinsam genutzte ArgoCD-Instanz oder eine dedizierte Instanz handelt.
-
Löschen Sie die Dapr-Anwendung aus ArgoCD:
# Verify the application exists first oc get application.argoproj.io dapr -n <argocd_namespace> # If it exists, delete it oc delete application.argoproj.io dapr -n <argocd_namespace>
# Verify the application exists first oc get application.argoproj.io dapr -n <argocd_namespace> # If it exists, delete it oc delete application.argoproj.io dapr -n <argocd_namespace>Warten Sie, bis die Ressourcen gelöscht wurden.
-
Benutzerdefinierte Dapr-Ressourcen löschen:
# Delete all Dapr components in the UiPath namespace oc delete components.dapr.io --all -n <uipath_namespace> # Delete all Dapr configurations in the UiPath namespace oc delete configurations.dapr.io --all -n <uipath_namespace> # Delete all Dapr resiliencies in the UiPath namespace oc delete resiliencies.dapr.io --all -n <uipath_namespace> # Delete all Dapr subscriptions in the UiPath namespace oc delete subscriptions.dapr.io --all -n <uipath_namespace>
# Delete all Dapr components in the UiPath namespace oc delete components.dapr.io --all -n <uipath_namespace> # Delete all Dapr configurations in the UiPath namespace oc delete configurations.dapr.io --all -n <uipath_namespace> # Delete all Dapr resiliencies in the UiPath namespace oc delete resiliencies.dapr.io --all -n <uipath_namespace> # Delete all Dapr subscriptions in the UiPath namespace oc delete subscriptions.dapr.io --all -n <uipath_namespace> -
Benutzerdefinierte Dapr-Ressourcendefinitionen (CRDs) löschen:
# Delete Dapr CRDs oc delete crd components.dapr.io oc delete crd configurations.dapr.io oc delete crd resiliencies.dapr.io oc delete crd subscriptions.dapr.io
# Delete Dapr CRDs oc delete crd components.dapr.io oc delete crd configurations.dapr.io oc delete crd resiliencies.dapr.io oc delete crd subscriptions.dapr.io -
Entfernen Sie Dapr-Webhook-Konfigurationen:
# Delete the Dapr sidecar injector webhook oc delete mutatingwebhookconfigurations dapr-sidecar-injector
# Delete the Dapr sidecar injector webhook oc delete mutatingwebhookconfigurations dapr-sidecar-injector -
Entfernen Sie Dapr-spezifische Rollenbindungen
-
Für die freigegebene ArgoCD-Instanz:
# Verify if the role binding exists oc get rolebinding gitops-dapr-creator-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding gitops-dapr-creator-binding -n <uipath_namespace> # Check for cert-manager binding (may be used by other applications) oc get rolebinding gitops-cert-manager-binding -n <uipath_namespace> # If it exists and you determine it's safe to delete, run: oc delete rolebinding gitops-cert-manager-binding -n <uipath_namespace>
# Verify if the role binding exists oc get rolebinding gitops-dapr-creator-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding gitops-dapr-creator-binding -n <uipath_namespace> # Check for cert-manager binding (may be used by other applications) oc get rolebinding gitops-cert-manager-binding -n <uipath_namespace> # If it exists and you determine it's safe to delete, run: oc delete rolebinding gitops-cert-manager-binding -n <uipath_namespace> -
Für die dedizierte ArgoCD-Instanz:
# Verify if the role binding exists oc get rolebinding dapr-creator-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding dapr-creator-binding -n <uipath_namespace>
# Verify if the role binding exists oc get rolebinding dapr-creator-binding -n <uipath_namespace> # If it exists, delete it oc delete rolebinding dapr-creator-binding -n <uipath_namespace>
-
-
Entfernen Sie Dapr-spezifische Rollen:
# Check if the dapr-creator role exists oc get role dapr-creator -n <uipath_namespace> # If it exists, delete it oc delete role dapr-creator -n <uipath_namespace>
# Check if the dapr-creator role exists oc get role dapr-creator -n <uipath_namespace> # If it exists, delete it oc delete role dapr-creator -n <uipath_namespace> -
Bereinigen Sie verbleibende Dapr-Ressourcen
-
Pods:
# List all Dapr-related pods oc get pods -n <uipath_namespace> | grep dapr # Delete each Dapr pod oc delete pod <pod_name> -n <uipath_namespace>
# List all Dapr-related pods oc get pods -n <uipath_namespace> | grep dapr # Delete each Dapr pod oc delete pod <pod_name> -n <uipath_namespace> -
Dienste:
# List all Dapr-related services oc get svc -n <uipath_namespace> | grep dapr # Delete each Dapr service oc delete svc <service_name> -n <uipath_namespace>
# List all Dapr-related services oc get svc -n <uipath_namespace> | grep dapr # Delete each Dapr service oc delete svc <service_name> -n <uipath_namespace> -
Bereitstellungen:
# List all Dapr-related deployments oc get deployments -n <uipath_namespace> | grep dapr # Delete each Dapr deployment oc delete deployment <deployment_name> -n <uipath_namespace>
# List all Dapr-related deployments oc get deployments -n <uipath_namespace> | grep dapr # Delete each Dapr deployment oc delete deployment <deployment_name> -n <uipath_namespace>
-
Stellen Sie nach Abschluss aller Deinstallationsschritte sicher, dass alle Dapr-Komponenten entfernt wurden:
# Check for any remaining Dapr resources
oc get pods -n <uipath_namespace> | grep dapr
oc get svc -n <uipath_namespace> | grep dapr
oc get deployments -n <uipath_namespace> | grep dapr
oc get crd | grep dapr
# Check for any remaining Dapr resources
oc get pods -n <uipath_namespace> | grep dapr
oc get svc -n <uipath_namespace> | grep dapr
oc get deployments -n <uipath_namespace> | grep dapr
oc get crd | grep dapr
Wenn bestimmte Ressourcen nicht gelöscht werden können:
-
Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen verfügen.
-
Überprüfen Sie, ob die Ressourcen von einem anderen Controller verwaltet werden.
-
Untersuchen Sie alle Abhängigkeiten, die das Löschen verhindern könnten.
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: anyuid-role
namespace: <uipath>
rules:
- apiGroups: ["security.openshift.io"]
resources: ["securitycontextconstraints"]
resourceNames: ["anyuid"]
verbs: ["use"]
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: anyuid-role
namespace: <uipath>
rules:
- apiGroups: ["security.openshift.io"]
resources: ["securitycontextconstraints"]
resourceNames: ["anyuid"]
verbs: ["use"]
oc create rolebinding argocd-anyuid-binding --role=anyuid-role \
--serviceaccount=<argocd>:argocd-argocd-application-controller -n <uipath>
oc create rolebinding argocd-anyuid-binding --role=anyuid-role \
--serviceaccount=<argocd>:argocd-argocd-application-controller -n <uipath>
Für eine freigegebene ArgoCD-Instanz müssen Sie keine zusätzliche Konfiguration vornehmen.
- Installieren des Zertifikatsmanagers
- Deinstallieren des Cert Managers
- Voraussetzungen
- Information erforderlich
- Schritt-für-Schritt-Deinstallationsprozess
- Fehlersuche und ‑behebung
- Hinweise
- Installieren von Dapr
- Generieren der YAML-Datei der Anwendung per Bash-Skript
- Dapr wird deinstalliert
- Voraussetzungen
- Information erforderlich
- Schritt-für-Schritt-Deinstallationsprozess
- Überprüfung
- Fehlersuche und ‑behebung
- Hinweise
- Konfigurieren des Airflows