Skip To Content

Implementar un sitio de ArcGIS Server de alta disponibilidad utilizando CloudFormation

La plantilla Esri arcgis-server-ha.template.json Amazon Web Services (AWS) CloudFormation crea un sitio de GIS Server, un sitio de ArcGIS Image Server, ArcGIS GeoAnalytics Server o un sitio de ArcGIS Knowledge Server de alta disponibilidad. Si crea un sitio de ArcGIS GeoAnalytics Server o ArcGIS Knowledge Server, debe federarlo con un portal de ArcGIS Enterprise. Puede federar los otros tipos o utilizarlos como sitios independientes.

Esta plantilla configura las instancias de ArcGIS Server Amazon Elastic Compute Cloud (EC2) en un grupo Escalado automático de AWS, que ofrece ventajas como la planificación de capacidad basada en determinados criterios, una mejor tolerancia a los fallos, una mejor disponibilidad y una mejor gestión de los costes.

Elija una de las siguientes opciones para el almacenamiento del directorio de ArcGIS Server cuando utilice esta plantilla:

  • Utilice el almacenamiento en la nube (Amazon S3 y DynamoDB) para el almacén de configuración y un recurso compartido de archivos (instancia de EC2) para los directorios compartidos.
  • Coloque el almacén de configuración y los directorios compartidos en un servidor de archivos (instancia de EC2).

La recuperación automática se establece para el servidor de archivos; si falla un equipo, los servicios seguirán estando disponibles.

También puede incluir ArcGIS Web Adaptor en cada equipo de ArcGIS Server.

Esta plantilla crea la siguiente arquitectura en Amazon Web Services:

El sitio de ArcGIS Server de alta disponibilidad contiene varios equipos configurados con Escalado automático y el almacén de configuración está en el almacenamiento en la nube

Licencia:

*Algunos iconos de los diagramas de este tema se usan con permiso de Amazon Web Services.

Requisitos previos

Los requisitos previos se pueden agrupar por elementos (como archivos y cuentas) que debe obtener y las tareas que debe realizar antes de ejecutar la plantilla de CloudFormation.

Elementos requeridos

Antes de ejecutar esta plantilla, necesitará lo siguiente:

  • Una cuenta de Amazon Web Services.

    La cuenta debe tener acceso a servicios básicos de AWS, tales como CloudFormation, Amazon Elastic Compute Cloud (EC2), Amazon Virtual Private Cloud (VPC), Amazon Simple Storage Service (S3), Systems Manager, Amazon CloudWatch, Lambda, AWS Identity and Access Management (IAM), Amazon DynamoDB, Secrets Manager, AWS Certificate Manager y Amazon Relational Database Service (RDS).

  • Una licencia de ArcGIS Server. Los archivos de licencia deben incluir el rol de licencia de servidor que necesite: ArcGIS GIS Server, ArcGIS Image Server, ArcGIS GeoAnalytics Server o ArcGIS Knowledge Server.
  • Un archivo de certificado SSL (en formato .pfx) y la contraseña correspondiente.

    El certificado debe provenir de una autoridad de certificación.

  • Un Amazon Virtual Private Cloud (VPC) y subredes.

    Si va a crear un sitio independiente, puede utilizar una de las siguientes plantillas de CloudFormation para crear una VPC: VPC con dos subredes públicas o VPC con dos subredes públicas y privadas con una NAT Gateway.

    Si tiene previsto federar este sitio con un portal de ArcGIS Enterprise, asegúrese de que todos los componentes de la misma implementación de ArcGIS Enterprise se ejecuten en el mismo VPC.

  • Si crea una implementación en instancias de Ubuntu EC2 en AWS GovCloud, necesita un Id. de AMI. Si desea utilizar la base canónica Ubuntu AMI, siga las instrucciones que se indican en las plantillas de Esri Amazon Web Services CloudFormation para identificar el Id.
  • La plantilla de arcgis-server-ha.template.json CloudFormation.

Tareas requeridas

Complete las siguientes tareas antes de ejecutar esta plantilla:

  • Prepare un bucket de implementación de Amazon Simple Storage Service (S3) en su cuenta de AWS. Especificará el nombre del bucket en la plantilla cuando inicie la pila.
    1. Cree un bucket o utilice un bucket existente de S3. Usted debe ser propietario del bucket.
    2. Cargue sus archivos de autorización de software de ArcGIS en el bucket.
    3. Cargue su archivo de certificado SSL en el bucket de implementación.
  • Configurar un sistema de nombres de dominio (DNS).

    Debe tener un nombre de dominio totalmente calificado para su sitio de ArcGIS Server. Este nombre de dominio debe existir antes de iniciar esta pila y debe poder resolverse. Póngase en contacto con su departamento de TI si tiene dudas de cómo obtener un nombre de dominio totalmente calificado y configurar un DNS.

  • Configure contraseñas en AWS Secrets Manager (opcional pero recomendable).

    Puede configurar las contraseñas de las cuentas como el nombre de usuario del administrador del sitio y la contraseña de usuario de Windows arcgis en AWS Secrets Manager. Con ello, obtendrá un Amazon Resource Name (ARN) secreto. Utilice ARN en lugar de una contraseña en los parámetros de la plantilla al iniciar una pila. Si no utiliza AWS Secrets Manager para almacenar contraseñas, debe escribir contraseñas en texto sin formato en el parámetro de plantilla al iniciar la pila.

    Nota:

    Al crear un ARN secreto en AWS Secrets Manager para una contraseña que se utilizará con las plantillas de Esri CloudFormation, debe utilizar el tipo de secreto Otros tipos de secretos y utilizar la opción Texto sin formato. Para obtener más información acerca de cómo crear un Amazon Resource Name para contraseñas, consulte AWS CloudFormation y ArcGIS.

Sugerencia:

De forma predeterminada, CloudFormation elimina los recursos creados parcialmente si se produce un error en la creación de la pila. Resulta útil porque elimina las implementaciones inutilizables de su cuenta, pero puede dificultar la solución de problemas. Para conservar la pila en su estado fallido, deshabilite la opción de creación de pila de CloudFormation Reversión en caso de error antes de iniciar la pila. Consulte Configurar las opciones de AWS CloudFormation en la ayuda de AWS para obtener más información.

Parámetros

Consulte las siguientes tablas para obtener descripciones de los parámetros utilizados en esta plantilla de CloudFormation. Las tablas están agrupadas por tipo de parámetro.

Amazon EC2 Configuration

Nombre del parámetroNecesario o noDescripción del parámetro

Platform Type

Requerido

Elija la plataforma del sistema operativo. Los tipos compatibles son los siguientes:

  • Windows
  • Linux

Para conocer las versiones de sistemas operativos específicas, consulte Sistemas operativos compatibles al utilizar CloudFormation para la implementación de ArcGIS en AWS.

EC2 Instance AMI ID

Opcional

Puede dejar este valor de parámetro vacío. Si lo hace, las plantillas de CloudFormation utilizarán el Id. de Amazon Machine Image (AMI) más reciente para Microsoft Windows Server 2019 o Ubuntu Server 20.04 LTS según el tipo de plataforma que haya seleccionado.

Nota:

No puede dejar este parámetro vacío si implementa en AWS GovCloud en una plataforma Linux. Consulte las plantillas de Esri Amazon Web Services CloudFormation para obtener instrucciones sobre cómo buscar el Id. para la base AMI de Ubuntu de Canonical. Si realiza la implementación en un sistema operativo Linux compatible distinto de Ubuntu, puede encontrar el Id. de AMI utilizando AWS Management Console.

Si desea utilizar su propia AMI personalizada, puede escribir el Id. de AMI mediante una de las siguientes opciones:

  • Proporcione el Id. de AMI con el formato 'ami-xxxxx'.
  • Si ha almacenado el Id. de AMI en el almacén de parámetros SSM de AWS, proporcione el nombre del parámetro SSM con el formato AWS'{{resolve:ssm:[a-zA-Z0-9_.-/]+:\d+}}'.

Si utiliza una AMI personalizada, asegúrese de que cumple los siguientes requisitos:

  • El servicio de metadatos de la instancia EC2 (con la versión V2 o V1) debe estar activado.
  • La versión más reciente del Agente AWS Systems Manager (SSM) debe estar instalada.
  • Si la AMI personalizada tiene un sistema operativo Windows, las herramientas de AWS para PowerShell deben estar instaladas.

EC2 Instance Keypair Name

Requerido

Elija el nombre del par de claves EC2 para permitir el acceso remoto a instancias de EC2.

Elastic IP Address Allocation ID

Opcional

Proporcione el Id. de asignación de una dirección IP elástica en este formato, eipalloc-XXXXXXXX.

Necesita una dirección IP elástica para asignar el nombre de dominio del sitio a la dirección IP elástica y acceder a la instancia de EC2 a través de RDP/SSH desde fuera del entorno AWS.

Deje este parámetro vacío si no desea asignar una dirección IP elástica a la instancia de EC2.

Amazon VPC Configuration

Nombre del parámetroNecesario o noDescripción del parámetro

VPC ID

Requerido

Elija un Id. de VPC.

Nota:

Todos los componentes de ArcGIS Enterprise que forman parte de la misma implementación se deben implementar en la misma VPC.

Si necesita crear un VPC, puede utilizar una de las plantillas de muestra de VPC: VPC con subredes públicas o VPC con subredes públicas y privadas y una puerta de enlace de NAT.

Subnet ID 1

Requerido

Elija un Id. de subred. El Id. de subred que seleccione debe estar dentro de VPC que seleccionó anteriormente.

Si utilizó una plantilla de Esri CloudFormation para crear el VPC, puede obtener el Id. de subred de los parámetros de salida de esa plantilla.

Subnet ID 2

Requerido

Elija un segundo Id. de subred. Debe ser un Id. de subred diferente al utilizado para el parámetro Id. de subred 1. El Id. de subred que seleccione debe estar dentro de VPC que especificó para esta implementación.

Si utilizó una plantilla de Esri CloudFormation para crear el VPC, puede obtener el Id. de subred de los parámetros de salida de esa plantilla.

Domain Name System (DNS) Configuration

Nombre del parámetroNecesario o noDescripción del parámetro

ArcGIS Server Site Domain Name

Requerido

Proporcione el nombre de dominio totalmente calificado para el sitio de ArcGIS Server. El nombre de dominio debe existir y debe poder resolverse. Póngase en contacto con su administrador de TI si tiene dudas sobre el nombre de dominio que debe utilizar.

Elastic Load Balancer DNS Name

Opcional

Para utilizar un equilibrador de carga elástico (ELB) con la implementación, proporcione el valor para una aplicación o un nombre DNS de ELB clásico. Este ELB ya debe existir.

Si no desea utilizar un ELB o quiere configurarlo usted más adelante, deje este valor de parámetro vacío.

Puede obtener el nombre DNS de ELB yendo a la sección Equilibradores de carga del servicio Amazon EC2 en AWS Management Console o, si utilizó una plantilla de Esri CloudFormation para crear el ELB, puede obtenerlo de los parámetros de salida de esa plantilla. Los nombres DNS de ELB válidos deben terminar en .elb.amazonaws.com.

ArcGIS Server Configuration

Nombre del parámetroNecesario o noDescripción del parámetro

EC2 Instance Type

Requerido

Especifique un tipo de instancia EC2. El valor predeterminado es m5.2xlarge.

Este es el tipo de instancia que se utilizará para los equipos de ArcGIS Server.

Estas instancias de EC2 se implementarán en un grupo Escalado automático. Estos equipos se unirán al sitio de ArcGIS Server accediendo al almacén de configuración de ArcGIS Server.

EC2 Instance Root Drive Disk Space

Requerido

Este es el tamaño del espacio en disco de la unidad raíz para las instancias de ArcGIS Server EC2.

Proporcione el tamaño de la unidad raíz en GB. El valor predeterminado es 100 GB. El mínimo es de 100 GB. El máximo es de 1024 GB.

Number of EC2 Instances

Requerido

Proporcione el número de instancias de EC2 que participan en el sitio. El valor predeterminado es 2. El máximo es 10. El mínimo es 1.

Las instancias de EC2 del sitio se crearán en un grupo Escalado automático. No se incluye el servidor de archivos del directorio.

Nota:
El número recomendado de instancias para un sitio de ArcGIS GeoAnalytics Server es 1 o 3. Si está creando un sitio de ArcGIS GeoAnalytics Server, no utilice el número predeterminado de instancias de EC2.

Deployment Bucket Name

Requerido

Proporcione el nombre del bucket de Amazon S3 que contiene sus archivos de licencia de software y certificados SSL. Este bucket ya debe existir y contener el archivo de licencia y el certificado SSL para su implementación.

Usted debe ser el propietario del bucket y este debe residir en la misma cuenta de AWS que su implementación.

Server License File Name

Requerido

Proporcione el nombre de clave de objeto del archivo de autorización ArcGIS Server. Debe cargar el archivo de licencia de (archivo .ecp o .prvc) en el bucket de implementación antes de iniciar esta pila.

Puede obtener el nombre de clave del objeto de archivo yendo al archivo en el bucket de implementación en la consola Amazon S3. Algunos ejemplos son server.prvc o resources/licenses/server/server.prvc.

Debe usar el archivo de licencia apropiado para el tipo de sitio de ArcGIS Server, GIS Server, ArcGIS GeoAnalytics Server, ArcGIS Image Server, o ArcGIS Knowledge Server, que está creando.

Los nombres de archivo de licencia distinguen entre mayúsculas y minúsculas. Asegúrese de haber escrito correctamente el nombre.

Site Administrator User Name

Requerido

Proporcione una contraseña para el administrador principal del sitio de ArcGIS Server.

El nombre debe tener 6 o más caracteres alfanuméricos o con guion bajo (_) y debe comenzar por una letra.

Site Administrator User Password

Requerido

Proporcione una contraseña para el administrador principal del sitio de ArcGIS Server. Puede escribir una contraseña de texto sin formato o el ARN de su Id. secreto desde AWS Secrets Manager. Para obtener más información acerca de cómo crear un Amazon Resource Name para contraseñas, consulte AWS CloudFormation y ArcGIS.

La contraseña debe tener 8 o más caracteres alfanuméricos y también puede contener puntos (.). La contraseña no puede contener otros caracteres especiales ni espacios.

Windows arcgis user password

Condicional

Proporcione una contraseña para el usuario arcgis. El usuario arcgis es un inicio de sesión de Windows local que se utiliza para ejecutar los servicios de software de ArcGIS; por lo tanto, esta contraseña solo se requiere si realiza la implementación en Windows.

Puede introducir una contraseña de texto sin formato o el ARN de su Id. secreto desde AWS Secrets Manager.

Configuration Store Type

Requerido

Elija dónde se ubicará el almacén de configuración de ArcGIS Server. El valor predeterminado es FileSystem.

  • FileSystem: el almacén de configuración de ArcGIS Server estará en una instancia de EC2 (servidor de archivos).
  • CloudStore: el almacén de configuración de ArcGIS Server estará en Amazon DynamoDB y un bucket de S3 creado por esta plantilla.

Nota:
Incluso si elige CloudStore, se crea un servidor de archivos separado para alojar los directorios compartidos de ArcGIS Server.

Consulte la sección Consideraciones de esta página para obtener información sobre la capacidad de DynamoDB.

ArcGIS File Server Instance Type

Requerido

Elija un tipo de instancia de EC2 para el servidor de archivos de ArcGIS. El tipo de instancia predeterminado es m5.2xlarge.

ArcGIS File Server EC2 Instance Root Drive Disk Space

Requerido

El tamaño del espacio en disco de la unidad raíz para la instancia de EC2 del servidor de archivos de ArcGIS.

Proporcione el tamaño de la unidad raíz en GB. El valor predeterminado es 100 GB. El mínimo es de 100 GB. El máximo es de 1024 GB.

Web Adaptor Name

Opcional

Para usar ArcGIS Web Adaptor con el sitio de ArcGIS Server, escriba un nombre de Web Adaptor. El acceso al sitio de ArcGIS Server será a través de una dirección URL con el formato https://<fully qualified domain name>/<web adaptor name>. El nombre debe comenzar con una letra y solo debe contener caracteres alfanuméricos.

Deje este valor de parámetro vacío si no desea utilizar ArcGIS Web Adaptor, y las direcciones URL del sitio tendrán el formato https://<fully qualified domain name><PortNumber>/arcgis.

SSL Certificate File Name

Opcional

Si incluye un Web Adaptor con el sitio, puede proporcionar un certificado SSL de una autoridad de certificación (archivo .pfx). Si proporciona un certificado, debe cargarlo en el bucket de implementación antes de iniciar esta pila.

Puede obtener el nombre de clave del objeto de archivo yendo al archivo en el bucket de implementación en la consola AWS S3. Entre los ejemplos de nombres de certificados se incluye domainname.pfx para un archivo de certificado almacenado en el nivel raíz del bucket de implementación, o resources/sslcerts/domainname.pfx para un archivo de certificado almacenado en una carpeta del bucket de implementación.

Si utiliza un Web Adaptor y deja este valor de parámetro vacío, se usará un certificado autofirmado generado automáticamente con el Web Adaptor.

SSL Certificate Password

Condicional

Proporcione una contraseña para el certificado SSL. Puede escribir una contraseña de texto sin formato o el ARN de su Id. secreto desde AWS Secrets Manager. Para obtener información acerca de cómo crear un Amazon Resource Name para contraseñas, consulte AWS CloudFormation y ArcGIS.

Salidas

Cuando su pila se crea correctamente, puede ver los siguientes parámetros de salida en la pestaña Salidas de la pila CloudFormation en AWS Management Console.

Nombre de salidaDescripción de salida

DeploymentLogsURL

Esta es la dirección URL de los registros de Amazon CloudWatch en los que se almacenan todos los registros de implementación. Puede consultar estos registros para solucionar problemas si falla su implementación.

ServerAdminDirURL

La dirección URL del directorio del administrador de ArcGIS Server.

ServerManagerDirURL

La dirección URL de ArcGIS Server Manager.

ServerRestDirURL

La dirección URL de los servicios REST de ArcGIS Server.

ServerServicesURL

La dirección URL de los servicios de ArcGIS Server.

Puede usar esta URL como un parámetro de entrada en la plantilla del servidor federado.

StopStackFunctionName

Esta es la URL de la función Detener pila de lambda. Puede utilizar esta función lambda para detener todas las instancias de EC2 de la pila.

StartStackFunctionName

Esta es la URL de la función Iniciar pila de lambda. Puede utilizar esta función lambda para iniciar todas las instancias de EC2 en la pila que detuvo anteriormente.

Consideraciones

Estos son puntos importantes a tener en cuenta después de crear una pila de CloudFormation que contenga implementaciones de ArcGIS:

  • En implementaciones de alta disponibilidad de ArcGIS Server, las instancias de EC2 siempre están configuradas en un grupo Escalado automático de AWS. Una vez creado el sitio de ArcGIS Server, puede agregar más equipos (instancias de EC2) al sitio de ArcGIS Server ajustando el tamaño del grupo Escalado automático. Utilice AWS Management Console para aumentar la capacidad del grupo Escalado automático para agregar equipos. Para eliminar equipos, reduzca la capacidad. Consulte la documentación de AWS para obtener instrucciones sobre cómo cambiar los límites de capacidad de un grupo Escalado automático y agregar o eliminar equipos de un sitio de ArcGIS Server.

    Sugerencia:

    Para encontrar el grupo Escalado automático de AWS creado para una pila de CloudFormation, revise la pestaña Recursos de la pila de CloudFormation relacionada. El Id. lógico del recurso es AutoScalingGroup.

    Aunque técnicamente es posible cambiar el tamaño del grupo Escalado automático de AWS a cero, mantenga al menos una instancia ejecutándose en el grupo Escalado automático; de lo contrario, es posible que el sitio de ArcGIS Server no funcione correctamente.

    Una vez que cambie la capacidad del grupo, puede tardar hasta una hora en agregar equipos o hasta 15 minutos en eliminar equipos. Una vez aplicado el cambio, utilice la API de administrador de ArcGIS Server para confirmar que el número de equipos del sitio de ArcGIS Server ha aumentado o descendido de forma adecuada.

  • Los sitios ArcGIS Server creados con esta plantilla tienen deshabilitada la propiedad suspendedMachineUnregisterThreshold, lo que significa que los equipos del sitio no se dan de baja automáticamente si están inactivos. Después de implementar el sitio, puede modificar el valor suspendedMachineUnregisterThreshold en API REST de ArcGIS para que el sitio de ArcGIS Server defina el período de tiempo de inactividad (en minutos) tras el cual se anulará el registro de un equipo del sitio. Consulte Propiedades del servidor en la ayuda del desarrollador para obtener información sobre la configuración de esta propiedad.
  • El número recomendado de instancias de EC2 para un sitio de ArcGIS GeoAnalytics Server es 1 o 3. Contar con más o menos instancias puede dar lugar a que el sitio no funcione correctamente.
  • Si elige CloudStore para el parámetro Tipo de almacén de configuración, las unidades de capacidad de provisión de Amazon DynamoDB se establecen en:
    • Unidades de capacidad de lectura: 250 tablas
    • Unidades de capacidad de escritura: 25 tablas

    El coste estimado de esta configuración es de aproximadamente 36 dólares al mes. Las pruebas de Esri revelan que esta configuración funciona bien para publicar aproximadamente 500 servicios. Puede editar esta configuración en AWS Management Console para reducir las unidades y reducir el coste o aumentar las unidades para dar cabida a más servicios. Tenga en cuenta que algunas funcionalidades, como la publicación, fallarán si no tiene suficiente capacidad.

  • No elimine ningún recurso de AWS creado por esta plantilla de CloudFormation. Si desea saber qué recursos de AWS se han creado mediante esta plantilla, consulte la pestaña Recursos de esta pila en AWS Management Console. Cada recurso creado por una plantilla de Esri CloudFormation también tiene etiquetas de metadatos. Sin embargo, algunos de los recursos no muestran etiquetas en AWS Management Console.
  • Si utiliza AWS Secrets Manager para contraseñas, como la contraseña de usuario de administrador del sitio o la contraseña de usuario de arcgis Windows y, a continuación, (después de crear la implementación) cambia esas contraseñas, asegúrese de actualizar el ARN AWS Secrets Manager adecuado con las contraseñas actualizadas.
  • Si utiliza un equilibrador de carga de aplicaciones en su implementación, puede ajustar el tiempo de espera de inactividad del equilibrador de carga de la aplicación después de crear la implementación. Por ejemplo, puede que tenga que aumentar el tiempo de espera de inactividad para garantizar que las operaciones que tardan mucho tiempo se completen en cualquiera de los equipos de la implementación. Ajuste el valor de tiempo de espera de inactividad del equilibrador de carga de la aplicación en AWS Management Console.
  • Puede utilizar las funciones de AWS Lambda que aparecen en las salidas de su pila (enumeradas en la sección Salidas de esta página) para detener las instancias de EC2 de esta pila cuando no se utilicen y volver a iniciarlas cuando sea necesario. Estas funciones son útiles para ayudarle a administrar costes.

    Cuando se ejecuta la función Lambda para detener las instancias de EC2 en la implementación, la función devuelve un mensaje que indica que las instancias están paradas. Sin embargo, si las instancias participan en un grupo Escalado automático, la función también deberá desconectar las instancias del grupo. Este proceso puede requerir incluso 10 minutos en completarse. Por lo tanto, espere al menos 10 minutos antes de ejecutar la función de inicio de Lambda para reiniciar la implementación.

Nota:

Debe utilizar las funciones de Lambda para detener e iniciar instancias de EC2 que forman parte de un grupo Escalado automático. Los grupos de escalado automático agregan equipos en función de la capacidad establecida para ellos; si utiliza AWS Management Console para cerrar las instancias de EC2 en un grupo Escalado automático, se agregarán nuevas instancias.

Solucionar problemas

Si observa algún fallo al crear esta pila de CloudFormation, consulte Solucionar problemas de implementaciones de ArcGIS en AWS.