Automation Suite
2022.4
falso
Imagem de fundo do banner
Guia de instalação do Automation Suite
Última atualização 24 de abr de 2024

Configuração das máquinas

Configuração dos ajustes do nível do kernel e SO

A página a seguir ajuda os administradores do Linux no gerenciamento de configurações no nível do sistema operacional e do kernel antes de realizar uma instalação do Automation Suite.

Normalmente, essas configurações são gerenciadas por meio de uma ferramenta de configuração de gerenciamento dedicada, como o Puppet. Certifique-se de que as alterações que você faz estejam de acordo com o processo de controle de seu ambiente para fins de consistência e documentação.

Importante:

Certifique-se de concluir as seguintes etapas antes de iniciar a instalação, pois configurações incorretas no nível do sistema operacional e do kernel podem levar a erros não intuitivos. A verificação dessas configurações específicas muitas vezes pode evitar esses erros.

Ajuste das configurações do sysctl

As seguintes configurações sysctl são necessárias na máquina:
  • Habilitar Encaminhamento de IP

  • desativação da filtragem de caminho reverso

Você pode fazer isso executando o seguinte 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
Observação: o nf-call-iptables é necessário para a maioria das implantações do Kubernetes. O Kubernetes cria redes virtuais internas para o cluster. Isso permite que cada pod tenha seu próprio endereço IP, que é usado em conjunto com os serviços de nome internos para facilitar a comunicação de serviço a serviço. O cluster não funciona sem o nf-call-iptables habilitado. Para obter detalhes, consulte a documentação oficial do Kubernetes.

Configuração de ajustes de fapolicy

Se estiver usando fapolicy, é necessária uma política específica do RKE2. Para gerar isso, use o seguinte 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
Observação:

Certifique-se de que a alteração seja comunicada à sua equipe do Linux e passe pelos processos de gerenciamento de configuração apropriados.

Configuração dos ajustes de noexec e nosuid

Os discos usados para a montagem /var/lib/rancher não devem ter noexec ou nosuid definidos. A ferramenta de disco cria automaticamente essas montagens sem essas propriedades.
Importante:

Se um administrador do Linux definir manualmente essas propriedades, a instância torna-se não funcional.

Para obter mais detalhes sobre a configuração do disco, consulte Requisitos de disco.

Como configurar o disco

Importante: para evitar a perda de dados, certifique-se de que a infraestrutura que você usa não exclua automaticamente discos de clusters na reinicialização ou desligamento do cluster. Se essa capacidade estiver habilitada, certifique-se desabilitá-la.
Você pode configurar e particionar os discos usando o script configureUiPathDisks.sh . Para obter detalhes, consulte as seções a seguir.

Requisitos do disco

Antes da instalação, você deve particionar e configurar o disco usando o LVM, para que seu tamanho possa ser alterado facilmente e sem nenhuma migração de dados ou perda de dados.

Particionamento do disco

A estrutura de particionamento padrão em máquinas RHEL não é adequada para a instalação do Kubernetes. Isso ocorre porque a infraestrutura do Kubernetes geralmente é instalada na partição /var. Por padrão, a partição var é alocada apenas 8 GiB de espaço.
Observação:
  • O formato aceito para o disco é ext4 ou xfs.
  • Todas as partições devem ser criadas usando o LVM. Isso é para garantir que os dados do cluster possam residir em um disco diferente, mas ainda possam ser exibidos de forma coerente. Isso também ajuda a estender o tamanho da partição no futuro sem o risco de migração de dados ou perda de dados.

  • Todos os pods e registros de aplicativos são armazenados no diretório /var/log/pods. Certifique-se de que a capacidade deste diretório seja de pelo menos 8 GiB. Também recomendamos configurar logrotate para rodar os logs em um intervalo que varia de diário a semanal.

Para o sistema operacional RHEL, você precisa garantir que tenha os seguintes tamanhos mínimos de pontos de montagem na máquina.

Online

Rótulo do disco

Partição

Tamanho

Finalidade

Disco do cluster

/var/lib/rancher

190 GiB

A pasta Rancher armazena imagens e camadas de contêineres

/var/lib/kubelet

56 GiB

A pasta Kubelet armazena configurações do Kubernetes em runtime, como segredos, configmaps e emptyDir

/opt/UiPathAutomationSuite

20 GiB

Binário do instalador

Disco do etcd

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

16 GiB

Banco de dados distribuído para Kubernetes

Data Disk

/datadisk

512 GiB (instalação básica)

Abstração de armazenamento em bloco

2 TiB (instalação completa)

Observação:
Recomendamos que você não use o disco do OS para qualquer um dos propósitos acima, para garantir que os processos recebam sua quota devida de recursos.
Offline
Observação:

Os requisitos para offline são os mesmos que online, exceto para a primeira máquina em que você executa a instalação, que precisa dos seguintes requisitos.

O espaço extra é necessário para descompactar o pacote offline.

Rótulo do disco

Partição

Tamanho

Finalidade

Disco do cluster

/var/lib/rancher

190 GiB

A pasta Rancher armazena imagens e camadas de contêineres

/var/lib/kubelet

56 GiB

A pasta Kubelet armazena configurações do Kubernetes em runtime, como segredos, configmaps e emptyDir

/opt/UiPathAutomationSuite

20 GiB

Binário do instalador

Disco do etcd

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

16 GiB

Banco de dados distribuído para Kubernetes

Data Disk

/datadisk

512 GiB (instalação básica)

Abstração de armazenamento em bloco

2 TiB (instalação completa)

UiPath Bundle Disk

/uipath

512 GiB

Pacote isolado

Observação:
Recomendamos que você não use o disco do OS para qualquer um dos propósitos acima, para garantir que os processos recebam sua quota devida de recursos.
Observação:

Os discos de dados e do etcd devem ser discos físicos separados. Isso isola fisicamente os discos de dados e do etcd de outras atividades e cargas de trabalho do cluster, além de aprimorar o desempenho e a estabilidade do cluster.

Consulte a seção a seguir para obter detalhes sobre como usar o script de exemplo para particionar e configurar o disco antes da instalação.

Como usar o script para configurar o disco

Como baixar o script

Observação: para instalações offline, você deve realizar essa etapa em uma máquina com acesso à internet e às máquinas isoladas nas quais o Automation Suite está implantado. Copie o arquivo da máquina online para a máquina de destino.
Você pode usar o script configureUiPathDisks.sh para configurar e particionar o disco.

Para obter instruções de download, consulte configureUiPathDisks.sh.

Execução do script

Você pode usar o script configureUiPathDisks.sh para os seguintes propósitos:
  • configurar os discos e pontos de montagem para uma nova instalação de cluster do Automation Suite;
  • redimensionar o disco de dados após a instalação.

Para tornar o script executável, execute:

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

Para mais detalhes sobre o uso do script, execute:

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
***************************************************************************************

Como configurar o disco para uma configuração de avaliação de nó único

Online

Para configurar o disco em uma configuração online de avaliação de nó único, execute o seguinte comando na máquina:

./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

Offline

Em uma instalação offline, você deve carregar as imagens do produto no registro do Docker. Para isso, é necessário ter armazenamento adicional na forma de um disco separado para hospedar o pacote de produtos da UiPath.

Para configurar o disco em uma configuração offline de avaliação de nó único, execute o seguinte comando na máquina:

./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
Observação: se você tiver um nó de agente adicional para o Task Mining ou uma GPU, somente um disco de cluster será necessário nesse nó. Você pode executar o script fornecendo o nome do disco do cluster e especificando o tipo de nó como agente.

Como configurar o disco do Objectstore

Para configurar o disco para o objectstore, execute o seguinte comando:

./configureUiPathDisks.sh --ceph-raw-disk-name name_ceph_raw_disk./configureUiPathDisks.sh --ceph-raw-disk-name name_ceph_raw_disk
Observação:
  • Um problema conhecido do Azure marca incorretamente o disco do Azure como não SSD. Se o Azure for seu provedor de nuvem e você quiser configurar o disco do Objectstore, siga as instruções em Solução de problemas.

  • A escalabilidade vertical dos discos existentes não é suportada. Para aumentar o tamanho do seu armazenamento no cluster pós-instalação, adicione novos discos raw.

Como estender a pós-instalação do disco de dados

Para estender o disco de dados, você pode anexar o novo disco físico ou redimensionar o disco existente.

Como adicionar um novo disco

Para estender o disco de dados usando o disco recém-anexado, execute o seguinte comando na máquina do 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

Como redimensionar o disco existente

Para estender o disco de dados redimensionando um disco existente, execute o seguinte comando na máquina do servidor:

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

Como validar montagens no disco

  1. Realize as etapas a seguir para validar se /etc/fstab está configurado corretamente para lidar com a reinicialização do sistema.
    Observação:
    Certifique-se de que os pontos de montagem do disco do etcd e de dados sejam adicionados no arquivo fstab.
    Se você tiver uma partição de disco separada para /var/lib/rancher e /var/lib/kubelet, fstab também deve conter essas duas pastas. Certifique-se também de incluir a opção nofail nessas entradas fstab para que não afete a inicialização da VM em caso de falhas.
  2. Valide se os discos estão montados corretamente executando o seguinte comando:
    mount -afvmount -afv
  3. Você deve obter a seguinte resposta:
    /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

Como habilitar portas

Certifique-se de ter as seguintes portas habilitadas em seu firewall para cada origem.

Porta

Protocol

Origem

Finalidade

Requisitos

22

TCP

Jump Server/máquina cliente

Para SSH (instalação, depuração de gerenciamento de cluster)

Não abra esta porta para a internet. Permita o acesso à máquina cliente ou ao jump server.

80

TCP

 

Apenas instalação offline: necessário para enviar notificações de email do sistema.

 

443

TCP

Todos os nós em um cluster + balanceador de carga

Para HTTPS (acessando o Automation Suite)

Essa porta deve ter conectividade de entrada e saída de todos os nós do cluster e do balanceador de carga.

587

TCP

 

Apenas instalação offline: necessário para enviar notificações de email do sistema.

 

Se você habilitou o Task Mining e provisionou um nó de Task Mining dedicado e/ou provisionou um nó dedicado com suporte a GPU, certifique-se de que, além das acima, você tenha as seguintes portas habilitadas em seu firewall:

Porta

Protocol

Origem

Finalidade

Requisitos

2379

TCP

Todos os nós em um cluster

Porta do cliente do etcd

Não deve expor à internet. O acesso entre os nós deve ser suficiente em um endereço IP privado.

2380

TCP

Todos os nós em um cluster

Porta do par do etcd

Não deve expor à internet. O acesso entre os nós deve ser suficiente em um endereço IP privado.

6443

TCP

Todos os nós em um cluster

Para acessar a API do Kube usando HTTPS, e obrigatório para associação de nó

Essa porta deve ter conectividade de entrada e saída de todos os nós do cluster.

8472

UDP

Todos os nós em um cluster

Obrigatório para Flanel (VXLAN)

Não deve expor à internet. O acesso entre os nós deve ser suficiente em um endereço IP privado.

9345

TCP

Todos os nós em um cluster + balanceador de carga

Para acessar a API Kube usando HTTP, obrigatório para associar o nó

Essa porta deve ter conectividade de entrada e saída de todos os nós do cluster e do balanceador de carga.

10250

TCP

Todos os nós em um cluster

kubelet / servidor de métricas

Não deve expor à internet. O acesso entre os nós deve ser suficiente em um endereço IP privado.

30071

TCP

Todos os nós em um cluster

A porta NodePort para comunicação interna entre nós em um cluster

Não deve expor à internet. O acesso entre os nós deve ser suficiente em um endereço IP privado.

Importante:
Expor a porta 6443 fora do limite do cluster é obrigatório se houver uma conexão direta com a API do Kerberos.
A porta 9345 é usada pelos nós para descobrir nós existentes e ingressar no cluster na implantação de vários nós. Para manter os mecanismos de descoberta de alta disponibilidade em funcionamento, recomendamos expô-los por meio do balanceador de carga com verificação de integridade.

Certifique-se também de ter conectividade de todos os nós com o SQL Server.

Não exponha o SQL Server em uma das portas reservadas do Istio, pois isso pode causar falhas de conexão.

Se você tiver um firewall configurado na rede, certifique-se de que ele tenha essas portas abertas e permita o tráfego de acordo com os requisitos mencionados acima.

Opcional: configuração do servidor proxy

Para configurar um proxy, você precisa realizar etapas de configuração adicionais ao configurar seu ambiente com os pré-requisitos e durante a fase de configuração avançada no momento da instalação.

As etapas a seguir são obrigatórias ao configurar o ambiente.

Atualmente, não aceitamos o proxy HTTPS com certificados autoassinados. Certifique-se de usar um certificado público confiável se estiver configurando o proxy.

Etapa 1: habilitação de portas na rede virtual

Certifique-se de ter as seguintes regras habilitadas em seu grupo de segurança de rede para a rede virtual fornecida.

Origem

Destino

Rota por proxy

Porta

Description

Rede Virtual

Sql

Não

Porta do SQL Server

Obrigatório para o SQL Server.

Rede Virtual

Load balancer

Não

9345

6443

Obrigatório para adicionar novos nós ao cluster.

Rede Virtual

Cluster(sub-rede)

Não

Todas as portas

Obrigatório para comunicação em um intervalo de IP privado.

Rede Virtual

alm.<fqdn>

Não

443

Obrigatório para login e uso do cliente do ArgoCD durante a implantação.

Rede Virtual

Servidor de Proxy

Sim

Todas as portas

Obrigatório para rotear o tráfego para o servidor proxy.

Rede Virtual

NameServer

Não

Todas as portas

A maioria dos serviços de nuvem, como o Azure e o AWS, usa isso para buscar os metadados da VM e considera isso um IP privado.

Rede Virtual

MetaDataServer

Não

Todas as portas

A maioria dos serviços em nuvem, como o Azure e o AWS, usa o endereço IP 169.254.169.254 para buscar metadados da máquina.

Etapa 2: adição da configuração de proxy a cada nó

Ao configurar os nós, você precisa adicionar a configuração de proxy a cada nó que faz parte do cluster. Esta etapa é obrigatória para rotear o tráfego de saída do nó por meio do servidor proxy.

  1. Adicione a seguinte configuração em /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. Adicione a seguinte configuração em /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 obrigatórios

    Description

    http_proxy

    Usado para rotear solicitações de saída HTTP a partir do nó. Este deve ser o FQDN e a porta do servidor proxy.

    https_proxy

    Usado para rotear solicitações de saída HTTPS a partir do nó. Este deve ser o FQDN e a porta do servidor proxy.

    no_proxy

    Lista de hosts separados por vírgulas, endereços IP que você não deseja rotear por meio do servidor proxy. Este deve ser um intervalo de sub-rede privada, host do servidor SQL, endereço do servidor nomeado, endereço do servidor de metadados: alm.<fqdn>,<fixed_rke2_address>,<named server address>,<metadata server address>
    • named server address – A maioria dos serviços em nuvem, como o Azure e a AWS, faz uso disso para resolver consultas DNS.
    • metadata server address – A maioria dos serviços em nuvem, como o Azure e a AWS, faz uso do endereço IP 169.254.169.254 para buscar metadados de máquina.
  3. Verifique se as configurações de proxy estão definidas corretamente executando o seguinte comando:

    curl -v $HTTP_PROXY
    curl -v <fixed_rke_address>:9345curl -v $HTTP_PROXY
    curl -v <fixed_rke_address>:9345
    Importante: após você atender aos requisitos do servidor do proxy, certifique-se de continuar com a configuração do proxy durante a instalação. Siga as etapas em Opcional: configuração do servidor do proxy para garantir que o servidor do proxy esteja configurado corretamente.

Was this page helpful?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Logotipo branco da Uipath
Confiança e segurança
© 2005-2024 UiPath. All rights reserved.