- Información general
- Requisitos
- Preinstalación
- Preparar la instalación
- Instalar y configurar la malla de servicio
- Descarga de los paquetes de instalación
- Configurar el registro compatible con OCI
- Conceder permisos de instalación
- Instalar y configurar la herramienta GitOps
- Implementar Redis a través de OperatorHub
- Cumplir los requisitos previos de Process Mining
- Aplicar configuraciones varias
- Ejecutar uipathctl
- Instalación
- Después de la instalación
- Migración y actualización
- Actualizar Automation Suite
- Migrar productos independientes a Automation Suite
- Paso 1: restaurar la base de datos del producto independiente
- Paso 2: actualizar el esquema de la base de datos del producto restaurada
- Paso 3: mover los datos de la organización de Identity de independiente a Automation Suite
- Paso 4: Realizar una copia de seguridad de la base de datos de la plataforma en Automation Suite
- Paso 5: Fusionar organizaciones en Automation Suite
- Paso 6: actualizar las cadenas de conexión del producto migradas
- Paso 7: migrar Orchestrator independiente
- Paso 8: migrar Insights independiente
- Paso 9: eliminar el tenant predeterminado
- Realizar una migración de un solo tenant
- Migrar entre clústeres de Automation Suite
- Supervisión y alertas
- Administración de clústeres
- Configuración específica del producto
- Configurar parámetros de Orchestrator
- Configurar AppSettings
- Configurar el tamaño máximo de la solicitud
- Anular la configuración de almacenamiento a nivel de clúster
- Configurar NLog
- Guardar los registros del robot en Elasticsearch
- Configurar almacenes de credenciales
- Configurar clave de cifrado por tenant
- Limpiar la base de datos de Orchestrator
- Solución de problemas

Guía de instalación de Automation Suite en OpenShift
La instalación de Dapr para Process Mining requiere cert-manager.
Para instalar Cert Manager a través de los operadores de OpenShift, sigue las instrucciones de Instalación del operador cert-manager para Red Hat OpenShift.
Para asegurarte de que ArgoCD puede crear un certificado utilizando cert-manager, debes proporcionar los permisos necesarios en cert-manager a ArgoCD.
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-controlleroc project <uipath>
oc create rolebinding argocd-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<argocd>:argocd-argocd-application-controlleroc project <uipath>
oc create rolebinding gitops-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<openshift-gitops>:openshift-gitops-argocd-application-controlleroc project <uipath>
oc create rolebinding gitops-cert-manager-binding --role=argocd-cert-manager-role \
--serviceaccount=<openshift-gitops>:openshift-gitops-argocd-application-controllerRequisitos previos
-
OpenShift CLI (
oc) instalado y configurado. -
Permisos adecuados para eliminar recursos en los espacios de nombres de destino.
Información requerida
Antes de continuar, debes recopilar la siguiente información:
-
Espacio de nombres de UiPath donde se utilizan los recursos de cert-manager.
-
Si se trata de una instancia compartida de ArgoCD o una dedicada.
Proceso de desinstalación paso a paso
-
Elimina los enlaces de rol para cert-manager:
-
Para la instancia dedicada de ArgoCD:
# 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> -
Para instancia compartida de ArgoCD:
# 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>
-
-
Elimina el rol de gestor de certificados:
# 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> -
Limpia los recursos de cert-manager en el espacio de nombres:
# 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 -
Desinstala cert-manager a través del hub del operador en la consola de OpenShift.
-
Verificar los recursos restantes:
# 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
Solución de problemas
Si no se pueden eliminar determinados recursos:
-
Asegúrate de tener los permisos necesarios.
-
Comprueba si los recursos están siendo utilizados por otras aplicaciones.
-
Para los recursos que están atascados en el estado Terminando , es posible que debas eliminar los finalizadores.
Notas
-
Este procedimiento de desinstalación supone que cert-manager se instaló a través de OpenShift Operator Hub.
-
Desinstala cert-manager solo si no lo utilizan otras aplicaciones de tu clúster.
-
Si varias aplicaciones dependen de cert-manager, considera eliminar solo los recursos específicos de UiPath.
-
Sustituye
<uipath_namespace>por tu espacio de nombres de UiPath real.
Generar el archivo YAML de la aplicación a través del script Bash
También puedes utilizar el siguiente script Bash para generar el archivo YAML de la aplicación:
#!/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"Requisitos previos
-
OpenShift CLI (
oc) instalado y configurado. -
Permisos adecuados para eliminar recursos en los espacios de nombres de destino.
Información requerida
Antes de continuar, debes recopilar la siguiente información:
-
Espacio de nombres de UiPath donde está instalado Dapr.
-
Espacio de nombres ArgoCD (normalmente
argocdoopenshift-gitops). -
Si se trata de una instancia compartida de ArgoCD o una dedicada.
Proceso de desinstalación paso a paso
-
Elimina la aplicación Dapr de 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>Espere a que se eliminen los recursos.
-
Eliminar recursos personalizados de Dapr:
# 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> -
Eliminar definiciones de recursos personalizados (CRD) de Dapr:
# 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 -
Eliminar las configuraciones de webhook de Dapr:
# Delete the Dapr sidecar injector webhook oc delete mutatingwebhookconfigurations dapr-sidecar-injector# Delete the Dapr sidecar injector webhook oc delete mutatingwebhookconfigurations dapr-sidecar-injector -
Eliminar vinculaciones de roles específicas de Dapr
-
Para instancia compartida de ArgoCD:
# 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> -
Para la instancia dedicada de ArgoCD:
# 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>
-
-
Eliminar roles específicos de Dapr:
# 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> -
Limpiar los recursos restantes de Dapr
-
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> -
Servicios:
# 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> -
Implementaciones:
# 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>
-
Verificación
Después de completar todos los pasos de desinstalación, comprueba que se han eliminado todos los componentes de 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# 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 daprSolución de problemas
Si no se pueden eliminar determinados recursos:
-
Asegúrate de tener los permisos necesarios.
-
Comprueba si los recursos están siendo gestionados por otro controlador.
-
Investiga cualquier dependencia que pueda estar impidiendo la eliminación.
Notas
-
Sustituye
<uipath_namespace>por tu espacio de nombres de UiPath real. -
Sustituye
<argocd_namespace>por tu espacio de nombres ArgoCD real. -
Ten cuidado al eliminar recursos compartidos que puedan afectar a otras aplicaciones.
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>No es necesario realizar ninguna configuración adicional para una instancia compartida de ArgoCD.
- Instalación de cert-manager
- Desinstalar Cert Manager
- Requisitos previos
- Información requerida
- Proceso de desinstalación paso a paso
- Solución de problemas
- Notas
- Instalar Dapr
- Generar el archivo YAML de la aplicación a través del script Bash
- Desinstalar Dapr
- Requisitos previos
- Información requerida
- Proceso de desinstalación paso a paso
- Verificación
- Solución de problemas
- Notas
- Configurar Airflow