- Visão geral
- Requisitos
- Instalação
- Perguntas e respostas: modelos de implantação
- Configuração das máquinas
- Configuração do balanceador de carga
- Configuração do DNS
- Como configurar o Microsoft SQL Server
- Configuração dos certificados
- Instalação online de produção pronta para alta disponibilidade de vários nós
- Instalação offline de produção pronta para alta disponibilidade de vários nós
- Baixando os pacotes de instalação
- Parâmetros do install-uipath.sh
- Como habilitar o High Availability Add-on do Redis para o cluster
- Arquivo de configuração do Document Understanding
- Adicionando um nó de agente dedicado com suporte a GPU
- Conexão do aplicativo Task Mining
- Adição de um nó de agente dedicado ao Task Mining
- Pós-instalação
- Administração de cluster
- Gerenciando produtos
- Gerenciamento do cluster no ArgoCD
- Configuração do servidor NFS externo
- Automatizado: habilitando o backup no cluster
- Automatizado: desabilitando o backup no cluster
- Automatizado, online: restaurando o cluster
- Automatizado, offline: restaurando o cluster
- Manual: habilitando o backup no cluster
- Manual: desabilitando o backup no cluster
- Manual, online: restaurando o cluster
- Manual, offline: restaurando o cluster
- Configuração adicional
- Migrating objectstore from persistent volume to raw disks
- Monitoramento e alertas
- Migração e atualização
- Opções de migração
- Etapa 1: mover os dados da organização do Identity, de independente para o Automation Suite
- Etapa 2: restauração do banco de dados de produtos independente
- Etapa 3: backup do banco de dados da plataforma no Automation Suite
- Etapa 4: mesclando organizações no Automation Suite
- Etapa 5: atualização das strings de conexão do produto migradas
- Etapa 6: migração do Insights independente
- Etapa 7: exclusão do tenant padrão
- Executando uma migração de único tenant
- Configuração específica do produto
- Consultas de logs de auditoria
- Painel de monitoramento do MongoDB
- Renovação do certificado MongoDB
- Melhores práticas e manutenção
- Solução de problemas
- Como solucionar problemas dos serviços durante a instalação
- Como desinstalar o cluster
- Como limpar os artefatos offline para melhorar o espaço em disco
- Como limpar os dados do Redis
- Como habilitar o registro em log do Istio
- Como limpar logs manualmente
- Como limpar logs antigos armazenados no bucket do sf-logs
- Como desabilitar os logs de streaming para o AI Center
- Como depurar instalações do Automation Suite com falha
- Como excluir imagens do instalador antigo após a atualização
- Como limpar automaticamente instantâneos do Longhorn
- Como desabilitar o descarregamento de soma de verificação do TX
- Como lidar com cifras fracas no TLS 1.2
- Não é possível executar uma instalação offline no SO RHEL 8.4
- Erro ao baixar o pacote
- A instalação offline falha devido a um binário ausente
- Problema de certificado na instalação offline
- A primeira instalação falha durante a configuração do Longhorn
- Erro de validação da string de conexão ao SQL
- Verificação de pré-requisito para o módulo iscsid do selinux falha
- Azure disk not marked as SSD
- Falha após a atualização do certificado
- Automation Suite not working after OS upgrade
- O Automation Suite requer que Backlog_wait_time seja definido como 1
- Não é possível montar o volume devido a não estar pronto para cargas de trabalho
- O RKE2 falha durante a instalação e atualização
- Falha ao carregar ou baixar dados no objectstore
- PVC resize does not heal Ceph
- Falha no redimensionamento do PVC do Objectstore
- Pod do Rook Ceph ou Looker travado no estado Init
- Erro de anexo de volume StatefulSet
- Falha ao criar volumes persistentes
- Patch de reclamação de armazenamento
- Falha de backup devido ao erro TooManySnapshots
- Todas as réplicas do Longhorn estão com falha
- Configurando um intervalo de tempo limite para os portais de gerenciamento
- Atualizar as conexões de diretório subjacentes
- Não é possível fazer login após a migração
- kinit: não é possível encontrar o KDC para o realm <AD Domain> ao obter credenciais iniciais
- kinit: o Keytab não contém chaves adequadas para *** ao obter credenciais iniciais
- A operação do GSSAPI falhou com erro: um código de status inválido foi fornecido (as credenciais do cliente foram revogadas).
- Alarme recebido para tarefa Kerberos-tgt-update com falha
- Provedor SSPI: servidor não encontrado no banco de dados Kerberos
- Falha do login para o usuário <ADDOMAIN><aduser> Motivo: a conta está desabilitada.
- ArgoCD login failed
- Falha ao obter a imagem do sandbox
- Os pods não são exibidos na UI do ArgoCD
- Falha de teste do Redis
- O servidor RKE2 falha ao iniciar
- Segredo não encontrado no namespace da UiPath
- Após a instalação inicial, o aplicativo ArgoCD entrou no estado Em andamento
- Pods de MongoDB em CrashLoopBackOff ou provisionamento de PVC pendente após exclusão
- Inconsistência inesperada; execute o fsck manualmente
- MongoDB degradado ou aplicativos de negócios após a restauração do cluster
- Operador de autocura ausente e repositório Sf-k8-utils ausente
- Serviços não íntegros após restauração ou reversão do cluster
- Pod RabbitMQ preso em CrashLoopBackOff
- Prometheus no estado CrashloopBackoff com erro de falta de memória (OOM)
- Métricas Ceph-rook ausentes nos painéis de monitoramento
- Os pods não podem se comunicar com o FQDN em um ambiente de proxy
- O Document Understanding não está no menu de navegação esquerdo do Automation Suite
- Status de Falha ao criar uma sessão de rotulagem de dados
- Status de Falha ao tentar implantar uma habilidade de ML
- Trabalho de migração falha no ArgoCD
- Reconhecimento de escrita com o Extrator de formulários inteligente não está funcionando
- Usando a ferramenta de diagnóstico do Automation Suite
- Usando o pacote de suporte do Automation Suite
- Exploração de logs
Pré-requisitos
Antes de baixar logs de auditoria do Apps na configuração do Automation Suite, os seguintes requisitos devem ser atendidos:
- Você deve ter acesso à máquina ou máquina virtual (VM) onde os serviços da UiPath® estão hospedados.
Opcionalmente, você precisa saber o seguinte:
- Nome da organização para a qual os logs de auditoria são necessários (
<orgName>). - Email do usuário para quem os logs de auditoria precisam ser exportados ou excluídos (
<userEmail>). - Quantidade de dias entre agora e o dia em que você deseja obter ou excluir os logs de auditoria (
<numDays>).
Obtenção de consultas de logs de auditoria
db.getCollection("audit-logs").find({
__tenantId: '<orgName>',
'userInfo.userEmail': '<userEmail>',
timestamp: {
$lte: (new Date().getTime() - 86400000 * <numDays>)
}
});
db.getCollection("audit-logs").find({
__tenantId: '<orgName>',
'userInfo.userEmail': '<userEmail>',
timestamp: {
$lte: (new Date().getTime() - 86400000 * <numDays>)
}
});
Por exemplo, para obter registros de auditoria com mais de 180 days para uma organização chamada sampleOrg com email de usuário sampleOrg.admin@org.com, execute a seguinte consulta:
db.getCollection("audit-logs").find({
__tenantId: 'sampleOrg',
'userInfo.userEmail': 'sampleOrg.admin@org.com',
timestamp: {
$lt: (new Date().getTime() - 86400000 * 180)
}
});
db.getCollection("audit-logs").find({
__tenantId: 'sampleOrg',
'userInfo.userEmail': 'sampleOrg.admin@org.com',
timestamp: {
$lt: (new Date().getTime() - 86400000 * 180)
}
});
Exclusão de logs de auditoria
db.getCollection("audit-logs").deleteMany({
__tenantId: '<orgName>',
'userInfo.userEmail': '<userEmail>',
timestamp: {
$lte: (new Date().getTime() - 86400000 * <numDays>)
}
});
db.getCollection("audit-logs").deleteMany({
__tenantId: '<orgName>',
'userInfo.userEmail': '<userEmail>',
timestamp: {
$lte: (new Date().getTime() - 86400000 * <numDays>)
}
});
Por exemplo, para excluir registros de auditoria com mais de 180 days para uma organização chamada sampleOrg com email de usuário sampleOrg.admin@org.com, execute a seguinte consulta:
db.getCollection("audit-logs").deleteMany({
__tenantId: 'sampleOrg',
'userInfo.userEmail': 'sampleOrg.admin@org.com',
timestamp: {
$lt: (new Date().getTime() - 86400000 * 180)
}
});
db.getCollection("audit-logs").deleteMany({
__tenantId: 'sampleOrg',
'userInfo.userEmail': 'sampleOrg.admin@org.com',
timestamp: {
$lt: (new Date().getTime() - 86400000 * 180)
}
});
Procedimento
-
Abra um prompt de comando ou o Powershell.
-
Faça SSH na máquina virtual usando o comando abaixo.
ssh <user>@<host> user@host's password: <password>ssh <user>@<host> user@host's password: <password> -
Acesse o usuário root usando o comando abaixo.
sudo susudo su -
Acesse a pasta “root” usando o comando abaixo.
cd /cd / -
Exporte KUBECONFIG usando o comando abaixo.
export KUBECONFIG=/etc/rancher/rke2/rke2.yaml PATH=$PATH:/var/lib/rancher/rke2/binexport KUBECONFIG=/etc/rancher/rke2/rke2.yaml PATH=$PATH:/var/lib/rancher/rke2/bin -
Obtenha o URI do MongoDB usando o comando abaixo.
kubectl -n mongodb get secrets/mongo-admin-user --template={{.data.MONGODB_URI}} | base64 -d // copy and store the output till '/admin' (as highlighted in screenshot) for further use in next commandskubectl -n mongodb get secrets/mongo-admin-user --template={{.data.MONGODB_URI}} | base64 -d // copy and store the output till '/admin' (as highlighted in screenshot) for further use in next commands -
Acesse o shell do conjunto de réplicas do Mongo usando o comando abaixo.
kubectl -n mongodb exec -it mongodb-replica-set-0 bashkubectl -n mongodb exec -it mongodb-replica-set-0 bash -
Recupere registros de auditoria usando o comando abaixo.
mongo '<mongodb-uri>' --tls --tlsCAFile /var/lib/tls/ca/ca.crt --quiet << EOF > /data/audit-fetch-query.json use appstudio db.getCollection("audit-logs").find({"__tenantId": "<orgName>", "userInfo.userEmail": "<userEmail>", "timestamp": {\$lte: (new Date().getTime() - 86400000 * <numDays>)}}).toArray() EOFmongo '<mongodb-uri>' --tls --tlsCAFile /var/lib/tls/ca/ca.crt --quiet << EOF > /data/audit-fetch-query.json use appstudio db.getCollection("audit-logs").find({"__tenantId": "<orgName>", "userInfo.userEmail": "<userEmail>", "timestamp": {\$lte: (new Date().getTime() - 86400000 * <numDays>)}}).toArray() EOF -
Exclua os registros de auditoria usando o comando abaixo.
mongo '<mongodb-uri>' --tls --tlsCAFile /var/lib/tls/ca/ca.crt --quiet << EOF > /data/audit-delete-query.json use appstudio db.getCollection("audit-logs").deleteMany({"__tenantId": "<orgName>", "userInfo.userEmail": "<userEmail>", "timestamp": {\$lte: (new Date().getTime() - 86400000 * <numDays>)}}) EOFmongo '<mongodb-uri>' --tls --tlsCAFile /var/lib/tls/ca/ca.crt --quiet << EOF > /data/audit-delete-query.json use appstudio db.getCollection("audit-logs").deleteMany({"__tenantId": "<orgName>", "userInfo.userEmail": "<userEmail>", "timestamp": {\$lte: (new Date().getTime() - 86400000 * <numDays>)}}) EOF -
Saia do shell do pod usando o comando abaixo.
exitexit -
Traga os arquivos do pod para a VM usando o comando abaixo.
kubectl -n mongodb exec -i mongodb-replica-set-0 -- sh -c 'cat /data/audit-fetch-query.json' > audit-fetch-query.json kubectl -n mongodb exec -i mongodb-replica-set-0 -- sh -c 'cat /data/audit-delete-query.json' > audit-delete-query.jsonkubectl -n mongodb exec -i mongodb-replica-set-0 -- sh -c 'cat /data/audit-fetch-query.json' > audit-fetch-query.json kubectl -n mongodb exec -i mongodb-replica-set-0 -- sh -c 'cat /data/audit-delete-query.json' > audit-delete-query.json -
Saia da VM usando o comando abaixo.
// exit the root user exit // exit the vm exit// exit the root user exit // exit the vm exit -
Traga os arquivos da VM para a máquina pessoal usando o comando abaixo.
Observação:SCP might not run on some PowerShells and may need to be installed.
scp <user>@<host>:/audit-fetch-query.json . user@host's password: <password> scp <user>@<host>:/audit-delete-query.json . user@host's password: <password>scp <user>@<host>:/audit-fetch-query.json . user@host's password: <password> scp <user>@<host>:/audit-delete-query.json . user@host's password: <password>