У меня есть два сервера - один работает с API, с которого я хочу получить доступ к БД, а другой - с действительной базой данных.
Это мой файл mongod.conf:
# network interfaces
net:
bindIp: 165.227.236.198
port: 27017
Это вывод команды ifconfig
на моем сервере Ubuntu:
eth0 Link encap:Ethernet HWaddr be:08:9e:b1:e7:d7
inet addr:165.227.236.198 Bcast:165.227.239.255 Mask:255.255.240.0
inet6 addr: fe80::bc08:9eff:feb1:e7d7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:14502 errors:0 dropped:0 overruns:0 frame:0
TX packets:13741 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:33725605 (33.7 MB) TX bytes:1816546 (1.8 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:80 errors:0 dropped:0 overruns:0 frame:0
TX packets:80 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:5920 (5.9 KB) TX bytes:5920 (5.9 KB)
API привязан к порту 80. Теперь, когда я удаляю настройку bindIp
из файла mongod.conf
, база данных подключается, как и ожидалось, но когда я связываю ip, база данных отклоняет соединение.
РЕДАКТИРОВАТЬ: база данных отклоняет соединение, потому что служба не работает. Это вывод из логов (не очень информативный):
● mongod.service - высокопроизводительный, без схемы ориентированный на документы
База данных загружена: загружена (/lib/systemd/system/mongod.service;
включен; предустановка поставщика: включена) Активна: не выполнена (Результат: код выхода)
с понедельника 2018-07-02 11:04:43 UTC; 3 с. Назад
Документы: https://docs.mongodb.org/manual Процесс: 13473 ExecStart = / usr / bin / mongod --config /etc/mongod.conf (code = exited,
статус = 48) основной PID: 13473 (код = выход, статус = 48)
02 июля, 11:04:43 минималистическая бухгалтерская книга-db systemd [1]: запущено
Высокопроизводительная, не требующая схемы документно-ориентированная база данных. 02 июля
11:04:43 минималистическая бухгалтерская книга-db systemd [1]: mongod.service: Main
процесс завершен, код = выход, статус = 48 / нет 02 июля 11:04:43
minimalistic-ledger-db systemd [1]: mongod.service: сбой при вводе модуля
государство. 02 июля, 11:04:43 минималистическая бухгалтерская книга-db systemd [1]:
mongod.service: не удалось с результатом 'код выхода'.
EDIT2: это ошибка из журнала mongodb:
2018-07-02T11: 04: 43.444 + 0000 I CONTROL опции [initandlisten]: {
config: "/etc/mongod.conf", net: {bindIp: "165.227.236.198", порт:
27017}, хранилище: {$ 2018-07-02T11: 04: 43.475 + 0000 E СЕТЬ
[initandlisten] listen (): сбой bind () Невозможно назначить запрошенное
адрес для сокета: 165.227.236.198:27017 2018-07-02T11: 04: 43.475 + 0000
E NETWORK [initandlisten] Не удалось настроить сокеты во время запуска.
2018-07-02T11: 04: 43.475 + 0000 E STORAGE [initandlisten] Не удалось установить
up listener: InternalError: Не удалось настроить сокеты
Что я делаю не так?