> For the complete documentation index, see [llms.txt](https://docs.scepman.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scepman.com/fr/configuration-azure/geo-redundancy.md).

# Géo-redondance

{% hint style="warning" %}
SCEPman Enterprise Edition uniquement
{% endhint %}

Cette architecture de référence montre comment exécuter une application Azure App Service dans plusieurs régions afin d’obtenir une haute disponibilité.

{% hint style="info" %}
La redondance géographique / haute disponibilité est actuellement disponible uniquement pour le SCEPman App Service (principal). Raison : les utilisateurs de Certificate Master sont des administrateurs ayant généralement des charges de travail de certificats non critiques en termes de temps et connaissant les procédures pour gérer ce type de scénario.
{% endhint %}

## Architecture

![](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-6865890fc78414e9600419ba8897a3b76803ff92%2F2022-06-23%2012_32_59-GeoRedundancy.png?alt=media)

Comme illustré ci-dessus, le déploiement géoredondant s’appuie sur un profil Azure Traffic Manager, qui achemine les requêtes (basées sur le DNS) vers l’AC SCEPman vers une paire d’instances SCEPman déployées dans différentes géolocalisations. Les instances SCEPman individuelles communiquent avec le même KeyVault, Storage Account et AAD, et partagent donc la même AC racine. En plus d’équilibrer le trafic selon un ensemble d’algorithmes de routage parmi lesquels vous pouvez choisir, Traffic Manager sonde également en permanence les deux instances de SCEPman. Si une instance devient indisponible, tout le trafic sera automatiquement redirigé vers l’instance disponible.

Microsoft en parle dans [cet article](https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/app-service-web-app/multi-region) trois stratégies de redondance géographique différentes pouvant être utilisées pour gérer ce type d’architecture. Cependant, dans notre cas, nous utiliserons l’approche **Active/Active** Cela signifie que les deux régions sont actives, et que les requêtes sont réparties en charge entre elles. Si une région devient indisponible ou présente une certaine latence pour quelque raison que ce soit, Traffic Manager dirigera le trafic vers le second App Service.

{% hint style="info" %}
N’oubliez pas de consulter [la liste des régions disponibles de Microsoft](https://learn.microsoft.com/en-us/azure/reliability/regions-list#azure-regions-list-1) et leur région jumelée correspondante. L’utilisation de régions non jumelées peut entraîner des problèmes lors de la configuration de cette redondance.
{% endhint %}

## Flux de travail

1. Cloner le SCEPman App Service dans une autre géolocalisation.
2. Configurez Traffic Manager et reliez ses points de terminaison aux deux SCEPman App Services.
3. Configurez le même domaine personnalisé pour les deux App Services.
4. Configurez l’enregistrement DNS CNAME, en pointant votre domaine personnalisé vers Traffic Manager.

## Étapes

{% stepper %}
{% step %}

### Cloner l’application

Pour cloner un App Service, vous devez d’abord créer un nouveau **App Service Plan** dans une seconde géolocalisation ; c’est là que l’application clonée sera déployée. Vous pouvez la créer dans le même groupe de ressources SCEPman ou dans un nouveau. Voir la capture d’écran ci-dessous :

![Création d’un nouveau App Service Plan avec Windows](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-87bb339bda3436681a5fd22707345bb6d4d5f1f2%2F2022-06-15%2013_29_57-Create%20App%20Service%20Plan.png?alt=media)

{% hint style="info" %}
Prérequis pour le clonage d’un App Service (via [module PowerShell SCEPman](/fr/deploiement-scepman/permissions/post-installation-config.md#acquire-and-run-the-scepman-installation-powershell-module)):

* SCEPman **2.2** ou plus
* module PowerShell SCEPman **1.6.3.0** ou plus
* autorisations d’administrateur général
  {% endhint %}

La commande cmdlet suivante clonera votre SCEPman App Service et configurera toutes les autorisations requises :

```
New-SCEPmanClone -SourceAppServiceName <Your SCEPman App Service Name> -TargetAppServiceName <Your cloned App Service Name> -TargetAppServicePlan <Your second App Service Plan in the second Geo Location> -SearchAllSubscriptions 6>&1
```

* **SourceAppServiceName:** Le nom du SCEPman App Service existant.
* **TargetAppServiceName:** Le nom du SCEPman App Service nouvellement cloné.
* **TargetAppServicePlan:** Le nom du App Service Plan pour l’instance SCEPman clonée. Le App Service Plan doit déjà exister dans le TargetResourceGroup.
* **SourceResourceGroup:** (Facultatif) Le groupe de ressources Azure hébergeant le SCEPman App Service existant. Laissez vide pour la détection automatique.
* **TargetResourceGroup:** (Facultatif) Le groupe de ressources Azure hébergeant le nouveau SCEPman App Service. Laissez vide pour détecter automatiquement le groupe de ressources du App Service Plan.
* **SourceSubscriptionId:** (Facultatif) L’ID de l’abonnement où SCEPman est installé. Peut être omis s’il est déjà présélectionné dans az, ou utilisez l’indicateur SearchAllSubscriptions pour rechercher tous les abonnements accessibles
* **TargetSubscriptionId:** (Facultatif) L’ID de l’abonnement où SCEPman doit être installé. Peut être omis s’il est identique à SourceSubscriptionId.
* **SearchAllSubscriptions:** (Facultatif) Définissez cet indicateur pour rechercher le SCEPman App Service dans tous les abonnements. Sinon, présélectionnez le bon abonnement dans az ou transmettez le SubscriptionId correct.

#### **Exemple**

Cloner un SCEPman App Service existant "app-scepman-contoso"

```
New-SCEPmanClone -SourceAppServiceName app-scepman-contoso -TargetAppServiceName app-scepman-clone -TargetAppServicePlan asp-scepman-geo2 -SearchAllSubscriptions 6>&1
```

![](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-30e1cb5d7dfe6877face335d0524bae25d402d88%2F2022-06-15%2014_29_28-SCEPmanCloneApp.png?alt=media)

Une fois le déploiement terminé avec succès, accédez au App Service cloné et vérifiez sur la page d’accueil SCEPman que toutes les autorisations sont correctement définies et que tout est vert et connecté (cela peut prendre jusqu’à 3 minutes après la fin du déploiement).

![](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-8faef5c52ed690e841b35c50d979d861bb055725%2F2022-06-21%2010_32_37.png?alt=media)

{% hint style="info" %}
Pour éviter un point de défaillance unique, nous recommandons de définir le [WEBSITE\_RUN\_FROM\_PACKAGE](/fr/configuration-scepman/application-artifacts.md) de l’App Service cloné sur le second hôte d’artefacts indépendant sur Azure.

Canal de production :

`https://install.scepman.com/dist/Artifacts.zip`

L’App Service d’origine devrait utiliser par défaut le premier hôte d’artefacts, qui pointe vers un dépôt GitHub. Pour plus d’informations, veuillez consulter [Artefacts de l'application](/fr/configuration-scepman/application-artifacts.md).
{% endhint %}

{% hint style="warning" %}
Le clonage d’un App Service comporte certaines restrictions, telles que **mise à l’échelle automatique** paramètres, **planification de sauvegarde** paramètres, **Application Insights**, etc. Les configurations qui ne peuvent pas être clonées doivent être reconfigurées manuellement sur l’App Service cloné. De plus, les modifications apportées aux paramètres d’un AppService ne seront pas synchronisées automatiquement vers le second App Service si elles sont effectuées après l’opération de clonage. Pour plus d’informations, consultez <https://docs.microsoft.com/en-us/azure/app-service/app-service-web-app-cloning#current-restrictions>
{% endhint %}
{% endstep %}

{% step %}

### Configurer Traffic Manager

Suivez les étapes ci-dessous pour créer et configurer Traffic Manager et équilibrer le trafic entre les deux instances SCEPman :

1. Recherchez dans Marketplace **profil Traffic Manager** et cliquez sur **Créer**.
2. Renseignez les champs et choisissez votre groupe de ressources SCEPman\
   ![](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FUgVnDX8hq0TTN00kGdHZ%2Fimage.png?alt=media\&token=d497732c-983e-4e9f-bf31-e4a2c0d51086)
3. Puis cliquez sur **Créer**.
4. Une fois Traffic Manager déployé, ouvrez-le et cliquez sur **Configuration**
5. Modifiez les paramètres comme suit et **enregistrez**<br>

   <figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FAnYpAYYRkqhB2fKYNrF3%2Fimage.png?alt=media&amp;token=a6c73544-72fa-4f07-b29d-f8553c81375b" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### Ajout de points de terminaison

1. Ensuite, sous **Paramètres** choisissez **Points de terminaison**
2. Choisissez « Azure Endpoint » comme **Type**, fournissez un nom pour le premier point de terminaison, et « App Service » comme **type de ressource cible**
3. Choisissez votre SCEPman App Service principal comme le **ressource cible**<br>

   <figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FjSE1QKh2iExQTuqXrBMB%2Fimage.png?alt=media&amp;token=43112cf2-c134-493e-a0c9-007397cd1744" alt=""><figcaption></figcaption></figure>
4. Répétez les mêmes étapes pour le deuxième point de terminaison et choisissez le second SCEPman App Service (cloné) comme le **ressource cible**
   {% endstep %}

{% step %}

### Configuration du domaine personnalisé

Après un déploiement et une configuration réussis des points de terminaison Traffic Manager, vous devez configurer le **même** domaine personnalisé pour **les deux** instances SCEPman, comme décrit [ici](/fr/configuration-azure/custom-domain.md).

Assurez-vous de modifier la valeur du paramètre **AppConfig:BaseUrl** pour **les deux** des SCEPman App Services après la création des domaines personnalisés.
{% endstep %}

{% step %}

### Configuration DNS

Dans Traffic Manager **Vue d’ensemble,** vous trouverez le nom DNS à ajouter à votre DNS

![Vue d’ensemble de Traffic Manager](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-d80894aab4311887f9e7b9a063817e0383c89601%2Fscepman_trafficmanager4.png?alt=media)

* Accédez à votre service de gestion DNS (par ex. **zones DNS Azure**)
* Supprimez toute entrée CNAME incorrecte éventuellement existante pointant vers l’une des instances Azure App Service et ajoutez un CNAME qui associe le domaine personnalisé SCEPman créé au nom DNS de Traffic Manager. Dans l’exemple ci-dessous, le CNAME doit pointer vers **gk-blueprint-scepman.trafficmanager.net**.

{% hint style="info" %}
Dans **zone DNS Azure**, pour modifier un enregistrement, vous devez d’abord supprimer le verrou DNS en accédant à **Verrous**.
{% endhint %}

{% hint style="info" %}
Une fois la configuration terminée, veillez à mettre à jour l’URL du serveur SCEP dans vos profils SCEP dans Intune. La nouvelle URL doit être le domaine personnalisé que vous avez créé, avec "/certsrv/mscep/mscep.dll" à la fin.

Exemple : <https://scepman.contoso.com/certsrv/mscep/mscep.dll>
{% endhint %}
{% endstep %}

{% step %}

### Redondance géographique de Storage Account

La configuration SCEPman par défaut utilise le stockage localement redondant (LRS), qui n’utilise qu’une seule région.

Modifiez la redondance de Stockage localement redondant (LRS) vers le stockage géoredondant (GRS).

![Boîte de dialogue de redondance du Storage Account dans Azure Portal](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-ef32806a7e8d3c5c76c8b9c5191a527f5bae2037%2Fstorage-account-redundancy%20\(1\).png?alt=media)
{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.scepman.com/fr/configuration-azure/geo-redundancy.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
