zoukankan      html  css  js  c++  java
  • mongodb学习笔记--集群配置(一)

    #MongoDB 集群配置
    mongodb在生产环境中必然是以集群的形式存在的,不然不安全。mongodb集群主要是一主多从的形式存在。主节点master负责与客户端进行交互,处理读写操作。
    从节点slave主要负责从主节点读取数据并保存到本地。
    ## mongodb主从配置
    新建两台服务器,安装mongodb。
    192.168.226.129 master 将192.168.226.129机器作为master节点来配置。
    192.168.226.130 slave 将192.168.226.130机器作为slave从节点配置。
    ### 主节点配置
    ```shell script
    [root@localhost data]# mkdir -p /data/master
    [root@localhost data]# cd /home/mongodb/bin
    [root@localhost bin]# nohup mongod --dbpath /data/master --master &
    [3] 3282
    [root@localhost bin]# nohup: ignoring input and appending output to `nohup.out'

    [root@localhost bin]# cat nohup.out
    ...
    2020-04-27T03:33:42.456-0700 I CONTROL [initandlisten] allocator: tcmalloc
    2020-04-27T03:33:42.456-0700 I CONTROL [initandlisten] options: { master: true, storage: { dbPath: "/data/master" } }
    2020-04-27T03:33:42.459-0700 I JOURNAL [durability] Durability thread started
    2020-04-27T03:33:42.461-0700 I JOURNAL [journal writer] Journal writer thread started
    2020-04-27T03:33:42.463-0700 I NETWORK [initandlisten] waiting for connections on port 27017
    ```
    ### 从节点配置
    ```shell script
    [root@moggledb bin]# mkdir /data/slave
    [root@localhost data]# cd /home/mongodb/bin
    [root@moggledb bin]# nohup mongod --dbpath /data/slave --slave --source=192.168.226.129:27017 &
    [root@moggledb bin]# nohup: ignoring input and appending output to `nohup.out'

    [root@moggledb bin]# cat nohup.out
    2020-04-30T04:26:14.029-0700 I CONTROL [initandlisten] allocator: tcmalloc
    2020-04-30T04:26:14.029-0700 I CONTROL [initandlisten] options: { slave: true, source: "192.168.226.129:27017", storage: { dbPath: "/data/slave" } }
    2020-04-30T04:26:14.033-0700 I JOURNAL [journal writer] Journal writer thread started
    2020-04-30T04:26:14.035-0700 I NETWORK [initandlisten] waiting for connections on port 27017
    2020-04-30T04:26:15.036-0700 I REPL [replslave] repl: syncing from host:192.168.226.129:27017
    2020-04-30T04:26:20.054-0700 I REPL [replslave] repl: sleep 1 sec before next pass
    2020-04-30T04:26:21.055-0700 I REPL [replslave] repl: syncing from host:192.168.226.129:27017
    ```
    至此主从节点配置完毕,测试主从节点是否配置成功。
    打开从节点slave 的nohup.out日志.`tail -f nohup.out`
    然后在主节点中插入一条数据:
    ```shell script
    > show dbs
    local 1.078GB
    > use book
    switched to db book
    > db.coll.insert({"name":"java","price":"100"})
    WriteResult({ "nInserted" : 1 })
    ```
    查看从节点日志:
    ```shell script
    Cleanup...
    2020-04-30T04:31:47.888-0700 I JOURNAL [replslave] removeJournalFiles
    2020-04-30T04:31:47.889-0700 I JOURNAL [replslave] journalCleanup...
    2020-04-30T04:31:47.889-0700 I JOURNAL [replslave] removeJournalFiles
    2020-04-30T04:31:47.894-0700 I REPL [replslave] resync: cloning database book to get an initial copy
    2020-04-30T04:31:47.912-0700 I INDEX [replslave] allocating new ns file /data/slave/book.ns, filling with zeroes...
    2020-04-30T04:31:47.988-0700 I STORAGE [FileAllocator] allocating new datafile /data/slave/book.0, filling with zeroes...
    2020-04-30T04:31:47.989-0700 I STORAGE [FileAllocator] done allocating datafile /data/slave/book.0, size: 64MB, took 0.001 secs
    2020-04-30T04:31:47.997-0700 I INDEX [replslave] build index on: book.coll properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "book.coll" }
    2020-04-30T04:31:47.997-0700 I INDEX [replslave] building index using bulk method
    2020-04-30T04:31:47.997-0700 I INDEX [replslave] build index done. scanned 1 total records. 0 secs
    2020-04-30T04:31:47.998-0700 I STORAGE [replslave] copying indexes for: { name: "coll", options: {} }
    ```
    这样的主从配置如果主节点宕机的话,从节点不会自动转为主节点,会一直等待主节点重启。主节点宕机期间,服务是不可用的。
  • 相关阅读:
    Java反射
    安装python
    查看网页加载速度,并优化
    模型按一个圈摆放(10等分)
    y = n*x 匀速,变速运动
    物体绕圆形做圆周运动
    three.js 相机跟随鼠标移动
    three.js 物体随鼠标移动
    three.js 画正多边形-线性
    ES6的JavaScript数据结构实现之队列
  • 原文地址:https://www.cnblogs.com/Zs-book1/p/12835659.html
Copyright © 2011-2022 走看看