Как перезапустить mongodb и добавить к ноде replSet?

Рейтинг: 0Ответов: 2Опубликовано: 22.01.2023

У меня есть нода primary 5.0.2 На порту 27017. Хочу добавить к ней replSet. Запускаю команду:

sudo systemctl stop mongod

Далее в конфигурационный файл добавил:

replication:
  replSetName: "secondaries"

Затем Запустил

sudo systemctl deamon-reload
sudo systemctl start mongod

Вошел в базу и получил сведения о конфигурации:

mongosh -u user
use admin
switched to db admin
admin>  db.runCommand("getCmdLineOpts")
{
  argv: [
    '/usr/bin/mongod',
    '--config',
    'path/to/datadir/сonf/mongod.cfg',
    '--port',
    '27017'
  ],
  parsed: {
    config: 'path/to/datadir/conf/mongod.cfg',
    net: { bindIp: 'xxx.x.xxx.x, 127.0.0.1', port: 27017 },
    security: {
      authorization: 'enabled',
      keyFile: '/path/to/keyfile'
    },
    storage: { dbPath: '/path/to/db' },
    systemLog: {
      destination: 'file',
      path: '/path/to/log'
    }
  },

Все пути и хост скрыты мной. Как видите, в файле конфигурации нет ничего про поле replication. Как правильно добавить эту опцию? Возможно я перезапустил не тот сервис?

Ответы

▲ 0Принят

Replication нужно добавить в файл, как отдельную секцию:

replication:
  replSetName: "secondaries"

Перезапустить сервис мне помогли команды

sudo /usr/bin/mongod --config /path/to/conf/mongod.cfg --port 27017 --shutdown
sudo /usr/bin/mongod --config /path/to/conf/mongod.cfg --port 27017 &>/dev/null &
▲ 1

В mongod.cfg добавь опцию replication в секцию systemLog

systemLog:
  replication:
    replSetName: "secondaries"

Потом перезапусти mongod

sudo systemctl stop mongod
sudo systemctl start mongod