automation-suite
2.2510
true
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.
UiPath logo, featuring letters U and I in white

Guía de instalación de Automation Suite en OpenShift

Última actualización 13 de nov. de 2025

Instalar y configurar la herramienta GitOps

Nota:
Antes de continuar con la instalación y configuración del operador OpenShift GitOps, debes instalar OpenShift Service Mesh y proporcionar todos los permisos necesarios a la cuenta de servicio uipathadmin .

Puedes implementar Automation Suite utilizando una instancia de OpenShift GitOps Operator dedicada a las aplicaciones de UiPath® o una instancia compartida de OpenShift GitOps Operator, si ya está instalada y disponible en tu clúster.

Recomendamos utilizar una instancia de operador OpenShift GitOps dedicada para instalar las aplicaciones de Automation Suite. Este método requiere permisos mínimos para los demás espacios de nombres y recursos del clúster.

Para obtener instrucciones de instalación y acceso, consulta las siguientes secciones:

Aprovisionar una instancia de GitOps dedicada

Nota:
Recomendamos utilizar un espacio de nombres que sea diferente de <uipath> para ArgoCD.
Si utilizas la versión 1.15 o posterior de Openshift GitOps e instalas una instancia dedicada de ArgoCD dentro del espacio de nombres <uipath> , la IU de ArgoCD no será accesible debido a las políticas de red en el espacio de nombres <uipath> añadido por el plano de control de Service Mesh. Para solucionarlo, debes añadir una política de red, como se muestra en el siguiente ejemplo, para permitir que los pods de entrada lleguen a los pods del servidor ArgoCD en el espacio de nombres <uipath> .
kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: allow-argocd
spec:
  podSelector:
    matchLabels:
      app.kubernetes.io/name: argocd-server
  ingress:
    - from:
        - namespaceSelector:
            matchLabels:
              network.openshift.io/policy-group: ingress
  policyTypes:
    - Ingresskind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: allow-argocd
spec:
  podSelector:
    matchLabels:
      app.kubernetes.io/name: argocd-server
  ingress:
    - from:
        - namespaceSelector:
            matchLabels:
              network.openshift.io/policy-group: ingress
  policyTypes:
    - Ingress
Para aprovisionar una instancia de operador OpenShift GitOps dedicada, sigue los siguientes pasos:
  1. Si el espacio de nombres <argocd> aún no existe, ejecuta los siguientes comandos para crearlo:
    oc get namespace <argocd> || oc new-project <argocd>
    oc project <argocd>oc get namespace <argocd> || oc new-project <argocd>
    oc project <argocd>
  2. Instala el operador OpenShift GitOps siguiendo las instrucciones de Instalación de OpenShift GitOps.
  3. Crea una nueva instancia de ArgoCD siguiendo las instrucciones de Configuración de una nueva instancia de ArgoCD.
    Nota: en la sección spec descrita en Habilitar réplicas para el servidor de CD de Argo y el servidor de repositorio, debes añadir la siguiente línea:
    server.route.enabled: trueserver.route.enabled: true
  4. Parchear la implementación de ArgoCD:
    oc -n <argocd> patch deployment argocd-server \
      -p '{"spec":{"template":{"metadata":{"labels":{"maistra.io/expose-route":"true"}}}}}'oc -n <argocd> patch deployment argocd-server \
      -p '{"spec":{"template":{"metadata":{"labels":{"maistra.io/expose-route":"true"}}}}}'
  5. Crea un rol para que ArgoCD pueda gestionar rangos de límites. Para crear el rol, sigue los siguientes pasos:
    1. Guarda la siguiente configuración de roles como un archivo YAML:
      kind: Role
      apiVersion: rbac.authorization.k8s.io/v1
      metadata:
        name: limit-range-manager
        namespace: <uipath>
      rules:
        - apiGroups: ["*"]
          resources: ["limitranges"]
          verbs: ["get", "watch", "list", "patch", "update", "create"]kind: Role
      apiVersion: rbac.authorization.k8s.io/v1
      metadata:
        name: limit-range-manager
        namespace: <uipath>
      rules:
        - apiGroups: ["*"]
          resources: ["limitranges"]
          verbs: ["get", "watch", "list", "patch", "update", "create"]
      
    2. Aplica la configuración ejecutando el siguiente comando. Asegúrate de reemplazar el marcador de posición <file_name.yaml> con el nombre real del archivo YAML:
      oc apply -f <file_name.yaml>oc apply -f <file_name.yaml>
  6. Vincula el rol limit-range-manager a la cuenta de servicio argocd :
    oc -n <uipath> create rolebinding limit-range-manager-binding --role=limit-range-manager --serviceaccount=<argocd>:argocd-argocd-application-controlleroc -n <uipath> create rolebinding limit-range-manager-binding --role=limit-range-manager --serviceaccount=<argocd>:argocd-argocd-application-controller
  7. Si habilitaste Robots de Automation Suite, debes habilitar el modo de todo el clúster para ArgoCD siguiendo los siguientes pasos:
    1. En <openshift-gitops>, edita el recurso de suscripción openshift-gitops-operator para incluir la siguiente variable de entorno:
      ARGOCD_CLUSTER_CONFIG_NAMESPACES: <argocd>ARGOCD_CLUSTER_CONFIG_NAMESPACES: <argocd>
  8. Debes asegurarte de que la instancia de ArgoCD pueda gestionar el espacio de nombres <uipath> si el espacio de nombres <uipath> no es el mismo que el espacio de nombres <argocd> :
    oc label namespace <uipath> argocd.argoproj.io/managed-by=<argocd>oc label namespace <uipath> argocd.argoproj.io/managed-by=<argocd>
    Después de aplicar la configuración, reinicia ArgoCD application-controler (statefulset) y server (implementación).
  9. Debes realizar los siguientes pasos solo si el espacio de nombres <uipath> no es el mismo que el espacio de nombres <argocd>.
    Crea un rol para gestionar las aplicaciones en el espacio de nombres <argocd>. Para crear el rol, sigue los siguientes pasos:
    1. Guarda la siguiente configuración de roles como un archivo YAML:
      apiVersion: rbac.authorization.k8s.io/v1
      kind: Role
      metadata:
        name: uipath-application-manager
        namespace: <argocd>
      rules:
      - apiGroups:
        - argoproj.io
        resources:
        - applications
        verbs:
        - "*"apiVersion: rbac.authorization.k8s.io/v1
      kind: Role
      metadata:
        name: uipath-application-manager
        namespace: <argocd>
      rules:
      - apiGroups:
        - argoproj.io
        resources:
        - applications
        verbs:
        - "*"
    2. Aplica la configuración ejecutando el siguiente comando. Asegúrate de reemplazar el marcador de posición <file_name.yaml> con el nombre real del archivo YAML:
      oc apply -f <file_name.yaml>oc apply -f <file_name.yaml>
  10. Vincula el rol uipath-application-manager a la cuenta de servicio uipathadmin :
    oc project <argocd>
    oc create rolebinding uipath-application-manager \
      --role=uipath-application-manager --serviceaccount=<uipath>:uipathadminoc project <argocd>
    oc create rolebinding uipath-application-manager \
      --role=uipath-application-manager --serviceaccount=<uipath>:uipathadmin
  11. Crea un rol para que la cuenta de servicio uipathadmin pueda crear y editar el secreto en el espacio de nombres <argocd>. La aplicación ArgoCD requiere este rol para actualizar el secreto de Helm. Para crear el rol, sigue los siguientes pasos:
    1. Guarda la siguiente configuración de roles como un archivo YAML:
      apiVersion: rbac.authorization.k8s.io/v1
      kind: Role
      metadata:
        name: argo-secret-role
        namespace: <argocd>
      rules:
        - apiGroups: ["rbac.authorization.k8s.io"]
          resources: ["roles", "rolebindings"]
          verbs: ["*"]
        - apiGroups: ["*"]
          resources: ["secrets"]
          verbs: ["get", "watch", "list", "patch", "update", "create"]apiVersion: rbac.authorization.k8s.io/v1
      kind: Role
      metadata:
        name: argo-secret-role
        namespace: <argocd>
      rules:
        - apiGroups: ["rbac.authorization.k8s.io"]
          resources: ["roles", "rolebindings"]
          verbs: ["*"]
        - apiGroups: ["*"]
          resources: ["secrets"]
          verbs: ["get", "watch", "list", "patch", "update", "create"]
    2. Aplica la configuración ejecutando el siguiente comando. Asegúrate de reemplazar el marcador de posición <file_name.yaml> con el nombre real del archivo YAML:
      oc apply -f <file_name.yaml>oc apply -f <file_name.yaml>
  12. Vincula el rol argo-secret-role a la cuenta de servicio uipathadmin :
    oc project <argocd>
    oc create rolebinding secret-binding \
      --role=argo-secret-role --serviceaccount=<uipath>:uipathadminoc project <argocd>
    oc create rolebinding secret-binding \
      --role=argo-secret-role --serviceaccount=<uipath>:uipathadmin
  13. Vincula el rol namespace-reader en el espacio de nombres <argocd> a la cuenta de servicio uipathadmin :
    oc project <argocd>
    oc create rolebinding namespace-reader-rolebinding \
      --clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadminoc project <argocd>
    oc create rolebinding namespace-reader-rolebinding \
      --clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadmin

Acceder a la instancia de ArgoCD dedicada

Para acceder a ArgoCD, siga estos pasos:

  1. Obtener la URL del host:
    oc get routes argocd-server -n <argocd> -o jsonpath={.spec.host}; echooc get routes argocd-server -n <argocd> -o jsonpath={.spec.host}; echo
  2. Para iniciar sesión, utiliza admin como nombre de usuario y ejecuta el siguiente comando para obtener la contraseña:
    oc -n <argocd> get secrets argocd-cluster \
      -o "jsonpath={.data['admin\.password']}" | base64 -d; echooc -n <argocd> get secrets argocd-cluster \
      -o "jsonpath={.data['admin\.password']}" | base64 -d; echo

Configurar el repositorio privado de Helm y los certificados en ArgoCD

Para configurar el repositorio de Helm en ArgoCD, sigue los siguientes pasos:
  1. Inicie sesión en ArgoCD.
  2. Ve a Configuración > Repositorios > +CONECTAR REPO.
  3. Utiliza VIA HTTPS para el método de conexión.
  4. Selecciona Helm como tipo.
  5. Proporcione un nombre.
  6. Elija predeterminado como proyecto.
  7. Proporciona la URL del repositorio, el nombre de usuario, la contraseña y la información del certificado.
    Importante: Al añadir el certificado de cliente TLS en la página +CONECTAR REPO, la clave del certificado de cliente TLS se convierte en un campo obligatorio. Para configurar el certificado de registro sin la clave de certificado de cliente TLS, sigue los siguientes pasos:
    1. Ve a Configuración > Certificados de repositorio y hosts conocidos > +AÑADIR CERTIFICADO TLS.

    2. Añade el nombre del repositorio y el certificado TLS en formato PEM.

  8. Habilita la casilla de verificación OCI .
  9. Seleccione Conectar.
  10. Asegúrate de que el estado de la conexión sea Correcto.

Configurar una instancia de GitOps compartida

Si tu equipo de plataforma aún no ha aprovisionado la instancia compartida de OpenShift GitOps Operator, sigue los siguientes pasos de instalación y configuración:
  1. Crea el espacio de nombres <uipath> :
    oc get namespace <uipath> || oc new-project <uipath>
    oc project <uipath>oc get namespace <uipath> || oc new-project <uipath>
    oc project <uipath>
  2. Instala el operador OpenShift GitOps siguiendo las instrucciones de Instalación de OpenShift GitOps. Esta instalación viene con la instancia predeterminada de ArgoCD, llamada openshift-gitops, en el espacio de nombres <openshift-gitops> .
  3. Habilita el modo de todo el clúster para ArgoCD siguiendo los siguientes pasos:
    1. En <openshift-gitops>, edita el recurso de suscripción openshift-gitops-operator para incluir la siguiente variable de entorno:
      ARGOCD_CLUSTER_CONFIG_NAMESPACES: <openshift-gitops>ARGOCD_CLUSTER_CONFIG_NAMESPACES: <openshift-gitops>
  4. Asegúrate de que la instancia openshift-gitops de ArgoCD puede gestionar el espacio de nombres <uipath> :
    oc label namespace <uipath> argocd.argoproj.io/managed-by=openshift-gitopsoc label namespace <uipath> argocd.argoproj.io/managed-by=openshift-gitops
    Después de aplicar la configuración, reinicia ArgoCD openshift-gitops-application-controller (statefulset) y openshift-gitops-server (implementación).
  5. Parchear la implementación de ArgoCD:
    oc -n <uipath> patch deployment argocd-server 
      -p '{"spec":{"template":{"metadata":{"labels":{"maistra.io/expose-route":"true"}}}}}'oc -n <uipath> patch deployment argocd-server 
      -p '{"spec":{"template":{"metadata":{"labels":{"maistra.io/expose-route":"true"}}}}}'
  6. Crea un proyecto ArgoCD para la aplicación UiPath®:
    apiVersion: argoproj.io/v1alpha1
    kind: AppProject
    metadata:
      name: uipath
      namespace: <openshift-gitops>
    spec:
      description: Appproject to managed and deploy uipath applications
      clusterResourceWhitelist:
        - group: '*'
          kind: '*'
      destinations:
        - namespace: <uipath>
          server: https://kubernetes.default.svc
        - namespace: <istio-system>
          server: https://kubernetes.default.svc
      sourceNamespaces:
        - <openshift-gitops>
      sourceRepos:
        - '*'apiVersion: argoproj.io/v1alpha1
    kind: AppProject
    metadata:
      name: uipath
      namespace: <openshift-gitops>
    spec:
      description: Appproject to managed and deploy uipath applications
      clusterResourceWhitelist:
        - group: '*'
          kind: '*'
      destinations:
        - namespace: <uipath>
          server: https://kubernetes.default.svc
        - namespace: <istio-system>
          server: https://kubernetes.default.svc
      sourceNamespaces:
        - <openshift-gitops>
      sourceRepos:
        - '*'
  7. Crea un rol para que ArgoCD pueda gestionar rangos de límites. Para crear el rol, sigue los siguientes pasos:
    1. Guarda la siguiente configuración de roles como un archivo YAML:

      kind: Role
      apiVersion: rbac.authorization.k8s.io/v1
      metadata:
        name: limit-range-manager
        namespace: <uipath>
      rules:
        - apiGroups: ["*"]
          resources: ["limitranges"]
          verbs: ["get", "watch", "list", "patch", "update", "create"]kind: Role
      apiVersion: rbac.authorization.k8s.io/v1
      metadata:
        name: limit-range-manager
        namespace: <uipath>
      rules:
        - apiGroups: ["*"]
          resources: ["limitranges"]
          verbs: ["get", "watch", "list", "patch", "update", "create"]
      
    2. Aplica la configuración ejecutando el siguiente comando. Asegúrate de reemplazar el marcador de posición <file_name.yaml> con el nombre real del archivo YAML:
      oc apply -f <file_name.yaml>oc apply -f <file_name.yaml>
  8. Vincula el rol limit-range-manager a la cuenta de servicio argocd :
    oc -n <uipath> create rolebinding limit-range-manager-binding --role=limit-range-manager --serviceaccount=<openshift-gitops>:openshift-gitops-argocd-application-controlleroc -n <uipath> create rolebinding limit-range-manager-binding --role=limit-range-manager --serviceaccount=<openshift-gitops>:openshift-gitops-argocd-application-controller
  9. Crea un rol para gestionar las aplicaciones en el espacio de nombres <openshift-gitops> :
    apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      name: uipath-application-manager
      namespace: <openshift-gitops>
    rules:
    - apiGroups:
      - argoproj.io
      resources:
      - applications
      verbs:
      - "*"apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      name: uipath-application-manager
      namespace: <openshift-gitops>
    rules:
    - apiGroups:
      - argoproj.io
      resources:
      - applications
      verbs:
      - "*"
  10. Vincula el rol uipath-application-manager a la cuenta de servicio uipathadmin :
    oc project <openshift-gitops>
    oc create rolebinding uipath-application-manager \
      --role=uipath-application-manager --serviceaccount=<uipath>:uipathadminoc project <openshift-gitops>
    oc create rolebinding uipath-application-manager \
      --role=uipath-application-manager --serviceaccount=<uipath>:uipathadmin
  11. Crea un rol para que ArgoCD pueda crear y editar el secreto en el espacio de nombres <openshift-gitops> . La aplicación ArgoCD requiere este rol para actualizar el secreto de Helm. El siguiente ejemplo muestra una configuración válida para el rol:
    apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      name: argo-secret-role
      namespace: <openshift-gitops>
    rules:
      - apiGroups: ["rbac.authorization.k8s.io"]
        resources: ["roles", "rolebindings"]
        verbs: ["*"]
      - apiGroups: ["*"]
        resources: ["secrets"]
        verbs: ["get", "watch", "list", "patch", "update", "create"]apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      name: argo-secret-role
      namespace: <openshift-gitops>
    rules:
      - apiGroups: ["rbac.authorization.k8s.io"]
        resources: ["roles", "rolebindings"]
        verbs: ["*"]
      - apiGroups: ["*"]
        resources: ["secrets"]
        verbs: ["get", "watch", "list", "patch", "update", "create"]
  12. Vincula el rol argo-secret-role a la cuenta de servicio uipathadmin :
    oc project <openshift-gitops>
    oc create rolebinding secret-binding \
      --role=argo-secret-role --serviceaccount=<uipath>:uipathadminoc project <openshift-gitops>
    oc create rolebinding secret-binding \
      --role=argo-secret-role --serviceaccount=<uipath>:uipathadmin
  13. Vincula el rol namespace-reader en el espacio de nombres <openshift-gitops> a la cuenta de servicio uipathadmin :
    oc project <openshift-gitops>
    oc create rolebinding namespace-reader-rolebinding \
      --clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadminoc project <openshift-gitops>
    oc create rolebinding namespace-reader-rolebinding \
      --clusterrole=namespace-reader-clusterrole --serviceaccount=<uipath>:uipathadmin
Además de completar los pasos para configurar la instancia compartida de ArgoCD para la instalación de Automation Suite, debes añadir los siguientes parámetros al archivo input.json :
"argocd": {
    "project": "<uipath>"
  },  "argocd": {
    "project": "<uipath>"
  },

Acceder a la instancia compartida de ArgoCD

Para acceder a ArgoCD, siga estos pasos:

  1. Obtén la URL del host ejecutando los siguientes comandos:
    oc get routes openshift-gitops-server -n <openshift-gitops> -o jsonpath={.spec.host}; echooc get routes openshift-gitops-server -n <openshift-gitops> -o jsonpath={.spec.host}; echo
  2. Para iniciar sesión, utiliza admin como nombre de usuario y ejecuta el siguiente comando para obtener la contraseña:
    oc -n <openshift-gitops> get secrets openshift-gitops-cluster \
      -o "jsonpath={.data['admin\.password']}" | base64 -d; echooc -n <openshift-gitops> get secrets openshift-gitops-cluster \
      -o "jsonpath={.data['admin\.password']}" | base64 -d; echo

Configurar el repositorio privado de Helm y los certificados en ArgoCD

Para configurar el repositorio de Helm en ArgoCD, sigue los siguientes pasos:
  1. Inicie sesión en ArgoCD.
  2. Ve a Configuración > Repositorios > +CONECTAR REPO.
  3. Utiliza VIA HTTPS para el método de conexión.
  4. Selecciona Helm como tipo.
  5. Proporcione un nombre.
  6. Elija uipath como proyecto. uipath es el nombre del proyecto ArgoCD que creaste para la aplicación UiPath®.
  7. Proporciona la URL del repositorio, el nombre de usuario, la contraseña y la información del certificado.
    Importante: Al añadir el certificado de cliente TLS en la página +CONECTAR REPO, la clave del certificado de cliente TLS se convierte en un campo obligatorio. Para configurar el certificado de registro sin la clave de certificado de cliente TLS, sigue los siguientes pasos:
    1. Ve a Configuración > Certificados de repositorio y hosts conocidos > +AÑADIR CERTIFICADO TLS.

    2. Añade el nombre del repositorio y el certificado TLS en formato PEM.

  8. Habilita la casilla de verificación OCI .
  9. Seleccione Conectar.
  10. Asegúrate de que el estado de la conexión sea Correcto.

Configurar ArgoCD para varias instalaciones en un solo clúster

Para configurar ArgoCD para varias instalaciones de Automation Suite en un único clúster de OpenShift, sigue estos pasos:

  1. Comprueba si todos los servicios de ArgoCD están en funcionamiento. Puedes ejecutar el siguiente comando para supervisar todos los pods:
    oc get pods -n <argocd>oc get pods -n <argocd>
  2. Una vez que todos los servicios estén en funcionamiento, puedes utilizar el siguiente comando secuencialmente para parchear los permisos de ArgoCD. Esto permite a ArgoCD gestionar diferentes espacios de nombres de aplicaciones donde está instalado Automation Suite:
    oc patch appprojects.argoproj.io default -n <argocd> --type='merge' -p '{"spec": {"sourceNamespaces": ["*"]}}'
    oc patch configmaps argocd-cmd-params-cm -n <argocd> --type='merge' -p '{"data": {"application.namespaces": "*"}}'
    oc rollout restart -n <argocd> deployment argocd-server
    oc rollout restart -n <argocd> statefulset argocd-application-controlleroc patch appprojects.argoproj.io default -n <argocd> --type='merge' -p '{"spec": {"sourceNamespaces": ["*"]}}'
    oc patch configmaps argocd-cmd-params-cm -n <argocd> --type='merge' -p '{"data": {"application.namespaces": "*"}}'
    oc rollout restart -n <argocd> deployment argocd-server
    oc rollout restart -n <argocd> statefulset argocd-application-controller

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo
Confianza y seguridad
© 2005-2025 UiPath. Todos los derechos reservados.