Skip To Content

Implementación en un solo equipo de alta disponibilidad (activo-activo)

Esta configuración es una variación de la implementación en un solo equipo de alta disponibilidad (activo-pasivo), donde el equilibrador de carga está configurado para repartir la carga en todos los sitios en todo momento. En esta configuración, no hay sitios en espera.

En esta arquitectura, se configuran dos o más sitios detrás de un equilibrador de carga de terceros para incrementar la capacidad de la implementación de ArcGIS Server. Puede utilizar esta técnica para ajustar algunas de las limitaciones de alta disponibilidad descritas en la implementación en un solo equipo y en los escenarios de implementación en un solo equipo con un servidor proxy inverso o ampliar agregando más equipos.

Aunque se puede ampliar y conseguir una alta disponibilidad utilizando sitios con varios equipos, hay desventajas y limitaciones en las implementaciones activo-activo que se abordan en este tema.

Implementación activo-activo con dos sitios
Implementación activo-activo con dos sitios. Los administradores conectan con cada sitio por separado. Ambos sitios tienen una copia idéntica de los directorios del servidor y del almacén de configuración.

En un nivel alto, la idea que subyace a la arquitectura activo-activo en un solo equipo es clonar un sitio en un solo equipo y colocar instancias independientes del mismo detrás de un equilibrador de carga. Técnicamente, esta configuración no se puede describir como un sitio de varios equipos, ya que cada uno de los sitios es independiente del otro, está compuesto por un solo equipo de ArcGIS Server y tiene su almacén de configuración local y sus directorios de servidor propios.

Las implementaciones de un sitio de ArcGIS Server en varios equipos simplifica enormemente la administración del servidor. Sin embargo, la arquitectura activo-activo puede utilizarse en escenarios donde el número y los ajustes de servicios está bien definido, se mantiene estático y puede ofrecer importantes ventajas de rendimiento con respecto a los sitios de varios equipos, especialmente en los servicios de mapas almacenados en caché.

Equipos de ArcGIS Server, directorios de servidor y almacén de configuración

Cada equipo de ArcGIS Server debe tener su propio almacén de configuraciones local y directorios de caché, de trabajos y de sistema. De este modo se garantiza el máximo rendimiento y se mantienen las interdependencias en el mínimo. Por el contrario, el directorio (o directorios) de salida debe compartirse entre los sitios. Para obtener más información, consulte Otras consideraciones a continuación.

Datos

Aplique aquí las mismas consideraciones que se han descrito en la implementación en un solo equipo de alta disponibilidad (activo-pasivo).

Servidor proxy inverso

En esta configuración, se requiere un equilibrador de carga de terceros. Como mínimo, este componente distribuye la carga entre todos los sitios. Los equilibradores de carga tienen distintas configuraciones para distribuir la carga, como la operación por turnos y las conexiones mínimas. La selección de la distribución de carga adecuada depende de los servicios web que esté ejecutando en los sitios de ArcGIS Server y de sus patrones de uso. Los equilibradores de carga también aprovechan normalmente distintas opciones para manejar los fallos. Por ejemplo, puede aplicar reglas en el equilibrador de carga para evitar que este reenvíe solicitudes a un equipo que no está disponible debido a un fallo de hardware o de red o a un determinado servicio de ArcGIS Server que no está disponible. Si utiliza sitios en un solo equipo como se propone en este patrón, se garantiza que las solicitudes enviadas a un equipo concreto las manejará ese equipo.

Normalmente, el propio equilibrador de carga también cumple la función de servidor proxy inverso descrita en Implementación en un solo equipo con un servidor proxy inverso. En algunos escenarios, puede que ya tenga configurado un servidor proxy inverso aparte del equilibrador de carga.

Si su equilibrador de carga de red admite una función de verificación de estado, puede utilizar el extremo de verificación de estado de ArcGIS Server para determinar si el sitio está disponible para recibir solicitudes. Esto resulta útil para determinar rápidamente si hay un fallo de software o hardware en el sitio. Para obtener más información, consulte Verificación de estado en la API REST de ArcGIS.

El uso de ArcGIS Web Adaptor es opcional y normalmente solo es necesario en este escenario si desea aprovechar la autenticación de nivel web. Puede optar por configurarlo en el mismo equipo que ArcGIS Server o puede configurarlo en un equipo dedicado. En cualquier caso, si utiliza ArcGIS Web Adaptor, debe configurar un ArcGIS Web Adaptor independiente para cada sitio.

Otras consideraciones

Mantener los servicios de los sitios en sincronía

A diferencia de un verdadero sitio en varios equipos, esta configuración requiere que todos los sitios detrás del equilibrador de carga alojen exactamente el mismo contenido y sigan el mismo modelo de seguridad. Es responsabilidad suya asegurarse de que todos los sitios parecen exactamente el mismo para el equilibrador de carga.

Hay varias técnicas que pueden ayudarle a mantener los servicios de ArcGIS Server sincronizados entre los sitios principales y los de conmutación por error:

  • Secuencia de comandos: ArcGIS Server incluye una API RESTful administrativa que puede utilizar para programar tareas administrativas como, por ejemplo, publicar servicios y cambiar su configuración de seguridad. Puede crear sus propios scripts para aplicar cambios a todos los equipos de ArcGIS Server incluidos en su implementación de modo coherente. La secuencia de comando es especialmente útil cuando es necesario hacer pequeños ajustes, como cambiar la seguridad de un servicio o sobrescribirlo. Para obtener más información, consulte Administración de ArcGIS Server mediante secuencias de comandos.
    Nota:

    No utilice un script para crear el sitio inicial. Cree manualmente el primer sitio en una imagen de máquina virtual y escriba un script para la creación de sitios adicionales a partir de esta imagen base. Crear todas las máquinas a partir de la misma imagen de máquina virtual garantiza que todas las máquinas utilicen la misma clave de cifrado.

  • Virtualización: cree una plantilla de máquina virtual y úsela para lanzar nuevos sitios. Como ya se ha mencionado, de esta forma se garantiza que todas las máquinas utilicen la misma clave de cifrado. Además, cada plantilla tendrá una copia de los datos necesarios para los servicios SIG (a menos que se utilice una base de datos) y todos los servicios publicados y configurados. Si es necesario hacer cambios, por ejemplo, agregar o actualizar servicios existentes, cree una nueva plantilla para lanzar otras máquinas virtuales que sustituirían al grupo de equipos de ArcGIS Server existente que utiliza el equilibrador de carga. También puede utilizar plantillas de máquina virtual para recuperar equipos de ArcGIS Server obsoletos.

El procedimiento recomendado para aplicar cambios a los sitios en este patrón de implementación es el siguiente:

  1. Realice cambios administrativos primero en un sitio que esté en modo de espera. Por ejemplo, agregue un nuevo servicio y cambie la seguridad de otro en un sitio que no esté gestionando solicitudes activamente. Con ello se garantiza que las aplicaciones que utilizan el sitio principal no se vean afectadas.
  2. Configure manualmente el equilibrador de carga para pasar todas las solicitudes al sitio en espera en el que se han realizado los cambios.
  3. Aplique los mismos cambios al sitio inactivo.
  4. Revierta el equilibrador de carga de modo que las solicitudes vuelvan a dirigirse al sitio principal original y deje el sitio en espera en modo de espera.

Los cambios del sitio que se han descrito en el procedimiento anterior pueden aplicarse manualmente mediante ArcGIS Server Manager, scripts o imágenes virtuales.

Compartir el directorio de salida

Algunas operaciones de servicios de ArcGIS Server utilizan como referencia los recursos de uno o varios directorios de salida. Por ejemplo, los servicios de mapas pueden escribir imágenes en un directorio de salida y hacer referencia a ellas a través de una URL en la respuesta a la solicitud. Para que los clientes obtengan correctamente la imagen, todos los sitios de su configuración activo-activo deben hacer referencia al mismo directorio de salida. Esto se consigue colocando los directorios de salida en un recurso de red y compartiéndolos con los sitios.

A continuación, se proporciona una lista de las operaciones de servicio que utilizan directorios de salida:

Ejecución asíncrona de los servicios de geoprocesamiento

Los servicios de geoprocesamiento de ArcGIS Server admiten dos modos de ejecución: síncrona y asíncrona. La ejecución síncrona sigue un patrón de solicitud-respuesta sin estado y es totalmente compatible con una configuración activo-activo. La ejecución asíncrona sigue un patrón de solicitud-respuesta con estado y es la opción predeterminada. Para utilizar una ejecución asíncrona en una configuración activo-activo, debe tener en cuenta lo siguiente:

  • Al enviar un trabajo de geoprocesamiento asíncrono, se le devuelve un Id. de trabajo que utiliza como referencia el trabajo enviado y sus resultados. Solo el sitio de ArcGIS Server que recibe el original puede reconocer este Id. Por este motivo, la configuración activo-activo le exige definir la afinidad del equilibrador de carga (también conocido como sesiones permanentes) si va a utilizar la ejecución asíncrona. Esto ayuda a proporcionar una alta disponibilidad para las salidas de servicio de mapas y el geoprocesamiento asíncrono. Consulte la información del proveedor del equilibrador de carga para conocer las consecuencias de habilitar sesiones permanentes.
  • Si su servicio de geoprocesamiento no utiliza servicios de mapas para generar salidas y no se han definido salidas del tipo "Archivo", puede seleccionar la ejecución síncrona para sus servicios de geoprocesamiento. No se necesitan sesiones permanentes en el equilibrador de carga.

Utilizar la seguridad basada en token

Si se utiliza la autenticación basada en token, también denominada autenticación de nivel de SIG, es importante que todos los sitios de esta configuración utilicen exactamente la misma clave de token compartida. De lo contrario, los token generados para un equipo no son válidos cuando se utilizan en otro equipo. Para obtener información sobre cómo duplicar las claves de token compartidas en varios sitios, consulte Acerca de los tokens de ArcGIS y Editar la configuración de token en el Administrador.

Ventajas

  • Conceptualmente sencillo. Las interdependencias mínimas entre los equipos de ArcGIS Server hacen que sea fácil sustituir equipos defectuosos u obsoletos, aplicar actualizaciones o agregar y quitar equipos del grupo de ArcGIS Server según sea necesario sin interrumpir los servicios ni anular solicitudes.
  • Si las teselas de mapa están almacenadas localmente en cada equipo, esta configuración ofrece importantes ventajas de rendimiento en comparación con los sitios de varios equipos. De hecho, esta configuración es ideal si su objetivo es incrementar la capacidad de servicios de mapas almacenados en caché.

Desventajas

  • Es responsabilidad suya mantener todos los sitios en sincronía. Esto agrega una carga administrativa que puede hacer que este patrón de implementación no sea práctico en los casos en los que hay muchos equipos o servicios/cachés que cambian frecuentemente.
  • Requiere conocimiento de los equilibradores de carga de terceros.