Desde el shell del sistema, puede usar lsof(consulte la respuesta de Derick a continuación) o netstat -anpara ver qué está haciendo realmente un proceso. Sin embargo, asumiendo que solo tiene acceso al mongoshell (lo que implica el título de su pregunta), entonces puede ejecutar el serverCmdLineOpts()comando. Esa salida le dará todos los argumentos pasados en la línea de comando (argv) y los del archivo de configuración (analizado) y puede inferir que los puertos mongodestán escuchando en función de esa información. He aquí un ejemplo:
db.serverCmdLineOpts()
{
"argv" : [
"./mongod",
"-replSet",
"test",
"--rest",
"--dbpath",
"/data/test/r1",
"--port",
"30001"
],
"parsed" : {
"dbpath" : "/data/test/r1",
"port" : 30001,
"replSet" : "test",
"rest" : true
},
"ok" : 1
}
Si no ha pasado opciones de puerto específicas como las anteriores, mongodestará escuchando en 27017 y 28017 ( consola http ) de forma predeterminada. Nota: hay un par de otros argumentos que pueden alterar los puertos sin ser explícitos, consulte aquí:
https://docs.mongodb.org/manual/reference/configuration-options/#sharding.clusterRole