Solucionar el problema de falta de memoria en el servidor de documentos ONLYOFFICE en un VPS

Para empezar, compruebe si el host Linux o el contenedor de ONLYOFFICE están alcanzando su límite de memoria. La guía actual de ONLYOFFICE Docs Community Edition indica que se requieren 4 GB de RAM y al menos 4 GB de espacio de intercambio como requisitos básicos. Su página de solución de problemas de Docker señala que un uso de 2 a 4 GB de RAM puede ser normal para unas pocas docenas de usuarios activos, ya que el uso de memoria aumenta con los documentos abiertos y los usuarios concurrentes. La tabla de hardware recomienda Kubernetes para implementaciones con más de 400 usuarios activos concurrentes. Estas cifras son de referencia y no garantizan que todos los VPS gestionen la misma carga: el sistema operativo del host, otros contenedores, el tamaño de los documentos y los límites del proveedor del VPS también influyen.

Esta guía se centra en la instalación común de Docker en un VPS Linux. Siga los cuatro pasos en orden: mida la presión del host y del contenedor, revise los registros y la caché de archivos olvidados, reduzca la carga evitable o corrija un límite de contenedor demasiado bajo, luego reinicie solo si es necesario y verifique bajo uso normal. Los ejemplos de comandos usan <CONTAINER_ID>como marcador de posición; reemplácelo con el ID o nombre de docker ps. Realice una copia de seguridad y programe el mantenimiento antes de detener un editor que tenga usuarios activos.

1. Confirme dónde se está produciendo la presión sobre la memoria.

Ejecute los primeros comandos en el host VPS, no dentro del contenedor ONLYOFFICE:

free -h
swapon --show
docker stats --no-stream

free -hMuestra la memoria disponible del host y el intercambio. swapon --showConfirma si el intercambio está activo. En docker stats, compara el uso de memoria de ONLYOFFICE con su límite mostrado. Si el host casi no tiene memoria disponible y varios servicios están usando RAM, es posible que el VPS sea insuficiente. Si el host aún tiene margen, pero el contenedor de ONLYOFFICE está cerca de un límite mucho menor, el límite del contenedor puede ser la causa inmediata. El intercambio casi lleno, el intercambio sostenido o la actividad intensa del disco pueden ralentizar la edición incluso antes de que el host termine un proceso.

Una ventana de terminal de Linux que muestra los comandos free -h y swapon --show
Paso 1: ejecute free -h y swapon --show en el host VPS para ver la RAM disponible y si el intercambio está activo.
Una ventana de terminal de Linux que muestra docker stats --no-stream
Paso 1: docker stats --no-stream compara el uso de memoria actual del contenedor ONLYOFFICE con su límite.

Compruebe también los límites de Docker configurados:

docker inspect --format '{{.HostConfig.Memory}} {{.HostConfig.MemorySwap}}' <CONTAINER_ID>
docker inspect --format '{{.State.OOMKilled}} {{.State.ExitCode}}' <CONTAINER_ID>

El primer comando imprime la configuración de memoria y memoria más intercambio en bytes. Un límite de memoria cero generalmente significa que no se ha configurado un límite de memoria explícito para el contenedor; no significa que el VPS tenga RAM ilimitada. La configuración de intercambio de memoria de Docker es un límite combinado de memoria y espacio de intercambio, por lo que no debe interpretarse como solo espacio de intercambio. El segundo comando informa si Docker registró una finalización por falta de memoria (OOM kill) para el contenedor y su último código de salida. Docker documenta estos límites como controles impuestos por el host Linux, y la presión de OOM en todo el host puede afectar a más de un contenedor.

2. Compruebe los registros del contenedor y el caso de uso elevado conocido de ONLYOFFICE.

Lea los registros recientes antes de cambiar la configuración o eliminar archivos:

docker logs --since 1h <CONTAINER_ID>

Busque reinicios repetidos, errores de inicio de la base de datos y mensajes cercanos al momento en que un editor dejó de estar disponible. Si tiene permiso, revise también el registro del kernel del host en busca de eventos de falta de memoria.

sudo dmesg -T | grep -Ei 'out of memory|killed process|oom' | tail -n 30

La página de solución de problemas de Docker de ONLYOFFICE sugiere específicamente verificar si hay documentos bloqueados u olvidados /var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten/cuando el uso de memoria parece inesperadamente alto. Primero, inspeccione el tamaño y el contenido del directorio; no elimine los archivos sin más. Podrían ser relevantes para la recuperación o la solución de problemas. Si el directorio es grande o sigue creciendo, conserve los archivos y los registros, y luego siga las instrucciones oficiales de solución de problemas o consulte con el soporte técnico de ONLYOFFICE qué archivos puede limpiar de forma segura para su versión.

Una ventana de terminal de Linux que muestra el comando docker logs con un marcador de posición para el ID del contenedor.
Paso 2: inspeccione los registros recientes del contenedor antes de cambiar el VPS o eliminar los archivos en caché.

3. Reducir la demanda evitable y corregir un límite de Docker demasiado pequeño.

En las directrices de dimensionamiento de ONLYOFFICE, un «usuario activo» es aquel que tiene un documento abierto en el editor, incluso si solo lo está visualizando. Los usuarios que simplemente han iniciado sesión en una plataforma integrada sin tener un documento abierto no se contabilizan de la misma manera. Pida a los usuarios que cierren las pestañas de documentos que no utilicen y evite programar sesiones de edición intensas en un VPS pequeño. Si la carga se produce al abrir varias hojas de cálculo grandes o archivos complejos simultáneamente, compare la memoria con baja actividad y en el pico máximo real, en lugar de estimarla únicamente a partir del número de cuentas.

Si el VPS tiene la memoria de intercambio deshabilitada, agregarla puede proporcionar un búfer temporal contra picos repentinos. La guía de instalación de Docker actual de ONLYOFFICE indica que se necesitan al menos 4 GB de memoria de intercambio y señala que la cantidad depende del sistema operativo del host. La memoria de intercambio se basa en el disco y es mucho más lenta que la RAM, por lo que no sustituye a una memoria física adecuada. Antes de crear un archivo de intercambio, compruebe que no exista ya uno, verifique el espacio libre en disco y confirme que su sistema de archivos y proveedor de VPS admiten este método. En un sistema de archivos Linux típico que admita un archivo de intercambio, un ejemplo es:

sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
swapon --show

No ejecute estos comandos sobre un archivo existente /swapfile. Para conservar un archivo de intercambio recién creado después de reiniciar, agregue una entrada coincidente /etc/fstabsolo después de verificar si existe una entrada:

/swapfile none swap sw 0 0

Si Docker muestra un límite de memoria bajo para el contenedor, revise el archivo Compose o el panel de despliegue que lo creó. Aumente o elimine el límite solo después de verificar la RAM total del VPS y la memoria utilizada por el sistema operativo, la base de datos, la plataforma de integración y otros servicios. No asigne toda la RAM del host a ONLYOFFICE. Si el host está saturado, cambiar un límite de Docker no creará más memoria física; redimensione el VPS o mueva otros servicios a otro host. Compose admite límites de memoria, pero el límite configurado debe coincidir con el modo de despliegue real y la memoria disponible del host.

Un VPS de 2 GB que ejecuta ONLYOFFICE junto con Nextcloud u otros servicios está por debajo del requisito mínimo de 4 GB de RAM especificado por el proveedor. Un VPS de 4 GB también puede quedarse sin memoria cuando el sistema operativo anfitrión y la pila de integración la comparten. En esos casos, un VPS más grande o un servidor de documentos dedicado es más fiable que reiniciar el contenedor repetidamente. Para más de 400 usuarios activos concurrentes, la tabla actual de ONLYOFFICE recomienda una implementación en Kubernetes y contactar con ONLYOFFICE para obtener asesoramiento sobre el dimensionamiento; esta carga de trabajo no se resuelve añadiendo un pequeño archivo de intercambio a un VPS.

Una ventana de terminal de Linux que muestra el comando documentado de preparación para el apagado de ONLYOFFICE.
Paso 4: antes de reiniciar un contenedor según lo previsto, ejecute el script de preparación documentado de ONLYOFFICE para que las sesiones de edición activas se desconecten correctamente.

4. Reinicie de forma segura y luego verifique el resultado.

No reinicie el servidor de documentos mientras haya usuarios editando, a menos que la interrupción sea inevitable. ONLYOFFICE explica que un documento se guarda después de que todos los usuarios que lo editan lo hayan cerrado. Antes de una detención programada del contenedor, su guía de solución de problemas recomienda el script de preparación que se muestra a continuación; este puede tardar hasta cinco minutos mientras los usuarios se desconectan. Avise a los usuarios con antelación, conserve las copias de seguridad y siga su procedimiento de mantenimiento habitual.

sudo docker exec <CONTAINER_ID> documentserver-prepare4shutdown.sh
sudo docker restart <CONTAINER_ID>

Si utiliza Docker Compose, realice el cambio permanente en la configuración o el panel de control de Compose y utilice el flujo de trabajo de reinicio habitual del proyecto. Un cambio puntual en un contenedor en ejecución puede desaparecer al recrearlo. No utilice --oom-kill-disableuna prioridad de OOM extrema para mantener ONLYOFFICE activo; Docker advierte que el agotamiento de la memoria del host puede poner en riesgo el VPS y otros servicios.

Después de que el VPS o contenedor se reinicie, confirme que el contenedor se mantiene saludable, el editor abre y guarda un documento de prueba, la memoria del host permanece disponible y el contenedor no se reinicia repetidamente. Observe la memoria del host y del contenedor durante un período de actividad representativo. Si la memoria aumenta continuamente después de que se cierran los documentos, el directorio forgotten-files crece o se producen eventos OOM, recopile la salida de free -h, swapon --show, docker stats, docker inspect, y los registros recientes para obtener asistencia. No considere un reinicio exitoso como prueba de que la capacidad es fija.

Guía de decisión rápida

Lo que observasEl siguiente paso más útil
La memoria RAM del host está agotada y otros servicios también se ven afectados.Actualiza el VPS o mueve los servicios que no sean de edición. Una configuración de contenedor no puede añadir RAM al host.
El host tiene espacio, pero ONLYOFFICE alcanza un límite bajo de Docker.Revise el límite de Compose o del proveedor y auméntelo solo dentro del margen de seguridad del host.
El uso aumenta con los documentos abiertos y luego disminuye cuando se cierran.Compare con la concurrencia esperada y los tipos de documentos; considere aumentar la RAM si los picos normales provocan errores de memoria insuficiente (OOM).
El uso se mantiene inusualmente alto después de que disminuye la actividad.Inspeccione los registros recientes y la caché documentada de archivos olvidados; conserve los datos e investigue antes de realizar la limpieza.
Más de 400 usuarios tienen documentos abiertos simultáneamente.Utilice la configuración de tamaño de clúster/Kubernetes del proveedor en lugar de un único VPS pequeño.

Referencias oficiales

Dejar un comentario

Solucionar el problema de falta de memoria en el servidor de documentos ONLYOFFICE en un VPS

Solucionar el problema de falta de memoria en el servidor de documentos ONLYOFFICE en un VPS

Diagnostica errores de memoria de ONLYOFFICE Docs en un VPS, comprueba los límites del host y de Docker, revisa los registros y los documentos olvidados, añade memoria de intercambio de forma segura y reinicia sin arriesgarte a perder las ediciones activas.

Solucionar el problema de copiar y pegar en Collabora Online entre aplicaciones locales.

Solucionar el problema de copiar y pegar en Collabora Online entre aplicaciones locales.

Solucione los problemas de copiar y pegar de Collabora Online con aplicaciones locales probando los atajos de teclado, los permisos del portapapeles del navegador, HTTPS, las políticas de iframe y los formatos de contenido.

Solucionar problemas de fuentes borrosas en ONLYOFFICE Desktop para Linux: una guía práctica

Solucionar problemas de fuentes borrosas en ONLYOFFICE Desktop para Linux: una guía práctica

Solucione el problema del texto borroso en los editores de escritorio de ONLYOFFICE en Linux comprobando el escalado de la pantalla, el escalado de la interfaz de la aplicación, la disponibilidad de la fuente y el ámbito de representación en un orden seguro.

Cómo crear formularios PDF interactivos rellenables en LibreOffice Writer

Cómo crear formularios PDF interactivos rellenables en LibreOffice Writer

Aprende a añadir controles de formulario de Writer, configurar etiquetas y el orden de tabulación, exportar con la opción Crear formulario PDF activada y probar tu PDF interactivo antes de compartirlo.

Cómo restringir la impresión y la descarga en ONLYOFFICE

Cómo restringir la impresión y la descarga en ONLYOFFICE

Aprenda cómo bloquear la impresión y las descargas en las integraciones de ONLYOFFICE Workspace, DocSpace o Docs, y verifique qué controles se aplican a cada método de uso compartido.

Cómo solucionar el error 502 Bad Gateway del servidor de documentos ONLYOFFICE detrás de Nginx

Cómo solucionar el error 502 Bad Gateway del servidor de documentos ONLYOFFICE detrás de Nginx

Solucione los errores 502 del servidor de documentos ONLYOFFICE detrás de Nginx. Verifique el estado del servicio, los registros, los puertos ascendentes, los encabezados reenviados, los WebSockets y la red de Docker.

Solucionar los tiempos de espera de conexión de la aplicación móvil ONLYOFFICE a un servidor autohospedado

Solucionar los tiempos de espera de conexión de la aplicación móvil ONLYOFFICE a un servidor autohospedado

Solucione los problemas de tiempo de espera de ONLYOFFICE Documents en un servidor autohospedado comprobando la URL correcta del portal o WebDAV, el acceso a la red, HTTPS, las credenciales y el enrutamiento del servidor.

Cómo cambiar la plantilla de documento predeterminada en LibreOffice Writer

Cómo cambiar la plantilla de documento predeterminada en LibreOffice Writer

Establezca una plantilla personalizada de LibreOffice Writer como predeterminada, actualícela o restablézcala y verifique que los nuevos documentos utilicen sus estilos y diseño de página preferidos.

Solucionar el error “Error de descarga” al exportar un PDF desde ONLYOFFICE

Solucionar el error “Error de descarga” al exportar un PDF desde ONLYOFFICE

Solucione los problemas de exportación de PDF de ONLYOFFICE separando los problemas de conversión, descarga del navegador y servidor, y luego verifique que el PDF guardado se abra y conserve su diseño.

Cómo desinstalar completamente ONLYOFFICE Document Server de Linux

Cómo desinstalar completamente ONLYOFFICE Document Server de Linux

Elimine ONLYOFFICE Document Server de Linux de forma segura. Siga los pasos para la instalación del paquete, Docker, Snap y Kubernetes, conserve los datos y verifique los servicios restantes.