You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

A continuación, desarrollaremos los pasos a seguir para la compactación de base de datos de mongo y así poder liberar espacio en el filesystem /data, en el caso de NMIS 8.

Situación previa

El cliente comenta que la partición /data tiene demasiado espacio utilizado y está provocando que NMIS y sus módulos funcionen de manera incorrecta.

Se recomienda realizar la compactación de la base de datos si es que no le interesa un histórico más allá de un año.

Pasos a seguir para la compactación

1. Para este ejemplo, se purgan las colecciones de mongo "events", "actionlog" y "rawlogs" removiendo todo lo anterior a la fecha del miércoles 1 de enero de 2020 (1579651200 en formato Epoch).

Esta fecha debe acordarse con cada cliente.

Se ejecutan los comandos siguientes, adaptando el Epoch a la fecha deseada:

mongo -u opUserRW -p op42flow42 nmis --eval 'db.getCollection("events").remove({time: {$lt: 1579651200}})'

mongo -u opUserRW -p op42flow42 nmis --eval 'db.getCollection("actionlog").remove({time: {$lt: 1579651200}})'

mongo -u opUserRW -p op42flow42 nmis --eval 'db.getCollection("rawlogs").remove({time: {$lt: 1579651200}})'

2. Se compactan cada una de las colecciones purgadas para liberar el espacio en disco, mediante la ejecución de los siguientes comandos:

mongo -u opUserRW -p op42flow42 nmis

db.runCommand({compact: 'events'})

db.runCommand({compact: 'rawlogs'})

db.runCommand({compact: 'actionlog'})

3. Al final, se logra la reducción de /data a 70%:


  • No labels