Skip To Content

Déplacer un répertoire des tâches du service de géotraitement vers le stockage Microsoft Azure

Dans ArcGIS Server 10.7, les administrateurs peuvent déplacer le répertoire des tâches d’un service de géotraitement (ou de plusieurs services de géotraitement) depuis un emplacement sur un disque vers un emplacement de stockage cloud Microsoft Azure. Si les sorties de vos services de géotraitement sont généralement volumineuses, vous pouvez utiliser cette option pour mettre à l’échelle vos ressources de stockage.

Remarque :

Si l’option View output in map image layer (Afficher la sortie dans une couche d’images cartographiques) a été désactivée lors de la publication de l’outil web, vous ne pouvez pas utiliser le stockage cloud comme répertoire des tâches pour le service de géotraitement qui en résulte. Une telle modification entrainera la corruption du service.

Préparer l’environnement Azure

Vous avez besoin d’un compte Microsoft Azure pour créer un compte de stockage et des conteneurs Blob et des tables.

Créer un compte de stockage Azure

Le compte de stockage doit répondre aux conditions requises suivantes :

  • Un compte de stockage aux performances standard est requis.
  • Il doit s’agir d’un compte à usage général v2 (recommandé) ou v1. Les comptes de stockage Blob, Block Blob et de fichiers Azure ne sont pas pris en charge.
  • Le niveau d’accès chaud est recommandé.
  • Il est possible d’ajuster d’autres paramètres avancés du compte de stockage selon les besoins de votre organisation.

Une fois le compte de stockage déployé, copiez l’élément key1 des clés d’accès de votre compte de stockage, élément nécessaire à l’inscription du compte en tant que répertoire cloud auprès d’ArcGIS Server.

Créer une table et un conteneur BLOB

Créez une table et un conteneur BLOB dans le même compte de stockage. Le service de géotraitement ne peut pas les identifier s’ils se trouvent dans des comptes de stockage différents.

Vous devez également créer une file d’attente unique pour chaque service de géotraitement asynchrone. Ajoutez "jobsStoreQueue":"<name of the queue>" à serviceProperties pour chaque service.

Notez le nom exact du conteneur, de la table et des files d’attente facultatives que vous créez ; vous les utiliserez aux étapes suivantes.

Déplacer le répertoire des tâches vers Azure

Une fois la table et le conteneur blob Azure déployés, inscrivez le conteneur blob dans ArcGIS Server et modifiez les propriétés du service en conséquence.

  1. Connectez-vous au répertoire d’administrateur ArcGIS Server et accédez à Inscrire l’élément
  2. Fournissez les informations de connexion de votre conteneur Blob et votre table Azure en tant que JSON. Consultez l’exemple ci-dessous.
  3. Revenez à la page d’accueil du répertoire administrateur et cliquez sur Services.
  4. Localisez le service de géotraitement que vous souhaitez configurer afin qu’il utilise le conteneur Blob Azure et cliquez sur son nom, puis sur edit (mettre à jour).
  5. Dans la représentation JSON du service, ajoutez les paires de clés suivantes avec un nouvel serviceId unique, le nom de votre stockage cloud et la file d’attente de ce service :

    
      "serviceId": "<a unique service ID>",
      "jobQueueStore":"/cloudStores/<name of your cloud store>",
      "jobTableStore": "/cloudStores/<name of your cloud store>",
      "outputStore": "/cloudStores/<name of your cloud store>",
      "jobObjectStore": "/cloudStores/<name of your cloud store>",
      "jobsStoreQueue": "<name of the queue>",
    Conseil :

    Le nom du répertoire cloud figure à la fin de l’extrémité de l’URL de l’élément de données dans le répertoire administrateur.

  6. Cliquez sur Save Edits (Enregistrer les mises à jour) pour confirmer. Le service de géotraitement redémarre automatiquement, ce qui prend un moment.
  7. Si vous configurez plusieurs services de géotraitement afin qu’ils utilisent le conteneur Blob Azure comme répertoire des tâches, répétez les étapes 4 à 6 pour chaque service.

Exemple JSON

Dans cet exemple, remplacez les valeurs dataname, myaccountkey, storageaccountname, containername, optionalfoldername et tablename par vos artefacts.

Inscrire l’élément

{
    "path": "/cloudStores/dataname",
    "type": "cloudStore",
    "provider": "azure",
    "info": {
      "isManaged": false,
      "connectionString": {
           "accountKey":"myaccontkey",
           "accountName":"mystorageaccountname",
           "defaultEndpointsProtocol":"https",
           "accountEndpoint":"core.windows.net",
           "credentialType":"accessKey"
           },
      "objectStore": "containername/optionalfoldername",
      "tableStore":"tablename"
    }
  }

Mettez à jour le JSON des propriétés de votre service de géotraitement en ajoutant les paires de valeurs de clés requises à l’étape 5 ci-dessus.

Mettez à jour GPServer.

{
 "serviceName": "myGPService1",
<... removed to save space ...>
  "resultMapServer": "false",
  "maximumRecords": "1000",
  "virtualOutputDir": "/rest/directories/arcgisoutput",
<... below is the new key-values needed ...>
  "serviceId": "this_is_a_unique_serviceid",
  "jobQueueStore":"/cloudStores/azure",
  "jobTableStore": "/cloudStores/azure",
  "outputStore": "/cloudStores/azure",
  "jobObjectStore": "/cloudStores/azure",
  "jobsStoreQueue": "this_is_a_unique_queue_name",
<... end of new key-values needed ...>
  "portalURL": "https://domain/webadaptor/",
  "toolbox":  <... removed to save space ...>
 },
 "portalProperties": < ...removed to save space... >,
 "extensions": < ...removed to save space... >,
 "frameworkProperties": {},
 "datasets": []
}