Skip To Content

Mover un directorio de trabajos del servicio de geoprocesamiento al almacenamiento de Microsoft Azure

En ArcGIS Server 10.7, los administradores pueden trasladar el directorio de trabajos de un servicio de geoprocesamiento (o varios servicios de geoprocesamiento) desde una ubicación en el disco a una ubicación de almacenamiento en la nube de Microsoft Azure. Si los resultados de sus servicios de geoprocesamiento suelen ser grandes, puede usar esta opción para escalar sus recursos de almacenamiento.

Nota:

Si la opción Muestra la salida en la capa de imágenes del mapa estaba activada cuando publicó la herramienta web, no puede usar el almacenamiento en la nube como directorio de trabajos del servicio de geoprocesamiento resultante. El servicio se dañará cuando efectúe el cambio en este flujo de trabajo.

Preparar el entorno de Azure

Necesita una cuenta de Microsoft Azure para crear una cuenta de almacenamiento y tablas y contenedores Blob.

Crear una cuenta de almacenamiento de Azure

La cuenta de almacenamiento debe cumplir estos requisitos:

  • Se requiere una cuenta de almacenamiento con rendimiento estándar.
  • Dicha cuenta puede ser v2 general (recomendado) o v1 general. Las cuentas de almacenamiento BLOB, almacenamiento Blob en bloques y almacenamiento de archivos de Azure no son compatibles.
  • Se recomienda el nivel de acceso frecuente.
  • Es posible configurar otros ajustes avanzados de la cuenta de almacenamiento en función de las necesidades de su organización.

Una vez implementada la cuenta de almacenamiento, copie la key1 de las claves de acceso de su cuenta de almacenamiento, necesaria al registrar la cuenta como almacén en la nube con ArcGIS Server.

Crear una tabla y un contenedor BLOB

Cree una tabla y un contenedor BLOB en la misma cuenta de almacenamiento. El servicio de geoprocesamiento no puede identificarlos si se encuentran en cuentas de almacenamiento distintas.

También es necesario crear una cola única para cada servicio de geoprocesamiento asíncrono. Agregue "jobsStoreQueue":"<name of the queue>" a serviceProperties para cada servicio.

Anote el nombre exacto del contenedor, la tabla y las colas opcionales que crea; los utilizará en los siguientes pasos.

Mover el directorio de trabajos a Azure

Tras implementar la tabla y el contenedor Blob de Azure, registre el contenedor Blob en ArcGIS Server y cambie las propiedades del servicio como corresponda.

  1. Inicie sesión en el Directorio de administrador de ArcGIS Server y vaya a Registrar elemento
  2. Proporcione la información de conexión de su tabla y contenedor Blob de Azure como JSON. Haga referencia a los ejemplos que aparecen a continuación.
  3. Vuelva a la página de inicio del Directorio de administrador y haga clic en Servicios.
  4. Localice el servicio de geoprocesamiento que desea configurar para que use el contenedor Blob de Azure, haga clic en el nombre del servicio y, por último, haga clic en Editar.
  5. En la representación JSON del servicio, agregue los siguientes pares de claves con un nuevo símbolo único serviceId, el nombre del almacén en la nube y la cola de ese servicio:

    
      "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>",
    Sugerencia:

    El nombre del almacén en la nube está al final del extremo de la URL del elemento de datos en el Directorio de administrador.

  6. Haga clic en Guardar cambios para confirmar. El servicio de geoprocesamiento se reinicia automáticamente, lo que tarda unos segundos.
  7. Si va a configurar varios servicios de geoprocesamiento para que usen el contenedor Blob de Azure como su directorio de trabajos, repita los pasos del 4 al 6 para cada servicio.

Ejemplo de JSON

En este ejemplo, sustituya dataname, myaccountkey, storageaccountname, containername, optionalfoldername y tablename con sus artefactos.

Registrar elemento

{
    "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"
    }
  }

Cambie el JSON de las propiedades del servicio de su servicio de geoprocesamiento agregando pares de valores clave requeridos en el paso 5 anterior.

Edite 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": []
}