Requerimientos de Velneo
Todos los componentes de Velneo para Windows, Linux y macOS son de 64 bits así que solamente podremos usar Velneo en sistemas operativos con arquitectura de 64 bits.
El sistema operativo debe estar siempre actualizado con los últimos parches de seguridad.
Requiere recursos suficientes para la ejecución del sistema operativo y los diferentes componentes en función de los requerimientos de las aplicaciones.
En máquinas virtualizadas, debemos configurar una asignación fija de memoria, no dinámica.
Windows
Componentes
Arquitectura x86-64.
Procesadores con soporte de SSE 4.2 y AVX2
Versiones
Windows 10 (1809 o superior) 64 Bits.
Windows 11 64 Bits.
Direct3D 11.
Puede dar error tras la instalación de los componentes si Windows Update no está activo y actualizado con todas las últimas revisiones. En concreto se requiere la Actualización para Universal C RunTime en Windows.
Velneo vServer
Arquitectura x86-64.
Procesadores con soporte de SSE 4.2 y AVX2
Sistema operativo para servidor. Versiones:
Windows Server 2019 64 bits.
Windows Server 2022 64 bits.
Windows Server 2025 64 bits.
vModApache
Apache versión 2.4 de 64 bits.
Linux
Componentes
Distribuciones basadas en Debian y derivados (Ubuntu, etc.) con las siguientes características:
Arquitectura x86-64
Procesadores con soporte de SSE 4.2 y AVX2
Kernel 5.15
GLIBC 2.35 64 bits
OpenSSL 3.0
Versión recomendada Ubuntu 22.04 LTS
Se recomienda el sistema de ventanas x11, ya que aunque se soporta wayland, este soporte todavía es parcial.
Velneo vServer
Distribuciones basadas en Debian y derivados (Ubuntu, etc.) con las siguientes características:
Arquitectura x86-64
Procesadores con soporte de SSE 4.2 y AVX2
Kernel 5.15
GLIBC 2.35 64 bits
OpenSSL 3.0
Versión recomendada Ubuntu 22.04 LTS
vModApache
Apache versión 2.4 de 64 bits en modo Worker.
Dependencias en Ubuntu
Si queremos ejecutar por ejemplo Velneo vServer en alguna otra distribución y nos devuelve un error del tipo, por ejemplo:
user@ubuntu:~/Velneo-vServer$ ./vServer.sh -s /port=6900
./vServer.sh: 57: exec: ./vServer: not found
Debemos comprobar que contamos con todas las librerías necesarias; para ello, podemos hacer lo siguiente:
Nos situamos en el directorio donde hemos extraído Velneo vServer y ejecutamos los siguientes comandos:
user@ubuntu:~/Velneo-vServer$ export LD_LIBRARY_PATH=.
user@ubuntu:~/Velneo-vServer$ ldd vServer | grep “not found” | sort | uniq
Ejemplo de salida:
libpulse.so.0 => not found
libstdc++.so.6 => not found
Debemos ahora, en función de nuestra distribución de Linux, buscar en el manual de Linux cómo instalar esas librerías que nos faltan.
Si trabajamos con una distribución sin interfaz, el servidor no requerirá librerías de interfaz pero, en el caso de querer ejecutar otros componentes de Velneo (vClient, por ejemplo) necesitaremos al menos que estén presentes los siguientes paquetes de librerías, además de los que pueda requerir el sistema:
sudo apt install libgl1-mesa-glx libxrender1 libpulse0 libglib2.0-0 libxslt1.1 libxcomposite1 libgstreamer1.0 libgstreamer-plugins-base1.0 libxtst6 libnss3 libfontconfig1 libxi6 libxcursor1 libasound2 libpulse-mainloop-glib0 libxrandr2 libegl1-mesa libxkbcommon-x11-0 libmagic1 libxdamage1 libxkbfile1
macOS
Los componentes de Velneo son binarios universales capaces de ser ejecutados tanto en entornos con procesador ARM como Intel en macOS.
Componentes
macOS 11 ARM / Intel.
macOS 12 ARM / Intel.
macOS 13 ARM / Intel.
macOS 14 ARM / Intel.
Obsoletos: macOS 10 (soporte finalizado el 12 de septiembre de 2022) y anteriores.
Android
Componentes
Android 8 a Android 13, 32 y 64 bits(De API level 26 a API 33).
Procesador: ARMv7, ARM64-v8a, mínimo 1 GHz.
Memoria RAM: Recomendado +1GB.
Espacio en memoria de usuario/interna: Recomendado +1GB.
Pantalla para aplicaciones móviles: Recomendado +1024×768.
iOS
Componentes
iOS 14 a 17.
Espacio en memoria de usuario/interna: Recomendado +1GB.
Pantalla para aplicaciones móviles: Recomendado +1024×768.
TLS/SSL
Velneo soporta SSL tanto a nivel de protocolo (protocolo VATPS) como en el control de formularios visor html. Para ello necesita OpenSSL3.0.
Velneo instala las librerías necesarias para Windows, macOS, Android e iOS y en Linux se delega en el sistema operativo.
Si no se encuentran las librerías de SSL instaladas en un equipo, en el caso de los componentes cliente, se mostrará el siguiente mensaje al intentar conectarse a un servidor por vatps:
"No es posible la conexión por vatps. Las librerías de TLS/SSL no están disponibles."
En el caso del servidor, el mensaje se mostrará en el panel de mensajes de Velneo vAdmin.
De cara a mejorar la seguridad, es posible limitar las versiones de TLS activas en el ámbito del servidor.
Windows
Velneo instala las librerías necesarias libcrypto-3-x64.dll libssl-3-x64.dll para los componentes de la plataforma.
Linux
En Linux se delega en el sistema y requiere que esté instalado OpenSSL 3.0.x. Si tienes instalada una versión diferente de OpenSSL entonces deberás instalar la versión que Velneo requiere.
macOS
En macOS se instalan las librerías en el paquete bundle de los componentes.
Android
En Android se instalan junto con el componente Velneo vClient.
iOS
En iOS hace uso de las librerías propias del sistema operativo.
Recursos
Suficiente espacio en disco para instalar los componentes de Velneo, más espacio de caché, etc., mínimo 2GB para los componentes.
A este mínimo tendremos que añadir espacio suficiente para los datos de las aplicaciones, que dependerá directamente del número y tamaño de las tablas que tenga la o las aplicaciones que se vayan a servir.
Se recomienda utilizar discos SSD junto con una controladora de alta calidad para mejorar el rendimiento y la fiabilidad del sistema.
La configuración de memoria debe comprender la memoria requerida por el sistema operativo más memoria suficiente para la ejecución de componentes y también en función del tamaño de las aplicaciones. Mínimo de 4 Gb de RAM adicionales a los requerimientos del sistema.
Renderización
Para la visualización de QML se usa por defecto renderización por software.
En el Visor Html se usa por defecto:
Direct3D11 en Windows.
Metal en macOS e iOS.
OpenGL en Linux y Android.
Por tanto, en cada sistema han de estar instaladas las librerías correspondientes (habitualmente no es necesario instalarlas porque ya deberían venir con el propio sistema operativo).
Solamente en el caso de que desde soporte nos lo pidan, podremos cambiar la configuración por defecto. Para ello, podemos cambiar las siguientes variables del sistema:
QSG_RHI_BACKEND
metal (Por defecto en macOS, no disponible en el resto).
opengl (Por defecto en linux).
d3d11 (por defecto en Windows y no disponible en el resto).
QT_QUICK_BACKEND
En el caso de que queramos cambiar la configuración de la renderización de QML, además tendremos que configurar también la variable del sistema QT_QUICK_BACKEND con el valor que corresponda ("rhi" se usará según estén disponibles: OpenGL o Direct 3D (Windows), o el valor "software" que es el valor por defecto).
QT_OPENGL (Obsoleto, sólo si se usa OpenGL en Windows)
Si no la configuramos o la configuramos con el valor "desktop", aplica OpenGL.
Si la configuramos con el valor "software", renderiza en 2D usando motor software de pintado en vez de hardware.
Deshabilitar GPU en visor html
Si en el Visor Html de Velneo vClient queremos inhabilitar opengl y usar sólo software, ejecutarlo con el parámetro--disable-gpu
. Ejemplo: vClient.exe --disable-gpu
.
Recomendaciones sobre instalaciones locales
Copias de seguridad
Establece un sistema automatizado de copias de seguridad para asegurar la recuperación de datos críticos.
Es recomendable tener dos copias de seguridad y a poder ser a una distancia prudencial una de la otra.
No es habitual, pero un desastre natural o cualquier otro tipo de desastre puede llevar al traste con todo el negocio de una empresa.
Separar la copia de seguridad del lugar central de la información ayuda a que sea posible una recuperación total y permitir la continuidad de negocio.
Aunque pueda no ser el caso, en las medidas de seguridad altas de la LOPD, en su artículo 102 detalla está circunstancia:
"Artículo 102
Copias de respaldo y recuperación
Deberá conservarse una copia de respaldo de los datos y de los procedimientos de recuperación de los mismos en un lugar diferente de aquel en que se encuentren los equipos informáticos que los tratan, que deberá cumplir en todo caso las medidas de seguridad exigidas en este título, o utilizando elementos que garanticen la integridad y recuperación de la información, de forma que sea posible su recuperación."
Por otro lado, el Instituto Nacional de Ciberseguridad también recomienda tener una copia fuera de la organización.
Recuperaciones periódicas para verificar consistencia de la copia
Tener un sistema de copias y no realizar una recuperación periódica, nos pone en una situación peligrosa ya que puede darse el caso de que ante un desastre no podamos acceder a la información.
La LOPD en su artículo 94, incluso en las medidas de nivel básico, incluye la obligatoriedad de comprobar la correcta recuperación de las copias de seguridad 2 veces al año.
El responsable del fichero se encargará de verificar cada seis meses la correcta definición, funcionamiento y aplicación de los procedimientos de realización de copias de respaldo y de recuperación de los datos.
Recomendamos, monitorizar las tareas de copia y realizar una comprobación manual cada 3 meses.
Monitorización
Conocer en todo momento la carga y recursos disponibles de una máquina nos puede ayudar a conocer si estamos ofreciendo el mejor servicio a los usuarios de las aplicaciones.
Existen en el mercado múltiples herramientas que permiten monitorizar distintos parámetros de la máquina y guardar un histórico para un análisis a posteriori.
Con una herramienta de monitorización podemos tomar decisiones a largo plazo:
¿Dónde se encuentran los cuellos de botella para mejorar el rendimiento?¿Disco, CPU, Memoria?
¿A que horas tengo más carga del sistema?
¿Cuándo me quedare sin espacio en disco?
¿Es conveniente cambiar de hardware?
¿Hay algún proceso del sistema que está perturbando el buen funcionamiento del servidor?
Y también nos sirve para actuar sobre una incidencia en el momento de que ocurre:
La máquina está con muy poca memoria RAM y provoca que el vServer vaya más lento.
Una actualización del sistema está ralentizando la máquina.
El antivirus se ejecuta a unas horas de máxima carga de trabajo.
La máquina está recibiendo un ataque de denegación de servicio.
Recomendamos usar herramientas de monitorización centralizada, ya que permite monitorizar varias máquinas desde una única herramienta.
Recomendamos monitorizar el uso de recursos tanto en el ámbito de la máquina como en el ámbito de vServer.
Sistema de alertas
Cuando mantenemos aplicaciones empresariales, es importante enterarnos de los problemas antes que los usuarios, un sistema de alertas alineado con la herramienta de monitorización o la propia aplicación puede ayudarnos a enterarnos y solucionar las incidencias antes de que el usuario lleve a percibirlas.
Unas alertas relativas al consumo excesivo de CPU o memoria, por cualquier circunstancia de la máquina o sistema operativo, hace ralentizar el funcionamiento de la aplicación. En ese caso el usuario sufre una alteración en la ejecución de las aplicaciones que se hubiera solucionado rápidamente por el administrador o supervisor de la instalación.
Dichas alertas pueden ser por email o SMS y enviadas mediante la herramienta de monitorización.
Ejemplo de alertas que nos pueden ayudar a resolver el problema antes de que lo sufra el usuario
Consumo de CPU por encima del 75% durante más de 30 minutos.
Consumo de memoria física por encima del 90%.
Espacio libre inferior al 10%.
Aumento significativo de la latencia entre el cliente y el servidor.
Sistema operativo sin parches de seguridad.
Uso excesivo lecturas o escrituras en el disco.
Seguridad
Mantén los componentes del sistema actualizados y realiza auditorías de seguridad periódicas para proteger tu entorno.
Comunicaciones
En aquellos ordenadores en los que vayamos a acceder a servidores remotos a través de Internet, es recomendable disponer una línea de comunicaciones de backup para así poder seguir trabajando en el caso de que en el proveedor principal se produzca una interrupción de su servicio.
Recomendaciones sobre servidores accesibles a través de internet
Protocolo
Velneo vServer usa por defecto el protocolo de Internet IPV4. En el caso de que queramos usar IPV6, tendremos que configurarlo.
Hay que tener mucho cuidado con la configuración de servidores para que no haya conflicto de puertos, lo que puede hacer que un servidor no pueda ponerse a la escucha.
Habilitar una regla en el firewall del sistema operativo y/o router para permitir el tráfico entrante y saliente por el puerto que tengamos asignado para Velneo vServer (por defecto el puerto 690).
Configuración del sistema operativo relativa a sockets
Se recomienda configurar una serie de valores en el sistema operativo del servidor para optimizar la gestión de los sockets.
Windows
Debemos configurar en el registro de Windows (fichero regedit.exe) el tiempo que viven los enganches finalizados. Para ello debemos configurar en la siguiente clave del registro de Windows:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Las siguientes entradas con los valores siguientes:
TcpTimedWaitDelay=dword:0000001e
StrictTimeWaitSeqCheck=dword:00000001
Y, por línea de comandos (CMD), configurar cuántos puertos están disponibles:
netsh int ipv4 set dynamicport tcp start=5000 num=55000
Linux
Debemos configurar los ficheros abiertos ya que en Linux, considera ficheros abiertos tanto los archivos que estén abiertos como los sockets activos. El valor recomendado es de 100000.
El cómo configurarlo dependerá de la distribución usada. A continuación facilitamos las instrucciones para hacerlo en Ubuntu, que es una de las distribuciones que recomendamos:
En primer lugar, debemos comprobar cuál es el límite actual:
user@ubuntu:~$ ulimit -n
El valor que recomendamos es 100000 así que, si el valor obtenido es inferior, para configurarlo haremos lo siguiente:
# editar el archivo siguiente
user@ubuntu:~$ sudo vim /etc/security/limits.conf
# añadir las líneas siguientes
* soft nproc 100000
* hard nproc 100000
* soft nofile 100000
* hard nofile 100000
root soft nproc 100000
root hard nproc 100000
root soft nofile 100000
root hard nofile 100000
# editar el archivo siguiente
user@ubuntu:~$ sudo vim /etc/pam.d/common-session
# añadir esta línea
session required pam_limits.so
# reinicia sesión y ejecuta el comando siguiente
user@ubuntu:~$ ulimit -n 100000
Una vez configurado, debemos reiniciar el equipo para que el cambio se haga efectivo.
Hyperthreading
Velneo es capaz de ver y usar los procesadores con hyperthreading, pero el rendimiento depende del tipo de procesador, sus capacidades, el uso real...
Nuestra recomendación por defecto es desactivar hyperthreading y deshabilitar los C-States y los P-States de las CPU en la UEFI/BIOS.
Además, en el sistema operativo, sobre todo en el caso de Windows, activar el modo de rendimiento máximo.
Recomendamos todo esto porque hypertrheading, por ejemplo, la simulación de hilos que realiza suele requerir computación extra y tiene pérdidas de tiempo, como sucede con los C-States y los P-States.
Todo esto, no obstante, redunda en un mayor consumo de energía.
Esta recomendación es general, porque finalmente depende de muchos factores (no es lo mismo un procesador Intel que un AMD, por ejemplo), con lo que lo más recomendable es probar distintas configuraciones de la máquina particular para ver cuál es la más eficiente en su caso.
Velneo Cloud
La opción más sencilla, si no quieres "pelearte" con los sistemas operativos para disponer de tu Velneo vServer, es usar Velneo Cloud. Nosotros nos encargamos de darte un servicio sobre un sistema operativo configurado y optimizado para cumplir los requisitos que necesita Velneo vServer y así te olvidas de librerías y actualizaciones.
Última actualización
¿Te fue útil?