Skip To Content

Automatiser la réplication sur un déploiement de secours

Une fois que vous avez créé vos déploiements ArcGIS Enterprise principal et de secours, vous pouvez automatiser la réplication du déploiement principal sur le déploiement de secours à l'aide de l'utilitaire webgisdr, des fichiers de propriétés distincts pour les sauvegardes complètes et incrémentielles et une tâche planifiée à l'aide d'une tâche cron.

Pour mieux synchroniser vos déploiements principal et de secours, créez régulièrement des sauvegardes complètes à l'aide de l'utilitaire webgisdr, mais exportez les modifications incrémentielles entre les sauvegardes complètes. Par exemple, si les services et données dans votre déploiement ArcGIS Enterprise connaissent une évolution importante au cours d'une journée, vous pouvez créer une sauvegarde complète à minuit, puis exporter les modifications incrémentielles à 10 h 00, 14 h 00 et 18 h 00 pour relever les changements qui ont eu lieu tout au long de la journée de travail.

Pour automatiser ce processus, créez quatre copies du fichier de propriétés du modèle (webgisdr.properties) et quatre scripts différents pour réaliser les tâches suivantes :

  • Exportez les sauvegardes complètes du déploiement principal et copiez les fichiers sur le déploiement de secours.
  • Exportez les sauvegardes incrémentielles du déploiement principal et copiez les fichiers sur le déploiement de secours.
  • Importez les sauvegardes complètes vers le déploiement de secours.
  • Importez les sauvegardes incrémentielles vers le déploiement de secours.

Définissez une tâche cron pour exécuter chaque script à des moments spécifiques.

Lorsque vous choisissez la fréquence d'exécution des scripts, vous devez prendre en compte la durée d'exportation et de copie des données. Vous devez d'abord exécuter ce processus manuellement pour avoir une idée du temps que prend la création d'une sauvegarde complète et sa copie via votre réseau sur le déploiement de secours, ainsi que du temps que prend la création de sauvegardes incrémentielles et leur copie via votre réseau sur le déploiement de secours. Incluez une zone tampon de 30 à 60 minutes pour tenir compte des fluctuations des performances matérielles et du réseau.

Par exemple, si la création d'une sauvegarde incrémentielle prend 20 minutes et sa copie sur le déploiement de secours prend 5 minutes, planifiez l'importation de la sauvegarde incrémentielle une heure après l'exécution du script de la sauvegarde incrémentielle. Ainsi, si le script permettant de créer une sauvegarde incrémentielle s'exécute à 10 h 00, planifiez l'exécution de l'importation à 11 h 00.

  1. Effectuez une copie du fichier webgisdr.properties et nommez-le expfullbackups.properties. Enregistrez le fichier dans le même emplacement que le fichier webgisdr.properties.

    L'emplacement par défaut est /arcgis/portal/tools/webgisdr.

  2. Ouvrez le fichier expfullbackups.properties dans un éditeur de texte et modifiez-le pour inclure des informations propres à votre déploiement.

    • SHARED_LOCATION = <emplacement des fichiers de sauvegarde>

      Indiquez un emplacement partagé dans lequel créer une copie temporaire des fichiers de sauvegarde pour ArcGIS Server, Portal for ArcGIS et ArcGIS Data Store. Le compte qui a installé ArcGIS Server, Portal for ArcGIS et ArcGIS Data Store et le compte qui exécute l’utilitaire webgisdr doivent disposer d’un accès en lecture et en écriture sur cet emplacement. Vérifiez que l’emplacement est d’une taille suffisante pour contenir les fichiers de sauvegarde de chaque composant. Même si les fichiers sont compressés, ils peuvent être assez volumineux selon la quantité et le type de données dont vous disposez. Si vous possédez des couches de scènes hébergées et des caches et définissez INCLUDE_SCENE_TILE_CACHES sur true, le fichier de sauvegarde ArcGIS Data Store peut être particulièrement volumineux.

      Assurez-vous qu’une séquence d’échappement est appliquée aux barres obliquesinverses du chemin d’accès. Par exemple, le chemin d’accès C:\backups serait saisi sous la forme C:\\backups et le chemin d’accès \fileserver\backups serait saisi sous la forme \\\\fileserver\\backups.
    • BACKUP_STORE_PROVIDER = {FileSystem | AmazonS3 | AzureBlob}

      Indiquez si vous voulez enregistrer le fichier de sauvegarde webgissite sur le système de fichiers ou sur le stockage cloud.

      Pour stocker la sauvegarde ArcGIS Enterprise dans un emplacement de partage de fichiers sur site, spécifiez FileSystem. L’utilitaire webgisdr stocke les fichiers de sauvegarde dans le partage de fichiers que vous indiquez pour BACKUP_LOCATION.

      Pour stocker les sauvegardes ArcGIS Enterprise dans un emplacement de stockage de paquets Amazon Simple Storage Service (S3) ou compatible avec S3, créez-en un dédié spécifiquement au stockage des fichiers de sauvegarde générés par l’utilitaire webgisdr et mettez à jour les propriétés S3 selon les informations requises pour accéder au paquet.

      Pour stocker les sauvegardes ArcGIS Enterprise dans un stockage BLOB Microsoft Azure, créez un conteneur de stockage BLOB Azure dédié spécifiquement au stockage des fichiers de sauvegarde générés par l’utilitaire webgisdr et mettez à jour les propriétés Azure selon les informations requises pour accéder au conteneur.

      Remarque :

      Si votre déploiement ArcGIS Enterprise est sur site alors que vos sauvegardes sont stockées dans le cloud, créer des sauvegardes et restaurer prendra plus de temps que si vous stockiez vos sauvegardes dans un partage de fichiers sur site.

    • BACKUP_LOCATION = <emplacement du fichier de sauvegarde sur site>

      Indiquez l’emplacement pour le fichier de sauvegarde webgissite.

      Assurez-vous qu’une séquence d’échappement est appliquée aux barres obliquesinverses du chemin d’accès. Par exemple, le chemin d’accès C:\backups serait saisi sous la forme C:\\backups et le chemin d’accès \\fileserver\backups serait saisi sous la forme \\\\fileserver\\backups.

      Les fichiers de sauvegarde sont initialement stockés dans SHARED_LOCATION mais sont ensuite copiés dans BACKUP_LOCATION. Vérifiez que l'emplacement est d'une taille suffisante pour contenir le fichier de sauvegarde. Même si le fichier est compressé, il peut être assez volumineux selon la quantité et le type de données dont vous disposez. Le compte qui exécute l’utilitaire webgisdr doit disposer d’un accès en lecture et en écriture sur BACKUP_LOCATION.

      Si vous définissez BACKUP_LOCATION sur un dossier, l’outil de récupération d’urgence importe le fichier de sauvegarde le plus récent disponible dans ce dossier. Si vous définissez BACKUP_LOCATION sur un fichier de sauvegarde spécifique dans le dossier, ce fichier est importé par l’outil de récupération d’urgence.

      Remarque :

      Lors de l’exportation, si l’empaquetage de la sauvegarde dure trop longtemps, pensez à définir BACKUP_LOCATION sur un chemin d’accès local. Vous pouvez ensuite copier le paquetage terminé dans l’emplacement souhaité. Vérifiez que vous disposez d’un espace suffisant sur le disque local pour le stockage temporaire de la sauvegarde.

    • PORTAL_ADMIN_URL = <URL du répertoire d’administration du portail>

      Spécifiez l’URL du répertoire d’administration Portal for ArcGIS. Utilisez le format https://portalhostname.domain.com:7443/arcgis, où portalhostname.domain.com est le nom complet de la machine où Portal for ArcGIS est installé.

    • PORTAL_ADMIN_USERNAME = <nom d’utilisateur de l’administrateur du portail>

      Spécifiez le nom d’utilisateur d’un membre du portail auquel le rôle Administration a été attribué.

    • PORTAL_ADMIN_PASSWORD = <mot de passe de l’administrateur du portail>

      Spécifiez le mot de passe du compte d'administrateur du portail.

    • PORTAL_ADMIN_PASSWORD_ENCRYPTED = <true | false>

      Définissez cette option sur false la première fois que vous renseignez le fichier avec votre mot de passe d’administrateur. Lors de l’enregistrement du fichier, votre mot de passe est chiffré et PORTAL_ADMIN_PASSWORD_ENCRYPTED est défini sur true pour indiquer que le mot de passe est chiffré. Si vous devez modifier le mot de passe ultérieurement, définissez PORTAL_ADMIN_PASSWORD_ENCRYPTED = false, indiquez votre nouveau mot de passe d’administrateur et enregistrez le fichier.

    • INCLUDE_SCENE_TILE_CACHES = <true | false>

      Si vous publiez des couches de scènes hébergées sur votre portail et que vous souhaitez inclure les données des caches de scènes dans la sauvegarde, définissez INCLUDE_SCENE_TILE_CACHES sur true. Gardez à l’esprit que, si ce paramètre est défini sur true, toutes les données des caches de scènes sont intégrées dans la sauvegarde, pas seulement les nouvelles données de cache créées depuis votre dernière sauvegarde. Si vous savez qu’aucun nouveau cache de scènes n’a été créé depuis votre dernière sauvegarde ou si vous ne publiez pas de scènes dans votre portail, vous pouvez définir INCLUDE_SCENE_TILE_CACHES sur false.

    • BACKUP_RESTORE_MODE = full.

  3. Enregistrez les modifications et fermez le fichier expfullbackups.properties.
  4. Effectuez une copie du fichier expfullbackups.properties et nommez-le expincremental.properties.
  5. Ouvrez le fichier expincremental.properties dans un éditeur de texte et définissez le paramètre BACKUP_RESTORE_MODE sur incremental.
  6. Enregistrez les modifications et fermez le fichier expincremental.properties.
  7. Créez deux scripts qui exécuteront l'utilitaire webgisdr afin d'effectuer l'exportation depuis votre déploiement principal. Configurez un script de façon à appeler le fichier expfullbackups.properties et l'autre de façon à appeler le fichier expincremental.properties.

    Comme vous créez deux scripts, vous pouvez planifier l'exécution de l'un des deux à des heures spécifiques pour créer des sauvegardes complètes et l'autre script à d'autres heures pour créer les sauvegardes incrémentielles.

    Par exemple, la ligne que vous insérez dans le script pour créer des sauvegardes complètes peut ressembler à ceci :

    webgisdr --export --file /arcgis/portal/tools/webgisdr/fullbackups.properties

  8. Les scripts que vous utilisez pour exporter des sauvegardes doivent inclure une façon de copier les fichiers de sauvegarde sur le déploiement de secours.

    Le compte qui a installé ArcGIS Server, Portal for ArcGIS et ArcGIS Data Store dans le déploiement principal doit disposer d'un accès en écriture sur l'emplacement SHARED_LOCATION défini dans le fichier .properties. En outre, le compte exécutant l'utilitaire webgisdr doit posséder des privilèges en lecture et en écriture sur SHARED_LOCATION et sur l'emplacement dans lequel vous copiez les fichiers de sauvegarde. Le compte qui a installé ArcGIS Server, Portal for ArcGIS et ArcGIS Data Store dans le déploiement de secours doit disposer au moins des privilèges en lecture sur ces emplacements.

  9. Si votre déploiement ArcGIS Enterprise comprend des caches de couches de tuiles hébergées et de service de carte, les scripts doivent également les copier depuis le répertoire de cache (ou les répertoires) des sites ArcGIS Server dans votre déploiement principal vers le répertoire de cache (ou les répertoires) sur le déploiement de secours.
  10. Copiez les fichiers expfullbackups.properties et expincremental.properties dans l'emplacement du fichier webgisdr.properties sur le déploiement de secours (/arcgis/portal/tools/webgisdr par défaut), puis renommez les fichiers impfullbackups.properties et impincremental.properties, respectivement.
  11. Mettez à jour SHARED_LOCATION, BACKUP_LOCATION (si BACKUP_STORE_PROVIDER est défini sur FileSystem) et PORTAL_ADMIN_URL dans les propriétés pour l’environnement du déploiement de secours.
  12. Planifiez l’exécution de l’outil webgisdr sur les déploiements principal et de secours. Pour ce faire, utilisez une tâche cron. Définissez votre calendrier de sauvegarde et configurez les tâches automatisées pour désigner le fichier de propriétés approprié. Les deux scripts qui vont importer les sauvegardes doivent appeler les fichiers de propriétés que vous avez copiés sur le déploiement de secours.
    Astuce :

    Comme indiqué en introduction, vous devez estimer la durée des sauvegardes complètes et incrémentielles, ainsi que la durée de copie des fichiers de sauvegarde, ajouter une zone tampon temporelle, puis planifier l’exécution de vos scripts en fonction de ces informations.