automation-suite
2022.4
false
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo.
UiPath logo, featuring letters U and I in white
Guia de instalação do Automation Suite
Last updated 3 de dez de 2024

Uso do uipathctl.sh

O script uipathctl.sh fornece uma maneira automatizada de atualizar um cluster para uma versão mais recente, configurar um backup, restaurar um cluster e muito mais, executando-o em um nó. A automação dessas tarefas é feita por meio da ferramenta de automação de TI Ansible.

Requisitos

Ansible usa o mecanismo SSH para fazer login em qualquer um dos nós de host ou máquinas para executar tarefas.

Antes de executar o script uipathctl.sh , você deve executar as seguintes etapas:
  1. Identifique o nó de host Ansible.
  2. Adicione a assinatura SSH de seus nós aos hosts conhecidos.
  3. Configure o método de autenticação SSH.
  4. Instale o Ansible e outras ferramentas de pré-requisito.

Para obter instruções, consulte as seções a seguir.

Identifying the Ansible host node

O nó de host do Ansible é a máquina onde você instala o Ansible. Esta máquina deve ser um nó de servidor para que tenha as permissões necessárias para executar todas as automações no cluster.

Em instalações online, o nó do host Ansible pode ser qualquer um dos nós do servidor.

Em instalações off-line, o nó do host Ansible deve ser o nó do servidor principal no qual você montou o disco do pacote UiPath no local /uipath . Se não houver nenhum nó de servidor com o disco do pacote UiPath anexado, você pode simplesmente montar um disco adicional em qualquer um dos nós de servidor existentes e considerá-lo como o nó de host Ansible.

Adicione a assinatura de SSH de seus nós para os anfitriões conhecidos

Para adicionar a assinatura SSH de seu nó aos hosts conhecidos, adicione o endereço IP privado de cada nó no cluster ao arquivo known_hosts no nó do host Ansible.
Execute o seguinte comando no nó do host Ansible substituindo <node-private-ip> pelo endereço IP privado de cada nó no cluster, um de cada vez.
ssh-keyscan -H <node-private-ip> >> ~/.ssh/known_hostsssh-keyscan -H <node-private-ip> >> ~/.ssh/known_hosts

Setting up SSH authentication method

Ansible suporta dois mecanismos SSH:

Option 1: Key-based SSH authentication (recommended)

Passo 1: Configurando a chave SSH

O mecanismo de autenticação de chave SSH usa uma combinação de chaves privadas e públicas.

Conceda acesso à chave pública do nó do host do Ansible ao copiá-la em todos os outros nós.

Se você não tiver uma chave SSH, poderá gerar uma executando o comando ssh-keygen .
Gerando chaves SSH
Você pode gerar uma nova chave SSH usando o comando ssh-keygen . Para gerar a nova chave SSH, basta executar o comando ssh-keygen e seguir as instruções.

Para gerar uma nova chave SSH, siga os seguintes passos:

  1. Gere uma nova chave SSH usando o comando ssh-keygen .
  2. Anote a localização da sua chave. Os valores padrão são:

    • Chave pública: ~/.ssh/id_rsa.pub
    • Chave Privada: ~/.ssh/id_rsa
  3. Conceda acesso à chave pública do nó do host Ansible em todos os outros nós copiando-a.
Concedendo acesso à chave pública em cada nó
Para conceder acesso à chave pública, copie-a para todos os nós do cluster (incluindo o nó atual) usando o comando ssh-copy-id . Se o caminho da chave pública SSH não for ~/.ssh/id_rsa.pub, certifique-se de substituí-lo adequadamente.
ssh-copy-id -i ~/.ssh/id_rsa.pub username@node-private-ipssh-copy-id -i ~/.ssh/id_rsa.pub username@node-private-ip

Etapa 2: fornecer acesso de chave SSH ao Ansible

O Ansible usa o mecanismo SSH para fazer login nas máquinas host e executar a instalação necessária. Por esse motivo, você deve fornecer o acesso da chave SSH ao Ansible.

Escolha entre os seguintes métodos:

Opção 1: usando ssh-agent (recomendado)
Por padrão, o Ansible usa ssh-agent para obter acesso aos nós. Para obter mais informações sobre o ssh-agent, consulte o manual do ssh-agent.
Para adicionar uma nova chave a ssh-agent, execute o seguinte comando:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsaeval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
Opção 2: usando chave privada não protegida
Nota: Esta opção é suportada apenas se sua chave privada não estiver protegida por uma senha.
Esse método envolve o uso interativo da chave privada, adicionando o parâmetro --ansible-private-key ao seu script uipathctl.sh . O parâmetro pega o caminho absoluto da chave privada e o usa para autenticação.

Opção 2: autenticação SSH baseada em senha

Se você optar pela autenticação SSH baseada em senha, deverá fornecer o parâmetro --ansible-ask-password para o script uipathctl.sh . Este parâmetro solicitará que você forneça a senha para autenticação.

Instalação de ferramentas Ansible e outros pré-requisitos

Verificando se o Ansible e outras ferramentas de pré-requisito estão instaladas

Você deve garantir que o Ansible e as outras ferramentas de suporte a seguir estejam instaladas no nó de host do Ansible selecionado anteriormente.

  • ansible (v2.8+)
    Para verificar se ansible foi instalado, execute:
    ansible --version &>/dev/null || echo "Error: Ansible is not installed"ansible --version &>/dev/null || echo "Error: Ansible is not installed"
  • ansible-playbook

    Para verificar se ansible-playbook foi instalado, execute:
    ansible-playbook --version &>/dev/null || echo "Error: Ansible Playbook is not installed"ansible-playbook --version &>/dev/null || echo "Error: Ansible Playbook is not installed"
  • sshpass – Necessário apenas ao usar senha para autenticação junto com o parâmetro --ansible-ask-password .
    Para verificar se sshpass foi instalado, execute:
    sshpass -V &>/dev/null || echo "Error: sshpass is not installed"sshpass -V &>/dev/null || echo "Error: sshpass is not installed"
  • zip - Para marcar se zip foi instalado, execute:
    zip --version &>/dev/null || echo "Error: zip is not installed"zip --version &>/dev/null || echo "Error: zip is not installed"
    Importante: Se algum dos comandos anteriores falhar, o pacote de destino não está instalado em sua máquina. Para instalar todas as ferramentas desejadas, execute as etapas na seção a seguir. Se todas as ferramentas já estiverem instaladas, você pode pular essas etapas.

Instalação de ferramentas Ansible e outros pré-requisitos

Para instalar o Ansible e outros pacotes relacionados, siga os seguintes passos:

  1. Navegue até a pasta do instalador no nó do host Ansible. O instalador geralmente está localizado na pasta /opt/UiPathAutomationSuite/{version} .
  2. Execute os seguintes comandos:
  • Para on-line:

    ./uipathctl.sh install-prerequisites --install-type online --accept-license-agreement./uipathctl.sh install-prerequisites --install-type online --accept-license-agreement
    • Para off-line:
Você precisa de um tarball Ansible adicional, que contenha pacotes Ansible e outros dependentes. Baixe ansible.tar.gz e armazene-o em qualquer lugar fora da pasta do instalador. Para obter instruções de download, consulte ansible.tar.gz.
Se ansible.tar.gz estiver localizado em algum local diferente, atualize o local absoluto para o parâmetro --offline-prerequisites-bundle .
./uipathctl.sh install-prerequisites --install-type offline --offline-prerequisites-bundle ../ansible.tar.gz --accept-license-agreement./uipathctl.sh install-prerequisites --install-type offline --offline-prerequisites-bundle ../ansible.tar.gz --accept-license-agreement

Advanced Ansible configuration

Gerando o arquivo Ansible Inventory.ini

Em alguns cenários, como ao configurar o backup ou upgrade, o Automation Suite gera automaticamente o arquivo inventory.ini para o Ansible. No entanto, existem algumas situações em que você deve criar e fornecer o arquivo inventory.ini ao Ansible. Por exemplo:
  • Ao restaurar o cluster dos dados de backup. Isso ocorre porque, no momento da restauração, não há nenhum cluster íntegro para derivar inventory.ini.
  • Quando você deseja fornecer configurações avançadas, como nome de usuário e chave SSH, que são muito específicas para cada nó.

Para obter mais detalhes, consulte Como criar seu próprio inventário.

O bloco de código a seguir exibe o modelo de inventário que o script uipathctl.sh entende.
[FIRST_SERVER]
'10.0.1.1'
[SECONDARY_SERVERS]
'10.0.1.2'
'10.0.1.3'
[AGENTS]
'10.0.1.4'
'10.0.1.5'
[TASKMINING]
'10.0.1.6'
[GPU]
'10.0.1.7'
[all:vars]
ansible_connection=ssh
ansible_timeout=10
ansible_user=admin[FIRST_SERVER]
'10.0.1.1'
[SECONDARY_SERVERS]
'10.0.1.2'
'10.0.1.3'
[AGENTS]
'10.0.1.4'
'10.0.1.5'
[TASKMINING]
'10.0.1.6'
[GPU]
'10.0.1.7'
[all:vars]
ansible_connection=ssh
ansible_timeout=10
ansible_user=admin

Grupo

Valor

[FIRST_SERVER]

O ponto de partida onde você executa o script uipathctl.sh . Isso também é chamado de nó de host Ansible.

Você deve fornecer o endereço IP privado para este nó.

[SECONDARY_SERVER]

O grupo de outros nós de servidor no cluster.

Você deve fornecer o endereço IP privado de todos os outros nós do servidor.

[AGENTS]

O grupo de nós do agente no cluster.

Você deve fornecer o Endereço IP Privado de todos os nós do agente.

[TASKMINING]

O grupo de nós Task Mining no cluster.

Você deve fornecer o Endereço IP Privado de todos os nós de Task Mining.

[GPU]

O grupo dos nós de GPU no cluster.

Você deve fornecer Endereço IP Privado a todos os nós da GPU.

[all:vars]

O grupo de variáveis aplicadas a todos os grupos de hosts definidos anteriormente.

  • ansible_connection - O método de autenticação. Dois mecanismos SSH são suportados: autenticação SSH baseada em chave e autenticação SSH baseada em senha.
  • ansible_timeout - A quantidade de tempo padrão durante a qual uma conexão SSH pode ser estabelecida antes que a operação atinja o tempo limite. Também controla quanto tempo leva para acessar a conexão, uma vez estabelecida.
  • ansible_user - O nome do usuário que está efetuando login no servidor remoto.

Você pode fornecer as variáveis por grupo ou por nó de host. Para obter detalhes, consulte Atribuição de uma variável a várias máquinas: variáveis de grupo.

Gerando o arquivo de variável Ansible

Para a orquestração do Ansible em outros nós, você deve definir alguns parâmetros que o Ansible usa para determinar a localização do instalador e os arquivos correspondentes em outros nós. Esses parâmetros são definidos no arquivo Yaml e fornecidos ao Ansible.
Se você deseja modificar a configuração padrão, crie um arquivo no formato a seguir e forneça-o para uipathctl.sh usando --ansible-variables-file.
#Path where installer zip is available. By default, uipathctl.sh takes the current folder and compress it to zip before copying it to other nodes.
installer_path: /path/to/installer.zip
# Path where installer will be copied on nodes
target_installer_base_path: /opt/UiPathAutomationSuite/<version>/installer
# Install type - online or offline
install_type: online
# Path on nodes where offline bundles will be copied
target_bundle_base_path: /opt/UiPathAutomationSuite/{version}
# Path on nodes where offline bundles will be extracted
target_tmp_path: /opt/UiPathAutomationSuite/tmp
# Basepath and filname for the various config files and bundles on the local machine
cluster_config_filename: cluster_config.json
cluster_config_basepath: /var/tmp/uipathctl_{version}
backup_config_filename: backup_config.json
backup_config_basepath: /var/tmp/uipathctl_{version}
restore_config_filename: restore.json
restore_config_basepath: /var/tmp/uipathctl_{version}
infra_bundle_filename: sf-infra.tar.gz
infra_bundle_basepath: /var/tmp/uipath_upgrade_<version>#Path where installer zip is available. By default, uipathctl.sh takes the current folder and compress it to zip before copying it to other nodes.
installer_path: /path/to/installer.zip
# Path where installer will be copied on nodes
target_installer_base_path: /opt/UiPathAutomationSuite/<version>/installer
# Install type - online or offline
install_type: online
# Path on nodes where offline bundles will be copied
target_bundle_base_path: /opt/UiPathAutomationSuite/{version}
# Path on nodes where offline bundles will be extracted
target_tmp_path: /opt/UiPathAutomationSuite/tmp
# Basepath and filname for the various config files and bundles on the local machine
cluster_config_filename: cluster_config.json
cluster_config_basepath: /var/tmp/uipathctl_{version}
backup_config_filename: backup_config.json
backup_config_basepath: /var/tmp/uipathctl_{version}
restore_config_filename: restore.json
restore_config_basepath: /var/tmp/uipathctl_{version}
infra_bundle_filename: sf-infra.tar.gz
infra_bundle_basepath: /var/tmp/uipath_upgrade_<version>

Variável

Valor

installer_path

O caminho de sf-installer.zip. Se você não fornecer esse valor, uipathctl.sh compactará o diretório atual e o copiará para outros nós, como um zip do instalador.

target_installer_base_path

O caminho onde o instalador será copiado nos nós. O valor padrão é `/opt/UiPathAutomationSuite/{versão

install_type

O método de instalação. Os valores possíveis são: online e offline.

target_bundle_base_path

The path on the nodes where the offline bundles will be copied. The default location is /var/tmp/uipathctl_{version}.

target_tmp_path

O caminho nos nós onde o pacote é extraído. O local padrão é /opt/UiPathAutomationSuite/tmp.

cluster_config_filename

O nome do arquivo de configuração do cluster. O valor padrão é cluster_config.json .

cluster_config_basepath

The location where cluster_config.json will be stored temporarily on the nodes during orchestration. The default value is /var/tmp/uipathctl_{version}.

backup_config_filename

O nome do arquivo de configuração de backup. O valor padrão é backup.json.

backup_config_basepath

The location where backup.json will be stored temporarily on the nodes during orchestration. The default value is /var/tmp/uipathctl_{version}.

restore_config_filename

O nome do arquivo de configuração de restauração. O valor padrão é restore.json.

restore_config_basepath

O local onde restore.json será armazenado temporariamente nos nós durante a orquestração. O valor padrão é `/var/tmp/uipathctl_{version

infra_bundle_filename

O nome do pacote configurável que contém as camadas de infraestrutura. Este é o mesmo que você forneceu para o script uipathctl.sh .

infra_bundle_basepath

O local onde sf-infra.tar.gz será armazenado temporariamente nos nós durante a orquestração. Este é o mesmo que você forneceu para o script uipathctl.sh .

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo White
Confiança e segurança
© 2005-2024 UiPath. Todos os direitos reservados.