Puede publicar servicios de generación de rutas en ArcGIS Enterprise en Kubernetes basándose en un dataset de red que modele sus datos de calles. Una vez publicados, los servicios de generación de rutas se pueden utilizar con varias aplicaciones, como ArcGIS Pro, o para obtener indicaciones y realizar análisis en Map Viewer Classic. También puede escribir aplicaciones utilizando las API Web de ArcGIS y los Runtime SDK que utilizan estos servicios de generación de rutas.
Para publicar servicios de generación de rutas, debe ejecutar la herramienta web Publicar servicios de generación de rutas que forma parte del servicio de geoprocesamiento PublishingTools en ArcGIS Enterprise en Kubernetes. La herramienta crea todos los servicios de generación de rutas en función de su dataset de red y los registra como servicios de utilidades en su portal corporativo para que diversas aplicaciones descubran y utilicen estos servicios de generación de rutas.
Antes de ejecutar la herramienta web, asegúrese de que el dataset de red utilizado para publicar servicios de generación de rutas esté accesible para todos los nodos de la implementación. Puede hacerlo almacenando la geodatabase de archivos o la geodatabase móvil que contiene el dataset de red en una carpeta registrada como data store de carpeta para su implementación o agregando un elemento de data store de base de datos para la geodatabase corporativa en la que se almacena el dataset de red. También debe obtener un token para un usuario con privilegios administrativos que sea válido durante 60 minutos o más.
Ejemplo de flujo de trabajo
En esta sección se describe cómo publicar servicios de generación de rutas mediante un dataset de red en una geodatabase de archivos. Los pasos hacen referencia a determinadas rutas de datos y direcciones URL que serán diferentes cuando publique directamente servicios de generación de rutas. Reemplace las rutas de datos y direcciones URL mostradas en función de su implementación.
Los pasos hacen referencia a una implementación de ArcGIS Enterprise en Kubernetes que se ejecuta en https://dev0017162.esri.com/arcgis. Los servicios de generación de rutas se publican desde un dataset de red denominado Routing_ND, incluido en un dataset de entidades llamado Routing en una geodatabase de archivos denominada NorthAmerica.gdb.
- Inicie sesión en el Directorio de servicios de la implementación (por ejemplo, https://dev0017162.esri.com/arcgis/rest/services) con las credenciales de la cuenta de administrador principal.
- Vaya al extremo Publishing Routing Services del servicio de geoprocesamiento PublishingTools de la carpeta del sistema (por ejemplo,https://dev0017162.esri.com/arcgis/rest/services/System/PublishingTools/GPServer/Publish%20Routing%20Services).
- Haga clic en el vínculo Enviar trabajo en la parte inferior de la página.
- En el formulario web Enviar trabajo, haga lo siguiente:
- Para el parámetro networkDataset, especifique el valor como JSON que contiene las propiedades "datastoreId" y "path". El valor "datastoreId" es el Id. del elemento de data store que hace referencia al espacio de trabajo del dataset de red y se crea al configurar las carpetas compartidas durante la creación de la organización de ArcGIS Enterprise. El valor de "path" es la ruta relativa al dataset de red en el data store. Por ejemplo, si la ruta de catálogo del dataset de red en una geodatabase de archivos del recurso compartido de archivos es /net/data/NorthAmerica.gdb/Routing/Routing_ND y su elemento de data store con Id. 3eba512c2a0841d5adcc4c83029d8bf6 hace referencia a /net/data, el valor del parámetro debería especificarse como sigue:
{ "datastoreId": "3eba512c2a0841d5adcc4c83029d8bf6", "path": "/NorthAmerica.gdb/Routing/Routing_ND" }
- No especifique ningún valor para el parámetro networkDatasetExtents.
- Para el parámetro serviceFolder, especifique un nombre para la carpeta de servidor que contendrá todos los servicios de generación de rutas creados por esta herramienta.
- Para el parámetro solverTypes, elija el valor predeterminado, ya que especifica que la herramienta creará servicios de generación de rutas para todos los solucionadores de Network Analyst.
- No especifique ningún valor para el parámetro configFile.
- Para el parámetro authenticationInfo, especifique la información de autenticación, como el token que se va a utilizar para publicar los servicios. Especifique el valor para este parámetro como JSON que contenga la propiedad "token" y, opcionalmente, una propiedad "referer" que contenga el valor de referencia especificado al generar el token.
Precaución:
Si no se especifica ningún valor para el parámetro authenticationInfo, la herramienta utiliza el token del usuario que inició sesión en el Directorio de servicios. En la mayoría de los casos, este token caducará antes de que la herramienta finalice la ejecución y produzca un fallo de la herramienta.
Para obtener un token, llame a la operación Generar token de su portal corporativo. Examine el extremo de token generado para su portal corporativo (por ejemplo, https://dev0017162.esri.com/arcgis/sharing/rest/generateToken) y genere un token que sea válido durante un día especificando los siguientes valores en el formulario web Generar token:
- Username: nombre de usuario del administrador principal.
- Password: contraseña del usuario administrador principal.
- Client: seleccione la opción URL de aplicación web y especifique la dirección URL del portal corporativo (por ejemplo, https://dev0017162.esri.com/arcgis).
- Expiration:1 día.
- Format:JSON
Haga clic en el botón Generar token. Esto generará un JSON que tendrá un aspecto similar a
Resultado de Generar token
{ "token": "Ci4vgz18Vto2bK7mXVXLOE3XREXmt4sUI-QR60jApa0-Abr9UDZCWtnphxXKcQwJzh6RnHfxnkuIqQtLMVRK5OMXuFEK2E_AQtQMfTldvMagR1pPnWCPXms13QR_kMaLo_gh9gxAAi3t7xfE8RY7xPUIY5cuqGYP-WxWRp_IUgJD29FOXvVtLLisTu1THMpF-g0hlc3W5wJJ67SHGGqm8w.D", "expires": 1635360389770, "ssl": true }
El valor del parámetro authenticationInfo es el JSON obtenido al ejecutar la operación Generate Token con la propiedad "referer" agregada al JSON. Por ejemplo, si especificó https://dev0017162.esri.com/arcgis como valor de URL de aplicación web al generar el token, el JSON correspondiente al valor del parámetro authenticationInfo debe ser el siguiente:
Valor de ejemplo del parámetro authenticationInfo
{ "token": "Ci4vgz18Vto2bK7mXVXLOE3XREXmt4sUI-QR60jApa0-Abr9UDZCWtnphxXKcQwJzh6RnHfxnkuIqQtLMVRK5OMXuFEK2E_AQtQMfTldvMagR1pPnWCPXms13QR_kMaLo_gh9gxAAi3t7xfE8RY7xPUIY5cuqGYP-WxWRp_IUgJD29FOXvVtLLisTu1THMpF-g0hlc3W5wJJ67SHGGqm8w.D", "expires": 1635360389770, "ssl": true, "referer": "https://dev0017162.esri.com/arcgis" }
Precaución:
El JSON especificado como valor del parámetro authenticationInfo debe incluir la propiedad "referer" que coincida con el valor de URL de aplicación web al generar el token. De lo contrario, la herramienta Publicar servicios de generación de rutas fallará con un error de token no válido.
- Haga clic en el botón Enviar trabajo (POST).
Se inicia la ejecución de la herramienta Publicar servicios de generación de rutas. La herramienta puede tardar hasta una hora en terminar. Para supervisar el progreso de la herramienta mientras se está ejecutando, haga clic de nuevo en el vínculo Volver a comprobar los detalles del trabajo para ver los últimos mensajes de estado. Utilice el valor de Id. de trabajo para la ejecución de la herramienta con el fin de comprobar el estado y los resultados yendo a la dirección URL (por ejemplo, https://dev0017162.esri.com/arcgis/rest/services/System/PublishingTools/GPServer/Publish%20Routing%20Services/jobs/jd891ca3b935d4ed9a6fd38646d31a99c).
- Para el parámetro networkDataset, especifique el valor como JSON que contiene las propiedades "datastoreId" y "path". El valor "datastoreId" es el Id. del elemento de data store que hace referencia al espacio de trabajo del dataset de red y se crea al configurar las carpetas compartidas durante la creación de la organización de ArcGIS Enterprise. El valor de "path" es la ruta relativa al dataset de red en el data store. Por ejemplo, si la ruta de catálogo del dataset de red en una geodatabase de archivos del recurso compartido de archivos es /net/data/NorthAmerica.gdb/Routing/Routing_ND y su elemento de data store con Id. 3eba512c2a0841d5adcc4c83029d8bf6 hace referencia a /net/data, el valor del parámetro debería especificarse como sigue:
Una vez finalizada la herramienta, los servicios de generación de rutas se publican y configuran como servicios de utilidades en su portal corporativo. Asigne los recursos adecuados a los servicios de generación de rutas en función del uso previsto en su organización.