Поиск…


замечания

Для тех, кто не знаком, набор реплик определяется как избыточная конфигурация трех серверов. Заштрихованная база данных определяется как горизонтально взломанная база данных, где каждый осколок определяется как набор реплик. Поэтому кластер Mongo с кластером включает в себя как минимум 11 серверов для кластера с двумя осколками и увеличивается на три сервера для каждого дополнительного осколка. Таким образом, у осколочного кластера всегда есть экземпляры сервера 11, 14, 17, 20, 23 и т. Д. То есть, есть 2 осколка по 3 сервера каждый, еще 3 конфигурационных контроллера и 2 маршрутизатора. Всего 11 серверов для кластера с двумя кланами.

Набор копий Quickstart

Создайте себе три сервера, используя любое физическое или виртуальное оборудование, которое вы пожелаете. (В этом руководстве предполагается, что вы используете Ubuntu в качестве вашей операционной системы.) Затем повторите следующие инструкции три раза ... один раз для каждого сервера.

# add the names of each server to the host file of each server
sudo nano /etc/hosts
  10.123.10.101 mongo-a
  10.123.10.102 mongo-b
  10.123.10.103 mongo-c

# install mongodb on the server
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get update
sudo apt-get install mongodb-10gen


# create the /data/ directories
sudo mkdir /data
sudo mkdir /data/logs
sudo mkdir /data/db

# make sure the mongodb user and group have access to our custom directories
sudo chown -R mongodb:mongodb /data

# edit the mongo upstart file in /etc/init/mongodb.conf
sudo nano /etc/init/mongodb.conf
  start on started mountall
  stop on shutdown
  respawn
  respawn limit 99 5
  setuid mongodb
  setgid mongodb
  script
    exec /usr/bin/mongod --config /etc/mongodb.conf >> /data/logs/mongo-a.log 2>&1
  end script


# edit mongodb configuration file
sudo nano /etc/mongodb.conf
    dbpath=/data/db
    logpath=/data/logs/mongod.log
    logappend=true
    port=27017
    noauth=true
    replSet=meteor
    fork=true

# add a mongo log-rotation file
sudo nano /etc/logrotate.d/mongod
  /data/logs/*.log {
    daily
    rotate 30
    compress
    dateext
    missingok
    notifempty
    sharedscripts
    copytruncate
    postrotate
        /bin/kill -SIGUSR1 `cat /data/db/mongod.lock 2> /dev/null` 2> /dev/null || true
    endscript
  }

# make sure mongod service is started and running
sudo service mongodb start
sudo reboot

Конфигурация набора реплик

Затем перейдите в оболочку mongo и запустите набор реплик, например:

meteor mongo

  > rs.initiate()
  PRIMARY> rs.add("mongo-a")
  PRIMARY> rs.add("mongo-b")
  PRIMARY> rs.add("mongo-c")
  PRIMARY> rs.setReadPref('secondaryPreferred')


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow