iVentoy - Caso de consultoría

2023-08-22T07:00:00+02:00 | 11 minutos de lectura | Actualizado en 2023-08-22T07:00:00+02:00

iVentoy - Caso de consultoría

iVentoy

Vamos a ver.
Esto aún no es la panacea que os creéis.
El producto lo veo inestable aún, meses después de su lanzamiento.
Pero da igual. Os muestro mi laboratorio de pruebas.

Preparativos

Además de lo comentado en el artículo anterior, sobre como voy a surtir de material al entorno, lo que voy a hacer es preparar el laboratorio.
Y para ello voy a declarar el siguiente entorno, por seguridad, por comodidad, y porque mis laboratorios no son de juguete, me interesa que sean exportables a entornos reales y no a un “Quita el cortafuegos que seguro que así funciona”.

Así que:

  • Redes de gestión y producción segregadas
  • Conectividad con el repositorio asegurada
  • Dimensionamiento de clientes y servidor acorde al tráfico esperado
  • Parámetros de red acordes a las necesidades
  • Red escalable y gestionable
  • Configuración de la electrónica de red (física y virtual) acorde a las necesidades por los diferentes estándares

Empezamos:

Redes de gestión y producción segregadas

Es obvio que voy a gestionar el servidor, y si es necesario, el contenedor, por red.
Tal como comenté en el capítulo de redes sobre la categorización de las mismas, mi vista servidorcentrica me va a asignar al menos 2 redes, 3 en este caso, pero que voy a simplificar a 2.
Una pata de gestión, por donde se accede a la interfaz de la máquina virtual donde voy a publicar el ssh, los puertos del contenedor y los puertos del servicio web de iVentoy, y ya de paso, aunque debería ir por almacenamiento, aprovechando que ya lo tengo, la conexión sshfs desde la máquina iVentoy al host ESXi. Mucha gestión hay ahí.
Y una pata de producción, puesto que el producto de la máquina es plataformar, no enseñar una web de configuración, con el resto de los puertos y servicios que se crean y gestionan desde iVentoy.

Conectividad con el repositorio

Como ya he comentado en el artículo anterior , y en el punto anterior también, es una red de gestión conectando con otra red de gestión por interfaces de gestión.

Dimensionamiento de clientes y servidor acorde al tráfico esperado. En esto, prueba y error.
No hay documentación al respecto, pero para el servidor, mínimo 2 vcpu y 4 Gb de ram. Parece mucho pero con menos, revienta constantemente, en físico. En contenedor hará falta seguramente un poco más.
En cuanto a lo del tráfico esperado, una red virtual no tiene límites (mas allá de la capacidad de conmutación del host en su parte de red virtual) así que podríamos considerar que mínimo tarjetas e1000e (1 Gb) o vmxnet3 (10 Gb).

Parámetros de red acordes a las necesidades

¿Pero más parámetros de red? ¿En serio?
Si. Y en serie, y en paralelo.
A ver, que igual que lo que ya he comentado antes, sobre redes y demás, vamos a hacer algo un poco más especial, por qué lo merece, lo necesita.
La red de producción estará segregada como ya he comentado antes, y tendrá una característica especial adicional, una VLAN, por hechos tan sencillos como separar completamente el tráfico, y por cosas como las ya explicadas en el capítulo que hice sobre las VLAN .

Red escalable y gestionable

Más parametrización de red. Obvio.
En el primer punto ya he explicado la arquitectura básica, la cual, al estar definida como he descrito, nos va a permitir varias cosas, como no perder la gestión por congestión de las interfaces de red y otros problemas. Y también el broadcast, el ruido de red que se va a generar en producción, que quede limitado y acotado por su propio adaptador, su VLAN, y una sorpresa añadida.
La red va a ser escalable, puesto que la red de producción tendrá su cabecera en la VM en capa 3, y en el host, y en su portgroup, en capa 2, por lo que la VLAN quedará extendida desde el ESXi al switch y si, esto ya lo he explicado en el capítulo del podcast que hice sobre las VLAN .

Configuración de la electrónica de red (física y virtual) acorde a las necesidades por los diferentes estándares

He dejado para el final las cosas más oscuras de la red, como por ejemplo el hecho de que tenemos que tocar valores de MTU (no lo he hecho en este laboratorio), los valores de seguridad del portgroup y algún detallito más.

Atención
Zona no apta para manazas
  • Jumbo frames: Para maximizar la capacidad de la red, empezaríamos pasando de 1500 a 9000 para tener un tráfico de red en el que el tamaño del paquete no limite la transferencia, y las tarjetas de red virtuales no se ahoguen en cómputo y gestión de los paquetes TCP. Tocar esto puede dejarte sin red, es un parámetro de capa 1 gestionado la mayoría de las veces en capa 2.
  • TCP Offload: Vamos a ver, los drivers son lo que son y tienen las opciones que tienen. Hay cosas que se pueden hacer, y otras que aunque se hagan, como el que ve llover.
  • VLAN: Para saber usar esto, hay que saber que son las VLAN . Sin ese conocimiento, mejor cablear por separados.
  • Políticas de seguridad y de teaming: Esta parte es específica de VMware. Si hace falta expandir y crecer, necesitaremos tocar cosas aquí, puesto que multicast no es un protocolo que históricamente le guste a la inmensa mayoría de los hypervisores, salvo a Hyper-V que le da igual.

Los parámetros de seguridad deberían quedar:

Parámetro Valor
Allow promiscuous mode Yes
Allow forged transmits Yes
Allow MAC changes Yes

Puesta en marcha

Preparación del entorno y arranque del aplicativo

Pues ahora que ya he hecho mi grupo de capturas, lo que toca es ponerlas en secuencia, e ir describiendo. Así que si…
Lo primero es que vamos a necesitar una máquina virtual. Fedora server en este caso, y con la modificación que comenté en este artículo .
Para la descarga, simplemente descargar y descomprimir.

primera captura

La configuración la voy a hacer en mi usuario local, así que voy a mapear el directorio iso que viene del host a mi usuario, así no toco puntos de montajes.
Como he descomprimido en mi home, simplemente elimino el directorio iso y creo un enlace al punto de montaje.

rmdir iso
ln -s /mn/iso ./iso
ls -al

Queda comprobado el enlace simbólico.

segunda captura

Para iniciar, tan solo necesitamos invocar, como dice la documentación, con sudo ./iventoy.sh start. Sudo lo necesita porque usa puertos privilegiados.

tercera captura

La interfaz de usuario está en un puerto http, el 26000. Así que accedemos por navegador a ver que tal es la interfaz.
Lo más notable es que ni pide credenciales ni autenticación ni nada por el estilo.

cuarta captura

Explorando la interfaz

Lo que nos importa, es que según informa el primer combo, tenemos correctamente configurada la interfaz de red de gestión, en mi caso en el segmento 10, y de producción, en el segmento 11, y que es la que usará el servicio para contactar con las máquinas a instalar, tanto como virtuales, como físicas (en un futuro).
Tengo definido un rango como disponible para este trabajo. Así pueden coexistir con otras cosas que pueda tener aparcadas en esa red.

quinta captura

Una vez definido el interfaz, la red del segmento 11, vamos a permitir las mac de los dispositivos que voy a instalar, una especie de lista de control de acceso.
Para este caso, las de VMware standalone, las que corresponden 00-0c-29-**-**-** y que curioso, que es la misma que propone el propio iVentoy. A iVentoy le gusta VMware.
Podríamos poner otros rangos, como por ejemplo los de 10-65-**-**-**-** que corresponden a un muy extenso repertorio de tarjetas Intel e1000 o Intel I219.
Una funcionalidad interesante es el uso de listas negras, denegar todo menos algo determinado. Da igual, esto va en gustos.

sexta captura

En la pantalla de configuración, hay dos partes, la de red, donde definir los puertos, que podemos dejar por defecto junto con parámetros de timeout y demás…

séptima captura

Y parámetros del servidor que vamos a usar, en este caso son del DHCP y de su servicio.
Para esta prueba hay 3 posibles configuraciones y la más simple en este desarrollo es usar el servidor interno.
El servidor externo y el externo de red son un DHCP local o remoto y que deben ser modificados para que cumplan con los requisitos de entrega de datos para PXE.
El otro combo que me interesa es el de la imagen EFI.
Tendré que hacer un artículo explicando la historia de estos firmwares pero vamos a tomar como que iPXE (ipxe.efi) es el más universal y actual de los que muestra, quedando SPN (spnonly.efi y spn.efi) como valores de contingencia para ciertos tipos de tarjetas de red. No tengo una lista de lo que funciona con uno o con otro, así que prueba y error.
Solo un truco. Con ipxe cubrimos la inmensa mayoría de los 64 bits, UEFI o no, y spnonly cubriría los legacy y algunos i386.

octava captura

Por último, en la gestión de imágenes, luego en el log se verá más claro, podemos ver las imágenes disponibles.
En este caso iVentoy lee desde su directorio iso, que es un enlace simbólico a mi punto de montaje del sshfs que procede del ESXi, por lo que iVentoy está leyendo (y en solo lectura) del datastore del host.
Esto si es ahorro. No lo hagáis en producción real.

novena captura

Una vez revisado todo esto, volvemos a la ventana principal, la del boot, y podemos darle a iniciar. Lo cual ya nos permite ponernos a instalar máquinas remotas, por red, sin pinchos, sin iso, sin casi nada.

décima captura

No sin antes echar un ojo al log, en ./log/log.txt así que hacemos un simple tail -f ./log/log.txt & en consola para ir viendo que se cuece, como por ejemplo el análisis que hace de las imágenes iso.

undécima captura

Una vez que presenta el banner, lo podemos dar por arrancado y disponible, e incluso ya voy viendo cosas en el log porque ya hay una máquina virtual pidiendo cosas en el segmento.

duodécima captura

Y ahí está, una máquina virtual sin sistema operativo disponible, pero arrancando por iPXE una vez que un servidor le ha ofrecido IP tras validar la mac, y ha empezado a transmitir el firmware.

decimotercera captura

Primera prueba

Una vez hecho, iVentoy cargará su cargador de red, que se trae la información del catálogo, y la muestra en la consola como si hubiéramos pinchado el disco directamente.

decimocuarta captura

Elegimos un sistema, una iso, con la que arrancar.
Esto va a producir 2 cosas, al menos.

  • El servidor boot va a poner a disposición del cliente pxe una URL conformada según el estándar, con todos los ficheros de la iso.
  • El arranque PXE va a empezar a pedir el contenido de la iso

El estándar es un simple servidor http, en este caso por el puerto 16000, y con una estructura determinada.

decimoquinta captura

Por cierto, podemos ver datos relevantes en la pantalla de boot, como la mac, la dirección, datos de identidad física del cliente…

decimosexta captura

Probando otra imagen a ver que funciona

Como las pruebas hasta ahora no han sido muy felices, voy con Fedora 38 KDE, que su instalador tiene otro concepto.

decimoséptima captura

Tiene pinta de arrancar correctamente, al menos como live, así que voy a pedir que instale.

decimooctava captura

Y toma que si instala, que ha instalado y sin rechistar, ni protestar.
Al menos tenemos una lista decente de isos que funcionan, y son:

Fedora 38 kde
Windows 10 22h2
Windows 11
Windows server 2022 y 2019 (varias versiones)

Y Debian… Bueno, siempre podré probar de nuevo, pero esta vez su versión live, con calamares como instalador.

Estado y comportamiento del servidor

Vamos a analizar ahora el comportamiento del host, y de varios parámetros a ver que tal…

En esta captura vemos la máquina virtual, su interfaz de red, una estadística simple.
Y lo primero que me importa es el tráfico, el consumo de red, que como estoy con discos mecánicos, no espero que llegue al 100% de red, pero se ven perfectamente los flujos y los tiempos en comparación de mis dos primeras pruebas, en naranja la fallida de Debian y en azul la correcta de Fedora.

decimonovena captura

A ojos del host vemos todo mucho más claro, las ráfagas del primer intento con Debian, donde no ha conseguido instalarse, y el flujo continuo de red en la interfaz de management del host durante la instalación de fedora, recordemos que accedo desde la VM al host por sshfs y las vm se comunican entre ellas por la misma interfaz en este caso.

vigésima captura

Y por último, CPU, que como estoy con 2 vm, una con 2 vcpu, otra con otras 2, la consola de servicio y una conexión sshfs… Pues eso, una sobresuscripción de 3:1 en cpu que como veréis apenas afecta al desempeño de este equipo tan modesto pero que sirve perfectamente de laboratorio.

vigesimoprimera captura

Y no me queda más que analizar ni nada. Seguiré probando más imágenes ISO y a ver que funciona y que no.

Enlaces


YoVirtualizador en formato podcast. Ahora también en Sospechosos Habituales: https://wt.territoriolinux.es/rss/short.xml
Y sin más, os dejo los enlaces:

Web: https://www.yovirtualizador.com
Grupo de telegram: https://t.me/grupovirtualizador
Podcast: https://www.ivoox.com/podcast-yovirtualizador_fg_f1563806_filtro_1.xml
Canal de youtube: https://youtube.com/@yovirtualizador
Enlace de afiliados de amazon: https://amzn.to/3gX3HmK
Enlace de referidos de la Asociación Podcast: https://www.asociacionpodcast.es/registrarse/socio/?coupon=SB6A70

© 2019 - 2026 YoVirtualizador

Tu podcast y blog de confianza

Política de comentarios

En YoVirtualizador, todos los comentarios serán bienvenidos pero moderados.

Los grupos de telegram y redes sociales tienen moderación activa. Consulta con sus administradores.

Respetos guardan respetos.

El contenido irrelevante u ofensivo será eliminado.

Acerca de YoVirtualizador

YoVirtualizador es la marca de varios proyectos

Podcast de informática profesional. Canal de Youtube sobre el blog, el podcast y de temática profesional. Blog de contenido diverso, con temática BOFH y técnica.

Gracias por la lectura.

Galletas

Política de cookies

Lo de las galletas en 2025

En YoVirtualizador no usamos cookies para nada, pero los servicios de discus y analytics recopilan datos en servidores ajenos a YoVirtualizador sin que yo pueda hacer nada. Si no quieres galletas, usa un navegador que no ejecute javascript.

Este aviso es sólo porque algún político tenía que justificar su existencia, y ahora además hay que redactar.

Legislación aplicable:

  • Reglamento (UE) 2016/679 del Parlamento Europeo y del Consejo, de 27 de abril de 2016, General de Protección de Datos (RGPD) (Aplicable desde mayo de 2018),“Establece la definición y los requisitos del consentimiento (libre, informado, específico e inequívoco) y los derechos del interesado. Es la norma principal sobre datos personales.”
  • Artículo 22 de la Ley 34/2002, de 11 de julio, de servicios de la sociedad de la información y de comercio electrónico (LSSI). Es la norma específica española sobre cookies. Establece la obligación de informar y obtener el consentimiento para el uso de dispositivos de almacenamiento y recuperación de datos (cookies) que no sean estrictamente necesarios.
  • Ley Orgánica 3/2018, de 5 de diciembre, de Protección de Datos y garantía de los derechos digitales (LOPDGDD) (Aplicable desde diciembre de 2018),Es la ley española que desarrolla y adapta el RGPD al ordenamiento jurídico español. Complementa la LSSI en lo relativo a la protección de datos personales.

Definición y función de las cookies

¿Qué son las cookies? Una cookie es un fichero que se descarga en su ordenador al acceder a determinadas páginas web. Las cookies permiten a una página web, entre otras cosas, almacenar y recuperar información sobre los hábitos de navegación de un usuario o de su equipo y, dependiendo de la información que contengan y de la forma en que utilice su equipo, pueden utilizarse para reconocer al usuario.
¿Qué tipos de cookies utiliza esta página web? Cookies propias: Son aquéllas que se envían al equipo terminal del usuario desde un equipo o dominio gestionado por el propio editor y desde el que se presta el servicio solicitado por el usuario. Cookies de terceros Son aquéllas que se envían al equipo terminal del usuario desde un equipo o dominio que no es gestionado por el editor, sino por otra entidad que trata los datos obtenidos través de las cookies. Cookies persistentes Son un tipo de cookies en el que los datos siguen almacenados en el terminal y pueden ser accedidos y tratados durante un periodo definido por el responsable de la cookie, y que puede ir de unos minutos a varios años. Cookies de análisis Son aquéllas que bien tratadas por nosotros o por terceros, nos permiten cuantificar el número de usuarios y así realizar la medición y análisis estadístico de la utilización que hacen los usuarios del servicio ofertado. Para ello se analiza su navegación en nuestra página web con el fin de mejorar la oferta informativa, productos o servicios que le ofrecemos. Cookies publicitarias Son aquéllas que permiten la gestión, de la forma más eficaz posible, de los espacios publicitarios que, en su caso, el editor haya incluido en una página web, aplicación o plataforma desde la que presta el servicio solicitado en base a criterios como el contenido editado o la frecuencia en la que se muestran los anuncios.

Asimismo es posible que al visitar alguna pagina web o al abrir algún email donde se publique algún anuncio o alguna promoción sobre nuestros productos o servicios se instale en tu navegador alguna cookie que nos sirve para mostrarte posteriormente publicidad relacionada con la búsqueda que hayas realizado, desarrollar un control de nuestros anuncios en relación, por ejemplo, con el numero de veces que son vistos, donde aparecen, a que hora se ven, etc

Ayuda con las galletas

Como algún político tenía que justificar su existencia, yo te cuento como lo vamos a hacer.

Revocación y eliminación de cookies (IA generativa dixit)

Usted puede permitir, bloquear o eliminar las cookies instaladas en su equipo mediante la configuración de las opciones del navegador instalado en su ordenador, en caso que no permita la instalación de cookies en su navegador es posible que no pueda acceder a alguna de las secciones de nuestra web.

A continuación puede encontrar como acceder a la configuración de las cookies en los principales navegadores:

  • Internet Explorer: Menú Herramientas -> Opciones de Internet -> Privacidad -> Configuración. También puede consultar el soporte de Microsoft o la Ayuda del navegador.
  • Firefox: Menú Herramientas -> Opciones -> Privacidad -> Historial -> Configuración Personalizada. También puede consultar el soporte de Mozilla o la Ayuda del navegador.
  • Chrome: Menú Configuración -> Mostrar opciones avanzadas -> Privacidad -> Configuración de contenido. También puede consultar el soporte de Google o la Ayuda del navegador.
  • Safari: Menú Preferencias -> Seguridad. También puede consultar el soporte de Apple o la Ayuda del navegador.