Conceptos avanzados

Creación de una imagen de máquina de Amazon (AMI) VPX en SC2S

Colaboradores

Autor: Jill Fetscher, arquitecta

SC2S es una creación de instancias de AWS sin acceso a AWS Marketplace. Todas las imágenes de máquina de Amazon (AMI) deben cargarse manualmente en el entorno mediante la herramienta vmimport. Debido a la naturaleza del dispositivo Citrix ADC VPX, el archivo de imagen es demasiado grande para usar la herramienta vmimport. La AMI VPX debe crearse de manera que pueda iniciarse para su uso futuro. Creamos el siguiente método específicamente para SC2S, pero se puede utilizar para casos de uso futuros de esta naturaleza, en los que no exista ningún Marketplace o no haya ninguna oferta de AMI VPX disponible en el Marketplace.

Crear un VPX en SC2S: Pasos en el lado inferior (AWS comercial)

  1. Cree una VPC y una subred en UC2S (comercial) mediante el mismo bloque CIDR que la VPC donde el Citrix ADC reside en SC2S. (por ejemplo, cree una VPC de tamaño 10.0.0.0/16, con una única subred pública de tamaño 10.0.0.0/24 mediante el Asistente para VPC).

    Esto se puede hacer de dos maneras:

    • Crear una VPC de prueba en SC2S con el CIDR básico y la división en subredes
    • Copie el CIDR y la división en subredes que se utilizan en SC2S

    Nota:

    Para C2S, la creación de VPC se realiza a través de un servicio y se asigna automáticamente un espacio IP desde la superred. En este caso, el segundo método es necesario. Para GovCloud, espere a recibir más instrucciones o descargue la última versión de VPX del Marketplace.

    imagen del panel de VPC

    imagen del asistente de configuración de VPC, paso 1

    imagen del asistente de VPC, paso 2

  2. Implemente una instancia EC2 desde la AMI de Citrix ADC en AWS Marketplace. Se requiere que la instancia cuente con licencia del cliente. Utilice una instancia no basada en nitrógeno (por ejemplo, m4.xlarge).

    imagen del paso 1, elija AMI

    imagen del paso 2, elige el tipo de instancia

    Elija la VPC que creó en los pasos anteriores. Desactive la asignación automática de IP pública. imagen del paso 3, configurar los detalles de la instancia

    Asigne a la instancia un nombre fácilmente reconocible. Creamos muchas instancias en los siguientes pasos y es necesario identificar cada instancia para una configuración adicional.

    El grupo de seguridad se completa automáticamente. Haga clic en Siguiente en el resto de los pasos, por ejemplo, lanzamiento.

    imagen del asistente

  3. Cree un host bastión base de Windows Server 2019 o 2016 para llegar a su instancia VPX.

    Esta instancia puede ser m4.xlarge, y debe estar integrada en la misma VPC y AZ que Citrix ADC, con una IP pública asignada automáticamente. El volumen raíz requiere un mínimo de 45 GiB, SSD de uso general (gp2).

    Nota:

    Si el entorno permite la creación de IP elásticas (EIP), puede omitir la creación del host bastión y puede conectarse a la instancia VPX directamente desde la red o Internet. Recomendamos el uso de un host bastión por motivos de seguridad y la falta de disponibilidad de EIP en entornos con brechas de aire.

    imagen del paso 1, elija AMI

    Asigne a la instancia un nombre reconocible (por ejemplo, SC2S: WS2016 Bastion Low).

    imagen del paso 5, agregar etiquetas

    Para simplificar, cree un grupo de seguridad para permitir todo el tráfico. Puede bloquear este grupo de seguridad más adelante.

    imagen del paso 6, configurar el grupo de seguridad

    Una vez que la instancia está lista, RDP en la máquina mediante la IP pública. A continuación, descargue PuTTY y WinSCP y copie el par de claves que se usó para crear la instancia VPX. Esto requiere la conversión del .pem a un .ppk, mediante PuTTYgen. En el Administrador de servidores, inhabilite Firewall de Windows y Seguridad mejorada de Internet Explorer. Con PuTTY, compruebe que puede usar SSH en el dispositivo Citrix ADC recién implementado. Anote la contraseña nsroot de la instancia. De forma predeterminada, este es el AWS InstanceID. Anota la IP privada de la instancia, ya que será necesaria en un paso posterior. En este punto, tiene un dispositivo Citrix ADC en funcionamiento.

    Nota:

    ¡No configure este dispositivo VPX! Simplemente inicie sesión como nsroot para verificar la funcionalidad.

  4. Apague la instancia de Citrix ADC desde la consola de AWS. Separe el volumen de EBS raíz de la instancia de Citrix ADC.

    nueva imagen de EC2

    Para separar el volumen raíz, haga clic en el dispositivo raíz /dev/sda1 y, a continuación, haga clic en el ID del volumen. En la ficha Volumen, seleccione el volumen, asígnele un nombre reconocible (por ejemplo, SC2S: Commercial Root Vol) y anote el ID del volumen. Haga clic en Acciones > Separar volumen > Aceptar. El estado del volumen ahora debería estar disponible.

    imagen de detalles de instancia

  5. Implemente una nueva instancia EC2 de Amazon Linux (AMI de Amazon Linux 2 (HVM), tipo de volumen SSD, 64 bits, respaldada por EBS, habilitada para ENA). Esta instancia debe ser del mismo tipo de instancia que la instancia VPX implementada anteriormente (por ejemplo, m4.xlarge), y debe estar en la misma VPC y subred, con la opción “Asignación automática de IP pública” inhabilitada. Asigne a la instancia un nombre reconocible (por ejemplo, SC2S: Linux Low). Configure el grupo de seguridad para permitir todo el tráfico por ahora. Una vez que se lance la instancia, apáguela.

    agregar etiquetas image

  6. Adjunte el volumen de EBS raíz separado de VPX a la instancia de Linux EC2.

    nueva imagen de EC2

    Elija la instancia de Linux que creó haciendo clic en Instancia > Adjuntar.

    adjuntar imagen de volumen

  7. Cree un volumen con una capacidad mayor que el volumen VPX raíz. La capacidad del volumen raíz del volumen VPX es de 30 GiB. Cree el volumen con una capacidad de 35 GiB. Establezca el tipo de volumen en SSD de uso general (gp2) y asígnele un nombre reconocible (por ejemplo, SC2S: Copy Low Vol). Adjunte el nuevo volumen a la instancia de Linux.

    crear y adjuntar volúmenes

    crear y adjuntar volúmenes

    crear y adjuntar volúmenes

  8. Encienda la instancia de Linux y SSH desde el host de bastión mediante el archivo de clave privada. Inicie sesión como ec2-user*.

  9. Cree una partición en el NUEVO volumen de EBS.

    Nota:

    En este ejemplo, el volumen raíz VPX SC2S: Commercial Root Vol es /dev/sdf, y el volumen recién creado de 35 GiB SC2S: Copy Low Vol es /dev/sdg. La partición debe crearse solo en SC2S: Copy Low Vol. En la consola de AWS, estos dispositivos de bloques se indican mediante enlaces simbólicos. En la instancia de Linux, a /dev/sdf y /dev/sdg se les refiere como /dev/xvdf y /dev/xvdg, respectivamente.

    En la CLI de Linux, verifique que no haya ningún sistema de archivos. La respuesta debe ser solo datos.

    sudo file –s /dev/xvdg
    <!--NeedCopy-->
    

    Cree un sistema de archivos.

    sudo mkfs -t xfs /dev/xvdg
    <!--NeedCopy-->
    

    Cree un punto de montaje y monte el dispositivo.

    sudo mkdir /copy
    <!--NeedCopy-->
    
    sudo mount  /dev/svdg /copy
    <!--NeedCopy-->
    

    Compruebe que el dispositivo se ha montado y que hay tres dispositivos (por ejemplo, xvda, xvdf y xvdg).

    lsblk
    <!--NeedCopy-->
    

    Cree la partición mediante fdisk y elija n para la nueva, p para la partición principal, 1 para el número de partición y los valores predeterminados para el primer y último sector (ENTRAR, ENTRAR). Pulse CRTL+C para salir.

    sudo fdisk /dev/xvdg
    >n
    >p
    >1
    >enter
    >enter
    >CTRL+C
    <!--NeedCopy-->
    
  10. Copie el volumen raíz VPX en el nuevo volumen de EBS en el nivel de bloque (por ejemplo, copie SC2S: Commercial Root Vol a SC2S: Copy Low Vol). El archivo creado aquí, citrixADC.img, se puede mover al entorno SC2S.

    sudo dd if=/dev/xvdf of=/copy/citrixADC.img status=progress
    <!--NeedCopy-->
    

    Esta copia puede tardar varias horas.

    Una vez finalizada la copia del archivo, compruebe que el archivo esté en el directorio /copy y cambie los permisos del archivo para permitir la lectura, la escritura y la ejecución.

    ls /copy
    sudo chmod 777 /copy/citrixADC.img
    <!--NeedCopy-->
    
  11. WinSCP el archivo citrixADC.img a una ubicación donde se pueda hacer un DTO hasta el lado alto. Si es necesario, el bastión es lo suficientemente grande como para copiar allí el archivo de la imagen.

Crear un VPX en SC2S: Pasos en el lado alto

  1. Cree una VPC con el mismo bloque de CIDR y subred que en el paso 1 para el lado bajo o utilice la VPC existente. En este ejemplo, el CIDR de la VPC es 10.0.0.0/16 y el espacio IP de subred es 10.0.0.0/16. Esto es extremadamente importante, porque el VPX final que se crea debe ser la misma IP que el original del Marketplace comercial.

    imagen provisional

  2. En la nueva VPC y subred, inicie una instancia de Amazon Linux (AMI de Amazon Linux 2 (HVM), tipo de volumen SSD, respaldado por EBS, habilitado para ENA, 64 bits) del mismo tipo de instancia que la instancia Citrix ADC implementada en el lado inferior (por ejemplo, m4.xlarge). Asigne a la instancia un nombre reconocible (por ejemplo, SC2S: Linux High). Cuando la instancia esté lista, apáguela.

    imagen provisional

  3. Agregue dos volúmenes de EBS con una capacidad superior al tamaño del archivo transferido (por ejemplo, 35 GiB). Estos volúmenes deben ser del mismo tipo de SSD (gp2) que el creado en el lado bajo.
    1. El primer volumen es para la copia de la parte inferior. Asigne al volumen un nombre reconocible (por ejemplo, “SC2S: Copy High Vol”). Conecte este volumen a la nueva instancia de Linux en SC2S como /dev/sdf. Este es el enlace simbólico para /dev/xvdf en la instancia.

    imagen provisional

    1. El segundo volumen se convierte en el volumen raíz del nuevo VPX. Nombra el volumen algo reconocible (por ejemplo, “SC2S: Final VPX Vol”). Conecte este volumen a la nueva instancia de Linux en SC2S como /dev/sdg. Este es el enlace simbólico para /dev/xvdg en la instancia.

    imagen provisional

    La instancia ahora tiene tres dispositivos de bloque conectados, incluido el dispositivo raíz. Encienda la instancia.

    imagen provisional

  4. Cree un host de bastión base de Windows Server 2019 o 2016 de la misma manera que el bastión inferior. Esta instancia debe estar en la VPC y la subred recién creadas, y debe tener al menos 45 GiB para las transferencias de archivos. Establezca “Asignación automática de IP pública” en habilitado. Asigne un nombre a la instancia algo reconocible (por ejemplo, “SC2S: WS2016 Bastion_High”) y configure el grupo de seguridad para permitir “Todo el tráfico” por ahora.

  5. Una vez que el host de bastión esté listo, RDP en el equipo mediante la IP pública, y descargue PuTTY y WinSCP, y copie sobre el par de claves que se utilizó para crear la instancia VPX. Esto requiere la conversión del .pem a un .ppk, mediante PuTTYgen. En el Administrador de servidores, inhabilite Firewall de Windows e Internet Explorer Enhanced Security por ahora.

  6. Copie el archivo citrixADC.img en el nuevo host bastión.

  7. Inicie una sesión PuTTY en la nueva instancia de Linux (por ejemplo, “SC2S: Linux High”) desde el host bastión, mediante la clave privada de AWS con el nombre de usuario ec2-user.

  8. Utilice lsblk para comprobar que todos los dispositivos están presentes en la instancia.

    imagen provisional

  9. Compruebe que el dispositivo /dev/xvdf no tiene ningún sistema de archivos y, a continuación, cree uno.

    Nota:

    NO cree un sistema de archivos en el dispositivo /dev/xvdg.

    sudo file –s /dev/xvdf
    sudo mkfs –t xfs /dev/xvdf
    <!--NeedCopy-->
    

    imagen provisional

  10. Cree un punto de montaje para el dispositivo, monte el dispositivo y compruebe que el punto de montaje del volumen es /copy.

    sudo mkdir /copy
    sudo mount /dev/xvdf /copy
    lsblk
    <!--NeedCopy-->
    

    imagen provisional

  11. Cree una partición mediante fdisk.

    sudo fdisk /dev/xvdf
     >n
     >p
     >1
     >enter
     >enter
     >CTRL+C
    <!--NeedCopy-->
    

    imagen provisional

  12. Cambie los permisos del directorio /copy.

    sudo chmod 777 /copy
    <!--NeedCopy-->
    

    imagen provisional

  13. Mediante WinSCP en el host bastión, conéctese a la instancia de Linux. Copie el archivo citrixADC.img en el directorio /copy. Una vez copiado el archivo, cambie los permisos para permitir la lectura, la escritura y la ejecución para todos desde la consola de WinSCP.

  14. En la CLI de Linux, copie el archivo de imagen en el dispositivo /dev/xvdg mediante el siguiente comando:

    sudo dd if=/copy/citrixADC.img of=/dev/xvdg status=progress
    <!--NeedCopy-->
    

    imagen provisional

  15. Una vez completada la copia, ejecute el comando lsblk para comprobar que las particiones del Citrix ADC se muestran en el dispositivo /dev/xvdg.

    lsblk
    <!--NeedCopy-->
    

    imagen provisional

  16. Apague la instancia de Linux y desconecte el volumen /dev/xvdg (/dev/sdg) (por ejemplo, “SC2S: Final VPX Vol”).

    imagen provisional

    imagen provisional

  17. Implementar una nueva instancia Linux del mismo tipo de instancia EXACT que VPX en el lado bajo, en la misma VPC y subred que se creó en el lado alto (AMI de Amazon Linux 2 (HVM), tipo de volumen SSD, respaldado por EBS, habilitado para ENA, 64 bits, m4.xlarge, grupo de seguridad configurado para permitir “Todo el tráfico”). Durante la configuración, establezca la IP en la MISMA que VPX en el lado inferior, como se señaló en la sección anterior de este documento. Cuando la instancia esté lista, apáguela.

    imagen provisional

  18. Separe el volumen raíz de la instancia Linux recientemente implementada y adjunte la instancia separada (por ejemplo, “SC2S: Final VPX Vol”). Durante el archivo adjunto, especifique el dispositivo como volumen raíz (es decir, /dev/xvda).

    imagen provisional

  19. Encienda la instancia. Mediante el host bastión Highside, PuTTY/SSH a la instancia para verificar la funcionalidad de la VPX. Inicie sesión como nsroot con la contraseña de ID de instancia anotada en la sección anterior de este documento y realice un comando simple.

    sh version
    <!--NeedCopy-->
    

    imagen provisional

Creación de una AMI a partir de la instancia VPX lanzada

  1. Inicie sesión en la instancia de Citrix ADC. Entra en el shell para realizar las modificaciones necesarias como root.

    shell
    <!--NeedCopy-->
    

    imagen provisional

  2. Elimine de forma forzada y recursiva los siguientes directorios y archivos del software ADC manualmente. Para eliminar los archivos y directorios manualmente, agregue rm —rf delante de cada uno. ‘/nsconfig/ns.conf
    ‘/nsconfig/ssh/

    ‘/nsconfig/ssl/
    ‘/nsconfig/aws_bootstrap’
    ‘/nsconfig/rainman.conf’
    ‘/var/nslog’
    ‘/var/log/messages

    ‘/var/log/.log’
    ‘/var/core/

    ‘/nsconfig/.AWS/’
    ‘/var/db’
    ‘/etc/resolv.conf’
    ‘/flash/BUILD’
    ‘/mpsconfig/pgxl/.ssh/id_rsa.pub’
    ‘/var/pubkey/nsroot/.ssh/authorized_keys’
    ‘/var/pubkey/root/.ssh/authorized_keys’

    imagen provisional: rm -rf

    o ejecute este script:

    #!/bin/sh -x
    rm -rf    /nsconfig/ns.conf*
    rm -rf    /nsconfig/ssh/*
    rm -rf    /nsconfig/ssl/*
    rm -rf    /nsconfig/aws_bootstrap
    rm -rf    /nsconfig/rainman.conf
    rm -rf    /var/nslog
    rm -rf    /var/log/messages*
    rm -rf    /var/log/\*.log
    rm -rf    /var/core/\*
    rm -rf    /nsconfig/.AWS/
    rm -rf    /var/db
    rm -rf    /etc/resolv.conf
    rm -rf    /flash/BUILD
    rm -rf    /mpsconfig/pgxl/.ssh/id_rsa.pub
    rm -rf    /var/pubkey/nsroot/.ssh/authorized_keys
    rm -rf    /var/pubkey/root/.ssh/authorized_keys
    <!--NeedCopy-->
    
  3. Cambie los permisos del directorio /flash/nsconfig a 755.

    chmod 755 /flash/nsconfig
    <!--NeedCopy-->
    

    imagen provisional

  4. Verifique que no queden claves residuales. Si los hay, quítelos con fuerza y recursivamente.

    find / -type f -name “authorized*”
    rm -rf <filename>
    <!--NeedCopy-->
    

    imagen provisional

  5. Compruebe que no existan licencias residuales en /nsconfig/license. Si los hay, quítelos con fuerza y recursivamente.

    Nota:

    Habrá otros directorios y archivos en esta carpeta (por ejemplo, SSL y XML), solo elimine los archivos de licencia si están presentes.

    ls /nsconfig/license
    ls /nsconfig/license/ssl
    ls /nsconfig/license/xml
    <!--NeedCopy-->
    

    imagen provisional

  6. Apague la máquina desde la consola de AWS. Una vez que la instancia se haya detenido, cree una AMI a partir de la instancia.

    imagen provisional

    Asigne a la instancia algo reconocible para TODOS, ya que se comparte públicamente a todos los administradores de SC2S (por ejemplo, “Citrix ADC VPX 13.0—47.24”)

    imagen provisional

  7. Una vez que la AMI esté lista, implemente una instancia para verificar su funcionalidad.

    imagen provisional

  8. Establezca los permisos de la AMI en Public, de modo que esté disponible para todos los administradores de SC2S.

Para actualizar a una nueva versión

  • Para VPX de Citrix ADC existentes en SC2S: actualice el VPX con el software de actualización disponible en https://citrix.com/downloads, haga el DTO del archivo a la parte superior. Siga las instrucciones de Actualizar un dispositivo independiente de Citrix ADC para instalarlo. El método de actualización recomendado es usar la línea de comandos.

  • Para los nuevos dispositivos Citrix ADC VPX en SC2S: Cree una AMI para compartirla públicamente. Inicie una instancia desde la AMI existente, actualice la máquina como en la sección anterior y realice los pasos de la sección “Creación de una AMI desde la instancia VPX iniciada” de este documento.

Creación de una imagen de máquina de Amazon (AMI) VPX en SC2S