- Visão geral
- Requisitos
- Pré-instalação
- Preparação da instalação
- Baixando os pacotes de instalação
- Configuração do registro compatível com OCI
- Concessão de permissões de instalação
- Instalação e configuração do service mesh
- Instalando e configurando a ferramenta GitOps
- Instalando o operador de segredos externos no Kubernetes
- Aplicação de configurações diversas
- Executando o uipathctl
- Instalação
- Pós-instalação
- Migração e atualização
- Monitoramento e alertas
- Administração de cluster
- Configuração específica do produto
- Configuração avançada do Orchestrator
- Configuração de parâmetros do Orchestrator
- Configuração do AppSettings
- Configuração do tamanho máximo da solicitação
- Substituição da configuração de armazenamento no nível do cluster
- Configuração do NLog
- Salvando logs do robô no Elasticsearch
- Configuração dos repositórios de credenciais
- Configuração da chave de criptografia por tenant
- Limpeza do banco de dados do Orchestrator
- Ignorar a instalação da biblioteca do host
- AI Trust Layer
- Solução de problemas
- Falha no provisionamento do AI Center após a atualização para a 2023.10 ou posterior
- Volumes do Insights criados em duas zonas diferentes após a migração
- Falha de atualização devido aos tamanhos de PVC do Insights substituídos
- Os componentes de backup do Velero permanecem após a atualização no AKS do Automation Suite 2024.10.x
- A configuração de backup não funciona devido a uma falha na conexão com o Azure Government
- Pods no namespace uipath travaram ao habilitar taints de nó personalizado
- Não é possível iniciar o Automation Hub e o Apps com configuração de proxy
- O backup do Velero falha com o erro FailedValidation
- Solução de problemas de segredos externos
- Solução de problemas de Temporal como um serviço
- Os pods do AI Center e do Document Understanding falham ao iniciar com a verificação do certificado TLS habilitada
- Erros de validação de certificado TLS
- O Fluentd não exporta logs em ambientes IPv6
- O Studio Desktop não pode carregar conectores e atividades do Integration Service
- Migreção manual do ArgoCD NetworkPolicy (GHSA-47m3-95c7-g2g8)
- Configuração de solicitações e limites de recursos para cargas de trabalho criadas pelo uipathctl
Configuração de solicitações e limites de recursos para cargas de trabalho criadas pelo uipathctl
Como ajustar solicitações e limites de CPU e memória quando as cargas de trabalho criadas pelo uipathctl falham ao agendar ou concluir.
Description
Quando você executa um uipathctl comando, uma carga de trabalho do Kubernetes criada pelo comando pode falhar devido a seus requisitos de CPU ou memória.
Você pode encontrar um dos seguintes sintoma:
- O pod permanece no estado
Pendinge seus eventos contêmInsufficient cpuouInsufficient memory. - O pod é encerrado com o status
OOMKilled. - A carga de trabalho é limitada pela CPU ou não é concluída antes que o comando atinja o tempo limite.
- Uma política de entrada rejeita o pod porque suas solicitações ou limites de recursos não estão em conformidade com um
ResourceQuotaouLimitRangeconfigurado no namespace.
O problema pode afetar cargas de trabalho criadas pelo uipathctl usadas para verificações de pré-requisitos, verificações de integridade, geração de pacotes de suporte, migrações, operações do Helm e atualizações.
Solução
Primeiro, identifique o pod afetado e inspecione seus eventos:
kubectl get pods -A
kubectl describe pod <pod-name> -n <namespace>
kubectl get pods -A
kubectl describe pod <pod-name> -n <namespace>
Dependendo da condição relatada:
OOMKilledPara, aumente o limite de memória. Aumente também a solicitação de memória se o pod tiver que ser agendado em um nó com mais memória disponível.- Para um pod
PendingcomInsufficient cpuouInsufficient memory, reduza a solicitação apenas se a carga de trabalho puder ser executada com segurança com menos capacidade garantida. Caso contrário, adicione a capacidade do cluster. - Para erros de cota ou intervalo de limite, especifique solicitações e limites que estão em conformidade com a política configurada no namespace de destino.
- Para cargas de trabalho lentas ou aceleradas por CPU, aumente o limite de CPU.
Você pode alterar os requisitos de recursos em input.json ou substituí-los em um único comando.
Configuração dos requisitos de recursos no input.json
uipathctl agrupa suas cargas de trabalho nas seguintes classes de recursos:
| Classe | Operações | Solicitações padrão (CPU / memória) | Limites padrão (CPU / memória) |
|---|---|---|---|
diagnostic | Verificações de integridade e testes de validação somente leitura | 50m / 64Mi | 250m / 256Mi |
operational | Verificações de pré-requisitos, pacotes de suporte, operações do Helm e migração de dados de identidade | 1m / 1k | 2 / 2Gi |
workload | Migrações do armazenamento de objetos, PVC e MongoDB e o servidor de arquivos de atualização | 250m / 512Mi | 2 / 2Gi |
Para alterar os padrões para comandos que usam a configuração do Automation Suite, adicione workload_resources a input.json. Por exemplo, para aumentar os recursos disponíveis para cargas de trabalho de migração com muitos dados, use a seguinte configuração:
{
"workload_resources": {
"workload": {
"requests": {
"cpu": "500m",
"memory": "1Gi"
},
"limits": {
"cpu": "2",
"memory": "4Gi"
}
}
}
}
{
"workload_resources": {
"workload": {
"requests": {
"cpu": "500m",
"memory": "1Gi"
},
"limits": {
"cpu": "2",
"memory": "4Gi"
}
}
}
}
Você pode configurar as classes diagnostic, operational e workload de forma independente. Você também pode especificar apenas os valores que deseja alterar. Qualquer valor de CPU ou memória omitido mantém seu padrão.
As solicitações não podem exceder seus limites correspondentes. Use quantidades padrão de recursos do Kubernetes, como 500m ou 1 para CPU e 256Mi ou 1Gi para memória.
Substituição dos requisitos de recursos para um único comando
Para comandos que expõem as opções --probe-cpu e --probe-memory, você pode substituir os requisitos de recursos do pod auxiliar criado por esse comando. Por exemplo:
uipathctl health check --probe-cpu 500m --probe-memory 512Mi
uipathctl health check --probe-cpu 500m --probe-memory 512Mi
Cada opção define a solicitação e o limite para o recurso especificado. Se você especificar apenas uma opção, o outro recurso manterá seu valor efetivo.
As opções estão disponíveis para os seguintes comandos:
uipathctl health checkuipathctl health testuipathctl health diagnoseuipathctl config add-host-adminuipathctl config enable-basic-authuipathctl service aicenter sync-skillsuipathctl service aicenter sync-skill-statusuipathctl service orchestrator notifications-migration start
Quando ambos os métodos de configuração se aplicam, uipathctl resolve os valores na seguinte ordem, onde o valor posterior tem precedência:
- O padrão integrado.
- O valor
workload_resourceseminput.jsonou a configuração de cluster aplicada. - A opção de linha de comando
--probe-cpuou--probe-memory.
Após atualizar os requisitos de recursos, execute o comando afetado novamente e confirme se a carga de trabalho criada pelo uipathctl é iniciada com sucesso.
Defina as menores solicitações e limites que permitem que a carga de trabalho seja concluída. Solicitações muito altas podem impedir o agendamento, enquanto limites muito baixos podem causar limitação ou rescisão.