...
- Stop all harvesters and custom schedulers on the API nodes
- (eg "service infinite-px-engine stop; touch /opt/infinite-home/bin/STOP_CUSTOM")
- Log onto the mongos of any node and stop the balancer
- ("sh.stopBalancer()" from the mongos shell)
- Upgrade the MongoDB RPMs on all of the Config DB servers
- ("yes | yum install mongo-10gen-2.4.10 mongo-10gen-server-2.4.10 -y --exclude=mongodb-org*")
- Log onto one of the Config DB servers and upgrade the metadata
- ("
mongos --upgrade --configdb <the 3 db config nodes>
") - (NOTE: on a number of occasions, this step has failed, reporting transport errors to one of the nodes. On all such occasions, the following steps have worked around this:
- Remove the config upgrade lock:
- mongo config --eval 'db.locks.remove({_id: "configUpgrade"})'
- Log onto the Config DB node for which the transport error was reported and rerun the upgrade exactly as above)
- Remove the config upgrade lock:
- ("
- Restart all 3 Config DB servers
- ("service mongo_infinite restart")
- Upgrade MongoDB on all API and DB nodes
- (See above for yum command)
- Restart all the servers and routers on all API and DB nodes
- ("service mongo_infinite restart")
- Restart tomcat (unless you are moving onto MongoDB 2.6 next)
- ("service tomcat6-interface-engine restart")
- Start the harvester and custom scheduler (unless you are moving onto MongoDB 2.6 next)
- (eg "service infinite-px-engine start; rm -f /opt/infinite-home/bin/STOP_CUSTOM")
- Restart the balancer
- (log onto any mongos shell and run "sh.startBalancer()")
- (log onto any mongos shell and run "sh.startBalancer()")
Warning |
---|
Don't stop any of the DB nodes - older versions of infinit.e-db-instance would treat a "service mongo_infinite stop" as indication that the node was being decommissioned, and remove it from the replica set, causing all sorts of issues). |