
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
您可以按如下步骤安装:
1、配置系统yum源
保存退出!
2、使用yum在线安装MongoDB
sudo yum install -y mongodb-org#安装mongodb会同时安装mongodb-org包及其依赖包mongodb-org-server、mongodb-org-mongos、mongodb-org-shell、mongodb-org-tools
3、关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config#需要重启服务器生效
setenforce 0 #临时生效,重启服务器无效
4、关闭防火墙或者开放端口
systemctl stop firewalld #关闭防火墙或者开放端口号
firewall-cmd --zone=public --add-port=27017/tcp #mongodb默认端口号
firewall-cmd --reload #重新加载防火墙
5、开启MongoDB
sudo service mongod start #开启MongoDBsudo chkconfig mongod on #加入开机启动
sudo service mongod restart #重启MongoDB
6、关闭MongoDB
sudo service mongod stop #关闭防火墙7、卸载MongoDB
sudo yum erase $(rpm -qa | grep mongodb-org) #卸载MongoDBsudo rm -r /var/log/mongodb #删除日志文件
sudo rm -r /var/lib/mongo #删除数据文件
8、检查数据库是否安装成功
ps -aux | grep mongod #查看数据库的进程是否存在Mongodb 部署信息 :
os: centos77 x64 配置好NTP,防火墙默认不做任何限制
mongos部署两个点,config3个点,和3个分片集群(每个分片一主一副一仲裁)
注意:因为判断逻辑的问题,不要在任何节点同时运行两种服务的主点
ansible的hosts文件配置:
环境变量全部都在这里设置,需要都写入到ansible的hosts文件里
变量中
server_1_ip 都设置为主点
server_2_ip 都设置为副点
server_3_ip 都设置为仲裁节点(config server没有仲裁节点,但是也要写,不然mongos的配置文件模板会报错)
这些IP的配置后面在初始化时会用到
ansible文件夹结构 :
首先是模板文件:
mongodconfmongosj2 mongos的配置文件模板
mongodconfnormalj2 shard server和config server的配置文件模板
mongodservicej2 service文件模板
mongokey 直接手动生成 ,用户MongoDB集群之间的加密连接,记得权限改为600
passwdj2 用于配置MongoDB的root用户名密码
执行:
按提示输入服务器密码
包含了系统优化相关设置,注意中间会重启一次让一些系统优化项生效
注意:因为判断逻辑的问题,不要在任何节点同时运行两种服务的主点
执行 :
如果执行有问题建议多检查变量配置
全部完成后可以验证一下集群环境:
登陆分片集群 :
分片的状态显示正常
登陆mongos
可以看到mongos的状态也正常,分片也全部都添加进去 全部安装至此完成
一键删除MongoDB安装及相关数据,方便重装
一键启动整个MongoDB集群
一键停止所有MongoDB集群
以上就是ansible在MongoDB的一键部署脚本,而且附带了对服务器的优化相关配置
一、node运行环境1、npm install -g n
通过npm 全局安装node
2、 sudo n 8160
设置node版本
Password:
install : node-v8160
mkdir : /usr/local/n/versions/node/8160
fetch : >
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)