- Vue d'ensemble (Overview)
- Prérequis
- Installation
- Questions et réponses : modèles de déploiement
- Configuration des machines
- Configuration du magasin d'objets externe
- Configurer l'équilibreur de charge
- Configuration du DNS
- Configuration de Microsoft SQL Server
- Configuration des certificats
- Installation de production en ligne multi-nœuds compatible haute disponibilité
- Installation de production hors ligne multi-nœuds compatible haute disponibilité
- Téléchargement des packages d'installation
- install-uipath.sh parameters
- Activation du module complémentaire Redis High Availability Add-on pour le cluster
- Fichier de configuration de Document Understanding
- Ajout d'un nœud d'agent dédié avec prise en charge GPU
- Connexion de l'application Task Mining
- Ajout d'un nœud d'agent dédié pour Task Mining
- Ajout d'un nœud d'agent dédié pour les Automation Suite Robots
- Post-installation
- Administration du cluster
- Surveillance et alerte
- Migration et mise à niveau
- Chemins de mise à niveau Automation Suite
- Automatisée : mise à niveau en ligne
- Automatisée : mise à niveau hors ligne
- Manuel : mise à niveau en ligne
- Manuel : mise à niveau hors ligne
- Annulation en cas d'erreur
- Migration d'un disque physique Longhorn vers LVM
- Migration de Canal vers Cilium CNI
- Rétrogradation de Ceph de la version 16.2.6 à la version 15.2.9
- Options de migration :
- Étape 1 : Déplacement des données d'organisation Identity d'installation autonome vers Automation Suite
- Étape 2 : Restauration de la base de données du produit autonome
- Étape 3 : Sauvegarder la base de données de la plate-forme dans Automation Suite
- Étape 4 : Fusion des organisations dans Automation Suite
- Étape 5 : Mise à jour des chaînes de connexion du produit migré
- Étape 6 : migration de la version autonome d’Insights
- Étape 7 : suppression du locataire par défaut
- B) Migration à locataire unique
- Configuration spécifique au produit
- Bonnes pratiques et maintenance
- Résolution des problèmes
- Comment résoudre les problèmes des services lors de l'installation
- Comment désinstaller le cluster
- Comment nettoyer les artefacts hors ligne pour améliorer l'espace disque
- Comment effacer les données Redis
- Comment activer la journalisation Istio
- Comment nettoyer manuellement les journaux
- Comment nettoyer les anciens journaux stockés dans le compartiment sf-logs
- Comment désactiver les journaux de diffusion pour AI Center
- Comment déboguer les installations d'Automation Suite ayant échoué
- Comment supprimer des images de l’ancien programme d’installation après la mise à niveau
- Comment nettoyer automatiquement les instantanés Longhorn
- Comment désactiver le déchargement de la somme de contrôle txt
- Comment résoudre les chiffrements faibles dans TLS 1.2
- Impossible d'exécuter une installation hors ligne sur le système d'exploitation RHEL 8.4
- Erreur lors du téléchargement du bundle
- L'installation hors ligne échoue en raison d'un fichier binaire manquant
- Problème de certificat dans l'installation hors ligne
- La première installation échoue lors de la configuration de Longhorn
- Erreur de validation de la chaîne de connexion SQL
- Échec de la vérification des prérequis pour le module selinux iscsid
- Disque Azure non marqué comme SSD
- Échec après la mise à jour du certificat
- L'antivirus provoque des problèmes d'installation
- Automation Suite ne fonctionne pas après la mise à niveau du système d'exploitation
- Automation Suite requiert que backlog_wait_time soit défini sur 0
- Volume impossible à monter car il n'est pas prêt pour les charges de travail
- Impossible de lancer Automation Hub et Apps avec la configuration proxy
- Échec du chargement ou du téléchargement des données dans l'objectstore
- Le redimensionnement de la PVC ne répare pas Ceph
- Échec du redimensionnement du PVC
- Échec du redimensionnement du PVC objectstore
- Rook Ceph ou pod Looker bloqué dans l'état Init
- Erreur de pièce jointe du volume Ensembles d'états.
- Échec de la création de volumes persistants
- Correctif de récupération du stockage
- La sauvegarde a échoué en raison de l’erreur TropInstantanés (TooManySnapshots)
- Toutes les répliques Longhorn sont défaillantes
- Définition d'un délai d'expiration pour les portails de gestion
- Mettre à jour les connexions du répertoire sous-jacent
- L'authentification ne fonctionne pas après la migration
- kinit : Impossible de trouver le KDC pour le domaine <AD Domain> lors de l'obtention des informations d'identification initiales
- Kinit : Keytab ne contient aucune clé appropriée pour *** lors de l'obtention des informations d'identification initiales
- L'opération GSSAPI a échoué en raison d'un code de statut non valide
- Alarme reçue pour l'échec de la tâche Kerberos-tgt-update
- Fournisseur SSPI : serveur introuvable dans la base de données Kerberos
- La connexion a échoué pour l'utilisateur AD en raison d'un compte désactivé
- Échec de connexion à ArgoCD
- Impossible d'obtenir l'image du bac à sable
- Les pods ne s'affichent pas dans l'interface utilisateur ArgoCD
- Échec de la sonde Redis
- Le serveur RKE2 ne démarre pas
- Secret introuvable dans l'espace de noms UiPath
- ArgoCD passe à l'état Progression (Progressing) après la première installation
- Incohérence inattendue ; exécuter fsck manuellement
- Pods MongoDB en mode CrashLoopBackOff ou enregistrement PVC en attente après suppression
- Le pod MongoDB ne parvient pas à mettre à niveau la version 4.4.4-ent vers la version 5.0.7-ent
- Services défectueux après la restauration ou l'annulation du cluster
- Pods bloqués dans Init:0/X
- Prometheus en état CrashloopBackoff avec erreur de mémoire insuffisante (OOM)
- Métriques Ceph-rook manquantes dans les tableaux de bord de surveillance
- Les pods ne peuvent pas communiquer avec le nom de domaine complet dans un environnement proxy
- Document Understanding n'est pas affiché sur la barre de gauche d'Automation Suite
- État Échec (Failed) lors de la création d'une session de labellisation des données
- État Échec (Failed) lors de la tentative de déploiement d'une compétence ML
- La tâche de migration échoue dans ArgoCD
- La reconnaissance de l'écriture manuscrite avec l'Extracteur de formulaires intelligents (Intelligent Form Extractor) ne fonctionne pas
- Utilisation de l'outil de diagnostic d'Automation Suite
- Utilisation du pack d'assistance Automation Suite
- Explorer les journaux
Guide d'installation d'Automation Suite
Étape 1 : Déplacement des données d'organisation Identity d'installation autonome vers Automation Suite
Les versions autonome et d'Automation Suite doivent être identiques, sinon la migration échouera en raison de problèmes de conflit de schéma de base de données. Si vous rencontrez un problème de compatibilité, assurez-vous de mettre à niveau vos installations autonomes et Automation Suite vers la dernière version.
Avant de commencer, tenez compte des points suivants :
-
Assurez-vous de télécharger et d'installer .NET Runtime 6.0 avant d'exécuter UiPath.OrganizationMigrationApp. Pour plus de détails, consultez Prérequis de la migration.
-
Pour télécharger UiPath.OrganizationMigrationApp, consultez Prérequis de la migration.
\
avant les caractères spéciaux.
Cette section décrit certaines opérations courantes que vous devrez peut-être effectuer à l’aide de l’outil Uipath.Organization.Migration.App. Pour plus de détails sur les paramètres pris en charge par l’outil Uipath.Organization.Migration.App, consultez la section Paramètres de l’outil de migration.
-
Pour déplacer les Données d'identité de tous les locataires d'une version autonome vers Automation Suite , extrayez le fichier et exécutez la commande suivante :
./UiPath.OrganizationMigrationApp migrate -m -i '<identity database connection of the standalone product>' -j '<identity database connection of Automation Suite>' -o '<orchestrator database connection of the standalone product>' -s '<list of tenant IDs of the standalone product>' -d '<list of organization IDs of Automation Suite>' -p '<URL of Automation Suite>' -c '<OMS S2S client secret>'
./UiPath.OrganizationMigrationApp migrate -m -i '<identity database connection of the standalone product>' -j '<identity database connection of Automation Suite>' -o '<orchestrator database connection of the standalone product>' -s '<list of tenant IDs of the standalone product>' -d '<list of organization IDs of Automation Suite>' -p '<URL of Automation Suite>' -c '<OMS S2S client secret>'Remarque :-
Assurez-vous d'ajouter
TrustServerCertificate=True
pour toutes les connexions SQL dans l'entrée. -
Le nom du locataire Automation Suite est le même que le nom du locataire d'origine dans l'installation autonome d'Orchestrator. Il s’agit du locataire vers lequel vous allez migrer les produits autonomes.
-
Pour migrer plusieurs locataires autonomes vers une seule organisation Automation Suite, indiquez la valeur du paramètre
-d
en répétant l'ID de l'organisation cible le même nombre de fois que le nombre de locataires autonomes. Dans l'exemple suivant, le résultat de la migration est une organisation Automation Suite qui comprend trois locataires migrés :-s 'tenantId1, tenantId2, tenantId3' -d 'orgId1, orgId1, orgId1'
-s 'tenantId1, tenantId2, tenantId3' -d 'orgId1, orgId1, orgId1'
-
-
Si l'opération a échoué au milieu, annulez la modification en exécutant la commande suivante :
./UiPath.OrganizationMigrationApp migrate -m -r -i '<identity database connection of the standalone product>' -j '<identity database connection of Automation Suite>' -o '<orchestrator database connection of the standalone product>' -s '<list of tenant IDs of the standalone product>' -d '<list of organization IDs of Automation Suite>' -p '<URL of Automation Suite>' -c '<OMS S2S client secret>'
./UiPath.OrganizationMigrationApp migrate -m -r -i '<identity database connection of the standalone product>' -j '<identity database connection of Automation Suite>' -o '<orchestrator database connection of the standalone product>' -s '<list of tenant IDs of the standalone product>' -d '<list of organization IDs of Automation Suite>' -p '<URL of Automation Suite>' -c '<OMS S2S client secret>' -
Résolvez le problème en fonction du message d’erreur, puis essayez de déplacer à nouveau les données d’Identity de tous les locataires depuis les installations autonomes vers Automation Suite. Par exemple, découvrez ce que signifient les messages d’erreur suivants :
-
Le message d’erreur suivant signifie que le locataire a déjà été créé et que le programme va ignorer sa création. Vous n’avez rien à faire.
Call to API Service failed for Method=POST, StatusCode=Conflict on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/organization/api/organization/0dad76a9-7d44-447a-84d6-ce713a5324d8/tenants Http Response Content:{"StatusCode":409,"StatusDescription":"Conflict","ErrorCode":1002,"Message":"Found duplicated tenant with requested Id b26f486f-a585-4420-83fd-f2741385b3c8 under organization 0dad76a9-7d44-447a-84d6-ce713a5324d8 (1002)"}
Call to API Service failed for Method=POST, StatusCode=Conflict on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/organization/api/organization/0dad76a9-7d44-447a-84d6-ce713a5324d8/tenants Http Response Content:{"StatusCode":409,"StatusDescription":"Conflict","ErrorCode":1002,"Message":"Found duplicated tenant with requested Id b26f486f-a585-4420-83fd-f2741385b3c8 under organization 0dad76a9-7d44-447a-84d6-ce713a5324d8 (1002)"} -
Le message d’erreur suivant signifie que l’URL d’Automation Suite n’est pas valide. Veillez à fournir l’URL correcte d’Automation Suite.
Unhandled exception. UiPath.IdentityServer.PartitionMerge.PartitionMergeException: Can not create tenant ID with target organiztion ID 0dad76a9-7d44-447a-84d6-ce713a5324d8, tenant name tenant_0dad76a9, platform url https://ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com. ---> System.Net.Http.HttpRequestException: No such host is known. (ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com:443) ---> System.Net.Sockets.SocketException (11001): No such host is known.
Unhandled exception. UiPath.IdentityServer.PartitionMerge.PartitionMergeException: Can not create tenant ID with target organiztion ID 0dad76a9-7d44-447a-84d6-ce713a5324d8, tenant name tenant_0dad76a9, platform url https://ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com. ---> System.Net.Http.HttpRequestException: No such host is known. (ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com:443) ---> System.Net.Sockets.SocketException (11001): No such host is known. -
Le message d’erreur suivant signifie que la clé secrète du client S2S OMS n’est pas valide. Veillez à fournir correctement la clé secrète du client S2S OMS.
Call to API Service failed for Method=POST, StatusCode=BadRequest on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/identity_/connect/token Http Response Content:{"error":"invalid_client"}
Call to API Service failed for Method=POST, StatusCode=BadRequest on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/identity_/connect/token Http Response Content:{"error":"invalid_client"} -
Le message d'erreur suivant signifie qu'il existe déjà un locataire dans l'organisation Automation Suite avec le même nom de locataire que le nom de locataire autonome. Pour résoudre le conflit, vous devez modifier le nom du locataire pour le locataire dans l'organisation Automation Suite.
Source tenant ID: 38f03b05-3aab-422c-844b-bf3668fa54ee, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenan1 Source tenant ID: b35020b1-ee9f-4026-abd1-bb721b148e24, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenant2 Tenant name conflicts detected. You need to rename the tenant to be a different name than conflict tenant name in target organization to unblock tenant creation.
Source tenant ID: 38f03b05-3aab-422c-844b-bf3668fa54ee, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenan1 Source tenant ID: b35020b1-ee9f-4026-abd1-bb721b148e24, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenant2 Tenant name conflicts detected. You need to rename the tenant to be a different name than conflict tenant name in target organization to unblock tenant creation.
-
Avant de commencer, tenez compte des aspects suivants :
-
Vous devez télécharger et installer .NET Runtime 6.0 avant d’exécuter UiPath.OrganizationMigrationApp. Pour en savoir plus, consultez Prérequis de la migration.
-
Pour télécharger UiPath.OrganizationMigrationApp, consultez Prérequis de la migration.
$
par \`$
. Pour plus d’instructions sur la façon d’échapper les caractères spéciaux dans les mots de passe de chaîne de connexion, veuillez consulter les Règles d’échappement de caractères spéciaux pour les mots de passe de chaîne de connexion.
Cette section décrit certaines opérations courantes que vous devrez peut-être effectuer à l’aide de l’outil Uipath.Organization.Migration.App. Pour plus de détails sur les paramètres pris en charge par l’outil Uipath.Organization.Migration.App, consultez la section Paramètres de l’outil de migration.
-
Pour déplacer les Données d'identité de tous les locataires d'une version autonome vers Automation Suite , extrayez le fichier et exécutez la commande suivante.Remarque :
-
Assurez-vous d'ajouter
TrustServerCertificate=True
pour les entrées de connexion SQL source et de destination. -
Le nom du locataire Automation Suite est le même que le nom du locataire d'origine dans l'installation autonome d'Orchestrator. Il s’agit du locataire vers lequel vous allez migrer les produits autonomes.
-
Pour migrer plusieurs locataires autonomes vers une seule organisation Automation Suite, indiquez la valeur du paramètre
-d
en répétant l'ID de l'organisation cible le même nombre de fois que le nombre de locataires autonomes. Dans l'exemple suivant, le résultat de la migration est une organisation Automation Suite qui comprend trois locataires migrés :-s 'tenantId1, tenantId2, tenantId3' -d 'orgId1, orgId1, orgId1'
-s 'tenantId1, tenantId2, tenantId3' -d 'orgId1, orgId1, orgId1'
./UiPath.OrganizationMigrationApp migrate -m -i "<identity database connection of the standalone product>" -j "<identity database connection of Automation Suite>" -o "<orchestrator database connection of the standalone product>" -s "<list of tenant IDs of the standalone product>" -d "<list of organization IDs of Automation Suite>" -p "<URL of Automation Suite>" -c "<OMS S2S client secret>"
./UiPath.OrganizationMigrationApp migrate -m -i "<identity database connection of the standalone product>" -j "<identity database connection of Automation Suite>" -o "<orchestrator database connection of the standalone product>" -s "<list of tenant IDs of the standalone product>" -d "<list of organization IDs of Automation Suite>" -p "<URL of Automation Suite>" -c "<OMS S2S client secret>" -
-
Si l'opération a échoué au milieu, annulez la modification en exécutant la commande suivante :
./UiPath.OrganizationMigrationApp migrate -m -r -i "<identity database connection of the standalone product>" -j "<identity database connection of Automation Suite>" -o "<orchestrator database connection of the standalone product>" -s "<list of tenant IDs of the standalone product>" -d "<list of organization IDs of Automation Suite>" -p "<URL of Automation Suite>" -c "<OMS S2S client secret>"
./UiPath.OrganizationMigrationApp migrate -m -r -i "<identity database connection of the standalone product>" -j "<identity database connection of Automation Suite>" -o "<orchestrator database connection of the standalone product>" -s "<list of tenant IDs of the standalone product>" -d "<list of organization IDs of Automation Suite>" -p "<URL of Automation Suite>" -c "<OMS S2S client secret>" -
Résolvez le problème en vous basant sur le message d’erreur, puis essayez de déplacer à nouveau les données Identity de tous les locataires depuis les installations autonomes vers Automation Suite. Par exemple, découvrez ce que signifient les messages d’erreur suivants :
-
Le message d’erreur suivant signifie que le locataire a déjà été créé et que le programme va ignorer sa création. Vous n’avez rien à faire.
Call to API Service failed for Method=POST, StatusCode=Conflict on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/organization/api/organization/0dad76a9-7d44-447a-84d6-ce713a5324d8/tenants Http Response Content:{"StatusCode":409,"StatusDescription":"Conflict","ErrorCode":1002,"Message":"Found duplicated tenant with requested Id b26f486f-a585-4420-83fd-f2741385b3c8 under organization 0dad76a9-7d44-447a-84d6-ce713a5324d8 (1002)"}
Call to API Service failed for Method=POST, StatusCode=Conflict on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/organization/api/organization/0dad76a9-7d44-447a-84d6-ce713a5324d8/tenants Http Response Content:{"StatusCode":409,"StatusDescription":"Conflict","ErrorCode":1002,"Message":"Found duplicated tenant with requested Id b26f486f-a585-4420-83fd-f2741385b3c8 under organization 0dad76a9-7d44-447a-84d6-ce713a5324d8 (1002)"} -
Le message d’erreur suivant signifie que l’URL d’Automation Suite n’est pas valide. Veillez à fournir l’URL correcte d’Automation Suite.
Unhandled exception. UiPath.IdentityServer.PartitionMerge.PartitionMergeException: Can not create tenant ID with target organiztion ID 0dad76a9-7d44-447a-84d6-ce713a5324d8, tenant name tenant_0dad76a9, platform url https://ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com. ---> System.Net.Http.HttpRequestException: No such host is known. (ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com:443) ---> System.Net.Sockets.SocketException (11001): No such host is known.
Unhandled exception. UiPath.IdentityServer.PartitionMerge.PartitionMergeException: Can not create tenant ID with target organiztion ID 0dad76a9-7d44-447a-84d6-ce713a5324d8, tenant name tenant_0dad76a9, platform url https://ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com. ---> System.Net.Http.HttpRequestException: No such host is known. (ci-asaks5379291.devtest-ascloud.infra.uipath-dev.com:443) ---> System.Net.Sockets.SocketException (11001): No such host is known. -
Le message d’erreur suivant signifie que la clé secrète du client S2S OMS n’est pas valide. Veillez à fournir correctement la clé secrète du client S2S OMS.
Call to API Service failed for Method=POST, StatusCode=BadRequest on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/identity_/connect/token Http Response Content:{"error":"invalid_client"}
Call to API Service failed for Method=POST, StatusCode=BadRequest on url=https://ci-asaks5379291.devtest-ascloudgen-ea.infra.uipath-dev.com/identity_/connect/token Http Response Content:{"error":"invalid_client"} -
Le message d'erreur suivant signifie qu'il existe déjà un locataire dans l'organisation Automation Suite avec le même nom de locataire que le nom de locataire autonome. Pour résoudre le conflit, vous devez modifier le nom du locataire pour le locataire dans l'organisation Automation Suite.
Source tenant ID: 38f03b05-3aab-422c-844b-bf3668fa54ee, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenan1 Source tenant ID: b35020b1-ee9f-4026-abd1-bb721b148e24, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenant2 Tenant name conflicts detected. You need to rename the tenant to be a different name than conflict tenant name in target organization to unblock tenant creation.
Source tenant ID: 38f03b05-3aab-422c-844b-bf3668fa54ee, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenan1 Source tenant ID: b35020b1-ee9f-4026-abd1-bb721b148e24, target organization ID: f7d80050-9654-4f44-8a34-3a9e46380dc9, confilict tenant name: test_tenant2 Tenant name conflicts detected. You need to rename the tenant to be a different name than conflict tenant name in target organization to unblock tenant creation.
-
Le tableau suivant décrit les paramètres pris en charge par l’outil Uipath.Organization.Migration.App. Vous pouvez utiliser ces paramètres sur Linux et Windows.
Nom du paramètre |
Nom court |
Description |
---|---|---|
Connexion à la base de données Identity du produit autonome |
|
La connexion à la base de données Identity du produit autonome. Si Identity et Orchestrator partagent la même base de données, utilisez la chaîne de connexion de cette base de données. |
Connexion à la base de données d'identité d' Automation Suite |
| La connexion à la base de données d'identité d' Automation Suite . |
Connexion à la base de données Orchestrator du produit autonome |
| La connexion à la base de données Orchestrator du produit autonome. Si Identity et Orchestrator partagent la même base de données, utilisez la chaîne de connexion de cette base de données. |
Liste des ID d’organisation du produit autonome | s |
La liste des ID d’organisation pour le produit autonome à fusionner. Vous devez utiliser le format suivant :
orgId1,orgId2,...,orgId5 .
La taille de la liste des ID d’organisation doit être la même pour le produit autonome et pour Automation Suite. Pour obtenir une liste des ID d’organisation pour le produit autonome, exécutez la commande suivante sur la base de données autonome et utilisez
GlobalId avec le nom de partition/organisation associé sur la base de données restaurée :
|
Liste des ID d’organisation d’Automation Suite | d |
La liste des ID d'organisation pour Automation Suite. Vous devez utiliser le format suivant :
orgId1,orgId2,...,orgId5 .
La taille de la liste des ID d’organisation doit être la même pour le produit autonome et pour Automation Suite. Pour obtenir la liste des ID d’organisation pour Automation Suite, exécutez la commande suivante sur la base de données
AutomationSuite_Platform du serveur SQL d’Automation Suite :
|
Restaurer (Rollback) |
| Le paramètre utilisé pour annuler une modification. |
URL d’Automation Suite |
|
L'URL d'Automation Suite. Par exemple :
https://ci-asaks5380983.devtest-ascloudgen-ea.infra.uipath-dev.com/ |
Clé secrète de client S2S OMS |
|
La clé secrète du client utilisée pour appeler l’API OMS afin de créer le locataire. Pour obtenir la clé secrète du client S2S OMS à partir de la clé secrète Kubernetes, exécutez la commande suivante :
|