Actualizar mongoDB de 2.0.1 a 2.0.4

1 junio 2012 at 16:04 by Adrián Pérez

MongoDB
Vuelvo a usar por enésima vez la misma imagen para un post sobre MongoDB. Esta vez, veremos cómo actualizar todo un clúster mongo de la versión 2.0.1 a la 2.0.4.

En primer lugar revisaremos qué posibilidades tenemos para actualizar mongo con

yum search mongo

A continuación, miraremos la versión de mongo que nos ofrece yum, para confirmar que coincide con la deseada:

yum info mongo-10gen
Paquetes disponibles
Name : mongo-10gen
Arch : x86_64
Version : 2.0.4

Una vez estemos seguros, seguiremos el proceso descrito en este otro post, que básicamente sigue estos pasos cuando se tiene un entorno con ReplicaSets y Sharding:

MONGOD

  1. Se empezará actualizando los procesos mongod. La idea es actualizar todos los mongod de un servidor, y tras acabar, pasar a los mongod de otro servidor, y así con todos.
  2. Poner todos los mongod del servidor a actualizar, a slaves con rs.stepDown()
  3. Actualizar tanto la consola cliente como el servidor a la última versión, del respositorio oficial 10gen
  4. yum update mongo-10gen-server.x86_64 mongo-10gen.x86_64

  5. Hacer un "kill -9" de los procesos mongod del servidor
  6. Iniciar los mongod del servidor y comprobar que se ha actualizado correctamente
  7. Estando logueados en el mongod, realizar un "rs.status()" para corroborar que todo continúa funcionando dentro del ReplicaSet
  8. Tras comprobar todos los mongod del servidor, repetir el proceso con el resto de procesos mongod del resto de servidores.

NOTA: El proceso es idéntico, en caso de que el servidor además de mongod, tenga mongos, árbitros o config_servers. Lo único que cambiará será que éstos procesos no se reiniciarán hasta que no sea el momento adecuado.

MONGOS y CONFIG_SERVERS

  1. Si los mongos y los config_servers están en los mismos servidores que los mongod, éstos se habrán actualizado con el "yum update" para los mongod, y únicamente bastará con reiniciar los procesos de los mongos y los config_servers, en orden. Los config_servers deberán reiniciarse uno a uno. Tras los config_servers, se reiniciarán los mongos.
  2. En el caso de que estén en máquinas separadas, bastará con hacer el "yum update mongo-10gen-server.x86_64" y a continuación, reiniciar tal y como se ha descrito en el punto anterior (pararlos todos, iniciar config_servers y después mongos).

ÁRBITROS

  1. Una vez esté todo actualizado, únicamente quedará actualizar los árbitros, con un "yum update mongo-10gen-server.x86_64", tras lo cual se deberá hacer un kill -9 e iniciar los procesos de nuevo para estar en la última versión.