Es posible configurar varias propiedades para modificar los ajustes de GeoAnalytics Server en su implementación. La configuración de estos ajustes para su organización es importante para optimizar el rendimiento de GeoAnalytics Server. Cuando configure estos ajustes, debe tener en cuenta los siguientes factores:
- El número de trabajos que se pueden ejecutar simultáneamente
- El tamaño de los datos que se están usando
- La frecuencia de ejecución de los trabajos
- Los recursos disponibles
Las GeoAnalytics Tools que ejecutan los miembros del portal funcionan gracias al servicio de sistema GeoAnalyticsTools de su sitio de ArcGIS Server. Las siguientes propiedades de sistema se establecen en el sitio de GeoAnalytics Server, mientras que las propiedades del servicio y el número de instancias se establecen en el mismo servicio de sistema GeoAnalyticsTools. Antes de modificar algún parámetro, lea todas las opciones de configuración para planificar la configuración de GeoAnalytics.
Precaución:
Cuando actualiza a una nueva versión de ArcGIS Enterprise, estos ajustes de GeoAnalytics Server no se conservan. Antes de actualizar, anote los ajustes que haya modificado y vuelva a implementarlos una vez completada la actualización.
En este tema se utilizan los siguientes ejemplos:
- Ejemplo 1: Un sitio de GeoAnalytics Server con tres equipos que ejecutará simultáneamente un único trabajo
- Ejemplo 2: Un sitio de GeoAnalytics Server con tres equipos que ejecutará simultáneamente dos trabajos
Ambos ejemplos incluyen tres equipos (nodos), cada uno con 16 GB de RAM y 4 núcleos CPU. En total, cada sitio GeoAnalytics Server cuenta con 48 GB de RAM y 12 núcleos.
Nota:
Se recomienda no asignar a GeoAnalytics más de 30 GB de memoria por equipo.
Propiedades del sistema
Las siguientes propiedades opcionales las puede configurar un administrador del sitio para asignar recursos de CPU y memoria para el proceso de trabajador de la plataforma de cálculo en cada equipo del sitio de ArcGIS Server:
- percentageMaxAllowedComputeCores: representa el número máximo de núcleos de CPU (como un porcentaje del total disponible en un equipo) que el proceso de trabajador de la plataforma de cálculo utilizará en un único nodo. El valor predeterminado es el 80 por ciento y el máximo permitido es el 90 por ciento. Si el valor especificado se traduce en menos de un único núcleo de CPU, se utilizará un único núcleo de CPU para el proceso de trabajador de la plataforma de cálculo.
- percentageMaxAllowedComputeMemory: representa la memoria máxima (como un porcentaje de la memoria total disponible en un equipo) que el proceso de trabajador de la plataforma de cálculo utilizará en un único nodo. El valor predeterminado es el 80 por ciento y el máximo permitido es el 90 por ciento.
Para editar las propiedades del sistema, complete los siguientes pasos:
- Inicie sesión en el Directorio del administrador de ArcGIS Server como usuario con privilegios administrativos. La dirección URL tiene el formato http://gisserver.domain.com:6080/arcgis/admin/.
- Vaya a Sistema > Propiedades.
- Haga clic en Actualizar.
- Agregue las propiedades en el siguiente formato JSON: { "percentageMaxAllowedComputeCores": <value>, "percentageMaxAllowedComputeMemory": <value>} (por ejemplo, {"percentageMaxAllowedComputeCores": 90, "percentageMaxAllowedComputeMemory": 90}).
Propiedades del servicio
Existen dos propiedades de nivel de servicio en el servicio de GeoAnalyticsTools para asignar la cantidad máxima permitida de memoria y núcleos de CPU por trabajo. El valor se establece en 6 GB por equipo y 4 núcleos de CPU. Se recomienda que los actualice a un valor adecuado en función de los recursos de memoria y CPU disponibles en el sitio. El uso del valor predeterminado no se beneficia de la computación distribuida y tendrá como resultado un rendimiento deficiente.
Nota:
Solo los administradores pueden establecer propiedades de nivel de servicio. Es necesario conocer el número de núcleos de su sitio de servidor, así como la cantidad de memoria RAM de cada equipo. Si no conoce estos valores, puede utilizar la verificación de estado de GeoAnalytics para averiguarlos.
Más información sobre la verificación de estado de GeoAnalytics
Es posible usar la siguiente ecuación para obtener una estimación del número máximo de núcleos permitidos para cada trabajo:
Floor(((percentageMaxAllowedComputeCores) * (total cores on the Server Site) / (number of simultaneous jobs)) = (Maximum allowed compute cores per job)
Es posible usar la siguiente ecuación para obtener una estimación de la memoria máxima permitida para cada trabajo y equipo:
Floor((percentageMaxAllowedComputeMemory) * (GB of RAM on a single GeoAnalytics machine) / (number of simultaneous jobs)) = (Maximum allowed memory per job per machine)
Nota:
La cantidad de memoria utilizada por cada equipo es la misma en todos los equipos de GeoAnalytics Server. Si tiene varios equipos en su sitio de GeoAnalytics Server con distintas cantidades de RAM, utilice el valor del equipo que tenga la RAM más pequeña.
Para el ejemplo 1, suponga que desea usar hasta el 80 por ciento de los núcleos de cálculo y la memoria de cálculo disponibles (tal como se describe en Propiedades del sistema). Con un total de 12 núcleos de CPU y 48 GB de RAM en el sitio (16 en cada equipo), la cantidad de núcleos y de RAM se decide mediante las ecuaciones que aparecen a continuación.
- Número de núcleos:
Floor(((.80) * (12))/1) = Floor(9.6) = 9
- Cantidad de RAM por cada equipo:
Floor(((.80) * (16))/1) = Floor(12.8) = 12
Para beneficiarse de los recursos disponibles en GeoAnalytics Server y distribuir la tarea en distintos equipos del sitio, puede actualizar los valores a los siguientes:
- Máximo de memoria permitida por trabajo y máquina (GB): 12
- Máximo de núcleos de cálculo permitidos por trabajo (CPU): 9
Esto garantiza que el trabajo se distribuirá a los tres equipos del sitio y usará poco menos del 80 por ciento de los recursos disponibles en todos los equipos. La asignación establecida influirá en el número de instancias de la manera descrita a continuación.
Para el ejemplo 2, suponga que desea usar hasta el 80 por ciento de los núcleos de cálculo y la memoria de cálculo disponibles (tal como se describe en Propiedades del sistema) y ejecutar dos trabajos a la vez. Esto significa que es necesario establecer los recursos para dos trabajos en todo momento. Con un total de 12 núcleos de CPU y 48 GB de RAM en el sitio (16 GB en cada equipo), la cantidad de núcleos y de RAM se decide mediante las ecuaciones que aparecen a continuación.
- Número de núcleos:
Floor(((.80) * (12))/2) = Floor(4.8) = 4
- Cantidad de RAM por cada equipo:
Floor(((.80) * (16))/2) = Floor(6.4) = 6
Para beneficiarse de los recursos disponibles en GeoAnalytics Server y distribuir la tarea en distintos equipos del sitio, puede actualizar los valores a los siguientes:
- Máximo de memoria permitida por trabajo y máquina (GB): 6
- Máximo de núcleos de cálculo permitidos por trabajo (CPU): 4
Para modificar estas propiedades, haga lo siguiente:
- Inicie sesión en ArcGIS Server Manager en su GeoAnalytics Server como usuario con privilegios de administrador. La dirección URL tiene el formato https://gisserver.domain.com:6443/arcgis/manager.
- En la pestaña Servicios, seleccione la carpeta Sistema.
- En la lista de servicios disponibles, localice y elija para editar el servicio GeoAnalyticsTools.
- Utilice la pestaña Parámetros para establecer las propiedades del servicio. Estas incluyen lo siguiente:
- Máximo de memoria permitida por trabajo y equipo (GB): representa la cantidad de memoria en gigabytes que se puede usar por trabajo y por equipo.
- Máximo de núcleos de cálculo permitidos por trabajo (CPU):: representa el número total de núcleos de CPU que se puede usar por trabajo en todos los equipos del cluster.
- Cuando haya terminado, haga clic en Guardar y reiniciar para actualizar las propiedades del servicio.
Si los valores iniciales no se modifican, una tarea de GeoAnalytics solo usará una parte de los recursos disponibles (4 núcleos y 18 GB de los 12 núcleos disponibles y 48 para la instalación de ejemplo).
Nota:
Cuando seleccione la cantidad de memoria que va a usar, asegúrese de establecer un número que sea inferior o igual al porcentaje definido para los recursos del equipo (el valor predeterminado es el 80 por ciento). Si lo hace, los trabajos esperarán durante un minuto para obtener recursos que en realidad no están disponibles y, a continuación se cancelarán con el siguiente error: ERROR BD_101057: No se puede iniciar el trabajo distribuido. Compruebe la configuración del servicio GeoAnalyticsTools y asegúrese de que haya suficientes recursos disponibles para poder ejecutar el trabajo. También verá este error si los recursos no están disponibles debido a que otros trabajos los están utilizando.
Instancias mínima y máxima del servicio GeoAnalyticsTools
Las instancias mínima y máxima predeterminadas del servicio GeoAnalyticsTools están establecidas en uno por equipo de ArcGIS Server en el sitio. Dependiendo del número de equipos (n) presentes en el sitio de GeoAnalytics Server, existirán (n) número de instancias disponibles para aceptar trabajos de GeoAnalytics. Dependiendo del número de instancias y la cantidad de memoria y núcleos de CPU asignados por trabajo en las propiedades del servicio, es posible que puedan procesarse una o varias solicitudes simultáneas. Cualquier solicitud adicional a GeoAnalytics Tools se pondrá en cola hasta que la instancia o los recursos de memoria y CPU vuelvan a estar disponibles. Si tras un minuto no hay ningún recurso disponible, el trabajo se cancelará.
La asignación de la cantidad máxima de memoria y núcleos de CPU por trabajo es ideal para los trabajos que lo necesiten.
Para procesar varios trabajos al mismo tiempo, puede aumentar la instancia máxima como convenga a más de una por equipo en el sitio. Sin embargo, también deberá modificar los límites de CPU y memoria por trabajo para que existan suficientes recursos de CPU y memoria disponibles para cada trabajo simultáneo.
Para establecer las instancias mínima y máxima predeterminadas del servicio GeoAnalyticsTools, complete los pasos siguientes:
- Inicie sesión en el Directorio del administrador de ArcGIS Server. La dirección URL tiene el formato https://gisserver.domain.com:6443/arcgis/admin.
- Vaya a Servicios > Sistema > GeoAnalyticsTools.
- Haga clic en Editar.
- Edite las propiedades maxInstancesPerNode y minInstancesPerNode y haga clic en Guardar ediciones.
En el ejemplo de tres equipos, habrá en total tres instancias disponibles, que son suficientes para satisfacer los casos de uso del Ejemplo 1 y el Ejemplo 2. Para ejecutar más de tres trabajos simultáneos con este escenario de tres equipos, también debe actualizar el número de instancias además de ajustar los límites de CPU y de memoria.
Los límites totales de CPU y memoria en todas las instancias debería ser inferior al límite de CPU y memoria del sistema. La memoria total por nodo multiplicado por el número de instancia debe ser inferior a los recursos disponibles en un solo equipo —es decir, (16 GB x 0,80) / 2 instancias = 6,4, y debe ser un entero -> 6—, y los núcleos de cálculo deben ser inferiores a los núcleos totales dividido por el número de instancias —es decir, (12 núcleos x 0,80) / 2 instancias = 4,8 -> 4).
Tiempo de espera del servicio GeoAnalyticsTools
De forma predeterminada, todo trabajo de larga duración procesado por el servicio GeoAnalyticsTools se interrumpirá al cabo de 24 horas. Puede editar esta propiedad para que las herramientas se interrumpan cuando se ejecuten durante periodos de tiempo más largos o más cortos. Para editar la propiedad de tiempo de espera para el servicio GeoAnalyticsTools en ArcGIS Server Manager, siga estos pasos.
- Inicie sesión en ArcGIS Server Manager. La dirección URL tiene el formato https://gisserver.domain.com:6443/arcgis/manager.
- En la pestaña Servicios, elija la carpeta Sistema.
- En la lista de servicios disponibles, localice y elija para editar el servicio GeoAnalyticsTools.
- Utilice la pestaña Agrupación para establecer la propiedad del tiempo de espera para el servicio en la sección Especificar tiempos de espera de servicio. Cambie El tiempo máximo que un cliente puede utilizar un servicio al tiempo en segundos que desee para la nueva propiedad de tiempo de espera.
- Haga clic en Guardar y reiniciar para actualizar el servicio.
Ubicación de archivos temporales de GeoAnalytics Server
Cuando se ejecuta una tarea en GeoAnalytics Server, los archivos temporales se describen de forma predeterminada en la carpeta \<ArcGIS Server installation directory>\server\framework\runtime\spark\work>. Los administradores pueden seleccionar una ubicación alternativa para los archivos temporales especificando la propiedad geoAnalyticsTempFolder mediante los pasos indicados a continuación.
Nota:
La ubicación geoAnalyticsTempFolder debe ser un directorio local de cada equipo del sitio de GeoAnalytics Server, y debe contar con un espacio en disco considerable para admitir la ejecución de tareas de GeoAnalytics con datasets muy grandes.
- Inicie sesión en el Directorio de administrador de ArcGIS Server del sitio de GeoAnalytics Server como usuario con privilegios de administrador. La dirección URL tiene el formato http://gisserver.domain.com:6080/arcgis/admin/.
- Vaya a Sistema > Propiedades.
- Haga clic en Actualizar.
- Agregue la propiedad en el siguiente formato JSON: {"geoanalyticsTempFolder": "<value>"} (por ejemplo, {"geoanalyticsTempFolder": "/data/temp"}). El cambio tardará un minuto en reflejarse en la página de propiedades del sistema.
- Verifique el estado de su GeoAnalytics Server con el servicio Computar verificación de estado de plataforma. Vaya a System > Platform Services > Compute_Platform y haga clic en health.