Mongodb被动(passive)节点配置

  将一个mongodb的普通数据节点修改为passive节点,也就是能同步数据、投票,但是不能成为primary节点。

  除了仲裁节点,其他每个节点都有个代表优先权priority的值,我们可以通过设置优先权来决定谁成为primary的权重最大。

  MongoDB replica sets中通过设置priority的值来决定优先权的大小,这个值的范围是0--100,值越大,优先权越高。

  如果值是0,那么不能成为primay。 


  1. 通过rs.conf()命令查看出节点列表:

  以下为我的实验mongodb集群:

PRIMARY> rs.conf()
{
"_id" : "test",
"version" : 22,
"members" : [
{
"_id" : 3,
"host" : "192.168.22.36:27017"
},
{
"_id" : 5,
"host" : "192.168.22.10:27017"
},
{
"_id" : 6,
"host" : "192.168.22.12:27017",
"priority" : 0,
"arbiterOnly" : true
},
{
"_id" : 7,
"host" : "192.168.22.115:27017"
}
]
}



2.将上面的192.168.22.10节点的priority值修改成0,让它只接收数据,不参与成为primary的竞争。

命令格式如下:

cfg = rs.conf()
cfg.members[0].priority = 0.5
cfg.members[1].priority = 2
cfg.members[2].priority = 2
rs.reconfig(cfg)

  说明:cfg.members[0].priority =

  中括号中的数字是执行rs.conf()得出的节点顺序,第一个节点在这里写0,第二个节点写1,依次类推。


  执行命令:

cfg = rs.conf()
cfg.members[1].priority = 0
rs.reconfig(cfg)

  查看集群状态:

PRIMARY> rs.conf()
{
"_id" : "test",
"version" : 22,
"members" : [
{
"_id" : 3,
"host" : "192.168.22.36:27017"
},
{
"_id" : 5,
"host" : "192.168.22.10:27017"
"priority" : 0
},
{
"_id" : 6,
"host" : "192.168.22.12:27017",
"priority" : 0,
"arbiterOnly" : true
},
{
"_id" : 7,
"host" : "192.168.22.115:27017"
}
]
}

  可以看到192.168.22.10:27017节点的priority的值变为0,这时候它只接收数据,不参与primary的竞争。

本文出自 “扮演上帝的小丑” 博客,转载请与作者联系!

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。

运维监控平台之zabbix详解2 - 2016-08-22 14:08:01

1、Zabbix架构 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。 Zabbix的运行架构如下图所示: 2、组件 zabbix由以下几个组件部分构成: 1)、Zabbix Server:负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行; 2)、Database Storage:专用于存储所有配置信息,

nginx代理websocket配置 - 2016-08-22 14:08:47

nginx正常只能代理http请求,如果想实现代理websocket的需求,需在请求中加入"Upgrade"字段,使请求从http升级为websocket。 配置如下: http{map$http_upgrade$connection_upgrade{defaultupgrade;''close;}server{...location/chat/{proxy_passhttp://backend;proxy_http_version1.1;#以下配置添加代理头部:proxy_set_headerUpgra
一、搭建要求 LVS+KEEPALIVED+NGINX( 反向代理)+WEB01(NGINX)+WEB02(APACHE) # 以下以keepalived的端口形式配置LVS(keepalived双实例双主模式),而不用手工配置。 # 以下机器忽略安装apache和nginx,只提供主要配置,当更新博客时会在这加上apache和nginx的安装与配置的博客地址。 #nginx 安装版本为nginx-1.6.3.tar.gz,apache安装版本为httpd-2.2.31.tar.gz。 二、前提条件 2
Linux下用于查看系统当前登录用户信息的4种方法 作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动。有些时候,你甚至需要知道他(她)们正在做什么。本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法。 1. 使用w命令查看登录用户正在使用的进程信息 w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括: ?用户名称 ?用户的机器名称或tty号 ?远程主机地址 ?用户登录系统的时间 ?空

Nagios 监控 SNMP 温度计 - 2016-08-22 14:08:41

老板给机房新买了个温度,湿度的感应器,问我能不能整合到Nagios里面。我的回答是No Problem. 首先看看他自带的界面 监控SNMP,首先得知道他的OID是啥,这个界面我可以直接下载MIB文件和对应的EXCEL文档。 下载以后,重命名MIB为txt文件,然后拷贝到我的nagios服务器的/usr/share/snmp/mibs 目录下,然后记得添加到配置文件中 [root@sydnagiosmibs]#pwd/usr/share/snmp/mibs[root@sydnagiosmibs]#lsg*

docker1.12版本的swarm集群特性 - 2016-08-22 14:08:37

docker1.12版本之后集成了swarm模块,直接使用dokcer-engin就能很方便地创建一个docker集群,不用再像以前那样第三方配置。 环境: manager/node1 : swarm_node1 node2 : swarm_node2 1:首先在各节点上安装最新版dokcer #curl-fsSLhttps://test.docker.com/|sh#docker-vDockerversion1.12.0-rc4,builde4a0dbc 2:在node1上初始化一个swarm集群 sw
什么是心脏出血漏洞? CVE-2014-0160,心脏出血漏洞,是一个非常严重的 OpenSSL 漏洞。这个漏洞使得攻击者可以从存在漏洞的服务器上读取64KB大小的内存信息。这些信息中可能包含非常敏感的信息,包括用户请求、密码甚至证书的私钥。 据称,已经有攻击者在某宝上尝试使用漏洞读取数据,在读取200次后,获取了40多个用户名和7个密码。 使用如下的命令查看服务器上的当前版本: openssl version [root@master ~]# openssl version OpenSSL 1.0.1e

Apache运维架构之Apache+PHP - 2016-08-22 14:08:37

当前互联网主流web服务器说明 1、IIS 微软的web服务器 2、apache 中小web服务器主流,web服务器中的老大哥 3、nginx 新兴的web服务器主流 4、tomcat 中小企业动态服务器,互联网java容器主流 5、resin 大型企业动态服务器,互联网java容器主流 apache的特点及应用场合 特点:功能强大,配置简单,速度快,应用广泛,性能稳定可靠,并可做代理服务器和负载均衡 应用场合: 1、使用apache来运行静态html网页,图片,处理静态小文件能力不及nginx 2、使用
shyis最近微软中国Azure更新速度似乎已经超越任何时期了,前两天刚刚更新的Azure云助理,让众多Azure用户实现在移动端灵活的管理Azure资源,相信对于云服务来讲这也是未来不可或缺的管理方式之一。说到管理方式,不得不说微软中国Azure近期更新的另一大神器预览版门户。 说到Azure预览版门户,其实已经不是什么新玩意,毕竟在国际版Azure中已经预览了非常之久了。但对于中国版Azure来说毕竟是一个非常重要的更新,今天给大家带来的就是中国版Azure的预览版介绍以及通过配置固定公网IP作为实例
首先到Github上下载Pyenv相应的一键安装脚本, $curl-Lhttps://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer|bash 安装完毕,设置环境变量,设置环境变量,可以添加到个人家目录的.bashrc或.bash_profile及系统的全 局的/etc/profile, #Loadpyenvautomaticallybyadding#thefollowingto~/.bash_profil