Citrix ADC

Aprovisione la instancia Citrix ADC VPX mediante OpenStack

Puede aprovisionar una instancia Citrix ADC VPX en un entorno OpenStack mediante el comando de arranque Nova (CLI de OpenStack) u Horizon (panel de OpenStack).

Aprovisionar una instancia VPX, opcionalmente implica el uso de datos de la unidad de configuración. La unidad de configuración es una unidad de configuración especial que se conecta a la instancia como un dispositivo de CD-ROM cuando se inicia. Esta unidad de configuración se puede utilizar para pasar la configuración de red, como la dirección IP de administración, la máscara de red, la Gateway predeterminada y para inyectar scripts de clientes.

En un dispositivo Citrix ADC, el mecanismo de autenticación predeterminado se basa en contraseña. Ahora, el mecanismo de autenticación de pares de claves SSH es compatible con instancias Citrix ADC VPX en el entorno OpenStack.

El par de claves (clave pública y clave privada) se genera antes de utilizar el mecanismo de criptografía de clave pública. Puede utilizar distintos mecanismos, como Horizon, Puttygen.exe para Windows y ssh-keygen para el entorno Linux, para generar el par de claves. Consulte la documentación en línea de los respectivos mecanismos para obtener más información sobre la generación de pares de claves.

Una vez disponible un par de claves, copie la clave privada en una ubicación segura a la que tienen acceso las personas autorizadas. En OpenStack, la clave pública se puede implementar en una instancia VPX mediante el comando de arranque Horizon o Nova. Cuando se aprovisiona una instancia VPX mediante OpenStack, primero detecta que la instancia se está iniciando en un entorno OpenStack leyendo una cadena de BIOS específica. Esta cadena es “OpenStack Foundation” y para las distribuciones de Red Hat Linux se almacena en /etc/nova/release. Se trata de un mecanismo estándar que está disponible en todas las implementaciones de OpenStack basadas en la plataforma de hipervisor KVM. La unidad debe tener una etiqueta OpenStack específica.

Si se detecta la unidad de configuración, la instancia intenta leer la configuración de red, los scripts personalizados y el par de claves SSH si se proporciona.

Archivo de datos de usuario

La instancia Citrix ADC VPX utiliza un archivo OVF personalizado, también conocido como archivo de datos de usuario, para inyectar la configuración de red, scripts personalizados. Este archivo se proporciona como parte de la unidad de configuración. A continuación se muestra un ejemplo de un archivo OVF personalizado.

```
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Environment xmlns:oe="http://schemas.dmtf.org/ovf/environment/1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
oe:id=""
xmlns="http://schemas.dmtf.org/ovf/environment/1"
xmlns:cs="http://schemas.citrix.com/openstack">
<PlatformSection>
<Kind></Kind>
<Version>2016.1</Version>
<Vendor>VPX</Vendor>
<Locale>en</Locale>
</PlatformSection>
<PropertySection>
<Property oe:key="com.citrix.netscaler.ovf.version" oe:value="1.0"/>
<Property oe:key="com.citrix.netscaler.platform" oe:value="NSVPX"/>
<Property oe:key="com.citrix.netscaler.orch_env" oe:value="openstack-orch-env"/>
<Property oe:key="com.citrix.netscaler.mgmt.ip" oe:value="10.1.2.22"/>
<Property oe:key="com.citrix.netscaler.mgmt.netmask" oe:value="255.255.255.0"/>
<Property oe:key="com.citrix.netscaler.mgmt.gateway" oe:value="10.1.2.1"/>
</PropertySection>
 <cs:ScriptSection>
   <cs:Version>1.0</cs:Version>
     <ScriptSettingSection xmlns="http://schemas.citrix.com/openstack" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
         <Scripts>
           <Script>
                 <Type>shell</Type>
                 <Parameter>X Y</Parameter>
                <Parameter>Z</Parameter>
                <BootScript>before</BootScript>
                  <Text>
                        #!/bin/bash
                        echo "Hi, how are you" $1 $2 >> /var/sample.txt
                  </Text>
           </Script>
           <Script>
                 <Type>python</Type>
                 <BootScript>after</BootScript>
                  <Text>
                       #!/bin/python
 print("Hello");
                  </Text>
           </Script>
   <Script>
                 <Type>perl</Type>
                 <BootScript>before</BootScript>
                  <Text>
                       !/usr/bin/perl
 my $name = "VPX";
 print "Hello, World $name !\n" ;
                  </Text>
           </Script>
           <Script>
                <Type>nscli</Type>
                <BootScript>after</BootScript>
                <Text>
                 add vlan 33
 bind vlan 33 -ifnum 1/2
                </Text>
           </Script>
         </Scripts>
     </ScriptSettingSection>
 </cs:ScriptSection>
</Environment>
<!--NeedCopy--> ```

En el archivo OVF anterior a "PropertySection" se utiliza para la configuración de redes de NetScaler, mientras que <cs:ScriptSection> se utiliza para adjunto todos los scripts. <Scripts></Scripts> las etiquetas se utilizan para agrupar todos los scripts juntos. Cada script se define entre etiquetas <Script> </Script>. Cada etiqueta de script tiene los siguientes campos/etiquetas:

a) <Type>: Especifica el valor para el tipo de script. Valores posibles: Shell/Perl/Python/NSLCI (para scripts de NetScaler CLI)

b) <Parameter>: Proporciona parámetros al script. Cada script puede tener varias etiquetas <Parameter>.

c) <BootScript>: Especifica el punto de ejecución del script. Valores posibles para esta etiqueta: antes/después. “before” especifica que el script se ejecuta antes de que aparezca PE. “after” especifica que el script se ejecutará después de que aparezca PE.

d) <Text>: Pega el contenido de un script.

Nota

Actualmente, la instancia VPX no se ocupa de la desinfección de scripts. Como administrador, debe comprobar la validez del script.

No todas las secciones necesitan estar presentes. Utilice una “PropertySection” vacía para definir únicamente los scripts que se ejecutarán en el primer arranque o en vacío para definir únicamente la configuración de red.

Una vez completadas las secciones requeridas del archivo OVF (archivo de datos de usuario), utilícelo para aprovisionar la instancia VPX.

Configuración de red

Como parte de la configuración de red, la instancia VPX dice lo siguiente:

  • Dirección IP de administración
  • Máscara de red
  • Puerta de enlace predeterminada

Después de leer correctamente los parámetros, se rellenan en la configuración de NetScaler para permitir la administración remota de la instancia. Si los parámetros no se leen correctamente o la unidad de configuración no está disponible, la instancia pasa al comportamiento predeterminado, que es:

  • La instancia intenta recuperar la información de la dirección IP de DHCP.
  • Si DHCP falla o se agota el tiempo, la instancia presenta la configuración de red predeterminada (192.168.100.1/16).

Script del cliente

La instancia VPX permite ejecutar un script personalizado durante el aprovisionamiento inicial. El dispositivo admite comandos de tipo Shell, Perl, Python y Citrix ADC CLI comandos.

Autenticación de par de claves SSH

La instancia VPX copia la clave pública, disponible dentro de la unidad de configuración como parte de metadatos de instancia, en su archivo “authorized_keys”. Esto permite al usuario acceder a la instancia con clave privada.

Nota

Cuando se proporciona una clave SSH, las credenciales predeterminadas (nsroot/nsroot) ya no funcionan, si se necesita acceso basado en contraseña, inicie sesión con la clave privada SSH correspondiente y establezca manualmente una contraseña.

Antes de comenzar

Antes de aprovisionar una instancia VPX en el entorno OpenStack, extraiga el .qcow2 archivo del archivo.tgz y compilar

Imagen de OpenStack de la imagen qcow2. Siga estos pasos:

  1. Extraiga el .qcow2 archivo del .tqz archivo escribiendo el siguiente comando

    tar xvzf <TAR file>
    tar xvzf <NSVPX-KVM-12.0-26.2_nc.tgz>
    NSVPX-KVM.xml
    NSVPX-KVM-12.0-26.2_nc.qcow2
    
  2. Cree una imagen de OpenStack mediante el .qcoz2 archivo extraído en el paso 1 escribiendo el siguiente comando.

    openstack image create --container-format bare --property hw_disk_bus=ide --disk-format qcow2 --file <path to qcow2 file> --public <name of the OpenStack image>
    
    glance image-create --name="NS-VPX-12-0-26-2" --property hw_disk_bus=ide --ispublic=
    true --container-format=bare --disk-format=qcow2< NSVPX-KVM-12.0-26.2_nc.qcow2
    

    Ilustración 1: La siguiente ilustración proporciona un ejemplo de salida para el comando glance image-create.

    Comando de creación de imágenes OpenStack

Aprovisionamiento de la instancia VPX

Puede aprovisionar una instancia VPX de dos maneras mediante una de las opciones:

  • Horizon (panel de control de OpenStack)
  • Comando de arranque Nova (CLI de OpenStack)

Aprovisione una instancia VPX mediante el panel de control de OpenStack

Siga estos pasos para aprovisionar la instancia VPX mediante Horizon:

  1. Inicie sesión en el panel de control de OpenStack.
  2. En el panel Proyecto, situado a la izquierda del tablero de mandos, seleccione Instancias.
  3. En el panel Instancias, haga clic en Iniciar instancia para abrir el Asistente de inicio de instancias.

    Asistente para lanzamiento de instancias

  4. En el asistente Iniciar instancia, rellene los detalles, como:

    1. Nombre de la instancia
    2. Sabor de instancia
    3. Recuento de instancias
    4. Origen de inicio de instancia
    5. Nombre de la imagen

    Detalles del asistente de lanzamiento

  5. Implemente un nuevo par de claves o un par de claves existente a través de Horizon siguiendo los pasos siguientes:

    a) Si no tiene un par de claves existente, cree la clave mediante cualquier mecanismo existente. Si ya tiene una clave, omita este paso.

    b) Copiar el contenido de la clave pública.

    c) Vaya a Horizon > Instancias > Crear nuevas instancias.

    d) Haga clic en Acceso y seguridad.

    e) Haga clic en el signo + situado junto al menú desplegable Par de claves y proporcione los valores de los parámetros mostrados.

    f) Pegar contenido de clave pública en el cuadro Clave pública, dar un nombre a la clave y hacer clic en Importar par de claves.

    Importar par de claves OpenStack

  6. Haga clic en la ficha Creación de publicaciones del asistente. En Script de personalización, agregue el contenido del archivo de datos de usuario. El archivo de datos de usuario contiene la dirección IP, los detalles de la máscara de red y la puerta de enlace y los scripts de cliente de la instancia VPX.

  7. Después de seleccionar o importar un par de claves, marque la opción config-drive y haga clic en Iniciar.

    Instancia de lanzamiento

Aprovisione la instancia VPX mediante OpenStack CLI

Siga estos pasos para aprovisionar una instancia VPX mediante OpenStack CLI.

  1. Para crear una imagen desde qcow2, escriba el siguiente comando:

    openstack image create --container-format bare --property hw_disk_bus=ide --diskformat qcow2 --file NSVPX-OpenStack.qcow2 --public VPX-ToT-Image

  2. Para seleccionar una imagen para crear una instancia, escriba el siguiente comando:

    openstack image list | more

  3. Para crear una instancia de un sabor determinado, escriba el siguiente comando para elegir un ID de sabor de una lista:

    openstack flavor list

  4. Para conectar una NIC a una red determinada, escriba el siguiente comando para elegir un ID de red de una lista de redes:

    openstack network list

  5. Para crear una instancia, escriba el siguiente comando:

    openstack server create --flavor FLAVOR_ID --image IMAGE_ID --key-name KEY_NAME
    --user-data USER_DATA_FILE_PATH --config-drive True --nic net-id=net-uuid
    INSTANCE_NAME
    openstack server create --image VPX-ToT-Image --flavor m1.medium --user-data
    ovf.xml --config-drive True --nic net-id=2734911b-ee2b-48d0-a1b6-3efd44b761b9
    VPX-ToT
    

Ilustración 2: La siguiente ilustración proporciona un resultado de ejemplo.

OpenStack Proporcionar CLI

Aprovisione la instancia Citrix ADC VPX mediante OpenStack