mongodb3.X 副本集(集群)添加用户名认证

折腾好几天这个,由于工作问题,时间也比较散,今天终于抽空将其记录下来了,并且本地测试通过了得好了,废话不多说,下面就开始了,

首先需要搭建mongodb的副本集,再次,我的环境如下:

centos 6.5

mongodb 3.2.11

mongdb下载地址:https://www.mongodb.com/download-center?jmp=nav#community

在此我们需要配置三个mong单节点,然后将其结合组成副本集,

安装路径/usr/local/mongd

三个mongdb分别占用端口27017  27018 27019

在/usr/local/mongd下面创建四个数据目录和一个配置目录以及一个日志目录

mkdir  /usr/local/mongd/data{1..4}

mkdir /usr/local/mongd/log

mkdir /usr/local/mongd/etc

三个mongodb的配置文件分别如下所示:配置文件的路径: /usr/local/mongd/etc/

第一个mongodb的配置文件:mongod.conf

port=27017

dbpath=/usr/local/mongod/data1/

logpath=/usr/local/mongod/log/mongodb.log

pidfilepath=/usr/local/mongod//mongod.pid

fork=true

logappend=true

shardsvr=true

directoryperdb=true

#auth=true

#replSet=zpf

#oplogSize=100

#keyFile=/usr/local/mongod/etc/mongo.pass         ###这个文件后边需要手动生成,路径和文件名都是自定义的

第二个mongodb的配置文件:mongod2.conf 内容如下:

port=27018

dbpath=/usr/local/mongod/data2/

logpath=/usr/local/mongod/log/mongodb.log

pidfilepath=/usr/local/mongod//mongod.pid

fork=true

logappend=true

shardsvr=true

directoryperdb=true

#auth=true

replSet=zpf

oplogSize=100

keyFile=/usr/local/mongod/etc/mongo.pass          ###三个配置文件中这个文件需要一致

第三个mongodb的配置文件:mongod3.conf,内容如下:

port=27019

dbpath=/usr/local/mongod/data3/

logpath=/usr/local/mongod/log/mongodb3.log

pidfilepath=/usr/local/mongod//mongod3.pid

fork=true

logappend=true

shardsvr=true

directoryperdb=true

#auth=true

replSet=zpf

oplogSize=100

keyFile=/usr/local/mongod/etc/mongo.pass          ###三个配置文件中这个文件需要一致

首先启动一个节点,即先启动第一个mongodb,27017端口的那个,因为再次我想用其做primary节点

mongod  --config /usr/local/mongod/etc/mongod.conf

启动后,连接节点,在里面添加用户,在此 我添加了一个root角色的用户(权限最高的用户了),

添加用的方法如下:

use admin

db.createUser({user:"admin",pwd:"123456",roles:[{role:"root",db:"admin"}]})

由于我的是mongodb3.2版本的所以添加用户需要用上述的操作

用户添加完成后,关闭mongodb,然后修改mongodb的配置文件,只修改第一个的配置文件就行,因为再次,我们就启动了第一个mongodb数据库,

修改的配置如下所示:

port=27017

dbpath=/usr/local/mongod/data1/

logpath=/usr/local/mongod/log/mongodb.log

pidfilepath=/usr/local/mongod//mongod.pid

fork=true

logappend=true

shardsvr=true

directoryperdb=true

auth=true                ###去掉注释

replSet=zpf              ###去掉注释

oplogSize=100         ###去掉注释

keyFile=/usr/local/mongod/etc/mongo.pass      ###去掉注释

然后生成一个keyFile,副本集之间通过此文件来进行验证,

openssl  rand  -base64    521 > /usr/local/mongod/etc/mongo.pass      ###这个名字随意定义,但是配置文件中也需要制定这个文件的,在此我的是同一台机器,所以,路径相同,如果是不同机器之间的做副本集,则需要将此文件复制到不同的机器上去

创建完成后,还需要修改此文件的权限为600,只有拥有者有权限,其余的组和其他用户没有任何的权限

chmod  600 /usr/local/mongod/etc/mongo.pass

修改完成后,启动mongdb数据库即可

这次需要三个数据都启动,

然后登陆数据库进行操作就行,但是,切记需要先验证账号和密码才可以

[[email protected] etc]# mongo

MongoDB shell version: 3.2.11

connecting to: test

zpf:PRIMARY> use admin

switched to db admin

zpf:PRIMARY> db.auth("admin","123456")

1

下边就是进行详细的副本集的配置了,可以参考另一篇文档,副本集配置完成后,链接这三个的任何一都需要先验证账号和密码才可以进行操作,副本集的配置操作,参看另一篇文档:mongod 集群分片

时间: 2024-10-10 17:24:50

mongodb3.X 副本集(集群)添加用户名认证的相关文章

22.mongodb副本集集群

软件版本64位: $ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.2.0.tgz mongodb-linux-x86_64-rhel62-3.2.0.tgz 服务器3台: 192.168.1.20    (master[PRIMARY]) 192.168.1.21    (slave[SECONDARY]) 192.168.1.22    (仲裁[ARBITER]) 参考: http://www.cnbl

mongodb3.2副本集配置

网上的资料太乱了,等弄好了再看官网才发现官网写的最清晰和简洁 推荐官网的副本集配置:https://docs.mongodb.com/manual/tutorial/deploy-replica-set/ 引述大神一段总结:http://blog.csdn.net/huwei2003/article/details/40453223 从概念上说一下MongoDB副本集和主从复制的区别.其实副本集(Replica Set)是主从复制的高级形式.高级在哪里呢?主动复制实现了数据备份+读扩展,但是ma

Mongodb分片副本集集群搭建

一.环境准备 1.1.主机信息(机器配置要求见硬件及开发标准规范文档V1.0) 序号 主机名 IP 1 DB_01 10.202.105.52 2 DB_02 10.202.105.53 3 DB_03 10.202.105.54 4 CNSZ17PL0897 10.117.176.215(暂时待定备份监控机) 服务器52(DB_01) 服务器53(DB_02) 服务器54(DB_03) mongos mongos mongos config server config server confi

Mongodb副本集集群搭建

一.环境准备 1.1.主机信息(机器配置要求见硬件及开发标准规范文档V1.0) 序号 主机名 IP 1 DB_01 10.202.105.52 2 DB_02 10.202.105.53 3 DB_03 10.202.105.54 4 DB_04 10.202.105.181 服务器52(DB_01) 服务器53(DB_02) 服务器54(DB_03) 服务器55(DB_04) primary secondry secondry hidden(阿里云一般都是主  备  Hidden三节点)  这

Mongo分片+副本集集群搭建

一. 概念简单描述 1. MongoDB分片集群包含组件: mongos,configserver,shardding分片 2. Mongos:路由服务是Sharded cluster的访问入口,本身不存储数据(1) 负载处理客户端连接;(2) 负责集群数据的分片 3. Configserver: 配置服务器,存储所有数据库元信息(路由.分片)的配置.mongos本身没有物理存储分片服务器和数据路由信息,只是缓存在内存里,配置服务器则实际存储这些数据.mongos第一次启动或者关掉重启就会从 c

为CDH 5.7集群添加Kerberos身份验证及Sentry权限控制

4. 为CDH 5集群添加Kerberos身份验证4.1 安装sentry1.点击"操作","添加服务":2.选择sentry,并"继续": 3.选择一组依赖关系 4.确认新服务的主机分配 5.配置存储数据库:在mysql中创建对应用户和数据库: mysql>create database sentry default character set utf8 collate utf8_general_ci; mysql>grant al

CDH集群添加节点服务器步骤

1.解压安装包到/opt目录下 tar -zxvf cloudera--el6-cm5.7.1_x86_64.tar.gz -C /opt/ 2.修改agent下的config.ini文件,将server_host设置为server所在服务器主机名 vim /opt/cm-5.7.1/etc/cloudera-scm-agent/config.ini 3.创建cloudera-scm用户 useradd --system --home=/opt/cm-5.7.1/run/cloudera-scm

向Kubernetes集群添加/删除Node

向Kubernetes集群添加/移除Node Minion Node操作前准备 #关闭防火墙 systemctl stop firewalld #禁止防火墙开机启动 systemctl disable firewalld #检查selinux getenforce Disabled #端口检查 Kubernetes集群中添加Node在kubeadm init初始化操作完成时,系统最后给出了将节点加入集群的命令: kubeadm join 10.0.0.39:6443 --token 4g0p8w

【ceph故障排查】ceph集群添加了一个osd之后,该osd的状态始终为down

背景 ceph集群添加了一个osd之后,该osd的状态始终为down. 错误提示 状态查看如下 1.查看osd tree [[email protected] Asia]# ceph osd tree ID WEIGHT TYPE NAME UP/DOWN REWEIGHT PRIMARY-AFFINITY -1 0.05388 root default -2 0.01469 host node1 0 0.00490 osd.0 up 1.00000 1.00000 1 0.00490 osd.