-
Acelerar el arranque de un contenedor LXC de Proxmox
Por defecto, los containers Debian (y derivados) creados en PVE pueden tener un inicio lento y tardar hasta varios minutos en arrancar completamente. El motivo principal suelen ser dos servicios de systemd que esperan innecesariamente a que la red se levante y obtenga una dirección IP, antes de continuar con el arranque:
- systemd-networkd-wait-online.service: Espera a que todas las interfaces de red estén activas y con IP asignada. En entornos LXC, esta espera es innecesaria, ya que el host (Proxmox) es quien gestiona la red virtual y la interfaz se levanta automáticamente.
- ifupdown-wait-online.service: Hace lo mismo cuando el contenedor usa /etc/network/interfaces y DHCP. Cuando alguno de estos servicios queda esperando una respuesta DHCP que tarda o que nunca llega, el arranque se retrasa hasta varios minutos por servicio.
Solución
Desactivar ambos servicios dentro del contenedor, ejecutando como root:
systemctl disable systemd-networkd-wait-online.service ifupdown-wait-online.service systemctl mask systemd-networkd-wait-online.service ifupdown-wait-online.service
Si preferimos mantener el servicio pero limitar la espera, podemos establecer un tiempo máximo de espera de 5 segundos. Editamos:
nano /usr/lib/systemd/system/systemd-networkd-wait-online.service
…y nos aseguramos de que exista un timeout:
[Service] ExecStart=/lib/systemd/systemd-networkd-wait-online --timeout=5
Luego recargamos systemd con:
systemctl daemon-reload