Você precisa plugar uma biblioteca de promessas (q, bluebird, a es6...)
mongoose.Promise = require('bluebird');
mongoose.Promise = require('bluebird');
Conceitos de desenvolvimento de aplicativos do Cloudera Operational Database
Como executar uma sincronização de banco de dados única para outro banco de dados no MongoDB?
Tutorial do PyMongo:testando o Failover do MongoDB em seu aplicativo Python
Implantando conjuntos de réplicas do MongoDB entre regiões na AWS