> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Azure Infrastructure Creation

> Créez pas à pas l’infrastructure Azure requise pour ABBYY Vantage en mode auto-hébergé sur AKS à l’aide du conteneur d’installation, d’Azure CLI et de modèles ARM.

<Warning>
  **Vantage 3.0 remplace ce modèle de déploiement.** Vantage 2.7 et les versions antérieures nécessitaient l’infrastructure spécifiée par ABBYY, créée à l’aide des scripts Ansible et Azure CLI fournis par ABBYY. Ce modèle n’est pas pris en charge dans la version 3.0 : vous provisionnez votre propre infrastructure, et ABBYY ne fournit pas de scripts de provisionnement ni d’autre outil d’automatisation de l’infrastructure. Cette page s’applique uniquement à Vantage 2.7. Voir la [Vue d’ensemble de Vantage 3.0](/fr/vantage/self-hosted/v3.0/introduction) et [Migrer depuis Vantage 2.7](/fr/vantage/self-hosted/v3.0/migration-from-2.7).
</Warning>

<Note>
  Cette page s’applique uniquement aux déploiements **Azure AKS**. Pour les déploiements sur machine virtuelle, consultez le guide [Installation](/fr/vantage/self-hosted/v2.7/installation).
</Note>

<div id="overview">
  ## Vue d’ensemble
</div>

Ce guide vous explique comment créer l’infrastructure Azure requise pour ABBYY Vantage à l’aide d’Azure CLI et de modèles ARM. Cette infrastructure est créée depuis le conteneur d’installation de Vantage.

<div id="prerequisites">
  ## Prérequis
</div>

Avant de commencer, assurez-vous de disposer des éléments suivants :

* Un abonnement Azure avec les autorisations nécessaires pour créer et gérer des ressources
* Docker installé sur votre machine locale
* Un accès à Internet pour télécharger les images de conteneurs
* Pour une configuration en haute disponibilité : un cluster Redis déployé sur des VM (voir [Exigences système](/fr/vantage/self-hosted/v2.7/system-requirements#redis-cluster-azure-aks-only))

<Note>
  Vous pouvez commencer à télécharger les images de conteneurs pendant la création de l’infrastructure, car il s’agit d’une opération longue.
</Note>

<div id="infrastructure-components">
  ## Composants de l’infrastructure
</div>

Les ressources Azure suivantes seront créées :

```
Azure Subscription
└── groupe de ressources
    ├── cluster AKS
    │   ├── pool de nœuds de services (Standard_D8as_v5)
    │   └── pool de nœuds de workers (Standard_D16as_v5)
    ├── comptes de stockage (5)
    │   ├── Skills (Premium/Hot)
    │   ├── Processing (Standard/Hot)
    │   ├── Temporary (Standard/Hot)
    │   ├── Shared Folders (Premium FileStorage)
    │   └── Archive (Standard/Cool)
    ├── serveur Azure SQL
    │   └── Elastic Pool Database
    └── adresse IP publique
```

<div id="step-1-download-the-installer-image">
  ## Étape 1 : Télécharger l’image du programme d’installation
</div>

Commencez par télécharger l’image du programme d’installation de Vantage et la charger dans votre registre de conteneurs.

```bash theme={null}
# Connexion au registre Docker Vantage
docker login abyvtgonprm27.azurecr.io -u <username> -p <password>

# Télécharger l'image de l'installateur
docker pull abyvtgonprm27.azurecr.io/vantage-azure:2.7.1

# Tagger pour votre registre
docker tag abyvtgonprm27.azurecr.io/vantage-azure:2.7.1 \
  registry.yourdomain.tld/vantage/vantage-azure:2.7.1

# Pousser vers votre registre
docker push registry.yourdomain.tld/vantage/vantage-azure:2.7.1
```

<Note>
  Remplacez `<username>` et `<password>` par les identifiants fournis lors de l’achat.
</Note>

<div id="step-2-run-the-installer-container">
  ## Étape 2 : Lancer le conteneur d’installation
</div>

Démarrez le conteneur d’installation. Toutes les commandes suivantes de ce guide s’exécutent dans ce conteneur.

```bash theme={null}
docker run -it registry.yourdomain.tld/vantage/vantage-azure:2.7.1
```

<div id="step-3-authenticate-to-azure">
  ## Étape 3 : Se connecter à Azure
</div>

À l’intérieur du conteneur, connectez-vous à votre compte Azure :

```bash theme={null}
# Connexion à Azure (ouvre le navigateur pour l'authentification)
az login

# Définir l'abonnement
az account set --subscription <subscription_id>
```

<Note>
  Remplacez `<subscription_id>` par votre ID d’abonnement Azure.
</Note>

<div id="step-4-create-resource-group">
  ## Étape 4 : Créer un groupe de ressources
</div>

Créez un groupe de ressources dans la région Azure de votre choix :

```bash theme={null}
az group create --location <location> --resource-group <resource_group_name>
```

**Exemple :**

```bash theme={null}
az group create --location eastus --resource-group vantage-prod-rg
```

Régions Azure courantes : `eastus`, `eastus2`, `westus2`, `westeurope`, `northeurope`

<div id="step-5-create-aks-cluster">
  ## Étape 5 : Créer un cluster AKS
</div>

### Aperçu du déploiement

Commencez par vérifier quelles ressources seront créées :

```bash theme={null}
az deployment group what-if --name aks-cluster \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Cluster.Manual.json \
  --parameters kubernetesClusterName=<cluster_name>
```

<Warning>
  Les noms de cluster ne doivent pas comporter plus de **15 caractères**.
</Warning>

<div id="create-the-cluster">
  ### Créer le cluster
</div>

```bash theme={null}
az deployment group create --name aks-cluster \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Cluster.Manual.json \
  --parameters kubernetesClusterName=<cluster_name> \
  --parameters enableFIPS=false
```

<Note>
  Cette commande crée un cluster dans la configuration **sans haute disponibilité**, capable de traiter 50 000 pages sur une période de 8 heures. Pour les autres configurations, modifiez les paramètres du pool de nœuds à l’aide du [Performance Guide](/fr/vantage/self-hosted/v2.7/performance-guide) après la création du cluster.
</Note>

Pour les déploiements conformes à la norme FIPS, définissez `enableFIPS=true`. Consultez [FIPS Compliance](/fr/vantage/self-hosted/v2.7/fips-compliance) pour plus d’informations sur la configuration.

<div id="step-6-create-storage-accounts">
  ## Étape 6 : Créer des comptes de stockage
</div>

### Vérifier le déploiement

```bash theme={null}
az deployment group what-if --name storage \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/StorageAccounts.Template.json
```

<div id="create-storage-accounts">
  ### Créer des comptes de stockage
</div>

```bash theme={null}
az deployment group create --name storage \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/StorageAccounts.Template.json \
  --parameters kubernetesClusterName=<cluster_name> \
  --parameters enableFIPS=false
```

<div id="retrieve-storage-account-keys">
  ### Récupérer les clés du compte de stockage
</div>

Récupérez les clés d’accès et les clés secrètes pour renseigner la section `s3storage` dans `env_specific.yml` :

```bash theme={null}
az deployment group show --name storage \
  --resource-group <resource_group_name> \
  --query properties.outputs -o yaml
```

Enregistrez ces résultats : vous aurez besoin de ces valeurs pour le fichier de configuration `env_specific.yml`.

<div id="step-7-create-azure-sql-server">
  ## Étape 7 : Créer le serveur Azure SQL
</div>

<div id="preview-the-deployment">
  ### Afficher un aperçu du déploiement
</div>

```bash theme={null}
az deployment group what-if --name dbservers \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/DB.Server.Template.json \
  --parameters serverBaseName=<cluster_name> \
  --parameters dbAdminLogin=<db_username> \
  --parameters dbAdminPassword=<db_password>
```

<div id="create-sql-server">
  ### Créer un serveur SQL
</div>

```bash theme={null}
az deployment group create --name dbservers \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/DB.Server.Template.json \
  --parameters serverBaseName=<cluster_name> \
  --parameters dbAdminLogin=<db_username> \
  --parameters dbAdminPassword=<db_password>
```

<Note>
  Les paramètres `dbAdminLogin` et `dbAdminPassword` sont les identifiants utilisés pour accéder aux bases de données. Conservez-les pour la configuration `env_specific.yml`.
</Note>

<div id="step-8-create-azure-sql-database">
  ## Étape 8 : Créer une base de données Azure SQL
</div>

### Prévisualiser le déploiement

```bash theme={null}
az deployment group what-if --name databases \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/SQL.Databases.Template.json \
  --parameters serverBaseName=<cluster_name>
```

<div id="create-database">
  ### Créer une base de données
</div>

```bash theme={null}
az deployment group create --name databases \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/SQL.Databases.Template.json \
  --parameters serverBaseName=<cluster_name>
```

<div id="step-9-get-node-resource-group">
  ## Étape 9 : Obtenir le groupe de ressources des nœuds
</div>

Récupérez le nom du groupe de ressources des nœuds du cluster AKS :

```bash theme={null}
az aks show --name <cluster_name> -g <resource_group_name> \
  --query nodeResourceGroup -o tsv
```

Conservez cette valeur : vous placerez l’adresse IP publique dans ce groupe de ressources.

<div id="step-10-configure-public-ip-address">
  ## Étape 10 : Configurer l’adresse IP publique
</div>

1. **Créez une adresse IP publique Azure** (IPv4 statique standard) dans le groupe de ressources des nœuds de l’étape 9, ou déplacez une adresse IP publique existante vers ce groupe de ressources.

2. **Notez l’adresse IP** pour la configuration `env_specific.yml` :

   ```yaml theme={null}
   loadbalancer:
     external_ip: <your_public_ip_address>
   ```

3. **Créez un enregistrement DNS de type A** faisant pointer votre domaine vers cette adresse IP.

<div id="step-11-install-gpu-driver-optional">
  ## Étape 11 : Installer le pilote GPU (facultatif)
</div>

Si vous prévoyez de déployer des workers GPU pour entraîner des Skills avec Deep Learning :

```bash theme={null}
ansible-playbook -i inventories/azure -v \
  playbooks/infrastructure/azure/02_install_gpu_driver.yml
```

Pour les exigences relatives au déploiement sur GPU, voir [Exigences système](/fr/vantage/self-hosted/v2.7/system-requirements).

<div id="summary-of-created-resources">
  ## Résumé des ressources créées
</div>

Après avoir terminé ces étapes, vous disposerez de :

| Ressource                                | Objectif                                                |
| ---------------------------------------- | ------------------------------------------------------- |
| Groupe de ressources                     | Conteneur de toutes les ressources Vantage              |
| cluster AKS                              | Cluster Kubernetes pour exécuter Vantage                |
| Pool de nœuds de services                | Exécute les services de la plateforme Vantage           |
| Pool de nœuds de workers                 | Exécute les workers de traitement des documents         |
| Compte de stockage des Skills            | Stocke les définitions et les configurations des Skills |
| Compte de stockage Processing            | Stocke les documents pendant leur traitement            |
| Compte de stockage temporaire            | Stockage temporaire des transactions                    |
| Compte de stockage des dossiers partagés | Accès au dossier partagé d’import/export                |
| Compte de stockage d’archivage           | Archive des documents à long terme                      |
| serveur Azure SQL                        | Serveur de base de données                              |
| base de données Azure SQL                | Base de données opérationnelle de Vantage               |
| adresse IP publique                      | Accès externe à Vantage                                 |

<div id="next-steps">
  ## Étapes suivantes
</div>

Après avoir créé l’infrastructure :

1. **Configurer env\_specific.yml** - Renseignez-le avec les valeurs indiquées dans ce guide. Consultez [Installation](/fr/vantage/self-hosted/v2.7/installation) pour le format de configuration complet.

2. **Télécharger les images de conteneurs** - Synchronisez les images Vantage avec votre registre de conteneurs.

3. **Exécuter l’installation** - Terminez l’installation à l’aide des playbooks.

Poursuivez avec [Installation](/fr/vantage/self-hosted/v2.7/installation) pour obtenir la procédure d’installation complète.

<div id="troubleshooting">
  ## Dépannage
</div>

<div id="deployment-fails-with-permission-error">
  ### Échec du déploiement en raison d’une erreur d’autorisation
</div>

Assurez-vous que votre compte Azure dispose des autorisations suivantes :

* Accès Contributeur à l’abonnement ou au groupe de ressources
* Autorisation de créer des clusters AKS, des comptes de stockage et des bases de données SQL

<div id="cluster-name-too-long">
  ### Nom du cluster trop long
</div>

Les noms de cluster doivent contenir 15 caractères maximum. Utilisez un nom plus court.

<div id="storage-account-name-already-exists">
  ### Le nom du compte de stockage est déjà utilisé
</div>

Les noms de comptes de stockage Azure doivent être uniques à l’échelle mondiale. Le modèle ARM génère des noms à partir du nom de votre cluster. En cas de conflit, essayez un autre nom de cluster.

<div id="cannot-connect-to-sql-database">
  ### Impossible de se connecter à la base de données SQL
</div>

Assurez-vous que les règles du pare-feu de la base de données Azure SQL autorisent les connexions à partir des adresses IP sortantes du cluster AKS. Vous devrez peut-être ajouter une règle de réseau virtuel ou autoriser les services Azure.

<div id="related-documentation">
  ## Documentation connexe
</div>

* [Exigences système](/fr/vantage/self-hosted/v2.7/system-requirements) - Exigences complètes de l’infrastructure
* [Installation](/fr/vantage/self-hosted/v2.7/installation) - Guide d’installation complet
* [Conformité à la norme FIPS](/fr/vantage/self-hosted/v2.7/fips-compliance) - Déploiements avec le mode FIPS activé
* [Guide des performances](/fr/vantage/self-hosted/v2.7/performance-guide) - Scalabilité et optimisation des performances
