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

Mise à jour du certificat AI Fabric

Nœud unique

Lors de l'installation, vous avez le choix entre utiliser votre propre certificat ou simplement ignorer cette étape et utiliser un certificat auto-signé. Si vous devez changer de certificat par la suite, voici les étapes à suivre.

Tout d'abord, assurez-vous d'avoir un certificat avec vous - vous aurez besoin du fichier SSL et de la clé privée sous forme de deux fichiers séparés.

L'étape suivante consiste à se connecter à la machine AI Fabric Linux et à exécuter la commande suivante

kubectl -n default annotate secret kotsadm-tls acceptAnonymousUploads=1kubectl -n default annotate secret kotsadm-tls acceptAnonymousUploads=1
Attention : L'ajout de cette annotation créera temporairement une vulnérabilité permettant à un attaquant de télécharger de manière malveillante des certificats TLS. Une fois les certificats TLS téléchargés, la vulnérabilité est à nouveau fermée.

Ensuite, vous devez redémarrer le serveur proxy Kurl. Pour cela, récupérez d'abord le nom de ce serveur proxy à l'aide de cette commande :

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

Cela affichera le nom du serveur proxy kurl qui devrait ressembler à kurl-proxy-kotsadm-XXX. La prochaine étape consiste donc à supprimer ce pod (il sera automatiquement redémarré).

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

Vous pouvez vérifier si le pod est redémarré en exécutant la commande get pods :

kubectl get podskubectl get pods

À côté du pod, vous devriez voir 1/1 et En cours d'exécution (Running).

Une fois qu'il est prêt, vous pouvez supprimer configmap :

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

Connectez-vous ensuite à l'interface utilisateur de KotsAdmin. N'oubliez pas que l'URL doit ressembler à https://<aif-machine>:8800/tls. La page vous permettra de télécharger le nouveau certificat (et si nécessaire de modifier le nom de domaine associé) :



Cliquez sur le bouton Télécharger et continuer (Upload &continue), puis accédez à la page de configuration. Modifiez HostIP/FQDN si nécessaire, générez un nouveau jeton d'accès, puis cliquez sur Enregistrer (Save) et une fois la vérification en amont effectuée, cliquez sur Déployer (Deploy) pour redéployer l'application AI Fabric. Une fois installé, le nouveau certificat sera utilisé par AI Fabric.

Une fois AI Fabric redéployé, exécutez cette commande pour que la modification prenne effet :

kubectl -n istio-system rollout restart deployment istio-ingressgatewaykubectl -n istio-system rollout restart deployment istio-ingressgateway
Attention : n'oubliez pas que si vous modifiez le FQDN d'AI Fabric, vous devrez à nouveau modifier la configuration Web d'Orchestrator avec ce nouveau FQDN.

AKS multi-nœuds

Depuis la version 20.10.2, les certificats sont gérés automatiquement à l'aide du gestionnaire de certificats par notre programme d'installation, mais si vous avez d'abord installé la version 20.10.1, votre certificat peut expirer à un moment donné. Afin d'y remédier, vous devez suivre les étapes décrites ci-dessous ; commencez par télécharger et ouvrir un nouveau bundle d'installation (nous ne faisons pas d'installation de nouveau bundle) :

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

Ensuite, créez le fichier de script update_cert.sh comme ceci

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

puis exécutez simplement ce script :

./update_cert.sh./update_cert.sh
  • Nœud unique
  • AKS multi-nœuds

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Uipath Logo White
Confiance et sécurité
© 2005-2024 UiPath Tous droits réservés.