linux下mongdb绑定ip,Linux下MongoDB安装及副本集配置 | 聂扬帆博客
最近开始接触了MongoDB的安装配置,易部署、易使用,存储数据非常方便是它的特点。
0x00 副本集原理
MongDB副本集故障转移功能得益于它的选举机制。选举机制采用了Bully算法,可以很方便从分布式节点中选出主节点。
主要思想是集群的每个成员都可以声明它是主节点并通知其他节点。别的节点可以选择接受这个声称或是拒绝并进入主节点竞争。被其他所有节点接受的节点才能成为主节点。 MongoDB副本集的成员数量最好为奇数,集群最多允许12个副本集节点,其中最多7个节点参与选举。
0x01 源码下载解压$ cd /usr/local/src/
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.0.tgz
$ tar xvzf mongodb-linux-x86_64-rhel70-4.0.0.tgz
$ mv /usr/local/src/mongodb-linux-x86_64-rhel70-4.0.0 /cache1/mongodb
$ cd /cache1/mongodb
$ mkdir -p data/log && mkdir -p data/db
$ chown runner.runner /cache1/mongodb -R ##使用非root账号,账号自己创建
$ chmod 760 /cache1/mongodb
0x02 修改配置文件systemLog:
destination: file
path: "/cache1/mongodb/data/log/mongodb.log" #根据实际情况修改
logAppend: true
storage:
journal:
enabled: true
dbPath: "/cache1/mongodb/data/db" #根据实际情况修改
directoryPerDB: false
engine: wiredTiger
wiredTiger:
engineConfig:
cacheSizeGB: 10
directoryForIndexes: false
journalCompressor: zlib
collectionConfig:
blockCompressor: zlib
indexConfig:
prefixCompression: true
net:
bindIp: 192.168.10.1 #根据实际情况修改,4.0不配置默认绑定localhost,会导致无法访问
port: 27017 #27017为默认端口,建议修改
processManagement:
fork: true
replication:
replSetName: mongo #副本集名称,根据实际情况修改
security:
authorization: disabled
0x03 启动集群
在所有MongoDB机器都配置好后,启动集群$ su - runner
$ /cache1/mongodb/bin/mongod -f /cache1/mongodb/mongodb.conf
0x04 配置副本集
登录其中一台MongoDB$ su - runner
$ /cache1/mongodb/bin/mongo -host 192.168.10.1 -port 28017
> config={"_id": "mongo", "members": [{"_id":0, "host": "192.168.10.1:27017"},{"_id":1, "host": "192.168.10.2:27017"},{"_id":2, "host": "192.168.10.3:27017"}]}
> rs.initiate(config)
> rs.status() ##验证集群状态
其中mongo为配置文件中的replSetName,有多少台集群就添加多少个members
0x05 启用认证
1、生产秘钥$ openssl rand -base64 756 > /cache1/mongodb/secret_key.crt
$ chmod 400 /cache1/mongodb/secret_key.crt
$ scp /cache1/mongodb/secret_key.crt root@xxxx:/cache1/mongodb/
2、添加用户$ su - runner
$ /cache1/mongodb/bin/mongo -host 192.168.10.1 -port 27017
> use admin
> db.createUser({user:"aaa",pwd:"aaaaaaaa",roles:[{role:"root",db:"admin"}]})
3、修改配置
修改配置mongodb.conf,添加如下内容security:
keyFile: /cache1/mongodb/secret_key.crt
authorization: enabled
4、重启MongoDB$ killall mongod
$ /cache1/mongodb/bin/mongod -f /cache1/mongodb/mongodb.conf
5、集群验证use admin
db.auth("账号","密码")
> rs.status()
0x06 添加副本集添加副本集,在需要添加的主机配置好mongodb,并启动
在PRIMARY节点操作
>use admin
>db.auth("账号","密码")
>rs.add("192.168.10.4:27017")
>rs.status() 查看集群
linux下mongdb绑定ip,Linux下MongoDB安装及副本集配置 | 聂扬帆博客相关推荐
- MongoDB安装与副本集配置
副本集是一组,由N个mongo节点组成并协同工作的,提供自动的故障集群转移. 建立一个副本集需要步骤,1.需要启动每个节点,2.然后进行初始化设置.在这里,我们将配置一组(三个节点),这是标准设置. ...
- linux整盘封装生成iso,一键自安装ISO封装打包脚本 | 聂扬帆博客
对于经常打包ISO的来说,每次都要运行那几行命令很没效率.于是就整理了一个自动封装打包ISO的脚本.#!/bin/sh workpath="/CentOS/7" pack_dir= ...
- MongoDB 3.0副本集配置
请先阅读我之前的文章<MongoDB 3.0的在CentOS6.5上的安装> 一.创建副本集须知: 1.存在一台有超级管理员的mongod服务器,可以有数据库,其他所有的服务器都必须是全 ...
- linux软raid 修复,Linux下软RAID维护 | 聂扬帆博客
上一篇文章配置软RAID中配置好Raid之后,还需要进行日常的维护操作,比如其中一块物理硬盘损坏,我们需要进行更换故障磁盘的操作,下面我们将模拟raid1中磁盘损坏来讲解软RAID的维护操作. 一.硬 ...
- Linux网卡固件,CentOS下X710网卡升级驱动和固件脚本 | 聂扬帆博客
对于CentOS7.1和7.5版本,安装X710网卡的驱动和固件版本太低,使用会有问题.这边整理了一份脚本自动检测安装,脚本会判断是否是DELL的几款机型,因为DELL机型的驱动和固件不能使用inte ...
- linux mode4的双网卡绑定,Linux实现双网卡绑定自动化脚本 | 聂扬帆博客
在上一篇写了双网卡绑定和卸载:Linux实现双网卡绑定和卸载 其实认真观察上面的步骤,都是固定的.于是我们就可以写个脚本实现自动化配置#!/bin/bash if [ $# -lt 6 ];then ...
- 制作linux安装镜像文件,制作CentOS 6.5一键自安装ISO镜像光盘 | 聂扬帆博客
因为工作中需要经常安装系统并且会有一些定制的系统包和软件.定制ISO可以大大减轻运维的负担.本文以Centos 6.5制作为例 一.系统安装包说明 目录树结构 |-- .discinfo |-- .t ...
- linux+parted+4k对齐,Centos 磁盘4K对齐脚本 | 聂扬帆博客
4K对齐对磁盘性能有什么影响这边不单独讲解,有权威网站已经给出测试结果.感兴趣的可以去看->传送门.#!/bin/bash # Format all FOUND datadisks. decla ...
- ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝卜星星 - CSDN博客...
ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝卜星星 - CSDN博客 原文:ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝 ...
最新文章
- SCOI 2014 new :未来展望
- java基数排序 数组_万字长文带你掌握Java数组与排序,代码实现原理都帮你搞明白!...
- iOS 仿支付宝密码支付
- 启动两个tomcat,两个端口,两个tomcat都启动时回显示端口被占用
- 全网最详细 TCP 参数讲解,再也不用担心没有面试机会了......
- Unity加载模块深度解析(纹理篇)
- 最简单的Qt配置opencv教程
- 经典卷积神经网络——VGG16
- mysql按照学生分组查询_MySQL分组查询
- 小公司个人技术成长路线思考
- C#实现简单音乐播放器
- c语言正弦函数求导,正弦函数求导公式基本推导
- 考PMP真的有用吗?
- 古墓丽影:源起之战影评
- 新旧CAD图纸对比-用BCore图纸引擎1秒就能完成
- webpack `Invalid Host/Origin header`问题
- Spire.XLS:一款Excel处理神器
- PR2019打开报错:由于找不到MSVCR110.dll,无法继续执行代码
- 用r求f分布的临界值
- js本地预览图片和转base64
热门文章
- python格式化字符串_Python笔记7:三种方式构建字符串-格式化
- java动态代理_Java 动态代理和依赖注入
- 嵌入式中断服务函数的一些特点
- 启明云端分享| 图文+实操+视频,手把手教你Eclipse搭建esp-idf环境
- springapplication.run运行多个应用_编程的十二要素应用宣言
- 华三交换机配置多个镜像口_配置本地端口镜像详解(多个镜像口:多个观察口)...
- 前端常见知识点五之Fetch
- python mysql example_Python_Example_ Pycharm(python) 与 数据库(MySQL) 连接学习/示例
- 4由通道检测_大唐阜新煤制天然气「榜样力量」实训做实出实效——废水总酚检测时间由4小时缩短至10分钟...
- Android Studio 疑难杂症