使用ansible一键部署MongoDB分片集群

使用ansible一键部署MongoDB分片集群,第1张

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的一键部署脚本,而且附带了对服务器的优化相关配置

你好我是IDC行业人员

可以尝试着先把VPS中没用的程序清理掉有很多喜欢在VPS或者服务器开通以后立马安装上所有的程序配置好所有的环境以便使用方便其实是错误的做法比如说PHPMYSQL这些程序本身就比较占系统资源而且配置多种环境有时候会造成不兼容的现象或者是有错误出现因此建议只安装需要的程序即可其他的一律卸载这样也为系统节省了资源提高系统性能 另外VPS是虚拟服务器512M内存配置的VPS性能和512M内存配置的服务器在性能上还是会有一定的差距推荐用高配置的VPS或者是用独立的服务器

安装软件库

第一步是添加MongoDB软件库。为此,你必须导入MongoDB公共密钥。步骤如下:

1 打开终端容器。

2 执行命令sudo apt-key adv —keyserver hkp://keyserverubuntucom:80 —recv EA312927。

3 执行命令sudo touch /etc/apt/sourceslistd/mongodb-orglist。

4 执行命令sudo nano /etc/apt-sourceslistd/mongodb-orglist。

5 将下面其中一行(视你的版本而定)拷贝粘贴到打开的文件。

For 1204: deb http://repomongodborg/apt/ubuntu precise/mongodb-org/32 multiverse

For 1404: deb http://repomongodborg/apt/ubuntu trusty/mongodb-org/32 multiverse

For 1604: deb http://repomongodborg/apt/ubuntu xenial/mongodb-org/32 multiverse

6按 [Ctrl]+[x]组合键,保存文件。

注意:让MongoDB社区版在Ubuntu 1604上成功地运行难度不小。我在下面的标准安装步骤后面给出了解决办法。

安装MongoDB

1 打开终端窗口。

2 使用命令sudo apt-get update,更新apt。

3 一旦apt更新完毕,使用命令sudo apt-get install -y mongodb-org,安装MongoDB。

4 让安装完成。

运行社区版

想启动数据库,执行命令sudo service mongodb start。现在你应该能够执行命令查看MongoDB在运行:systemctl status mongodb

Ubuntu 1604解决办法

如果你在使用Ubuntu 1604,可能会看到这个问题:由于从upstart改用systemd,出现错误mongodb: unrecognized service。为了避开这个问题,你得遵循这些步骤。

1 如果你添加了/etc/apt/sourceslistd/mongodb-orglist,用命令sudo rm /etc/apt/sourceslistd/mongodb-orglist移除它。

2 使用命令sudo apt-get update,更新apt。

3 使用命令sudo apt-get install mongodb,安装来自标准软件库的正式MongoDB版本,以便让服务正确安装。

4 使用命令sudo apt-get remove mongodb && sudo apt-get autoremove,移除你刚安装的。

遵照我之前为安装MongoDB而概述的操作步骤;这会应该重新安装最新版本的MongoDB,而systemd服务已经到位。你执行命令systemctl status mongodb后,应该会看到服务器已处于活跃状态(见图A)。

ͼA

现在MongoDB服务器在Ubuntu 1604上运行。

尽情享用

https://groupsgooglecom/forum/#!forum/mongodb-user)是个不错的出发点。如果你在寻找可以解答问题的论坛,不妨访问这个MongoDB Google Group(https://groupsgooglecom/forum/#!forum/mongodb-user)。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 使用ansible一键部署MongoDB分片集群

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情