Proxmox duda entre MV, LXC y Docker

Quiero poner un servidor con Proxmox, quiero poner servicios funcionando que los pueda apagar o encender según necesidades.

He leido algo de documentación y he encontrado 2 casos:

1) Instalar Máquina Virtual con una Debian pelada y dentro servicios con Docker y gestionarlos con Portainer.
Sé que se puede profesionalizar más con Kubernetes, orquestarlos y demás; pero por ahora lo que ofrece Portainer puede ser más que suficiente.

2) En lugar de usar una Máquina Virtual, funcionar con Entornos Virtualizados o Contenedores LXC. ¿Dentro de éstos tendría sentido utilizar Docker? ¿O se podría realizar la instalación directamente contra LXC?

Supongamos que se quieren instalar servicios tipo, Plex, PiHole, WordPress, Grafana etc.
No soy programador, lo dejé hace más de veinte años, y por eso conozco lo suficiente para comprender como funcionan algunas cosas. Tengo un servidor doméstico que lleva funcionando más de dos años ininterrumpidamente sin problemas, eso es gracias a las copias de seguridad automatizadas que muy pocas veces han sido necesarias y a usar un sistema operativo linux muy estable como LibreELEC, donde todo lo importante está protegido contra escritura y un servicio esencial como 'docker' que me permite extender la funcionalidad de este encorsetado sistema y crear mundos paralelos a medida. Crear nuevos servicios de servidor con 'docker' es realmente fácil gracias a repositorios como https://hub.docker.com y otros como docs.docker.com, github.com y linuxserver.io. Si en lugar de usar LibreELEC hubiera usado cualquier linux de escritorio estoy seguro que ya se hubiera roto con cualquier actualización del sistema porque siempre pasa. Otra alternativa que también he explorado y puede funcionar, es usando 'ubuntu server' quitándole todas las zarandajas de Canonical y añadiendo el servicio 'docker' y algunas otras cosas, esto tiene la ventaja de que es fácil encontrar información para compilar nuevos drivers e integrarlos en el kernel cosa que LibreELEC no permite, y que en otras distribuciones linux puede llegar a ser más complejo.

En resumen, yo voto por la simplicidad de 'docker'.

Imagen
@Newton

Tengo desde hace años un servidor de virtualización en casa con Proxmox como SO, la duda que tienes es bastante común.

Básicamente lo que estás describiendo es correcto, las dos opciones que comentas van a funcionar. En mi caso opté por pasar completamente de Docker y usar sólo LXC. Para qué molestarte en instalar un entorno de virtualización si no vas a virtualizar nada? Meterte en estos berenjenales para tener sólo una VM en la que albergas los docker me parece tontería, para eso instalas sólo Debian y le añades los Docker.

Los LXC no consumen recursos y te van a dar todo el juego del mundo. Tengo LXC para adguard, pihole (sí, tengo ambos en la red), owncloud, otro para torrents, el del controlador del AP, el del time machine, uno para wireguard...la lista es larga.
Además uso VM para servicios como el del router (opnsense ahora mismo).

Las dos opciones que propones son válidas. Pero ya que instalas un entorno para virtualizar...virtualiza leñe! Tranquilo que un LXC no te consume nada de recursos (de por sí recién instalado claro, luego a ver para qué lo usas!).

Hay gente que usa Proxmox para tener una máquina con todos los servicios en Docker pero lo dicho, para ese uso usar Proxmox es tontería.
Con intención de alimentar el hilo, dejo aquí un curso en castellano gratuito sobre Proxmox https://github.com/iesgn/curso_proxmox_cep dónde trata por encima sobre LXC.
Quizás para un entorno académico o profesional Proxmox VE esté bien, pero para un entorno doméstico el nivel de complejidad excede de lo que se podría esperar, empezando por la necesidad de tener una conexión ethernet para la instalación y puesta en marcha inicial.

Yo me quedo con docker funcionando con cualquier linux, es fácil de utilizar y de probar.

No me imagino a Proxmox VE funcionando en un pequeño dispositivo arm, en cambio con linux + docker no hay problema, eso significa que puedes poner en marcha un servidor remoto de bajo coste en cualquier sitio desatendido.
@Newton

En serio pasa de manuales y dale un tiento, instálalo. No serás el primero (ni el último) que cambia docker por los LXC. JURARÍA que docker era un fork de los lxc (lo leí hace tiempo, tendría que confirmar la fuente). En esencia es lo mismo, pero están orientados a distintos usos. Un LXC no te va a consumir más (tiran del sistema anfitrión como el docker), pero sí va a portarse de forma diferente.

El LXC es un "minisistema operativo" de tu entorno de virtualización, docker es un programa.

No te imaginas la que tuve que liar en mi servidor para las primeras pruebas, no había forma de hacer que el procesador se pusiera a funcionar a más del 10%. Tengo el router en una VM junto con decenas de LXC y rara vez me pasa del 10%, son ligeros como ellos solos (todo sea dicho, tampoco es que tenga una granja de renderizado en casa, siempre uso programas típicos de un uso doméstico).

Como "algo negativo", al menos para muchos (para mi es una virtud): los docker te vienen ya listos para correr de serie, un LXC se instala como una máquina virtual y tienes que meterle una serie de parámetros al instalarlo. Son unas 5 pestañas, no más, a mi me encanta porque así personalizo cada máquina al milímetro aunque me lleve 2 minutos de configuración (no más).

ap3188 escribió:Quizás para un entorno académico o profesional Proxmox VE esté bien, pero para un entorno doméstico el nivel de complejidad excede de lo que se podría esperar, empezando por la necesidad de tener una conexión ethernet para la instalación y puesta en marcha inicial.

Yo me quedo con docker funcionando con cualquier linux, es fácil de utilizar y de probar.

No me imagino a Proxmox VE funcionando en un pequeño dispositivo arm, en cambio con linux + docker no hay problema, eso significa que puedes poner en marcha un servidor remoto de bajo coste en cualquier sitio desatendido.


Una cosa es tener una opinión distinta, cosa que por cierto en este subforo pasa bastante. Pero tú directamente estás mintiendo sin parar y desinformando, que es muy diferente.
Te respondo simplemente por desmentir las barbaridades que has dicho, no hace puedes rebatir pero no pienso seguir con el debate contigo, contra una opinión se debate pero contra la mentira mejor pasar de largo.

Proxmox está precisamente pensado para entornos domésticos, es una "versión simplificada" y libre de VMware. No lo has instalado en la vida, ss lo más sencillo de instalar en un ordenador, complejidad CERO. Elegir disco, dar los datos de la red y poca cosa más (sí, siendo un entorno de virtualización hay que dar la dirección para que virtualice, nada del otro mundo).
Ni de coña necesita conexión ethernet para la instalación, es que de hecho se desaconseja tenerlo conectado en la primera instalación para que el DHCP no se meta de por medio (y si se mete no hay problema en varias los datos).

Proxmox es el entorno de virtualización casero más amigable del planeta, no es posible que hayas escrito eso sin despeinarte.
verdezito escribió:Proxmox es el entorno de virtualización casero más amigable del planeta, no es posible que hayas escrito eso sin despeinarte.


Ya he visto :) lo tengo instalado en un disco sin poder arrancarlo porque pide un acceso web que no le puedo dar porque no puedo configurar el acceso WiFi

Pero tienes razón, cuando algo me da problemas, abandono y paso a otra cosa ¡que funcione!

¡Avísame cuando consigas meter un Proxmox VE en una TV Box de 30 euros o una RPi arm porque eso sí será un notición! ... de los tres servidores que tengo funcionando, dos son remotos con procesador arm y si llegaran a robarlos no perdería más de 50 euros cada uno, y las técnicas de instalación, prueba y actualizaciones, son las mismas en todos ellos independientemente del procesador ... eso se llama ¡productividad!.

Supongo que todos tus amigos tienen un PC dedicado a Proxmox VE en su casa [oki] ¿nooo?
@ap3188 el servidor que quiero montar no va sobre ARM ni es algo pequeñito cerrado.
Respecto a la complejidad de Proxmox creo que es relativa, además de querer entrar si o si con ella para poder aprender.
Mi duda iba encaminada entre LXC, Docker etc dentro de Proxmox, pero por lo poco que he podido leer, creo que LXC es lo que busco, aunque tenga que cocinar algunos scripts para ello ;)

@verdezito si es la sensación que tenía que LXC puede estar más optimizado, requiere más tiempo para ponerlo en marcha pero a la larga creo que merece la inversión.
@Newton

Si ya estabas medianamente tentado pruebo a darte otro empujoncito...Proxmox no deja de ser un Debian con añadidos, si no quieres complicarte mucho métete en el shell (es un botón grande en el GUI) y teclea "pveam update". Esto agrega a la lista de LXC una predefinidas: TurnKey.org. Son LXC hechos para una sola función totalmente testados y probados por la comunidad, y los tienes a patadas.
En mi caso tengo que decir que no los uso, soy más de hacérmelo yo todo y no dejarlo en manos de un tercero, pero la opción la tienes ahí.

Sobre lo que comentas de "más tiempo para ponerlo en marcha"...por supuesto la primera vez vas a tardar más hasta que te hagas con el menú, pero luego en 10 segundos tienes andando un LXC. No exagero cuando digo que son 4 o 5 menús no hechos a mala uva, son bastante básicos y sirven para personalizar la máquina.

Ya no doy más la murga con el tema, creo que se nota que soy un fanático del Proxmox. Qué leches, si la gente lo está usando hasta para virtualizar ordenadores "gaming"! Te animo a que lo pruebes, aunque sea en máquina virtual. Es un "SO" tan tonto que te va a extrañar moverte tan bien en él (sí, luego lo puedes complicar hasta el infinito si quieres, pero virtualizar máquinas es totalmente asequible).
Yo en cambio te diría que probaras Docker. Si es una máquina Linux, el rendimiento es parecido o mejor al LXC y es una herramienta donde la curva de aprendizaje es bastante baja. Está muy estandarizado en la industria y vas a encontrar un montón de documentación, además de imagenes ya creadas listas para usar. Además, puedes montar pequeñas "infraestructuras" usando docker-compose.

Al principio Docker usaba LXC como base pero luego se cambiaron a libcontainer.

Y si te pica la curiosidad, prueba ambas :)
Newton escribió:Quiero poner un servidor con Proxmox, quiero poner servicios funcionando que los pueda apagar o encender según necesidades.

He leido algo de documentación y he encontrado 2 casos:

1) Instalar Máquina Virtual con una Debian pelada y dentro servicios con Docker y gestionarlos con Portainer.
Sé que se puede profesionalizar más con Kubernetes, orquestarlos y demás; pero por ahora lo que ofrece Portainer puede ser más que suficiente.

2) En lugar de usar una Máquina Virtual, funcionar con Entornos Virtualizados o Contenedores LXC. ¿Dentro de éstos tendría sentido utilizar Docker? ¿O se podría realizar la instalación directamente contra LXC?

Supongamos que se quieren instalar servicios tipo, Plex, PiHole, WordPress, Grafana etc.



La respuesta facil y corta.
Debian + docker o containerd.

Vas a tener todo el soporte que te va a dar debian y con docker lo mismo.
Aplicaciones que tienen complejidad de instalacion con docker son muy sencillas de ejecutar.
Como te han dicho te montas un docker compose y a volar con todos los servicios. A la hora de tener backup tan solo necesitas el backup del docker-compose y de la carpeta con los volumenes. Recomiendo hacer algo rollo /srv y de ahi cuelgan todos los volumenes, asi solo necesitas hacer backup de /srv.

Kubernetes no te lo recomiendo para nada, la curva de aprendizaje es mas dificil y la gracia es orquestar con varias maquinas, ojo que en una maquina solo se puede poner el orquestador (master) + esclavo, pero no tiene mcuha gracia, yo lo tengo hecho en un sitio en concreto pero porque es la replicacion de un entorno productivo con un kubernetes de verdad con varias maquinas y ese entorno no teine carga, son solo pruebas.
@quimico2008 Muchas gracias [oki]

Me paso por aquí a comentar que ha fallecido tteck, un maestro que se dedicaba en su tiempo libre a hacer scripts para LXC que a muchos nos han facilitado enormemente el bicheo con estas cosas.

Su proyecto sigue adelante gracias a la comunidad: https://community-scripts.github.io/ProxmoxVE/scripts

Literalmente, con un copy&paste de una línea, te hace un LXC del servicio que quieras, utilizando el repositorio oficial actualizado, y lo deja perfectamente funcional. Sin tener que tocar absolutamente nada.

Proxmox es muy potente y versátil y la curva de aprendizaje puede ser elevada si quieres hacer cosas complejas, pero con la ayuda de estos scripts es instalarlo, acceder al dashboard y empezar a crear LXC. Con el añadido del increíble sistema que tiene Proxmox para clonar, hacer backups, snapshots... Todo extremadamente intuitivo.

Personalmente uso Proxmox tanto en casa como en el trabajo y no puedo creer que sea gratis [jaja]

Salu2
Si el problema es con las actualizaciones del SO, prueba a instalar un Linux para servidor, que al fin y al cabo es el objetivo. Por ej. AlmaLinux 9 que es el actual tiene un EOL fechado para 2032, así que tendrás estabilidad para rato sin tener que hacer una actualización mayor de versión.

Una vez instalado, le metes Docker + Portainer y a correr. Luego le cambias el modo de inicio a modo consola y listo, mínimo consumo de recursos.

Una ventaja de Docker es que está muy documentado, y la comunidad muy activa. Prácticamente no hay que aprender casi nada para echar a andar lo que necesites.

Como extremo ya de la sencillez, alguna distro para hacer eso mismo tipo TrueNAS, aunque no hagas un RAID ni nada, con muchas aplicaciones ya listas para darle a instalar y ahú.
Que casualidad... justo me toca montar un cluster de proxmox para unos entornos de DEV y TEST en el curro... a ver si me pongo a investigar un poco
14 respuestas