Cómo realizar una actualización automatizada en su instancia de Windows - Amazon Elastic Compute Cloud

Cómo realizar una actualización automatizada en su instancia de Windows

Puede llevar a cabo una actualización automatizada de las instancias de Windows y SQL Server en AWS con manuales de procedimientos de AWS Systems Manager Automation.

Los siguientes servicios de AWS se utilizan en el proceso de actualización automatizado:

  • AWS Systems Manager. AWS Systems Manager es una potente interfaz unificada para administrar de forma centralizada los recursos de AWS. Para obtener más información, consulte la Guía del usuario de AWS Systems Manager.

  • El agente de AWS Systems Manager (SSM Agent) es el software de Amazon que se puede instalar y configurar en una instancia de Amazon EC2, en un servidor en las instalaciones o en una máquina virtual (VM). El SSM Agent posibilita que Systems Manager actualice, administre y configure estos recursos. El agente procesa las solicitudes del servicio de Systems Manager de la nube de AWS y, a continuación, las ejecuta como se especifica en la solicitud. Para obtener más información, consulte Usar el SSM Agent en la Guía del usuario de AWS Systems Manager.

  • Manuales de procedimientos de AWS Systems Manager SSM. Un runbook de SSM define las acciones que Systems Manager realiza en las instancias administradas. Los manuales de procedimientos de SSM utilizan JavaScript Object Notation (JSON) o YAML, e incluyen los pasos y los parámetros que especifique. En este tema se utilizan dos manuales de procedimientos de SSM de Systems Manager para la automatización. Para obtener más información, consulte Referencia del runbook de AWS Systems Manager Automation en la Guía del usuario de AWS Systems Manager.

Opciones de ejecución

Cuando seleccione Automation (Automatización) en la consola de Administrador de sistemas, seleccione Execute (Ejecutar). Después de seleccionar un documento Automation, se le solicita que elija una opción de ejecución de automatización. Puede elegir entre las siguientes opciones. En los pasos para las rutas indicados posteriormente en este tema, utilizamos la opción de ejecución simple.

Ejecución simple

Elija esta opción si desea actualizar una única instancia pero no desea pasar por todos los pasos de automatización para realizar una auditoría de los resultados. Esta opción se explica con mayor detalles en los pasos de actualización más adelante.

Rate control (Control de velocidad)

Elija esta opción si desea aplicar la actualización a más de una instancia. Define las opciones siguientes.

  • Parámetro

    Esta configuración, que también se establece en la configuración de varias cuentas y regiones, define cómo se ramificará la automatización.

  • Destinos

    Seleccione el destino al que desea aplicar la automatización. Este parámetro también se establece en la configuración de varias cuentas y regiones.

  • Parameter Values (Valores de parámetro)

    Utilice los valores definidos en los parámetros de documento de automatización.

  • Grupo de recursos

    En AWS, un recurso es una entidad con la que se puede trabajar. Entre los ejemplos se incluyen instancias de Amazon EC2, pilas de AWS CloudFormation o buckets de Amazon S3. Si trabaja con varios recursos, puede resultarle útil administrarlos como un grupo en lugar de transferirlos de un servicio de AWS a otro para cada tarea. En algunos casos, es posible que desee administrar un gran número de recursos relacionados, como instancias de EC2 que componen una capa de aplicación. En este caso, es probable que tenga que llevar a cabo acciones por lotes en estos recursos a la vez.

  • Etiquetas

    Las etiquetas le permiten clasificar los recursos de AWS de diversas maneras, por ejemplo, según su finalidad, propietario o entorno. Esta clasificación es útil cuando se tienen muchos recursos del mismo tipo. Puede identificar rápidamente un recurso específico según las etiquetas asignadas.

  • Rate Control (Control de velocidad)

    El control de velocidad también se establece en la configuración de varias cuentas y regiones. Cuando se definen los parámetros de control de velocidad, defina a cuántos de la flota se aplica la automatización, bien por recuento de destino o por porcentaje de la flota.

Multi-Account and Region (Varias cuentas y regiones)

Además de los parámetros especificados en control de velocidad que se utilizan en la configuración de varias cuentas y regiones, hay dos configuraciones adicionales:

  • Accounts and organizational units (OUs) [Cuentas y unidades organizativas (OU)]

    Especifique varias cuentas en las que desee ejecutar la automatización.

  • Regiones de AWS

    Especifique varias Regiones de AWS en las que desea ejecutar la automatización.

Ejecución manual

Esta opción es similar a Simple execution (Ejecución simple), pero le permite pasar por cada paso de automatización y realizar una auditoría de los resultados.

Actualización de Windows Server

El manual de procedimientos de AWSEC2-CloneInstanceAndUpgradeWindows crea una Imagen de máquina de Amazon (AMI) desde una instancia de Windows Server en su cuenta y actualiza esta AMI a una versión compatible de su elección. Este proceso de varios pasos puede tardar hasta dos horas en completarse.

Hay dos AMI incluidas en el proceso de actualización automatizado:

  • instancia en ejecución actual. La primera AMI es la instancia en ejecución actual, que no está actualizada. Esta AMI se utiliza para iniciar otra instancia para ejecutar la actualización in situ. Cuando el proceso está completo, esta AMI se elimina de su cuenta, a menos que solicite específicamente mantener la instancia original. Esta configuración se gestiona mediante el parámetro KeepPreUpgradeImageBackUp (el valor predeterminado es false, que significa que la AMI se elimina de forma predeterminada).

  • AMI actualizada. Esta AMI es el resultado del proceso de automatización.

El resultado final es una AMI, que es la instancia actualizada de la AMI.

Cuando la actualización está completa, puede probar la funcionalidad de la aplicación al iniciar la nueva AMI en la Amazon VPC. Una vez realizadas las pruebas y antes de realizar otra actualización, programe el tiempo de inactividad de las aplicaciones antes de cambiar completamente a la instancia actualizada.

Requisitos previos

Para automatizar la actualización de Windows Server con documentos de AWS Systems Manager Automation, debe llevar a cabo las tareas siguientes:

  • Crear un rol de IAM con las políticas de IAM especificadas para permitir a Systems Manager llevar a cabo tareas de automatización en sus instancias Amazon EC2 y verificar que cumple los requisitos previos para utilizar Systems Manager. Para obtener más información, consulte Creación de un rol para delegar permisos a un servicio de AWS en la Guía del usuario de AWS Identity and Access Management.

  • Seleccione la opción para la que desea ejecutar la automatización. Las opciones para ejecución son Simple execution (Ejecución simple), Rate control (Control de velocidad), Multi-account and Region (Varias cuentas y regiones) y Manual execution (Ejecución manual). Para obtener más información sobre estas opciones, consulte Opciones de ejecución.

  • Compruebe que SSM Agent esté instalado en su instancia. Para obtener más información, consulte Instalación y configuración de SSM Agent en instancias de Amazon EC2 para Windows Server.

  • Windows PowerShell 3.0 o posterior debe estar instalado en la instancia.

  • Para las instancias que están unidas a un dominio de Microsoft Active Directory, se recomienda especificar un SubnetId que no tenga conectividad con los controladores de dominio para evitar conflictos con nombres de host.

  • La subred de la instancia debe tener conectividad saliente a Internet, lo que proporciona acceso a Servicios de AWS como Amazon S3 y acceso a la descarga de revisiones de Microsoft. Este requisito se cumple si la subred es pública y la instancia tiene una dirección IP pública, o si la subred es una subred privada con una ruta que envía el tráfico de Internet a un dispositivo de NAT público.

  • Esta automatización funciona con instancias que ejecutan Windows Server 2008 R2, Windows Server 2012 R2, Windows Server 2016 y Windows Server 2019.

  • Verifique que la instancia tiene 20 GB de espacio libre en el disco de arranque.

  • Si la instancia no utiliza una licencia de Windows proporcionada por AWS, especifique un ID de instantánea de Amazon EBS que incluya los medios de instalación de Windows Server 2012 R2. Para ello:

    1. Compruebe que las instancias de Amazon EC2 ejecuten Windows Server 2012 o una versión posterior.

    2. Cree un volumen de Amazon EBS de 6 GB en la misma zona de disponibilidad en la que se ejecuta la instancia. Adjunte el volumen a la instancia. Móntelo, por ejemplo, como unidad D.

    3. Haga clic con el botón derecho del ratón en la ISO y móntela en una instancia como, por ejemplo, la unidad E.

    4. Copie el contenido de la ISO desde la unidad E:\ a la unidad D:\

    5. Cree una instantánea de Amazon EBS del volumen de 6 GB creado en el paso 2 anterior.

Límites de actualización de Windows Server

Esta automatización no admite la actualización de controladores de dominio de Windows, clústeres o sistemas operativos de escritorio de Windows. Además, esta automatización no admite instancias de Amazon EC2 para Windows Server con los siguientes roles instalados:

  • Host de sesión de Escritorio remoto (RDSH)

  • Agente de conexión a Escritorio remoto (RDCB)

  • Host de virtualización de Escritorio remoto (RDVH)

  • Acceso web de Escritorio remoto (RDWA)

Pasos para realizar una actualización automatizada de Windows Server

Siga estos pasos para actualizar la instancia de Windows Server mediante el runbook AWSEC2-CloneInstanceAndUpgradeWindows de automatización.

  1. Abra Systems Manager desde AWS Management Console.

  2. Desde el panel de navegación izquierdo, en Change Management (Administración de cambios), elija Automation(Automatización).

  3. Elija Execute automation (Ejecutar automatización).

  4. Busque el documento de automatización denominado AWSEC2-CloneInstanceAndUpgradeWindows.

  5. Cuando aparezca el nombre del documento, selecciónelo. Cuando lo seleccione, aparecen los detalles del documento.

  6. Elija Execute automation (Ejecutar automatización) para introducir los parámetros de este documento. Deje Simple execution (Ejecución simple) seleccionado al principio de la página.

  7. Introduzca los parámetros solicitados en función del siguiente asesoramiento.

    • InstanceID

      Tipo: cadena

      (Requerido) La instancia que ejecuta Windows Server 2008 R2, 2012 R2, 2016 o 2019 con SSM Agent instalado.

    • InstanceProfile.

      Tipo: cadena

      (Obligatorio) El perfil de instancia de IAM. Este es el rol de IAM utilizado para ejecutar la automatización de Systems Manager frente a la instancia de Amazon EC2 y las AMI de AWS. Para obtener más información, consulte Crear un perfil de instancias de IAM para Systems Manager en la Guía del usuario de AWS Systems Manager.

    • TargetWindowsVersion

      Tipo: cadena

      (Obligatorio) Seleccionar la versión de Windows de destino.

    • SubnetId

      Tipo: cadena

      (Requerido) Esta es la subred para el proceso de actualización y donde reside su instancia de EC2 de origen. Verifique que la subred tenga conectividad saliente a los servicios de AWS, incluido Amazon S3, y también a Microsoft (para descargar parches).

    • KeepPreUpgradedBackUp

      Tipo: cadena

      (Opcional) Si este parámetro se establece en true, la automatización conserva la imagen creada desde la instancia. El valor predeterminado es false.

    • RebootInstanceBeforeTakingImage

      Tipo: cadena

      (Opcional) El valor predeterminado es false (sin reinicio). Si este parámetro se establece en true, Administrador de sistemas reinicia la instancia antes de crear una AMI para la actualización.

  8. Después de introducir los parámetros, elija Execute (Ejecutar). Cuando se inicia la automatización, puede monitorizar el progreso de ejecución.

  9. Cuando se complete la automatización, verá el ID de la AMI. Puede iniciar la AMI para verificar que el sistema operativo Windows está actualizado.

    nota

    No es necesario que la automatización ejecute todos los pasos. Los pasos son condicionales en función del comportamiento de la automatización y la instancia. Es posible que Systems Manager salte algunos pasos que no sean obligatorios.

    Además, algunos de ellos pueden agotar el tiempo de espera. Systems Manager intenta actualizar e instalar todos los parches más recientes. En ocasiones, sin embargo, los parches agotan el tiempo de espera en función de una configuración de tiempo de espera definible para el paso dado. Cuando esto ocurre, la automatización de Systems Manager continúa al paso siguiente para asegurarse de que el sistema operativo interno se actualice a la versión de Windows Server de destino.

  10. Una vez completada la automatización, puede iniciar una instancia de Amazon EC2 utilizando el ID de AMI para revisar su actualización. Para obtener más información sobre la creación de una instancia de Amazon EC2 desde una AMI de AWS, consulte ¿Cómo puedo lanzar una instancia de EC2 desde una AMI personalizada?

Actualización de SQL Server

El script de AWSEC2-CloneInstanceAndUpgradeSQLServer crea una AMI desde una instancia de Amazon EC2 que ejecuta SQL Server en la cuenta y, a continuación, actualiza la AMI a una versión posterior de SQL Server. Este proceso de varios pasos puede tardar hasta dos horas en completarse.

En este flujo de trabajo, la automatización crea una AMI desde la instancia y, a continuación, inicia la nueva AMI en la subred que proporcione. A continuación, la automatización realiza una actualización in situ de SQL Server. Después de la actualización, la automatización crea una nueva AMI antes de terminar la instancia actualizada.

Hay dos AMI incluidas en el proceso de actualización automatizado:

  • instancia en ejecución actual. La primera AMI es la instancia en ejecución actual, que no está actualizada. Esta AMI se utiliza para iniciar otra instancia para ejecutar la actualización in situ. Cuando el proceso está completo, esta AMI se elimina de su cuenta, a menos que solicite específicamente mantener la instancia original. Esta configuración se gestiona mediante el parámetro KeepPreUpgradeImageBackUp (el valor predeterminado es false, que significa que la AMI se elimina de forma predeterminada).

  • AMI actualizada. Esta AMI es el resultado del proceso de automatización.

El resultado final es una AMI, que es la instancia actualizada de la AMI.

Cuando la actualización está completa, puede probar la funcionalidad de la aplicación al iniciar la nueva AMI en la Amazon VPC. Una vez realizadas las pruebas y antes de realizar otra actualización, programe el tiempo de inactividad de las aplicaciones antes de cambiar completamente a la instancia actualizada.

Requisitos previos

Para automatizar la actualización de SQL Server con documentos de AWS Systems Manager Automation, debe llevar a cabo las tareas siguientes:

  • Crear un rol de IAM con las políticas de IAM especificadas para permitir a Systems Manager llevar a cabo tareas de automatización en sus instancias Amazon EC2 y verificar que cumple los requisitos previos para utilizar Systems Manager. Para obtener más información, consulte Creación de un rol para delegar permisos a un Servicio de AWS en la AWS Identity and Access ManagementGuía del usuario.

  • Seleccione la opción para la que desea ejecutar la automatización. Las opciones para ejecución son Simple execution (Ejecución simple), Rate control (Control de velocidad), Multi-account and Region (Varias cuentas y regiones) y Manual execution (Ejecución manual). Para obtener más información sobre estas opciones, consulte Opciones de ejecución.

  • La instancia de Amazon EC2 debe utilizar Windows Server 2008 R2 o posterior y SQL Server 2008 o posterior.

  • Compruebe que SSM Agent esté instalado en su instancia. Para obtener más información, consulte Uso de SSM Agent en instancias de Amazon EC2 para Windows Server.

  • Verifique que la instancia tiene espacio de disco suficiente:

    • Si va a actualizar de Windows Server 2008 R2 a 2012 R2, o de Windows Server 2012 R2 a un sistema operativo posterior, compruebe que tenga 20 GB de espacio libre en el disco de arranque de la instancia.

    • Si va a actualizar de Windows Server 2008 R2 a una versión 2016 o posterior, compruebe que la instancia tenga 40 GB de espacio libre en el disco de arranque.

  • Para las instancias que utilizan una versión Bring Your Own License (BYOL) de SQL Server, se aplican los siguientes requisitos previos adicionales:

    • Proporcione un ID de instantánea de Amazon EBS que incluya medios de instalación de destino de SQL Server. Para ello:

      1. Compruebe que las instancias de Amazon EC2 ejecuten Windows Server 2008 R2 o una versión posterior.

      2. Cree un volumen de Amazon EBS de 6 GB en la misma zona de disponibilidad en la que se ejecuta la instancia. Adjunte el volumen a la instancia. Móntelo, por ejemplo, como unidad D.

      3. Haga clic con el botón derecho del ratón en la ISO y móntela en una instancia como, por ejemplo, la unidad E.

      4. Copie el contenido de la ISO desde la unidad E:\ a la unidad D:\

      5. Cree una instantánea de Amazon EBS del volumen de 6 GB creado en el paso 2.

Limitaciones de actualización automatizada de SQL Server

Al utilizar el comando del runbook AWSEC2-CloneInstanceAndUpgradeSQLServer para realizar una actualización automatizada, se aplican las siguientes limitaciones:

  • La actualización solo se puede realizar en un SQL Server mediante la autenticación de Windows.

  • Verifique que no exista ninguna actualización de parches de seguridad pendiente en las instancias. Abra Control Panel (Panel de control) y elija Check for updates (Buscar actualizaciones).

  • No se admiten las implementaciones de SQL Server en HA y el modo de duplicación.

Pasos para realizar una actualización automatizada de SQL Server

Siga estos pasos para actualizar su SQL Server mediante el runbook AWSEC2-CloneInstanceAndUpgradeSQLServer de automatización.

  1. Si no lo ha hecho aún, descargue el archivo .iso de SQL Server 2016 y móntelo en el servidor de origen.

  2. Una vez que el archivo .iso se ha montado, copie todos los archivos de componentes y colóquelos en cualquier volumen de su elección.

  3. Tome una instantánea de Amazon EBS del volumen y copie el ID de instantánea en un portapapeles para utilizarlo posteriormente. Para obtener más información, consulte Creación de instantáneas de Amazon EBS en la Guía del usuario de Amazon EBS.

  4. Adjunte el perfil de instancia a la instancia de Amazon EC2 de origen. Esto permite a Systems Manager comunicarse con la instancia de EC2 y ejecutar comandos en esta después de agregarla al servicio de AWS Systems Manager. En este ejemplo, denominamos el rol SSM-EC2-Profile-Role con la política AmazonSSMManagedInstanceCore asociada al rol. Consulte Creación de un perfil de instancias de IAM para Systems Manager en la Guía del usuario de AWS Systems Manager.

  5. En la consola de AWS Systems Manager, en el panel de navegación izquierdo, elija Managed Instances (instancias administradas). Verifique que su instancia de EC2 esté en la lista de instancias administradas. Si no ve su instancia después de unos minutos, consulte ¿Dónde están mis instancias? en la Guía del usuario de AWS Systems Manager.

  6. En el panel de navegación izquierdo, en Change Management (Administración de cambios), elija Automation (Automatización).

  7. Elija Execute automation (Ejecutar automatización).

  8. Busque el documento de automatización denominado AWSEC2-CloneInstanceAndUpgradeSQLServer.

  9. Elija el documento de SSM AWSEC2-CloneInstanceAndUpgradeSQLServer y elija Next (Siguiente).

  10. Asegúrese de haber seleccionado la opción Simple execution (Ejecución simple).

  11. Introduzca los parámetros solicitados en función del siguiente asesoramiento.

    • InstanceId

      Tipo: cadena

      (Obligatorio) la instancia que ejecuta SQL Server 2008 R2 (o posterior).

    • IamInstanceProfile

      Tipo: cadena

      (Obligatorio) El perfil de instancia de IAM.

    • SQLServerSnapshotId

      Tipo: cadena

      (Obligatorio) El ID de instantánea para los medios de instalación de SQL Server de destino. Este parámetro no es necesario para las instancias con licencia incluida de SQL Server.

    • SubnetId

      Tipo: cadena

      (Requerido) Esta es la subred para el proceso de actualización y donde reside su instancia de EC2 de origen. Verifique que la subred tenga conectividad saliente a los servicios de AWS, incluido Amazon S3, y también a Microsoft (para descargar parches).

    • KeepPreUpgradedBackUp

      Tipo: cadena

      (Opcional) Si este parámetro se establece en true, la automatización conserva la imagen creada desde la instancia. El valor predeterminado es false.

    • RebootInstanceBeforeTakingImage

      Tipo: cadena

      (Opcional) El valor predeterminado es false (sin reinicio). Si este parámetro se establece en true, Administrador de sistemas reinicia la instancia antes de crear una AMI para la actualización.

    • TargetSQLVersion

      Tipo: cadena

      (Opcional) La versión de SQL Server de destino. El valor predeterminado es 2016.

  12. Después de introducir los parámetros, elija Execute (Ejecutar). Cuando se inicia la automatización, puede monitorizar el progreso de ejecución.

  13. Cuando Execution Status (Estado de ejecución) muestre Success (Éxito), expanda Outputs (Salidas) para ver la información de la AMI. Puede utilizar el ID de la AMI para iniciar su instancia de SQL Server para la VPC que elija.

  14. Abra la consola de Amazon EC2. En el panel de navegación izquierdo, elija AMIs. Debería ver la nueva AMI.

  15. Para verificar que la nueva versión de SQL Server se ha instalado correctamente, elija la nueva AMI y elija Launch (iniciar).

  16. Elija el tipo de instancia que desea para la AMI, la VPC y la subred en la que la desea implementar, así como el almacenamiento que desea utilizar. Dado que está iniciando la nueva instancia desde una AMI, los volúmenes se presentan de forma opcional para incluirlos en la nueva instancia de EC2 que está iniciando. Puede eliminar cualquiera de estos volúmenes o puede añadir volúmenes.

  17. Añada una etiqueta para ayudar a identificar la instancia.

  18. Añada el grupo o grupos de seguridad a la instancia.

  19. Elija Launch Instance.

  20. Elija el nombre de etiqueta para la instancia y seleccione Connect (Conectar) en la lista desplegable Actions (Acciones).

  21. Verifique que la nueva versión de SQL Server sea el motor de base de datos en la nueva instancia.