GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit MongoDB Cluster pomocí 3 uzlů s Ubuntu 16?

Abyste mohli pokračovat, budete potřebovat tři výpočetní uzly. Na E2E Public Cloud můžete spustit výpočetní uzly na vyžádání. Klikněte sem dozvědět se více .

V rámci tohoto 3 uzlu MongoDB Cluster bude jeden uzel primární a další dva budou sekundární uzly.

Výhodou tohoto nastavení je, že vám pomůže překonat jediný bod selhání. Když primární uzel klesne, sekundární uzly fungují jako primární; tím je zajištěna vysoká dostupnost.

Chcete-li nastavit cluster MongoDB se 3 uzly, postupujte podle následujících kroků:

Aktualizujte a upgradujte všechny 3 uzly (ubuntu 16.04):

$ sudo apt-get update
$ sudo apt-get upgrade

Instalace MongoDB:

$sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
$echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
$sudo apt-get update
$sudo apt-get install -y mongodb-org=4.0.10 mongodb-org-server=4.0.10 mongodb-org-shell=4.0.10 mongodb-org-mongos=4.0.10 mongodb-org-tools=4.0.10

Nastavte název hostitele a hostitelskou položku na všech 3 uzlech:

$ sudo vim /etc/hosts

`````````
172.16.1.x test-mongo-1
172.16.2.x test-mongo-2
172.16.3.x test-mongo-3
````````

$hostname test-mongo1
$ sudo vim /etc/hostname 
``````
test-mongo-1

```````

Nastavte odpovídající název hostitele na všech 3 uzlech

Pokud je server z E2E Cloud, odeberte 05-hostname 02-ssh_public_key z adresáře /etc/one-context.d/

Vygenerujte soubor klíče a zkopírujte jej do dalších 2 uzlů:

$ sudo cd /etc/
$ sudo mkdir mongo
$ cd
$ sudo openssl rand -base64 756 > /etc/mongo/mongo-keyfile
$ sudo cd /etc/mongo/
$ sudo chmod 400 mongo-keyfile
$ sudo chown mongodb:mongodb /etc/mongo -R
$ cd
$ sudo rsync -avrP /etc/mongo [email protected]:/etc/
$ sudo rsync -avrP /etc/mongo [email protected]:/etc/

Přidat sekci Replikace na mongodb.conf na všechny 3 uzly:

replication:
 replSetName: mongo-cluster
 enableMajorityReadConcern: true

Spusťte a zkontrolujte stav mongodb na všech 3 uzlech:

$ sudo service mongod start
$ sudo service mongod status

Ujistěte se, že mongodb začíná na všech 3 uzlech.

Změňte adresu vazby MongoDB na soukromou IP serveru ve všech 3 uzlech:

$ sudo vim /etc/mongod.conf
# network interfaces
net:
  port: 27017
  bindIp: 172.16.1.x

$ sudo service mongod restart

Přihlaste se do Mongodb na libovolném uzlu:

$ mongo -host 172.16.1.x

$ config = {
  _id : "mongo-cluster",
   members : [
       {_id : 0, host : "test-mongo-1:27017"},
       {_id : 1, host : "test-mongo-2:27017"},
       {_id : 2, host : "test-mongo-3:27017"},
   ]
}

$ rs.initiate(config)

Poznámka:Po nějaké době se tento stroj (odkud se provedený příkaz stane primárním – můžete se odhlásit z MongoDB a přihlásit se a zkontrolovat totéž)

Nyní vytvořte admin &maindatabase DB a uživatele pro přístup k DB:

$ use admin
$ db.createUser({ user: "admin", pwd: "E580nOOUE6cDhQ", roles: [{ role: "root", db: "admin" }] })
$ stagedatabase
$ db.createUser({ user: "stage", pwd: "4n1PdUKkyoU9wcTNW", roles: [{ role: "dbOwner", db: "maindatabase" }] })

Přidejte sekci zabezpečení na mongod.conf na všechny 3 uzly:

security:
  keyFile: /etc/mongo/mongo-keyfile
  clusterAuthMode: keyFile
  authorization: enabled

Restartujte a zkontrolujte stav mongodb na všech 3 uzlech:

$ sudo service mongod restart
$ sudo service mongod status

Přihlaste se do Mongodb pomocí přihlašovacích údajů:

$ mongo -host 172.16.1.x admin -u admin -p'E580nOOUE6cDhQ'

Přihlaste se do Mongodb pomocí jiné uživatelské stagedatabase:

mongo 172.16.1.x:27017/maindatabase -u stage -p 4n1PdUKkyoU9wcTNW

Nyní je nastavení dokončeno.


Ubuntu
  1. Jak nastavit Kubernetes Cluster pomocí Rancher

  2. Jak nastavit MySQL Cluster na Ubuntu

  3. Jak nainstalovat MongoDB na Ubuntu 16.04

  1. Jak nastavit bránu firewall s UFW na Ubuntu 18.04

  2. Jak nainstalovat MongoDB na Ubuntu 18.04

  3. Jak nainstalovat Joomla s Apache na Ubuntu 18.04

  1. Jak nastavit bránu firewall s UFW na Ubuntu 20.04

  2. Jak nainstalovat MongoDB na Ubuntu 20.04

  3. Jak nastavit RabbitMQ Cluster na Ubuntu 18.04 LTS