mongodb離線安裝及集羣搭建

安裝

1.解壓mongodb安裝包

【輸入】tar -zxvf mongodb-linux-x86_64-rhel70-3.6.4.tgz

2.修改解壓後的mongodb名稱

【輸入】mv mongodb-linux-x86_64-rhel70-3.6.4 mongodb

3.進入mongodb文件夾,新建data和logs兩個文件夾,進入data文件夾新建db文件夾。在logs文件夾新建文件!mongodb.log

4.進入mongodb的bin目錄下,新建文件mongodb.conf。

#mongodb綁定的地址

bind_ip = 0.0.0.0

#數據文件存放目錄

dbpath = /usr/local/mongodb/data/db

#日誌文件存放目錄

logpath = /usr/local/mongodb/data/logs/mongodb.log

#mongodb默認端口

port = 27017

#以守護程序的方式啓用,即在後臺運行

fork = true

#以追加的方式記錄日誌

logappend=true

5.測試啓動mongodb服務,進入mongodb的bin目錄下執行

【輸入】./mongod -f mongodb.conf

6.設置mongodb.service啓動服務,設置開機啓動

【輸入】 cd /lib/systemd/system  

【輸入】 vi mongodb.service

[Unit]

Description=mongodb

After=network.target remote-fs.target nss-lookup.target

[Service]

Type=forking

ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf

ExecReload=/bin/kill -s HUP $MAINPID

ExecStop=/usr/local/mongodb/bin/mongod  --shutdown -f /usr/local/mongodb/bin/mongo

db.conf

PrivateTmp=true

[Install]

WantedBy=multi-user.target

7.設置mongodb.service權限

【輸入】chmod 754 mongodb.service

8.系統mongodb.service的操作命令如下:

【輸入】#啓動服務  

              systemctl start mongodb.service  

              #關閉服務  

              systemctl stop mongodb.service  

              #開機啓動  

              systemctl enable mongodb.service

集羣搭建

Mongodb Replica Set方式集羣搭建。

1.建立配置文件【mongodb.conf】,添加replSet

#mongodb綁定的地址
bind_ip = 172.17.97.139
#數據文件存放目錄
dbpath = /usr/local/mongodb/data/db
#日誌文件存放目錄
logpath = /usr/local/mongodb/data/logs/mongodb.log
#mongodb默認端口
port = 27017
#以守護程序的方式啓用,即在後臺運行
fork = true
#以追加的方式記錄日誌
logappend=true

#replica set的名字
replSet=testrs
maxConns=5000

2.重啓mongodb服務

【輸入】systemctl restart mongodb.service

3.配置主、備、仲裁節點,在三個節點中選擇一個連接mongodb。

【輸入】./mongo 220.20.20.101:27017   #ip和port是某個節點的地址  

【輸入】>use admin  

【輸入】>cfg={ _id:"testrs", members:[ {_id:0,host:'220.20.20.101:27017',priority:2}, {_id:1,host:'220.20.20.102:27017',priority:1},   

{_id:2,host:'220.20.20.103:27017',arbiterOnly:true}] };  

【輸入】>rs.initiate(cfg)             #使配置生效  

#優先級最高的即成爲主節點,即這裏的220.20.20.101:27017。特別注意的是,對於仲裁節點,需要有個特別的配置——arbiterOnly:true。這個不能少,不然主備模式就不生效。

執行rs.status()命令。如果配置生效,會顯示以下信息:

{  

        "set" : "testrs",  

        "date" : ISODate("2013-01-05T02:44:43Z"),  

        "myState" : 1,  

        "members" : [  

                {  

                        "_id" : 0,  

                        "name" : "220.20.20.101:27017",  

                        "health" : 1,  

                        "state" : 1,  

                        "stateStr" : "PRIMARY",  

                        "uptime" : 200,  

                        "optime" : Timestamp(1357285565000, 1),  

                        "optimeDate" : ISODate("2013-01-04T07:46:05Z"),  

                        "self" : true  

                },  

                {  

                        "_id" : 1,  

                        "name" : "220.20.20.102:27017",  

                        "health" : 1,  

                        "state" : 2,  

                        "stateStr" : "SECONDARY",  

                        "uptime" : 200,  

                        "optime" : Timestamp(1357285565000, 1),  

                        "optimeDate" : ISODate("2013-01-04T07:46:05Z"),  

                        "lastHeartbeat" : ISODate("2013-01-05T02:44:42Z"),  

                        "pingMs" : 0  

                },  

                {  

                        "_id" : 2,  

                        "name" : "220.20.20.103:27017",  

                        "health" : 1,  

                        "state" : 7,  

                        "stateStr" : "ARBITER",  

                        "uptime" : 200,  

                        "lastHeartbeat" : ISODate("2013-01-05T02:44:42Z"),  

                        "pingMs" : 0  

                }  

        ],  

        "ok" : 1  

}  

4.可以進行測試,基本上已經完成了集羣的所有搭建工作。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章