He estado jugando con obnam estos últimos días, y aunque parece muy prometedor y parece ofrecer básicamente todo lo que siempre quise en una herramienta de respaldo, estoy bastante decepcionado por su rendimiento. De hecho, es tan lento, sospecho que aquí ni siquiera es culpa de obnam, pero algo en mi entorno lo está causando.
Así que me pregunto principalmente si alguien más está usando obnam o conoce sus componentes internos lo suficientemente bien como para identificar el problema.
Por lo que pude ver hasta ahora, obnam parece bifurcar un proceso de gpg individual para cada archivo que se respalda. A juzgar por htop, strace e iostat, la velocidad de una copia de seguridad inicial está limitada principalmente por la bifurcación constante, mientras que la CPU y las unidades (sin redes) están inactivas por debajo del 20% de utilización.
Mi copia de seguridad asciende a aproximadamente 500,000 archivos con 170 GiB de datos en total. Entonces, para cada ejecución de respaldo, gpg se bifurca 500,000 veces. En realidad, ni siquiera me sorprende que esto lleve casi un día entero para la ejecución inicial y más de tres horas para otra ejecución con la mayoría de los archivos sin cambios. ¿Pero es este realmente el rendimiento que los usuarios de obnam deben esperar? A modo de comparación: una ejecución incremental de rsnapshot (mismos datos, misma máquina, mismas unidades) tarda unos cuatro minutos. De acuerdo, no hay encriptación involucrada, pero esto no debería ser tan significativo.
Entonces, para preguntar claramente: ¿la máquina de todos los demás no puede ejecutar gpg (encriptar una pequeña porción de datos) más de 50 veces por segundo, lo que hace que obnam sea una herramienta inusualmente lenta? O solo soy yo?
(FWIW, mi máquina es un Core i5-2500 con 8G de RAM y unidades SSD, que ejecuta Gentoo. La copia de seguridad se realiza en un HDD, pero no pude observar ninguna diferencia al hacer una copia de seguridad en la SSD, ya que no es E / S -Unido.)
fuente
--lru-size=256 --upload-queue-size=128
¿Cuál sería un buen valor en mi Ubuntu con 8 GB de RAM que debería respaldar en un servidor en línea bastante lento con solo 2 GB de RAM?Creo que atacaría este problema de varias maneras. Para empezar, trataría de diagnosticarlo yo mismo usando las siguientes metodologías.
1. registros de obnam
Para empezar, puede registrar mensajes de esta
obnam
manera:También puede aumentar el nivel de registro a través del
--log-level
interruptor para obtener más detalles.2. Perfilado
También puede obtener un perfil de lo que
obnam
está haciendo de este extracto en las preguntas frecuentes del proyecto :3. Abra un boleto
Si el rendimiento aún no se determina haciendo una investigación autónoma, abriría un ticket en el sitio web del proyecto . Por lo que pude reunir, los desarrolladores son algo receptivos y probablemente serían los mejores para solucionar los problemas con su proyecto.
obnam
parece que solo usa SFTP, por lo que debería ser bastante obvio qué está causando el problema. También consideraría basar el rendimiento de SFTP por sí mismo para que pueda ver cuál debería ser el máximo teórico con su sistema + conexión de red antes de intentar obtener esta información de lasobnam
pruebas.Puntos de datos adicionales
# 1 - publicación de blog que compara obnam vs. rsnapshotEncontré esta publicación de blog donde el autor hizo una comparación de varias opciones en esta categoría. El artículo se titula: Comparación de rsnapshot y obnam para copias de seguridad grandes programadas .
El artículo destacó un rendimiento muy pobre, IMO, con lo
obnam
que parece coincidir con lo que estás describiendo.obnam performance
rendimiento de rsnapshot
* ático vs. obnamNo es tan completo, pero menciona que una de las desventajas de
obnam
es que es muy lento frenteattic
.Se muestran algunos datos de prueba que parecen indicar que
obnam
es realmente lento.Referencias
fuente
La configuración predeterminada de Obnam (a partir del 2015-02-08) no funciona bien para realizar copias de seguridad de directorios con una gran cantidad de archivos pequeños. Tuve exactamente el mismo problema que se mencionó anteriormente.
La solución para mí fue agregar --lru-size = 8192 --upload-queue-size = 8192 a la línea de comando. Esto resolvió el problema y convirtió a un frustrado en un usuario muy feliz de Obnam. (Ahora tengo esta configuración en mis archivos de configuración estándar).
Desafortunadamente, el tutorial de Obnam no menciona por adelantado cuán importantes son estas configuraciones. Las preguntas frecuentes dan más detalles. Establecer los parámetros de rendimiento es realmente obligatorio en sistemas con muchos archivos pequeños.
fuente