- Notes de publication
- Vue d'ensemble (Overview)
- Paramétrage et configuration
- Prérequis logiciels
- Prérequis matériels
- Déploiement du serveur
- Connexion au serveur
- Licences
- Stockage de données
Déploiement du serveur
Si vous souhaitez déployer votre propre serveur Computer Vision avec Docker sur Microsoft Windows ou Ubuntu ou avec Podman sur Red Hat Enterprise Linux et l'utiliser avec les activités Computer Vision, suivez les étapes ci-dessous.
Tout d'abord, WSL doit être installé sur votre machine.
{distribution}
est la distribution Linux que vous souhaitez utiliser :
wsl --install -d {distribution}
wsl --install -d {distribution}
Pour exécuter le serveur de Computer Vision sur une machine Windows, vous devez télécharger et installer le pilote d'affichage Nvidia Windows 11 sur le système avec une carte GeForce ou Nvidia RTR/Quadro compatible depuis le site officiel de Nvidia.
Vous pouvez installer à la fois Podman et Nvidia Container Toolkit en exécutant le script suivant :
https://github.com/UiPath/Infrastructure/blob/main/ML/ml_prereq_all.sh
https://github.com/UiPath/Infrastructure/blob/main/ML/ml_prereq_all.sh
Pour exécuter le serveur Computer Vision, vous devez exécuter les commandes suivantes dans le terminal WSL Linux :
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
8501
.
Étant donné que l'instance Linux exécutée dans WSL possède son propre contrôleur d'interface réseau virtuelle, le trafic vers l'adresse IP de l'hôte n'est pas directement redirigé vers l'adresse IP de l'instance Linux. Ce problème peut être contourné en transférant le trafic de l'adresse IP de l'hôte vers l'instance Linux à l'aide de la commande suivante :
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8501 connectaddress=$wsl_ip connectport=8501
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8501 connectaddress=$wsl_ip connectport=8501
L'IP WSL peut être trouvée avec la commande suivante :
wsl -d {distribution} hostname -I
wsl -d {distribution} hostname -I
{distribution}
est la distribution Linux installée :
wsl -d {distribution} echo "starting...";
$wsl_ips = (wsl -d {distribution} hostname -I);
$host_ip = $wsl_ips.Split(" ")[0];
netsh interface portproxy add v4tov4 listenport=8501 listenaddress=0.0.0.0 connectport=8501 connectaddress=$host_ip;
wsl -d {distribution} -u root service docker start;
wsl -d {distribution} -u root docker run -p 8501:5000 --gpus all controls_detection eula=accept;
wsl -d {distribution} echo "starting...";
$wsl_ips = (wsl -d {distribution} hostname -I);
$host_ip = $wsl_ips.Split(" ")[0];
netsh interface portproxy add v4tov4 listenport=8501 listenaddress=0.0.0.0 connectport=8501 connectaddress=$host_ip;
wsl -d {distribution} -u root service docker start;
wsl -d {distribution} -u root docker run -p 8501:5000 --gpus all controls_detection eula=accept;
Ce processus d'installation nécessite une machine qui prend en charge la virtualisation imbriquée. Actuellement, la plupart des VM Cloud ne prennent pas en charge la virtualisation imbriquée pour les machines GPU. En conclusion, ce processus d'installation convient mieux aux clients qui disposent de serveurs Windows physiques avec GPU.
Toutes les commandes répertoriées sur cette page doivent être exécutées dans un terminal sur la machine GPU.
Enregistrez le lien qui vous a été fourni par votre représentant commercial dans la session de terminal en cours :
export CV_URL="LINK_FROM_SALES_REP"
export CV_URL="LINK_FROM_SALES_REP"
Téléchargez l'exportation :
wget "$CV_URL" -O controls_detection.tar
wget "$CV_URL" -O controls_detection.tar
Exécutez la commande suivante :
podman load -i controls_detection.tar
podman load -i controls_detection.tar
Exécutez la commande suivante :
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
La mise à niveau du modèle équivaut à l'installation d'une nouvelle version de celui-ci. En effet, la mise à niveau implique de modifier le modèle lui-même ainsi que ses fichiers binaires, ce qui entraîne inévitablement l'arrêt du serveur.
Si vous souhaitez effectuer la mise à niveau sur la même machine serveur, des temps d'arrêt sont à prévoir. Pour éviter ce scénario, il vous suffit d'installer la nouvelle version sur une autre machine serveur, et une fois l'installation terminée, de basculer le trafic vers celle-ci.
Un scénario de mise à niveau standard ressemble à ceci :
- Préparez-vous et annoncez les temps d’arrêt (le cas échéant).
- Installez le nouveau modèle à la place de l'ancien.
- Exécutez le serveur.
Si votre environnement utilise une configuration d'équilibreur de charge multi-nœuds, vous pouvez éviter complètement les temps d'arrêt en réinstallant chaque nœud, un par un.
- Microsoft Windows
- Installation de WSL
- Installation des pilotes Nvidia
- Installation de Podman et de l'outil de conteneur Nvidia
- Exécution du serveur
- Rendre le serveur disponible sur le réseau
- Démarrage automatique du serveur
- Contraintes d'installation
- Linux RHEL/Ubunnot
- Téléchargement de l'exportation d'image du serveur Computer Vision
- Chargement de l'image dans Podman
- Démarrage du serveur
- Mise à niveau du modèle Computer Vision