Automation Suite
2021.10
False
Imagen de fondo del banner
Guía de instalación de Automation Suite
Última actualización 19 de abr. de 2024

Configurar las máquinas

Configuración del kernel y del sistema operativo

La siguiente página ayuda a los administradores de Linux a gestionar la configuración del sistema operativo y el kernel antes de realizar una instalación de Automation Suite.

Normalmente, esta configuración se gestiona a través de una herramienta de configuración de gestión dedicada, como Puppet. Asegúrate de que los cambios que realices sean según el proceso de control de tu entorno para fines de coherencia y documentación.

Importante:

Asegúrate de completar los siguientes pasos antes de iniciar la instalación, ya que una mala configuración a nivel del sistema operativo y del núcleo puede provocar errores no intuitivos. Comprobar esta configuración específica a menudo puede evitar tales errores.

Configuración de sysctl

Se requiere la siguiente configuración sysctl en la máquina:
  • HabilitarTransmisiónDeLaIP

  • deshabilitar el filtrado de ruta inversa

Puedes hacerlo ejecutando el siguiente comando:

cat <<EOF >>"/etc/sysctl.d/99-sysctl.conf"
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.conf.all.rp_filter=0
EOFcat <<EOF >>"/etc/sysctl.d/99-sysctl.conf"
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.conf.all.rp_filter=0
EOF
Nota: nf-call-iptables es necesario para la mayoría de las implementaciones de Kubernetes. Kubernetes crea redes virtuales internas al clúster. Esto permite que cada pod tenga su propia dirección IP, que se utiliza junto con los servicios de nombres internos para facilitar la comunicación entre servicios. El clúster no funciona si nf-call-iptables no está habilitado. Para obtener más información, consulta la documentación de Kubernetes oficial.

Configuración de fapolicy

Si se utiliza fapolicy, se requiere una política específica RKE2. Para generar esto, utiliza el siguiente comando:

cat <<-EOF >>"/etc/fapolicyd/rules.d/69-rke2.rules"
allow perm=any all : dir=/var/lib/rancher/
allow perm=any all : dir=/opt/cni/
allow perm=any all : dir=/run/k3s/
allow perm=any all : dir=/var/lib/kubelet/
EOFcat <<-EOF >>"/etc/fapolicyd/rules.d/69-rke2.rules"
allow perm=any all : dir=/var/lib/rancher/
allow perm=any all : dir=/opt/cni/
allow perm=any all : dir=/run/k3s/
allow perm=any all : dir=/var/lib/kubelet/
EOF
Nota:

Asegúrate de que el cambio se comunique a tu equipo de Linux y pase por los procesos de gestión de la configuración adecuados.

Configuración de noexec y nosuid

Los discos utilizados para el montaje /var/lib/rancher no deben tener noexec o nosuid. La herramienta de disco crea automáticamente estos montajes sin estas propiedades.
Importante:

Si un administrador de Linux establece manualmente estas propiedades, la instancia se convierte en no funcional.

Para obtener más información sobre la configuración del disco, consulta Requisitos del disco.

Configurar el disco

Importante: Para evitar la pérdida de datos, asegúrate de que la infraestructura que utilizas no elimina automáticamente los discos del clúster al reiniciarlo o apagarlo. Si esta función está activada, asegúrese de desactivarla.
Puedes configurar y particionar los discos utilizando el script configureUiPathDisks.sh . Para obtener más información, consulta las siguientes secciones.

Requisitos del disco

Antes de proceder a la instalación, hay que realizar una partición del disco y configurarlo mediante LVM, de modo que su tamaño pueda modificarse fácilmente y sin que se produzcan migraciones o pérdidas de datos.

Realizar partición del disco

La estructura de partición predeterminada en las máquinas RHEL no es adecuada para instalar Kubernetes. Esto se debe a que la infraestructura de Kubernetes suele instalarse en la partición /var. De forma predeterminada, a la partición var se le asignan solo 8 GiB de espacio.
Nota:
El formato admitido para el disco es ext4 o xfs.

Todas las particiones deben crearse con LVM. Esto tiene la finalidad de garantizar que los datos del clúster puedan residir en un disco diferente y puedan verse correctamente. También permite ampliar el tamaño de la partición en un futuro sin riesgo de migración o pérdida de datos.

Para el sistema operativo RHEL, asegúrate de disponer de los siguientes tamaños mínimos de puntos de instalación en la máquina.

En línea

Etiqueta de disco

Partición

Tamaño

Propósito

Disco del clúster

/var/lib/rancher

190 GiB

La carpeta Rancher almacena imágenes y capas

/var/lib/kubelet

56 GiB

La carpeta Kubernetes almacena las configuraciones de tiempo de ejecución de Kubernetes, como secrets, configmaps y emptyDir

/opt/UiPathAutomationSuite

10 GiB

Instalador binario

Disco etcd

/var/lib/rancher/rke2/server/db

16 GiB

Base de datos distribuida para Kubernetes

DiscoDeDatos

/datadisk

512 GiB (instalación básica)

Abstracción del almacenamiento en bloque

2 TiB (instalación completa)

Nota:
Te recomendamos no utilizar el disco del sistema operativo para ninguno de los anteriores fines, para garantizar que los procesos reciban la cantidad justa de recursos.
Sin conexión
Nota:

Los requisitos para la instalación sin conexión son los mismos que para la instalación en línea, excepto para la primera máquina en la que se realiza la instalación, que exige los siguientes requisitos.

Es necesario disponer de espacio adicional para extraer el paquete sin conexión.

Etiqueta de disco

Partición

Tamaño

Propósito

Disco del clúster

/var/lib/rancher

190 GiB

La carpeta Rancher almacena imágenes y capas

/var/lib/kubelet

56 GiB

La carpeta Kubernetes almacena las configuraciones de tiempo de ejecución de Kubernetes, como secrets, configmaps y emptyDir

/opt/UiPathAutomationSuite

10 GiB

Instalador binario

Disco etcd

/var/lib/rancher/rke2/server/db

16 GiB

Base de datos distribuida para Kubernetes

DiscoDeDatos

/datadisk

512 GiB (instalación básica)

Abstracción del almacenamiento en bloque

2 TiB (instalación completa)

Disco de paquete de UiPath

/uipath

512 GiB

Paquete aislado

Nota:
Te recomendamos no utilizar el disco del sistema operativo para ninguno de los anteriores fines, para garantizar que los procesos reciban la cantidad justa de recursos.
Nota:

Los discos de datos y etcd deben ser discos físicos independientes. De esta manera, los datos y los discos etcd están físicamente aislados de otras cargas de trabajo y actividades del clúster, a la vez que se mejoran el rendimiento y la estabilidad del clúster.

Consulte la siguiente sección para obtener detalles sobre cómo utilizar el script de ejemplo para realizar una partición del disco y configurarlo antes de la instalación.

Utilizar el script para configurar el disco

Descargar el script

Nota: Para las instalaciones sin conexión, debes realizar este paso en una máquina con acceso a Internet y a máquinas aisladas en las que se haya implementado Automation Suite. Copie el archivo de la máquina en línea a la primera máquina de destino.
Puedes utilizar el script configureUiPathDisks.sh para configurar y realizar una partición del disco.

Para obtener instrucciones de descarga, consulta configureUiPathDisks.sh.

Ejecutar el script

El script configureUiPathDisks.sh puede utilizarse para los siguientes fines:
  • configurar los discos y puntos de instalación para una nueva instalación de clúster de Automation Suite;
  • cambiar el tamaño del disco de datos después de la instalación.

Para hacer que el script sea ejecutable, ejecute:

chmod +x ./configureUiPathDisks.shchmod +x ./configureUiPathDisks.sh

Para obtener información más detallada sobre el uso del script, ejecute el siguiente comando:

sudo ./configureUiPathDisks.sh --helpsudo ./configureUiPathDisks.sh --help
***************************************************************************************

Utility to configure the disk for UiPath Automation Suite Installation.
Run this script to configure the disks on new machine or to extend the size of datadisk

Arguments
  -n|--node-type                  NodeType, Possible values: agent, server. Default to server
  -i|--install-type               Installation mode, Possible values: online, offline. Default to online
  -c|--cluster-disk-name          Device to host rancher and  kubelet. Ex: /dev/sdb
  -e|--etcd-disk-name             Device to host etcd, Not required for agent node. Ex: /dev/sdb
  -l|--data-disk-name             Device to host datadisk, Not required for agent node. Ex: /dev/sdc
  -b|--bundle-disk-name           Device to host the uipath bundle. 
                                    Only required for offline installation on 1st server node 
  -f|--complete-suite             Installing complete product suite or any of these products: 
                                    aicenter, apps, taskmining, documentunderstanding. 
                                    This will configure the datadisk volume to be 2TiB instead of 512Gi.
  -p|--primary-server             Is this machine is first server machine? Applicable only for airgap install.
                                    This is the machine on which UiPath AutomationSuite bundle will be installed.
                                    Default to false
  -x|--extend-data-disk           Extend the datadisk. Either attach new disk or resize the exiting datadisk
  -r|--resize                     Used in conjunction of with --extend-data-disk to resize the exiting volume,
                                    instead of adding new volume               
  -d|--debug                      Run in debug
  -h|--help                       Display help

ExampleUsage:
  configureUiPathDisks.sh --node-type server --install-type online \
    --cluster-disk-name /dev/sdb --etcd-disk-name /dev/sdc \
    --data-disk-name /dev/sdd

  configureUiPathDisks.sh --data-disk-name /dev/sdh --extend-data-disk
******************************************************************************************************************************************************************************

Utility to configure the disk for UiPath Automation Suite Installation.
Run this script to configure the disks on new machine or to extend the size of datadisk

Arguments
  -n|--node-type                  NodeType, Possible values: agent, server. Default to server
  -i|--install-type               Installation mode, Possible values: online, offline. Default to online
  -c|--cluster-disk-name          Device to host rancher and  kubelet. Ex: /dev/sdb
  -e|--etcd-disk-name             Device to host etcd, Not required for agent node. Ex: /dev/sdb
  -l|--data-disk-name             Device to host datadisk, Not required for agent node. Ex: /dev/sdc
  -b|--bundle-disk-name           Device to host the uipath bundle. 
                                    Only required for offline installation on 1st server node 
  -f|--complete-suite             Installing complete product suite or any of these products: 
                                    aicenter, apps, taskmining, documentunderstanding. 
                                    This will configure the datadisk volume to be 2TiB instead of 512Gi.
  -p|--primary-server             Is this machine is first server machine? Applicable only for airgap install.
                                    This is the machine on which UiPath AutomationSuite bundle will be installed.
                                    Default to false
  -x|--extend-data-disk           Extend the datadisk. Either attach new disk or resize the exiting datadisk
  -r|--resize                     Used in conjunction of with --extend-data-disk to resize the exiting volume,
                                    instead of adding new volume               
  -d|--debug                      Run in debug
  -h|--help                       Display help

ExampleUsage:
  configureUiPathDisks.sh --node-type server --install-type online \
    --cluster-disk-name /dev/sdb --etcd-disk-name /dev/sdc \
    --data-disk-name /dev/sdd

  configureUiPathDisks.sh --data-disk-name /dev/sdh --extend-data-disk
***************************************************************************************

Configurar el disco para una configuración de producción multinodo preparada para alta disponibilidad

En línea

Nodos de servidor

Para configurar el disco en una configuración de producción multinodo preparada para alta disponibilidad, ejecute el siguiente comando en todas las máquinas del servidor:

./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --etcd-disk-name name_of_etcd_disk \
  --data-disk-name name_of_data_disk./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --etcd-disk-name name_of_etcd_disk \
  --data-disk-name name_of_data_disk
Nodos agente

Para configurar el disco en una configuración de producción multinodo preparada para alta disponibilidad, ejecute el siguiente comando en todas las máquinas del agente:

./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --node-type agent./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --node-type agent

Sin conexión

Primer nodo de servidor

En una instalación sin conexión, necesitará cargar las imágenes del producto en el registro de Docker. Para ello, se requiere un almacenamiento adicional en forma de disco independiente. Este disco se utilizará para extraer los paquetes de productos y cargar las imágenes en el registro de Docker. Tan solo es necesario que esté presente en la primera máquina.

Establezca el marcador --primary-server en la primera máquina del servidor o en la máquina en la que se ejecutará el instalador de fábrica y de servicio.

Para configurar el disco en una configuración de producción multinodo preparada para alta disponibilidad sin conexión, ejecute el siguiente comando en la primera máquina del servidor:

./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --etcd-disk-name name_of_etcd_disk \
  --data-disk-name name_of_data_disk \
  --bundle-disk-name name_of_uipath_bundle_disk \
  --primary-server \
  --install-type offline./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --etcd-disk-name name_of_etcd_disk \
  --data-disk-name name_of_data_disk \
  --bundle-disk-name name_of_uipath_bundle_disk \
  --primary-server \
  --install-type offline
Nodos adicionales del servidor
El disco del paquete no es necesario en los nodos de servidor. Por tanto, no es necesario proporcionar el --primary-server y el --bundle-disk-name.

Para configurar el disco en una configuración de producción multinodo preparada para alta disponibilidad sin conexión, ejecute el siguiente comando en el resto de máquinas del servidor:

./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --etcd-disk-name name_of_etcd_disk \
  --data-disk-name name_of_data_disk \
  --install-type offline./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --etcd-disk-name name_of_etcd_disk \
  --data-disk-name name_of_data_disk \
  --install-type offline
Nodos agente
El disco del paquete no es necesario en los nodos de servidor. Por tanto, no es necesario proporcionar el --primary-server y el --bundle-disk-name.

Para configurar el disco en una configuración de producción multinodo preparada para alta disponibilidad sin conexión, ejecute el siguiente comando en el resto de máquinas del agente:

./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --node-type agent \
  --install-type offline./configureUiPathDisks.sh --cluster-disk-name name_of_cluster_disk \
  --node-type agent \
  --install-type offline

Ampliar el disco de datos tras la instalación

Para ampliar el disco de datos, puede asociar el nuevo disco físico o cambiar el tamaño del disco existente.

Añadir un disco nuevo

Para ampliar el disco de datos utilizando el disco recién asociado, ejecute el siguiente comando en las máquinas del servidor:

./configureUiPathDisks.sh --data-disk-name name_of_data_disk \
  --extend-data-disk./configureUiPathDisks.sh --data-disk-name name_of_data_disk \
  --extend-data-disk

Cambiar tamaño del disco existente

Para ampliar el disco de datos cambiando el tamaño del disco existente, ejecute el siguiente comando en las máquinas del servidor:

./configureUiPathDisks.sh --extend-data-disk --resize./configureUiPathDisks.sh --extend-data-disk --resize

Validar instalaciones de disco

  1. Realice los pasos siguientes para validar que /etc/fstab está correctamente configurado para gestionar el reinicio del sistema.
    Nota:
    Asegúrese de que los puntos de instalación de etcd y datadisk se añaden al archivo fstab.
    Si tiene una partición de disco independiente para /var/lib/rancher y /var/lib/kubelet, entonces fstab también debe contener estas dos carpetas. Asegúrese también de incluir la opción nofail en esas entradas de fstab para que no afecte al arranque de la máquina virtual en caso de fallos.
  2. Valide que los discos están correctamente instalados ejecutando el siguiente comando:

    mount -afvmount -afv
  3. Debe obtener la siguiente respuesta:

    /datadisk                              : already mounted
    /var/lib/rancher/rke2/server/db        : already mounted
    /var/lib/rancher                       : already mounted
    /var/lib/kubelet                       : already mounted/datadisk                              : already mounted
    /var/lib/rancher/rke2/server/db        : already mounted
    /var/lib/rancher                       : already mounted
    /var/lib/kubelet                       : already mounted

Habilitar puertos

Asegúrese de tener habilitados los siguientes puertos en su firewall para cada origen.

Puerto

Protocolo

Origen

Propósito

Requisitos

22

TCP

Servidor de salto o máquina cliente

Para SSH (instalación, depuración de la gestión del clúster)

No abra este puerto a Internet. Permitir el acceso a la máquina cliente o al servidor de salto

80

TCP

 

Solo instalación sin conexión: necesaria para el envío de notificaciones del sistema por correo electrónico.

 

443

TCP

Todos los nodos de un clúster y el equilibrador de carga

Para HTTPS (acceso a Automation Suite)

Este puerto debe tener conectividad de entrada y salida desde todos los nodos del clúster y el equilibrador de carga.

587

TCP

 

Solo instalación sin conexión: necesaria para el envío de notificaciones del sistema por correo electrónico.

 

2379

TCP

Todos los nodos de un clúster

Puerto cliente etcd

No debe exponerse a Internet. El acceso entre nodos debe ser suficiente a través de una dirección IP privada.

2380

TCP

Todos los nodos de un clúster

Puerto de pares etcd

No debe exponerse a Internet. El acceso entre nodos debe ser suficiente a través de una dirección IP privada.

6443

TCP

Todos los nodos de un clúster

Se requiere para acceder a la API de Kubernetes mediante HTTPS y para la unión de nodos

Este puerto debe tener conectividad entrante y saliente de todos los nodos del clúster.

8472

UDP

Todos los nodos de un clúster

Se requiere para Flannel (VXLAN)

No debe exponerse a Internet. El acceso entre nodos debe ser suficiente a través de una dirección IP privada.

9345

TCP

Todos los nodos de un clúster y el equilibrador de carga

Se requiere para acceder a la API de Kubernetes mediante HTTPS y para la unión de nodos

Este puerto debe tener conectividad de entrada y salida desde todos los nodos del clúster y el equilibrador de carga.

10250

TCP

Todos los nodos de un clúster

Kubelet o servidor de métricas

No debe exponerse a Internet. El acceso entre nodos debe ser suficiente a través de una dirección IP privada.

30071

TCP

Todos los nodos de un clúster

Puerto NodePort para la comunicación interna entre los nodos de un clúster

No debe exponerse a Internet. El acceso entre nodos debe ser suficiente a través de una dirección IP privada.

Importante:
Exponer el puerto 6443fuera del límite del clúster es obligatorio si hay una conexión directa a la API de Kerberos.
Los nodos utilizan el puerto 9345 para descubrir nodos existentes y unirse al clúster en la implementación multinodo. Para mantener en funcionamiento los mecanismos de descubrimiento de alta disponibilidad, recomendamos exponerlo a través del equilibrador de carga con la comprobación de estado.

Asegúrese también de tener conectividad desde todos los nodos al servidor SQL.

No expongas el servidor SQL en uno de los puertos reservados de Istio, ya que puede provocar fallos de conexión.

Si tiene un firewall configurado en la red, asegúrese de que estos puertos están abiertos y se permite el tráfico de acuerdo con los requisitos mencionados anteriormente.

Opcional: configurar el servidor proxy

Para configurar un proxy, es necesario realizar pasos de configuración adicionales durante la configuración de tu entorno con los requisitos previos y en la fase de configuración avanzada.

Los pasos siguientes son obligatorios para la configuración del entorno.

Nota: Actualmente, el proxy HTTPS no es compatible con certificados autofirmados. Asegúrese de utilizar un certificado público de confianza si va a configurar el proxy.

Paso 1: habilitar puertos en la red virtual

Asegúrese de que las siguientes reglas están habilitadas en su grupo de seguridad de red para la red virtual específica.

Origen

Destination

Redireccionamiento a través de proxy

Puerto

Descripción

Red virtual

Sql

No

Puerto del servidor SQL

Necesario para el servidor SQL.

Red virtual

Load balancer

No

9345

6443

Se requiere para añadir nuevos nodos al clúster.

Red virtual

Clúster (subred)

No

Todos los puertos

Se requiere para la comunicación a través de un rango de IP privado.

Red virtual

alm.<fqdn>

No

443

Se requiere para iniciar sesión y utilizar el cliente ArgoCD durante la implementación.

Red virtual

Servidor Proxy

Todos los puertos

Se requiere para redirigir el tráfico al servidor proxy.

Red virtual

Servidor de nombres

No

Todos los puertos

La mayoría de los servicios en la nube, como Azure y AWS, lo utilizan para obtener los metadatos de la máquina virtual y lo consideran una IP privada.

Red virtual

Servidor de metadatos

No

Todos los puertos

La mayoría de los servicios en la nube, como Azure y AWS, utilizan la dirección IP 169.254.169.254 para obtener los metadatos de las máquinas.

Paso 2: añadir la configuración del proxy a cada nodo

Al configurar los nodos, es necesario añadir la configuración del proxy a cada nodo que forma parte del clúster. Este paso es necesario para redireccionar el tráfico saliente del nodo a través del servidor proxy.

  1. Añada la siguiente configuración en /etc/environment:
    http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>
  2. Añada la siguiente configuración en /etc/wgetrc:
    http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>http_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    https_proxy=http://<PROXY-SERVER-IP>:<PROXY-PORT>
    no_proxy=alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>,<private_subnet_ip>,localhost,<Comma separated list of ips that should not got though proxy server>

    Parámetros obligatorios

    Descripción

    http_proxy

    Se utiliza para redirigir las peticiones salientes HTTP del nodo. Debe ser el FQDN y el puerto del servidor proxy.

    https_proxy

    Se utiliza para redirigir las peticiones salientes HTTPS del nodo. Debe ser el FQDN y el puerto del servidor proxy.

    no_proxy

    Lista separada por comas de hosts, direcciones IP que no desea enrutar a través del servidor proxy. Debe ser un rango de subred privada, un host de servidor SQL, una dirección de servidor con nombre, una dirección de servidor de metadatos: alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>.
    • metadata server address – La mayoría de los servicios en la nube, como Azure y AWS, utilizan la dirección IP 169.254.169.254 para obtener los metadatos de la máquina.
    • named server address – La mayoría de los servicios en la nube, como Azure y AWS, lo utilizan para resolver consultas de DNS.
  3. Verifique si la configuración del proxy es correcta ejecutando el siguiente comando:

    curl -v $HTTP_PROXY
    curl -v <fixed_rke_address>:9345curl -v $HTTP_PROXY
    curl -v <fixed_rke_address>:9345
    Importante: una vez que cumplas con los requisitos del servidor proxy, asegúrate de continuar con la configuración del proxy durante la instalación. Sigue los pasos en Opcional: Configurar el servidor proxy para asegurarte de que el servidor proxy está configurado correctamente.

Was this page helpful?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Logotipo blanco de UiPath
Confianza y seguridad
© 2005-2024 UiPath. All rights reserved.