Implementación y administración de vMX
Lea este tema para comprender los procedimientos necesarios para administrar la instancia de vMX después de instalarla.
Especificación de parámetros de archivo de configuración vMX
Los parámetros necesarios para configurar vMX se definen en el archivo de configuración de inicio. El archivo de configuración está en formato YAML . El archivo predeterminado es config/vmx.conf. Le recomendamos que cambie el nombre del archivo de configuración a otro nombre para que pueda usar el mismo archivo de configuración cada vez que cree instancias diferentes.
Debe configurar estas tres interfaces para iniciar la VFP.
Acceso de administración
Puente para la comunicación interna entre VCP y VFP
Interfaz WAN (mínimo de una)
A partir de Junos OS versión 18.1, para configurar la instancia de vMX, descargue y modifique el archivo de configuración de inicio (vmx.conf).
Descargue el paquete de software vMX como raíz y descomprima el paquete.
tar xzvf package-name
Cambie el directorio a la ubicación del paquete vMX sin comprimir.
cd package-location
Edite el archivo de texto config/vmx.conf con un editor de texto para configurar una sola instancia vMX y guardar el archivo.
Para personalizar la configuración, realice estas tareas:
- Configuración del host
- Configuración de la VM VCP
- Configuración de la VM VFP
- Configuración de interfaces
Configuración del host
Para configurar el entorno de host, debe cambiar el identificador para cada instancia de vMX y debe proporcionar la ruta correcta para las imágenes.
Para configurar el host, vaya a Host y especifique los siguientes parámetros:
Parámetro |
Descripción |
---|---|
|
Nombre de la instancia de vMX, máximo de cuatro caracteres alfanuméricos. |
|
Nombre de la NIC física en el dispositivo host que se usa para el acceso de administración (eth0).
Nota:
Las interfaces para HOST:host-management-interface, CONTROL_PLANE y FORWARDING_PLANE deben estar en la misma subred. |
|
Ruta absoluta al archivo junos-vmx-x86-64-*.qcow2 para lanzar VCP. |
|
Ruta absoluta al archivo vmxhdd.img para el almacenamiento VCP. |
|
Ruta absoluta al archivo vFPC-*.img para iniciar VFP. |
|
(Opcional) Realiza una copia local de las imágenes VCP y VFP y usa la copia local para iniciar vMX. El valor predeterminado es
Nota:
Copie el archivo de imagen desde su ubicación predeterminada para asegurarse de que los scripts no intenten usar el mismo archivo de imagen al mismo tiempo. |
|
(Opcional) Realiza una copia local de la imagen de almacenamiento VCP y usa la copia local para iniciar vMX. El valor predeterminado es
Nota:
Copie el archivo de imagen desde su ubicación predeterminada para asegurarse de que los scripts no intenten usar el mismo archivo de imagen al mismo tiempo. |
Configuración de la VM VCP
Para configurar la VM VCP, debe cambiar la dirección IP y debe asegurarse de que otra instancia de vMX u otro servidor no utilice el puerto de la consola.
Para configurar la VM VCP, vaya a CONTROL_PLANE y especifique los siguientes parámetros:
Parámetro |
Descripción |
---|---|
|
Número de vCPU para el VCP, el valor predeterminado es 1. A partir de Junos OS versión 18.1, si está implementando instancias de VCP duales, debe duplicar la cantidad de vCPU. |
|
Cantidad de memoria para el VCP, el valor predeterminado es 2 GB. En junos OS versión 15.1F6, cantidad de memoria para el VCP; el mínimo es de 4 GB (modo de rendimiento) y 1 GB (modo lite). |
|
Puerto de consola basado en TCP KVM. Debe ser un número único. |
|
(Opcional) Instancia de VCP que se va a implementar en este host. Especifique el número de la instancia; la primera instancia es 0, la segunda instancia es 1 y varias instancias están separadas por una coma. Si no especifica este parámetro, ambas instancias (
Nota:
Cuando se implementa en hosts independientes, debe configurar una conexión entre los hosts para que los VCP se comuniquen. A partir de Junos OS versión 18.1 Si está implementando en varios servidores (por ejemplo, un servidor como re y un servidor como PFE), y desea deshabilitar VCP para el plano de control en el servidor, tiene la opción de especificar |
|
(Opcional) Dirección IP para la interfaz desde la cual se puede acceder a la consola; el valor predeterminado es 127.0.0.1, el cual solo permite el acceso desde el host. Para permitir el acceso desde cualquier interfaz, especifique 0.0.0.0. |
|
Instancia de VCP. Vaya a interfaces > tipo (estático) e incluya este parámetro debajo de él. (Opcional) Cree la segunda instancia debajo de la primera instancia e incluya el interfaces : - type : static instance : 0 ipaddr : 10.102.144.94 macaddr : "0A:00:DD:C0:DE:0E" - type : static instance : 1 console_port: 8612 ipaddr : 10.102.144.95 macaddr : "0A:00:DD:C0:DE:0F" |
|
Dirección IP de administración para la VM VCP (fxp0). Vaya a interfaces > tipo (estático) > ipaddr para modificar este parámetro.
Nota:
Las interfaces para HOST:host-management-interface, CONTROL_PLANE y FORWARDING_PLANE deben estar en la misma subred. |
Configuración de la VM VFP
Antes de configurar la vm VFP, tenga en cuenta lo siguiente:
Debe asegurarse de que otra instancia de vMX u otro servidor no utilice el puerto de la consola.
Para deshabilitar el acceso de red a la consola VFP, no configure una dirección IP.
Según sus requisitos, es posible que desee cambiar la memoria, el número de vCPU y el tipo de dispositivo. Consulte Instalación de vMX para diferentes casos de uso para obtener algunos requisitos de configuración de ejemplo.
A partir de Junos OS versión 18.1 si está implementando en varios servidores (por ejemplo, un servidor como RE y un servidor como PFE), y necesita deshabilitar VFP para el plano de reenvío en el servidor, tiene la opción de especificar none
.
Para configurar la vm VFP, vaya a FORWARDING_PLANE y especifique los siguientes parámetros:
Parámetro |
Descripción |
---|---|
|
Cantidad de memoria para la VFP, el valor predeterminado es 6 GB. |
|
Número de vCPU para la VFP, el valor predeterminado es 3. |
|
Puerto de consola basado en TCP KVM. Debe ser un número único. |
|
(Opcional) Instancia de VFP que se va a implementar en este host. Especifique el número de la instancia; la primera instancia es 0, la segunda instancia es 1 y varias instancias están separadas por una coma. Si no especifica este parámetro, ambas instancias (
Nota:
Cuando se implementa en hosts independientes, debe configurar una conexión entre los hosts para que los VFP se comuniquen. |
|
(Opcional) Dirección IP para la interfaz desde la cual se puede acceder a la consola; el valor predeterminado es 127.0.0.1, el cual solo permite el acceso desde el host. Para permitir el acceso desde cualquier interfaz, especifique 0.0.0.0. |
|
Tipo de interfaz NIC, ya sea |
|
Dirección IP de administración para la VM VFP (eth0). Vaya a interfaces > tipo (estático) > ipaddr para modificar este parámetro.
Nota:
Las interfaces para HOST:host-management-interface, CONTROL_PLANE y FORWARDING_PLANE deben estar en la misma subred. |
|
Establecer en true para permitir el uso del controlador del host.
Nota:
Desde Junos OS versión 18.4R1 (host Ubuntu) y Junos OS versión 19.1R1 (host Red Hat), puede establecer el |
Para configurar la VM VFP, vaya a FORWARDING_PLANE y especifique los siguientes parámetros (compatibles con la versión 15.1F6 de Junos OS):
Parámetro |
Descripción |
---|---|
|
Cantidad de memoria para la VFP; el mínimo es de 12 GB (modo de rendimiento) y 4 GB (modo lite). |
|
Número de vCPU para la VFP; el mínimo es 7 (modo de rendimiento) y 3 (modo lite). |
|
Puerto de consola basado en TCP KVM. Debe ser un número único. |
|
(Opcional) Dirección IP para la interfaz desde la cual se puede acceder a la consola; el valor predeterminado es 127.0.0.1, el cual solo permite el acceso desde el host. Para permitir el acceso desde cualquier interfaz, especifique 0.0.0.0. |
|
Tipo de interfaz NIC, ya sea |
|
Dirección IP de administración para la VM VFP (eth0). Vaya a interfaces > tipo (estático) > ipaddr para modificar este parámetro.
Nota:
Las interfaces para HOST:host-management-interface, CONTROL_PLANE y FORWARDING_PLANE deben estar en la misma subred. |
Configuración de interfaces
Los nombres de interfaz JUNOS_DEVICES corresponden a los nombres de NIC físicos de Linux en el host. Traiga los puertos NIC físicos de Linux que se definen en esta sección antes de continuar. Por ejemplo, utilice el ifconfig eth9 up
comando para abrir los puertos NIC en la interfaz eth9.
Para configurar interfaces para tipos de dispositivos virtio, debe especificar la interfaz y la dirección MAC. Puede enlazar dispositivos virtio para conectar NICs de virtio en el vMX a NICs físicas o NICs de virtio en otro vMX (consulte Enlace de dispositivos virtio).
Para configurar interfaces para tipos de dispositivos SR-IOV, debe especificar la interfaz, la NIC y la dirección MAC.
Para configurar las interfaces enrutadas, vaya a JUNOS_DEVICES y especifique los siguientes parámetros:
Parámetro |
Descripción |
---|---|
|
Nombre de la interfaz en el vMX.
Nota:
Los nombres de interfaz que se definen en el archivo vmx.conf deben ser contiguos a partir de ge-0/0/0. El número total de interfaces admitidas es de 23 para configuraciones que se ejecutan en modo de rendimiento. Si está ejecutando interfaces virtio en modo lite, puede usar hasta 96 interfaces. |
|
Tipo de interfaz NIC, ya sea
Nota:
Si está configurando ambos tipos de interfaz, debe especificar las interfaces virtio antes de las interfaces SR-IOV. |
|
(solo SR-IOV) La velocidad de puerto de la NIC física es predeterminada de 10000 Mbps. |
|
(solo SR-IOV) Nombre de la NIC física.
Nota:
Dependiendo de la versión de udev, puede cambiar el nombre de los nombres ethXX estándar de Linux clásicos. Consulte Nombres de interfaz de red predecibles para obtener más información. |
|
(solo SR-IOV) Valor de MTU, el predeterminado es 2000 y el máximo es 9500. Para cambiar la configuración de MTU para tipos de dispositivos virtio, modifique el |
|
(solo SR-IOV) Unidad secundaria de la NIC física, el valor predeterminado es 0. (solo SR-IOV) Número de función virtual de la NIC física; el valor predeterminado es 0 (compatible con Junos OS versión 15.1F5 y versiones anteriores). |
|
Dirección MAC de unidifusión para la NIC física. |
|
Descripción de la asignación. |
Conexión a máquinas virtuales
Realice estas tareas para conectarse a las máquinas virtuales para la configuración por primera vez, a fin de habilitar el acceso por otros medios (como Telnet o SSH):
Inicio de sesión en VCP
Puede acceder a la consola de serie mediante el ./vmx.sh --console vcp vmx-id
comando, donde vmx-id
está el identificador vMX especificado en el archivo de configuración de inicio, e iniciar sesión con el nombre de usuario root
y sin contraseña.
Para desconectarse de la consola, cierre sesión y presione Ctrl + ]. En el telnet>
indicador, escriba close
y presione Intro.
Inicio de sesión en VFP
Puede acceder a la consola serie mediante el ./vmx.sh --console vfp vmx-id
comando, donde vmx-id
está el identificador vMX especificado en el archivo de configuración de inicio, e iniciar sesión con la raíz de nombre de usuario y la raíz de contraseña.
Para desconectarse de la consola, cierre sesión y presione Ctrl + ]. En el telnet>
indicador, escriba close
y presione Enter
.
Para SSH en el plano de reenvío virtual (VFP), use la dirección IP definida en FORWARDING_PLANE en el archivo vmx.conf. Por razones de seguridad, no puede conectarse a VFP mediante el protocolo Telnet.
También por razones de seguridad, no puede conectarse a la instancia de VFP mediante el protocolo SSH con el usuario raíz. Primero debe tener acceso a la VFP con la consola, iniciar sesión como usuario raíz y crear un usuario con el que pueda usar SSH.
Por ejemplo:
Acceda a la VFP con la consola:
root@ubuntu:~/19.2/vmx# ./vmx.sh --console vfp vmx1
root@qemux86-64:/home/pfe/riot# ./vfp_util.sh -create_user Enter Username:pfe Enter Password: Re-enter Password: Not copying any file from skel directory into it. User pfe created, HOME:/var/pfe Restarting OpenBSD Secure Shell server: sshd.
Ahora, cuando se usa SSH para acceder al VFP como usuario PFE, puede iniciar sesión como superusuario para acceder al directorio raíz.
pfe@qemux86-64:~$ su root@qemux86-64:/var/pfe# id uid=0(root) gid=0(root) groups=0(root) root@qemux86-64:/var/pfe#
Administración de vMX
Solo se admite la configuración regional en inglés para usar la secuencia de comandos vmx.sh.
Después de instalar e implementar vMX, puede usar la secuencia de comandos vmx.sh con diferentes opciones para realizar estas tareas:
- Implementación de vMX
- Administración de despliegues de vMX
- Especificación del directorio temporal de archivos
- Especificación del archivo de entorno
- Configuración de opciones de registro para vMX
- Conexión al puerto de la consola para las máquinas virtuales
- Obtener ayuda para las opciones de script
Implementación de vMX
Debe iniciar sesión como raíz para usar las opciones de control.
El uso de la --install
opción también inicia las vm VCP y VFP.
Le recomendamos que implemente el vMX ejecutando la ./vmx.sh -lv --install
secuencia de comandos para proporcionar un registro detallado a un archivo para la implementación de la instancia de vMX.
Solo se admite la configuración regional en inglés para usar la secuencia de comandos vmx.sh.
Si no puede desplegar vMX después de actualizar libvirt, derribe el puente virbr0 con el ifconfig virbr0 down
comando y elimine el puente con el brctl delbr virbr0
comando.
Antes de reiniciar el servidor host, debe cerrar la instancia de vMX mediante el request system halt
comando.
Para desplegar vMX, utilice estas opciones con la secuencia de comandos vmx.sh :
--cfg file |
Utilice el archivo de configuración de inicio de vMX especificado. El archivo predeterminado es config/vmx.conf. |
--install |
Inicie vMX configurando el entorno, las dependencias del controlador y los requisitos de memoria e implementando el vMX. Si no especifica un archivo de configuración de inicio con la |
Si no puede desplegar vMX después de actualizar libvirt, derribe el puente virbr0 con el ifconfig virbr0 down
comando y elimine el puente con el brctl delbr virbr0
comando.
En este ejemplo, se despliega una nueva instancia vMX especificada por el archivo de configuración my-vmx.cfg y se proporciona un registro detallado a nivel de un archivo:
./vmx.sh -lv --install --cfg config/my-vmx.cfg
Administración de despliegues de vMX
Debe iniciar sesión como raíz para usar las opciones de control.
Utilice estas opciones con la secuencia de comandos vmx.sh para detener, iniciar, reiniciar, verificar y limpiar un vMX existente:
--cfg file |
Utilice el archivo de configuración de inicio de vMX especificado. El archivo predeterminado es config/vmx.conf. |
--cleanup |
Detenga vMX y limpie la información relevante de la instancia de vMX. También derriba los puentes de Linux y otras dependencias. Si no especifica un archivo de configuración de inicio con la |
--restart |
Detenga y comience una vMX en ejecución. Esta opción es útil para volver a implementar una vMX que tenga cambios de parámetros en el archivo de configuración de inicio. Si no especifica un archivo de configuración de inicio con la |
--start |
Inicie el vMX que se estaba ejecutando y se detuvo. Si no especifica un archivo de configuración de inicio con la |
--status |
Compruebe el estado de un vMX implementado. Si no especifica un archivo de configuración de inicio con la |
--stop |
Detenga vMX sin limpiar los archivos de compilación para que el vMX se pueda iniciar rápidamente sin la configuración realizada por la |
En este ejemplo, se desglosa una instancia vMX existente especificada por el archivo de configuración my-vmx.cfg :
./vmx.sh --cleanup --cfg config/my-vmx.cfg
A partir de junos OS versión 19.1 en adelante, si está implementando la imagen vMX con tarjetas NIC basadas en controladores i40e y desea volver a implementar el vMX que tiene cambios de parámetros en el archivo de configuración de inicio, recomendamos no utilizar las opciones como --restart o --start/--stop. Debe utilizar las siguientes opciones:
Utilice el
./vmx.sh --cleanup
comando para limpiar un vMX existente.Ejecute la
./vmx.sh -lv --install
secuencia de comandos para volver a implementar vMX.
La instancia de vMX comienza con la configuración actualizada.
Especificación del directorio temporal de archivos
Debe iniciar sesión como raíz para usar las opciones de control.
Para especificar el directorio que se usa para los archivos temporales, ejecute la secuencia de ./vmx.sh build directory
comandos. El directorio predeterminado es build/vmx-id, donde vmx-id está el identificador vMX especificado en el archivo de configuración de inicio.
De forma predeterminada, las copias de las imágenes VCP y VFP se copian en este directorio. Le recomendamos que no cambie los make-local-copy-of-images
parámetros y make-local-copy-of-vmxhdd
cuando especifique los parámetros del archivo de configuración de inicio para el host.
Especificación del archivo de entorno
Debe iniciar sesión como raíz para usar las opciones de control.
Para especificar el archivo de entorno (.env), ejecute la secuencia de ./vmx.sh env file
comandos. El archivo predeterminado es env/ubuntu_sriov.env.
Configuración de opciones de registro para vMX
Puede habilitar las opciones de registro. Es especialmente útil cuando se utiliza con las opciones de control, como --install
.
Utilice estas opciones para configurar el registro:
-l |
Habilite el inicio de sesión en un archivo en el directorio de compilación especificado. El directorio predeterminado es build//vmx-idlogs, donde vmx-id está el identificador vMX especificado en el archivo de configuración de inicio. De forma predeterminada, el registro está deshabilitado. |
-lv |
Habilite el registro con detalles detallados. |
-lvf |
Habilite el registro con detalles detallados al primer plano (salida estándar). |
En este ejemplo, se despliega una nueva instancia vMX especificada por el archivo de configuración my-vmx.cfg y se proporciona un registro detallado a nivel de un archivo:
./vmx.sh -lv --install --cfg config/my-vmx.cfg
Conexión al puerto de la consola para las máquinas virtuales
Utilice estas opciones con la secuencia de comandos vmx.sh para conectarse a la consola del VCP o VFP del vMX especificado:
--console vcp [vmx-id] |
Conéctese a la consola del VCP para el vMX especificado. El identificador vMX se especifica en el archivo de configuración de inicio. |
--console vfp [vmx-id] |
Conéctese a la consola de la VFP para el vMX especificado. El identificador vMX se especifica en el archivo de configuración de inicio. |
En este ejemplo, se conecta a la consola del VCP para la instancia vMX especificada por el identificador vmx1:
./vmx.sh --console vcp vmx1
Obtener ayuda para las opciones de script
Para obtener ayuda en línea para las opciones de secuencia de comandos de vmx.sh , ejecute la ./vmx.sh --help
secuencia de comandos.
Enlace de dispositivos virtio
En el caso de configuraciones que utilizan tipos de dispositivos virtio, puede enlazar varias instancias de vMX en el mismo sistema si el host tiene suficiente CPU y memoria para admitir las instancias de vMX. Configure cada instancia de vMX con un archivo de configuración de inicio diferente.
Si está implementando varias instancias de vMX, asegúrese de lo siguiente:
Los identificadores de VM son únicos en todas las instancias.
Los puertos de consola del VCP y el VFP son únicos en todas las instancias.
La dirección IP estática externa del VCP y la VFP son únicas en todas las instancias.
Las direcciones MAC del VCP y el VFP son únicas en todas las instancias, siempre que se especifique.
Todas las máquinas virtuales comparten el mismo dominio de administración. La interfaz de administración física (por ejemplo, eth0) también es parte de este puente externo global.
Puede conectar nics virtio en el vMX a NICs físicas o NICs de virtio en otro vMX vinculando estos dispositivos como se muestra en la figura 1.
Para administrar los enlaces de dispositivos, realice estas tareas:
- Configuración de los enlaces de dispositivos
- Creación de enlaces de dispositivos
- Eliminación de enlaces de dispositivos
- Verificar enlaces de dispositivos
Configuración de los enlaces de dispositivos
Los parámetros necesarios para configurar vMX para enlazar dispositivos se definen en el archivo de enlace de dispositivos. El archivo de enlace del dispositivo está en formato YAML . El archivo predeterminado es config/vmx-junosdev.conf.
El archivo de enlace de dispositivo define los puntos de conexión de cada vínculo que se originan en la VFP de un vMX. Un punto de conexión debe ser un dispositivo que use NICs de virtio. El otro punto de conexión puede ser una NIC física, una NIC virtio en otra instancia de vMX o un puente de Linux.
Para enlazar las instancias de vMX juntos:
Aquí hay un archivo de enlace de dispositivos vMX de ejemplo:
interfaces : - link_name : link_host mtu : 1500 endpoint_1 : - type : junos_dev vm_name : vmx1 dev_name : ge-0/0/0 endpoint_2 : - type : host_dev dev_name : int2 - link_name : link_vmx_12 mtu : 1500 endpoint_1 : - type : junos_dev vm_name : vmx1 dev_name : ge-0/0/1 endpoint_2 : - type : junos_dev vm_name : vmx2 dev_name : ge-0/0/0 - link_name : bridge_vmx_123 endpoint_1 : - type : junos_dev vm_name : vmx1 dev_name : ge-0/0/2 endpoint_2 : - type : bridge_dev dev_name : bridge1 - link_name : bridge_vmx_123 endpoint_1 : - type : junos_dev vm_name : vmx2 dev_name : ge-0/0/1 endpoint_2 : - type : bridge_dev dev_name : bridge1 - link_name : bridge_vmx_123 endpoint_1 : - type : junos_dev vm_name : vmx3 dev_name : ge-0/0/0 endpoint_2 : - type : bridge_dev dev_name : bridge1
La link_host
entrada muestra cómo conectar la interfaz ge-0/0/0 en vmx1 a la NIC física. La link_vmx_12
entrada muestra cómo conectar dos interfaces en vmx1 y vmx2 entre sí. Las bridge_vmx_123
entradas muestran cómo conectar las interfaces en vmx1, vmx2 y vmx3 con un puente.
Creación de enlaces de dispositivos
Debe iniciar sesión como raíz para enlazar dispositivos.
Para enlazar dispositivos con NICs virtio a otros dispositivos, defina sus dispositivos en el archivo de enlace de dispositivos vMX y ejecute la ./vmx.sh --bind-dev –-cfg device-binding-file
secuencia de comandos para crear el enlace del dispositivo. Si no especifica un archivo, el archivo predeterminado es config/vmx-junosdev.conf.
En este ejemplo, se crean enlaces de dispositivos con el archivo de enlace de dispositivo especificado:
./vmx.sh --bind-dev –-cfg config/vmx1-junosdev.conf
Eliminación de enlaces de dispositivos
Debe iniciar sesión como raíz para desenlace de dispositivos.
Para desenlace dispositivos, ejecute la secuencia de ./vmx.sh --unbind-dev –-cfg device-binding-file
comandos para eliminar los enlaces de dispositivos creados con la --bind-dev
opción. Si no especifica un archivo, el archivo predeterminado es config/vmx-junosdev.conf.
En este ejemplo, se eliminan los enlaces de dispositivos con el archivo de enlace de dispositivo especificado:
./vmx.sh --unbind-dev –-cfg config/vmx1-junosdev.conf
Verificar enlaces de dispositivos
Debe iniciar sesión como raíz para enlazar dispositivos.
Para comprobar el estado de los enlaces de dispositivos creados con la --bind-dev
opción, ejecute la secuencia de ./vmx.sh --bind-check –-cfg device-binding-file
comandos. Si no especifica un archivo, el archivo predeterminado es config/vmx-junosdev.conf.
En este ejemplo, se verifica el estado de los enlaces de dispositivo para el archivo de enlace de dispositivo especificado:
./vmx.sh --bind-check –-cfg config/vmx1-junosdev.conf