Automation Suite
2023.10
falso
Imagem de fundo do banner
Automation Suite no guia de instalação do EKS/AKS
Última atualização 19 de abr de 2024

Rede

Você deve provisionar e configurar os recursos de rede do Azure ou da AWS para garantir que o Automation Suite em seu cluster tenha conectividade e acesso aos pré-requisitos de infraestrutura de Cloud (por exemplo, armazenamento, banco de dados, cache e DNS).

Dependendo da sua arquitetura de rede, isso pode incluir a configuração de VNETs/VPC, DNS, sub-redes, NSGs/grupos de segurança, gateway NAT, IP elástico e gateway de internet. Para obter detalhes, consulte Cenáriosde implantação.

O Automation Suite requer um mínimo de 400 pods no cluster se todos os serviços estiverem habilitados. Observe que, com base na escalabilidade da carga de trabalho, poderão ser necessárias mais réplicas. Por padrão, o modo HA requer duas réplicas e pode ir até dez ou mais réplicas. Certifique-se de que sua rede ofereça suporte a esse nível de escalabilidade.

Importante:

O Automation Suite não é compatível com o protocolo de internet IPv6.

Controlador de entrada personalizado

Se você tiver um controlador de ingresso personalizado (NGINX), consulte Configuração do Ingress do NGINX e pule o resto da página.

Configuração do balanceador de carga

O Automation Suite provisiona um balanceador de carga em seu nome durante a instalação. O balanceador de carga deve ser atribuído com endereços IP públicos ou privados para rotear as solicitações de FQDN. Você tem duas opções para configurar o balanceador de carga:

  • IPs pré-alocados:aloque IPspúblicos ou privados para o balanceador de carga, configure os registros DNS para mapear os FQDNs para esses IPs e forneça esses IPs como parte da seção de entrada do input.json.
  • IPs alocados dinamicamente: se você não fornecer um endereço IP, o Automation Suite aloca dinamicamente os IPs da sub-rede do cluster para o balanceador de carga.

IPs pré-alocados

Você deve fornecer as seguintes anotações de serviço na seção ingress do input.json.

Para obter uma lista de anotações de serviço no EKS, consulte a documentação do balanceador de cargas da AWS.

Para obter uma lista de anotações de serviço no AKS, consulte a documentação do balanceador de carga do Azure.

Exemplos de anotações do EKS

Os seguintes exemplos mostram como criar a seção ingress.service_annotations em input.json. Você deve implantar um controlador de balanceador de carga da AWS em seu cluster do EKS antes da instalação para que os exemplos funcionem corretamente.

O exemplo a seguir mostra como alocar IPs elásticos da AWS e provisionar um balanceador de carga público. Se você usar este exemplo como um ponto de partida para sua configuração, certifique-se de substituir os IPs por valores reais.

"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-eip-allocations": "<elastic_ip_id_0>,<elastic_ip_id_1>",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internet-facing",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
    }
  }"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-eip-allocations": "<elastic_ip_id_0>,<elastic_ip_id_1>",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internet-facing",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
    }
  }

O exemplo a seguir mostra como alocar IPs privados para um balanceador de carga interno das sub-redes do cluster EKS. Se você usar esse exemplo como um ponto de partida para sua configuração, certifique-se de atualizar os IPs e sub-redes com valores reais.

"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-private-ipv4-addresses":"<IP_0>,<IP_1>",
      "service.beta.kubernetes.io/aws-load-balancer-subnets": "<SUBNET_ID_0>,<SUBNET_ID_1>",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
      "service.beta.kubernetes.io/aws-load-balancer-target-group-attributes": "preserve_client_ip.enabled=false"
    }
  } "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-private-ipv4-addresses":"<IP_0>,<IP_1>",
      "service.beta.kubernetes.io/aws-load-balancer-subnets": "<SUBNET_ID_0>,<SUBNET_ID_1>",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb"
      "service.beta.kubernetes.io/aws-load-balancer-target-group-attributes": "preserve_client_ip.enabled=false"
    }
  }
Importante:

Os IPs e sub-redes devem corresponder.

No exemplo anterior, <IP_0> está em <SUBNET_0> e <IP_1> em <SUBNET_1>.

Exemplo de anotações do AKS

O exemplo a seguir mostra como alocar IPs públicos do Azure e provisionar um balanceador de carga público. Se você usar esse exemplo como um ponto de partida para sua configuração, certifique-se de atualizar os IPs com valores reais.

...
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "false",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>"
    }
  }
......
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "false",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>"
    }
  }
...

O exemplo a seguir mostra como alocar IPs privados a um balanceador de carga interno a partir das sub-redes do cluster do AKS. Se você usar esse exemplo como ponto de partida para sua configuração, certifique-se de atualizar os IPs e sub-redes com valores reais.

...
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>",
      "service.beta.kubernetes.io/azure-load-balancer-internal-subnet": "<SUBNET_0>", "<SUBNET_1>" 
    }
  }
......
"ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true",
      "service.beta.kubernetes.io/azure-load-balancer-ipv4": "<IP>",
      "service.beta.kubernetes.io/azure-load-balancer-internal-subnet": "<SUBNET_0>", "<SUBNET_1>" 
    }
  }
...
Importante:

Os IPs e as sub-redes devem corresponder.

No exemplo anterior, <IP_0> está em <SUBNET_0> e <IP_1> em <SUBNET_1>.

Configuração de DNS

Certifique-se de que os registros de DNS estejam configurados para mapear os seguintes FQDNs da UiPath® para o balanceador de carga:

  • FQDN
  • alm.FQDN
  • monitoring.FQDN
  • insights.FQDN (se estiver instalando o UiPath Insights)
Observação:

O FQDN é uma das verificações de pré-requisitos antes da instalação. Se você não fornecer um endereço IP ou ainda não tiver feito o mapeamento de FQDN, a verificação será reprovada.

IPs alocados dinamicamente

Se você não fornecer nenhum IP em input.json, o Automation Suite aloca dinamicamente os IPs privados das sub-redes do nó de trabalho. Nesse cenário, execute a instalação do Automation Suite da seguinte maneira.

Exemplo EKS do input.json

...
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb",
      "service.beta.kubernetes.io/aws-load-balancer-internal": true
    }
  }
......
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "ssl",
      "service.beta.kubernetes.io/aws-load-balancer-nlb-target-type": "ip",
      "service.beta.kubernetes.io/aws-load-balancer-scheme": "internal",
      "service.beta.kubernetes.io/aws-load-balancer-type": "nlb",
      "service.beta.kubernetes.io/aws-load-balancer-internal": true
    }
  }
...

Exemplo do AKS do input.json

...
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true"
    }
  }
......
  "ingress": {
    "service_annotations": {
      "service.beta.kubernetes.io/azure-load-balancer-internal": "true"
    }
  }
...

Passos de instalação

Nesse cenário, execute o instalador da seguinte maneira:

  1. Execute o instalador apenas até o provisionamento do Balanceador de carga:

    uipathctl manifest apply <INPUT_JSON> --versions <VERSIONS_JSON> --override=gatewayuipathctl manifest apply <INPUT_JSON> --versions <VERSIONS_JSON> --override=gateway
  2. Recupere o nome do host do balanceador de carga:

    kubectl get svc -n istio-system istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'kubectl get svc -n istio-system istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'
  3. Configure seu DNS com FQDNs mapeados para o endpoint ou IPs do balanceador de carga.

  4. Execute novamente o instalador para concluir a instalação:

    uipathctl manifest apply input.json --versions versions.jsonuipathctl manifest apply input.json --versions versions.json
Observação:

Observe que, sem o mapeamento de DNS, a verificação de pré-requisitos do FQDN falhará. As verificações de pré-requisitos são feitas para dar a você a confiança de que você provisionou todos os pré-requisitos corretamente antes de instalar o Automation Suite . A verificação do FQDN não impede a instalação do Automation Suite .

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.