MongoDB部署

上传人:碎****木 文档编号:220860907 上传时间:2021-12-09 格式:DOCX 页数:18 大小:310.57KB
返回 下载 相关 举报
MongoDB部署_第1页
第1页 / 共18页
MongoDB部署_第2页
第2页 / 共18页
MongoDB部署_第3页
第3页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《MongoDB部署》由会员分享,可在线阅读,更多相关《MongoDB部署(18页珍藏版)》请在金锄头文库上搜索。

1、MongoDB 安装及配置一、 设备要求1、 硬件环境要求一般商用效劳器,支持千兆连接网卡。2、 网络环境要求效劳器间千兆网络互连。3、 操作系统要求Linux 64 位,不能使用 32 位操作系统。4、 硬盘需求为了提高性能,建议承受 10000 转或以上硬盘。硬盘可以是单块,也可以是多块,可以不做 RAID。5、 副本集效劳器数量副本集的总数应当是单数,假设是偶数,需要添加仲裁节点,保证总数维持单数。仲裁节点不保存数据,一般不需要专用的效劳器,可以与其他效劳共同共享效劳器。二、 操作系统安装1、 安装操作系统正常安装操作系统,这里以 CentOS 7.1 64 位为例。IP 地址安排时,要

2、保证全部效劳器在一个网段中。2、 修改防火墙配置root 用户登录部署 MongoDB 的效劳器间要能够相互PING 通。这里以关闭防火墙为例。(1) CentOS 关闭及禁用防火墙#停顿#systemctl stop firewalld.service #禁用#systemctl disable firewalld.service(2) CentOS 开机网络自动连接配置#vi /etc/sysconfig/network-scripts/ifcfg-eno1 修改 ONBOOT=yes 开机自启动3、 修改资源访问限制root 用户登录 查看配置命令:#ulimit -aMongoDB 推

3、举资源访问设置:-f (file size): unlimited-t (cpu time): unlimited-v (virtual memory): unlimited-n (open files): 64000-m (max memory size): unlimited-u (max user processes): 64000一般需要需要-n: open files和-u: max user processes设置。一般-u: max user processes设置为-n: open files的一半。永久修改如下:#vi /etc/security/limits.conf 在文

4、件最终参加:* softnofile64000* hardnofile64000* softnproc64000* hardnproc64000只修改当前用户退出登录后失效: #ulimit -n 64000#ulimit -u 320004、 修改 HostName,在安装MongoDB 时可以通过主机名互访。可选 #vi /etc/hosts在文件最终参加: 172.16.16.100 zzk015、关闭Linux 的内存透亮大页面治理root 用户登录(1) 将disable-transparent-hugepages 文件拷贝到/etc/init.d/名目下。(2) 运行以下命令以确保

5、可以使用init 脚本:# chmod 755 /etc/init.d/disable-transparent-hugepages(3) 在不同的 Linux 版本上使用适当的命令配置新的init 脚本,以下为 CentOS 7.1 的命令:# chkconfig -add disable-transparent-hugepages(4) 重新启动效劳器#reboot(5) 检查THP 支持的状态:#cat /sys/kernel/mm/transparent_hugepage/enabled 输出类似于:always madvise never#cat /sys/kernel/mm/tran

6、sparent_hugepage/defrag 输出类似于:always madvise never6、安装numactl 包root 用户登录将 numactl 的安装包如:numactl-2.0.9-4.el7.x86_64.rpm拷贝到/home 下,执行命令:#rpm -ivh /home/numactl-2.0.9-4.el7.x86_64.rpm7、创立mongodb 用户#useradd mongodb#passwd mongodb8、修改mongodb 用户为允许执行sudo 命令# visudo在 # %wheelALL=(ALL)NOPASSWD: ALL后仿照添加mong

7、odbALL=(ALL)NOPASSWD: ALL9、修改mongodb 用户的文件翻开限制#vi /etc/security/limits.d/20-nproc.conf*softnproc64000三、 下载 MongoDB 安装文件官网下载地址: :/ mongodb.org/downloads四、 安装 MongoDB每台效劳器逐一重复 1、 安装 MongoDB 运行文件(1) 使用 mongodb 用户登录,或者从root 用户切换到mongodb 用户。将下载的文件包拷贝到home/mongodb 名目下,解压文件如下:#su mongodb#tar -zxvf mongodb-

8、linux-x86_64-rhel70-3.4.0.tgz(2) 删除mongodb 安装包,移动解压后文件夹内容到mongodb 名目下#rm mongodb-linux-x86_64-rhel70-3.4.0.tgz#cd mongodb-linux-x86_64-rhel70-3.4.0 #mv ./* /home/mongodb#cd .#rm -rf mongodb-linux-x86_64-rhel70-3.4.0/(3) 修改每台效劳器的环境变量编辑文件:#sudo vi /etc/profile 在文件中参加:PATH=$PATH:/home/mongodb/bin 使修改马上

9、生效:#source /etc/profile注:在每台效劳器上重复上述步骤,分别安装mongodb。五、 配置单节点 MongoDB 数据库效劳器1、 创立存放MongoDB 数据的文件夹#mkdir -p /home/mongodb/data2、 使用 root 用户将修改后的MongoDB 配置文件拷贝/etc 名目下,然后修改文件权限#sudo chown mongodb /etc/mongod.conf3、 修改 MongoDBmongod.conf配置文件重点修改以下内容:dbpath = /home/mongodb/data logpath = /var/log/mongodb.

10、log bind_ip = 127.0.0.1port = 27017fork = true replSet = replset4、 手动创立/var/log/mongod.log 文件#sudo vi /var/log/mongod.log不修改文件直接保存5、 修改/var/log/mongod.log 文件的权限#sudo chown mongodb /var/log/mongod.log6、 运行 MongoDB 实例#numactl -interleave=all mongod -config /etc/mongod.conf7、 查看启动日志#cat /var/log/mongod

11、.log六、 使用配置文件配置副本集在三台机器上任意一台机器登陆mongodb mongo 137.20.17.23:27017#使用admin 数据库use admin#定义副本集配置变量,这里的 _id:”repset” 和上面命令参数“ replSet repset” 要保持一样1、配置三个节点的副本集 config = _id:“repset“, members:. . _id:0,host:“137.20.17.23:27017“,. . _id:1,host:“137.20.17.24:27017“,. . _id:2,host:“137.20.17.25:27017“. . #输

12、出如下“_id“ : “repset“, “members“ : “_id“ : 0,“host“ : “137.20.17.26:27017“,“_id“ : 1,“host“ : “137.20.17.27:27017“,“_id“ : 2,“host“ : “137.20.17.28:27017“#初始化副本集配置 rs.initiate(config); “ok“ : 1 #成功启动副本集2、配置带有仲裁节点的副本集配置如下(生产环境建议配置): use adminconfig = _id:“shard2“, members:_id:0,host:“10.1.39.187:27017“

13、,_id:1,host:“10.1.39.188:27017“,_id:2,host:“10.1.39.193:27017“,arbiterOnly:true;#初始化副本集配置rs.initiate(config);其中的仲裁节点(arbiterOnly)不存储数据,只是负责故障转移的群体投票。其实不只是主节点、副本节点、仲裁节点,还有Secondary-Only、Hidden、Delayed、Non-Voting。Secondary-Only:不能成为primary 节点,只能作为secondary 副本节点,防止一些性能不高的节点成为主节点。Hidden:这类节点是不能够被客户端制定IP

14、 引用,也不能被设置为主节点,但是可以投票, 一般用于备份数据。Delayed:可以指定一个时间延迟从primary 节点同步数据。主要用于备份数据,假照实时同步,误删除数据马上同步到从节点,恢复又恢复不了。Non-Voting:没有选举权的secondary 节点,纯粹的备份数据节点。3、副本集的增加及删除rs.remove(“137.20.17.101:20001“);-删除节点 登录副本集的主效劳器执行rs.add(“137.20.17.101:20001“);-增加节点 登录副本集的主效劳器执行常见问题:假设显示错误内容:“ok“ : 0,“errmsg“ : “replSetInitiate quorum check failed because not all proposed set members responded affirmatively: 137.20.17.25:27017 failed with No route tohost“, “code“ : 74,“codeName“ : “NodeNotFound“那么可能是 137.20.17.25 的防火墙阻挡了该效劳器的访问,可以关掉防火墙重试。常见问题:初始

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号