ai-center
2020.10
false
UiPath logo, featuring letters U and I in white
AI Center
Automation CloudAutomation SuiteStandalone
Last updated 6 de jun de 2024

Atualização do certificado do AI Fabric

Nó único

Durante a instalação, você pode escolher entre usar seu próprio certificado ou apenas ignorar essa etapa e usar um certificado autoassinado. Se você precisar alterar o certificado posteriormente, aqui estão as etapas a serem seguidas:

Primeiro, assegure-se de ter o certificado com você; você precisará do arquivo SSL e da chave privada como dois arquivos separados.

A próxima etapa é se conectar à máquina Linux do AI Fabric e executar o seguinte comando:

kubectl -n default annotate secret kotsadm-tls acceptAnonymousUploads=1kubectl -n default annotate secret kotsadm-tls acceptAnonymousUploads=1
Importante: a adição dessa anotação criará temporariamente uma vulnerabilidade para que um invasor carregue certificados TLS maliciosamente. Após os certificados do TLS terem sido carregados, a vulnerabilidade é fechada novamente.

Em seguida, é necessário reiniciar o servidor proxy do Kurl. Para fazer isso, primeiro recupere o nome do servidor proxy usando esse comando:

kubectl get pods -A | grep kurl-proxy | awk '{print $2}'kubectl get pods -A | grep kurl-proxy | awk '{print $2}'

Isso produzirá o nome do servidor proxy Kurl, que deve ter a seguinte aparência: kurl-proxy-kotsadm-XXX. Então, a próxima etapa é excluir esse pod (ele será reiniciado automaticamente).

kubectl delete pods kurl-proxy-kotsadm-XXXkubectl delete pods kurl-proxy-kotsadm-XXX

É possível verificar se o pod foi reiniciado executando o comando get pods:

kubectl get podskubectl get pods

Ao lado do pod, você deve ver 1/1 e Executando.

Após estar pronto, é possível remover o configmap:

kubectl -n aifabric delete configmap is-client-configkubectl -n aifabric delete configmap is-client-config

Em seguida, conecte-se à interface gráfica do KotsAdmin; lembre-se de que o URL deve ser algo como https://<aif-machine>:8800/tls. A página permitirá que você carregue o novo certificado (e, se necessário, altere o nome de domínio associado):.



Clique no botão Carregar e continuar e, em seguida, acesse a página de configuração. Altere o IP do host/FQDN, se necessário, gere um token de acesso novo e, em seguida, clique em Salvar; após a verificação de simulação ter sido feita, clique em Implantar para reimplantar o aplicativo do AI Fabric. Após ter sido instalado um novo certificado, ele será usado pelo AI Fabric.

Após o AI Fabric ser reimplantado, execute esse comando para que a alteração entre em vigor:

kubectl -n istio-system rollout restart deployment istio-ingressgatewaykubectl -n istio-system rollout restart deployment istio-ingressgateway
Importante: lembre-se de que, se você alterar o FQDN do AI Fabric, precisará modificar a configuração web do Orchestrator novamente com esse novo FQDN.

AKS de vários nós

A partir da 20.10.2, os certificados são manipulados automaticamente usando o gerenciador de certificados pelo nosso instalador, mas se você tiver instalado a 20.10.2 pela primeira vez, seu certificado poderá expirar em algum ponto. Para corrigir isso, você precisa seguir as etapas descritas abaixo; comece baixando e abrindo um novo pacote do instalador (não estamos fazendo uma nova instalação do pacote):

curl -O https://download.uipath.com/aifabric/online-installer/v2020.10.2/aifabric-installer-v20.10.2.tar.gz
tar -xvf aifabric-installer-v20.10.2.tar.gz
cd ./aifabric-installer-v20.10.2/infra/azure/aks-armcurl -O https://download.uipath.com/aifabric/online-installer/v2020.10.2/aifabric-installer-v20.10.2.tar.gz
tar -xvf aifabric-installer-v20.10.2.tar.gz
cd ./aifabric-installer-v20.10.2/infra/azure/aks-arm

Em seguida, crie o arquivo de script update_cert.sh, como este

USER_EMAIL=<enter certificate owner email here>
sed -i "s/email.address@org.com/$USER_EMAIL/g" cert-manager-crd/letsencrypt-clusterissuer.yaml
INGRESS_HOST=$(kubectl -n istio-system get svc istio-ingressgateway -o json | jq -r ".status.loadBalancer.ingress[0].ip")
IP_NAME="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].name" | sed 's/"//g')"
INGRESS_DOMAIN="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].dnsSettings.fqdn" | sed 's/"//g')"
sed "s/{{INGRESS_DOMAIN}}/${INGRESS_DOMAIN}/g" cert-manager-crd/letsencrypt-istiocert.yaml > cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl apply -f cert-manager-crd/letsencrypt-clusterissuer.yaml
kubectl apply -f cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl -n istio-system \)\)
  patch gateway istio-autogenerated-k8s-ingress --type=json \)\)
  -p='[{"op": "replace", "path": "/spec/servers/1/tls", "value": {"credentialName": "aifabric-ingressgateway-certs", "mode": "SIMPLE", "privateKey": "sds", "serverCertificate": "sds"}}]'
kubectl -n istio-system rollout restart deployment istio-ingressgatewayUSER_EMAIL=<enter certificate owner email here>
sed -i "s/email.address@org.com/$USER_EMAIL/g" cert-manager-crd/letsencrypt-clusterissuer.yaml
INGRESS_HOST=$(kubectl -n istio-system get svc istio-ingressgateway -o json | jq -r ".status.loadBalancer.ingress[0].ip")
IP_NAME="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].name" | sed 's/"//g')"
INGRESS_DOMAIN="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].dnsSettings.fqdn" | sed 's/"//g')"
sed "s/{{INGRESS_DOMAIN}}/${INGRESS_DOMAIN}/g" cert-manager-crd/letsencrypt-istiocert.yaml > cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl apply -f cert-manager-crd/letsencrypt-clusterissuer.yaml
kubectl apply -f cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl -n istio-system \)\)
  patch gateway istio-autogenerated-k8s-ingress --type=json \)\)
  -p='[{"op": "replace", "path": "/spec/servers/1/tls", "value": {"credentialName": "aifabric-ingressgateway-certs", "mode": "SIMPLE", "privateKey": "sds", "serverCertificate": "sds"}}]'
kubectl -n istio-system rollout restart deployment istio-ingressgateway

em seguida, execute esse script:

./update_cert.sh./update_cert.sh
  • Nó único
  • AKS de vários nós

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.