Не удается подключиться к mon go с mon goose, но можно в командной строке? - PullRequest
0 голосов
/ 13 марта 2020

У меня есть ящик с узлом / express веб-сервером и ящик, запущенный пн go. Я пытаюсь заставить их подключаться через частную сеть вместо 0.0.0.0. Они могут пинговать друг друга по своим частным IP-адресам. Мой /etc/mongod.conf имеет:

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1,10.xxx.xxx.xxx

Когда я sh подключен к своему серверу веб-сервера, я могу успешно подключиться к базе данных, поэтому я считаю, что моя конфигурация mon go и брандмауэр настроены правильно. Из командной строки я использую это (и вводя пароль, когда он запрашивает):

mongo mongodb://[myUser]@[10.xxx.xxx.xxx]:27017/[myDbName]?authSource=admin

На моем express сервере я подключаюсь так:

  const mongoUrl = `mongodb://${process.env.MONGO_HOST}:${process.env.MONGO_PORT}/${process.env.MONGO_DBNAME}?authSource=admin`;
  let opts = {
    useNewUrlParser: true
  };
  if (process.env.MONGO_PASS) {
    Object.assign(opts, {
      auth: {
        user: process.env.MONGO_USER,
        password: process.env.MONGO_PASS
      },
    });
  }
  logger.info("Attempting to connect to db:", { mongoUrl });
  mongoose.connect(mongoUrl, opts, handleConnectionErr);

Когда Я запускаю это на веб-сервере, предоставляя те же значения переменных, что и для другой команды, я получаю эту ошибку:

error: Error connecting to database: MongoNetworkError: failed to connect to server [10.xxx.xxx.xxx:27017] on first connect [MongoNetworkError: connect EHOSTUNREACH 10.xxx.xxx.xxx:27017] 

Чего мне не хватает?

Правки:

  • Ничего не записывается на мой сервер go /var/logs/mongodb/mongod.log во время запроса на подключение
  • Я пробовал другие комбинации mongoose.connect, используя только URL, просто объект параметров или комбинацию обоих. Без улучшений
  • На самом деле на третьем сервере у меня есть еще одно приложение узла, которое подключается к той же базе данных и успешно делает это с помощью драйвера nodejs mongodb - так что я подозреваю, что это либо связано с моим бокс-сетом вверх или с пн goose

1 Ответ

0 голосов
/ 13 марта 2020

Ответ: убедитесь, что вы правильно копируете и вставляете IP-адрес каждый раз, когда используете его

У меня был опечатка в одном из моих конфигов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...