Aprovisionar la instancia de NetScaler VPX con SR-IOV, en OpenStack
Puede implementar instancias de NetScaler VPX de alto rendimiento que utilizan la tecnología de virtualización de E/S de raíz única (SR-IOV), en OpenStack.
Puede implementar una instancia de NetScaler VPX que utiliza la tecnología SR-IOV, en OpenStack, en tres pasos:
- Habilitar las Funciones Virtuales (VF) de SR-IOV en el host.
- Configurar y poner las VF a disposición de OpenStack.
- Aprovisionar NetScaler VPX en OpenStack.
Requisitos previos
Asegúrese de que:
- Añada la NIC Intel 82599 (NIC) al host.
- Descargue e instale el controlador IXGBE más reciente de Intel.
- Ponga en la lista negra el controlador IXGBEVF en el host. Añada la siguiente entrada en el archivo /etc/modprobe.d/blacklist.conf: Poner en la lista negra
ixgbevf
Nota:
La versión del controlador
ixgbedebe ser como mínimo la 5.0.4.
Habilitar las VF de SR-IOV en el host
Realice uno de los siguientes pasos para habilitar las VF de SR-IOV:
-
Si está utilizando una versión del kernel anterior a la 3.8, añada la siguiente entrada al archivo /etc/modprobe.d/ixgbe y reinicie el host: options ixgbe max_vfs=<number_of_VFs>
-
Si está utilizando la versión 3.8 del kernel o posterior, cree las VF mediante el siguiente comando:
echo <number_of_VFs> > /sys/class/net/<device_name>/device/sriov_numvfs
<!--NeedCopy-->
Donde:
- number_of_VFs es el número de funciones virtuales que desea crear.
- device_name es el nombre de la interfaz.
Importante:
Mientras crea las VF de SR-IOV, asegúrese de no asignar direcciones MAC a las VF.
Aquí tiene un ejemplo de la creación de cuatro VF.

Para que las VF sean persistentes, añada los comandos que utilizó para crear las VF al archivo rc.local. Aquí tiene un ejemplo que muestra el contenido del archivo rc.local.

Para obtener más información, consulte esta Guía de configuración de SR-IOV de Intel.
Configurar y hacer que las VF estén disponibles para OpenStack
Siga los pasos que se indican en el siguiente enlace para configurar SR-IOV en OpenStack: https://wiki.openstack.org/wiki/SR-IOV-Passthrough-For-Networking.
Aprovisionar la instancia de NetScaler VPX en OpenStack
Puede aprovisionar una instancia de NetScaler VPX en un entorno OpenStack utilizando la CLI de OpenStack.
El aprovisionamiento de 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 adjunta a la instancia cuando arranca. Esta unidad de configuración se puede utilizar para pasar información de configuración de red, como la dirección IP de administración, la máscara de red y la puerta de enlace predeterminada, entre otros, a la instancia antes de configurar los ajustes de red para la instancia.
Cuando OpenStack aprovisiona una instancia VPX, primero detecta que la instancia se está iniciando en un entorno OpenStack, leyendo una cadena BIOS específica (OpenStack Foundation) que indica OpenStack. Para las distribuciones de Red Hat Linux, la cadena se almacena en /etc/nova/release. Este es un mecanismo estándar 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 siguiente información del nombre de archivo especificado en el comando de arranque nova. En los procedimientos siguientes, el archivo se denomina “userdata.txt”.
- Dirección IP de administración
- Máscara de red
- Puerta de enlace predeterminada
Una vez que los parámetros se leen correctamente, se rellenan en la pila de NetScaler®. Esto ayuda a administrar la instancia de forma remota. 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 agota el tiempo de espera, la instancia se inicia con la configuración de red predeterminada (192.168.100.1/16).
Aprovisionar la instancia de NetScaler VPX en OpenStack a través de la CLI
Puede aprovisionar una instancia VPX en un entorno OpenStack utilizando la CLI de OpenStack. A continuación, se muestra un resumen de los pasos para aprovisionar una instancia de NetScaler VPX en OpenStack:
-
Extracción del archivo
.qcow2del archivo .tgz -
Creación de una imagen de OpenStack a partir de la imagen qcow2
-
Aprovisionamiento de una instancia VPX
Para aprovisionar una instancia VPX en un entorno OpenStack, siga los pasos siguientes.
-
Extraiga el archivo
qcow2del archivo.tqzescribiendo el 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 <!--NeedCopy--> -
Cree una imagen de OpenStack utilizando el archivo
.qcoz2extraído en el paso 1, escribiendo el siguiente comando:glance image-create --name="<name of the OpenStack image>" --property hw_disk_bus=ide --is-public=true --container-format=bare --disk-format=qcow2< <name of the qcow2 file> glance image-create --name="NS-VPX-12-0-26-2" --property hw_disk_bus=ide --is-public= true --container-format=bare --disk-format=qcow2< NSVPX-KVM-12.0-26.2_nc.qcow2 <!--NeedCopy-->La siguiente ilustración proporciona un ejemplo de salida para el comando glance image-create.
Comando glance image create(/es-es/vpx/media/glance-image-create-command.png)
-
Después de crear una imagen de OpenStack, aprovisione la instancia de NetScaler VPX.
nova boot --image NSVPX-KVM-12.0-26.2 --config-drive=true --userdata ./userdata.txt --flavor m1. medium --nic net-id=3b258725-eaae- 455e-a5de-371d6d1f349f --nic port-id=218ba819-9f55-4991-adb6- 02086a6bdee2 NSVPX-10 <!--NeedCopy-->En el comando anterior, userdata.txt es el archivo que contiene los detalles como la dirección IP, la máscara de red y la puerta de enlace predeterminada para la instancia VPX. El archivo de datos de usuario es un archivo personalizable por el usuario. NSVPX-KVM-12.0-26.2 es el nombre del dispositivo virtual que desea aprovisionar. –NIC port-id=218ba819-9f55-4991-adb6-02086a6bdee2 es el VF de OpenStack.
La siguiente ilustración muestra un ejemplo de salida del comando de arranque
nova.Comando de arranque de salida(/es-es/vpx/media/output-nova-boot-command.png)
La siguiente ilustración muestra un ejemplo del archivo userdata.txt. Los valores dentro de las etiquetas <PropertySection></PropertySection> son los valores configurables por el usuario y contienen información como la dirección IP, la máscara de red y la puerta de enlace predeterminada.
<?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"> <PlatformSection> <Kind>NOVA</Kind> <Version>2013.1</Version> <Vendor>Openstack</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="vpx"/> citrix.com 4 <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.0.100"/> <Property oe:key="com.citrix.netscaler.mgmt.netmask" oe:value="255.255.0.0"/> <Property oe:key="com.citrix.netscaler.mgmt.gateway" oe:value="10.1.0.1"/> </PropertySection> </Environment> <!--NeedCopy-->
Configuraciones adicionales admitidas: Creación y eliminación de VLAN en VF de SR-IOV desde el host
Escriba el siguiente comando para crear una VLAN en el VF de SR-IOV:
ip link show enp8s0f0 vf 6 vlan 10
En el comando anterior, “enp8s0f0” es el nombre de la función física.
Ejemplo: VLAN 10, creada en vf 6
Crear VLAN 10 en VF6 ](/es-es/vpx/media/vlan-10-created-on-vf6.png)
Escriba el siguiente comando para eliminar una VLAN en el VF SR-IOV:
ip link show enp8s0f0 vf 6 vlan 0
Ejemplo: VLAN 10, eliminada del vf 6

Estos pasos completan el procedimiento para implementar una instancia de NetScaler VPX que utiliza la tecnología SRIOV, en OpenStack.