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, se desarrollarán los pasos a seguir para la compactación de base de datos de mongo y así poder liberar espacio en el filesystem /data.

Este proceso es realizado en NMIS9.

NOTA: en algunos casos, la información se encuentra en /var/lib/mongo, si se desea realizar el cambio del path modificar /etc/mongod.conf.

ADVERTENCIA: este proceso eliminará los datos de la interface gráfica.

Introducción

El procedimiento referido en esta página está referico a cuando la partición /data tiene demasiado espacio utilizado. Esto está provocando que NMIS y sus módulos funcionen de manera incorrecta.

En el ejemplo actual, se describe el procedimiento para mantener el histórico del último año, por lo cual el equipo de Opmantek LATAM recomienda realizar la compactación de la base de datos a partir de la fecha que se indica en los siguientes pasos.

NOTA: 

Proceso realizado

Nota inicial: no es necesaria la detención de los demonios del servidor, este proceso puede aplicarse directamente en el servidor deseado.

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 y se recomienda utilizar la página web https://www.epochconverter.com/ para poder realizar la conversión.

Se ejecutan los siguientes comandos uno por uno:

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. A continuación, se compactan cada una de las colecciones purgadas para liberar el espacio en disco, mediante la ejecución de los siguientes comandos uno por uno:

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%:


Procedimiento de contigencia para la restauración de la base de datos de mongo

Restauración de la bd: MongoDB Installation


Comandos útiles para 



  • No labels