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, sin cambiar otros directorios del servidor. 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.

Tome nota del nombre exacto de la tabla que cree, pues lo usará en ArcGIS Server.

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 ArcGIS Server Manager y registre el contenedor BLOB de su cuenta de almacenamiento con el servidor.
  2. Cuando se haya registrado el contenedor BLOB como almacén en la nube, vincúlelo a su tabla de Azure con la API REST. Inicie sesión en el Directorio de administrador de ArcGIS Server en https://gisserver.domain.com:6443/arcgis/admin.
  3. Vaya a data > items > /CloudStores, localice su nuevo contenedor BLOB y haga clic en Editar para abrir el extremo de Editar elemento de datos.
  4. En la representación JSON del elemento, agregue el siguiente par de claves con el nombre de la tabla de Azure:

    "tableStore":"<name of Azure table>"

  5. Haga clic en Actualizar para confirmar.
  6. Vuelva a la página de inicio del Directorio de administrador y haga clic en Servicios.
  7. Localice el servicio de geoprocesamiento (o uno de los servicios) 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.
  8. En la representación JSON del servicio, ubique y edite el siguiente par de claves con el nombre de su almacén en la nube:

    "jobsDirectory":"/cloudStores/<name of your cloud store>"
    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.

  9. Haga clic en Guardar cambios para confirmar.
  10. 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 9 para cada servicio.

Ejemplo de JSON

En este ejemplo, la cuenta de Azure tiene una cuenta de almacenamiento llamada mystorageaccount y hay un contenedor BLOB llamado myblob y una tabla llamada mytable en dicha cuenta de almacenamiento. La key1 de mystorageaccount es thisisafakekey12345. Quiere que su servicio de geoprocesamiento, myGPService1, use el almacenamiento de Azure para su directorio de trabajos.

Durante el proceso de registro, el Nombre de almacén en la nube es azureblob.

Al editar las propiedades del almacén en la nube, el JSON cambia y se agrega "tableStore": "mytable" al final.

Edite el elemento de datos.

{
  "path": "/cloudStores/azureblob",
  "type": "cloudStore",
  "id": "31245-abcde...",
  "provider": "azure",
  "info": {
    "isManaged": false,
    "connectionString": "abc/def/ghi/jkl/lmn/opq",
    "objectStore": "myblob",
    "tableStore": "mytable"
  }
}

A continuación, cambie el JSON de las propiedades de servicio de su servicio de geoprocesamiento agregando "jobsDirectory": "/cloudStores/azureblob", después de "virtualOutputDir": "/rest/directories/arcgisoutput",.

Edite GPServer.

{
 "serviceName": "myGPService1", <... removed to save space ...>
  "resultMapServer": "false",  "maximumRecords": "1000",  "virtualOutputDir": "/rest/directories/arcgisoutput",  "jobsDirectory": "/cloudStores/azureblob",  "portalURL": "https://domain/webadaptor/",  "toolbox":  <... removed to save space ...>
 }, "portalProperties": < ...removed to save space... >, "extensions": < ...removed to save space... >, "frameworkProperties": {}, "datasets": []
}