#模拟主节点异常中断
[root@ba3b27d855f6 bin]# kill -9 199
[root@ba3b27d855f6 bin]#
#连接到其中一台备份节点
[root@ba3b27d855f6 bin]# ./mongo 172.17.0.4:27018
MongoDB shell version v3.6.3
connecting to: mongodb://172.17.0.4:27018/test
MongoDB server version: 3.6.3
Server has startup warnings:
2018-08-10T07:12:26.849+0000 I CONTROL [initandlisten]
2018-08-10T07:12:26.849+0000 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-08-10T07:12:26.849+0000 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2018-08-10T07:12:26.849+0000 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2018-08-10T07:12:26.849+0000 I CONTROL [initandlisten]
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten]
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten]
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2018-08-10T07:12:26.850+0000 I CONTROL [initandlisten]
test:SECONDARY> rs.config()
{
"_id" : "test",
"version" : 88878,
"protocolVersion" : NumberLong(1),
"members" : [
{
"_id" : 0,
"host" : "172.17.0.4:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 1,
"host" : "172.17.0.4:27018",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 0,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 0
},
{
"_id" : 2,
"host" : "172.17.0.4:27019",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 0,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 0
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"catchUpTimeoutMillis" : -1,
"catchUpTakeoverDelayMillis" : 30000,
"getLastErrorModes" : {
},
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
},
"replicaSetId" : ObjectId("5b6d3d7e3e136dadfa2a8181")
}
}
test:SECONDARY> rs.status()
{
"set" : "test",
"date" : ISODate("2018-08-10T07:42:56.040Z"),
"myState" : 2,
"term" : NumberLong(1),
"heartbeatIntervalMillis" : NumberLong(2000),
"optimes" : {
"lastCommittedOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"readConcernMajorityOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"appliedOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"durableOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
}
},
"members" : [
{
"_id" : 0,
"name" : "172.17.0.4:27017",
"health" : 0,
"state" : 8, #8 代表DOWN
"stateStr" : "(not reachable/healthy)",
"uptime" : 0,
"optime" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDurable" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDate" : ISODate("1970-01-01T00:00:00Z"),
"optimeDurableDate" : ISODate("1970-01-01T00:00:00Z"),
"lastHeartbeat" : ISODate("2018-08-10T07:42:54.251Z"),
"lastHeartbeatRecv" : ISODate("2018-08-10T07:42:02.603Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "Connection refused",
"configVersion" : -1
},
{
"_id" : 1,
"name" : "172.17.0.4:27018",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 1831,
"optime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2018-08-10T07:41:54Z"),
"infoMessage" : "could not find member to sync from",
"configVersion" : 88878,
"self" : true
},
{
"_id" : 2,
"name" : "172.17.0.4:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 1151,
"optime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"optimeDurable" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2018-08-10T07:41:54Z"),
"optimeDurableDate" : ISODate("2018-08-10T07:41:54Z"),
"lastHeartbeat" : ISODate("2018-08-10T07:42:54.245Z"),
"lastHeartbeatRecv" : ISODate("2018-08-10T07:42:54.245Z"),
"pingMs" : NumberLong(0),
"configVersion" : 88878
}
],
"ok" : 1,
"operationTime" : Timestamp(1533886914, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1533886914, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
test:SECONDARY> rs.slaveOk()
test:SECONDARY> db.school.find()
{ "_id" : ObjectId("5b6d3436dc9a5ab161c121e1"), "name" : "xuaiqi", "date" : ISODate("2018-08-10T06:44:06.284Z") }
{ "_id" : ObjectId("5b6d37ce1a42350d380cb142"), "nme" : "ddddd" }
test:SECONDARY>
test:SECONDARY>
test:SECONDARY> var config = rs.config()
test:SECONDARY> config.members[1].priority = 1
1
test:SECONDARY> config.members[1].votes = 1
1
test:SECONDARY> config.members[0].priority = 0
0
test:SECONDARY> config.members[0].votes = 0
0
test:SECONDARY>
test:SECONDARY> rs.reconfig(config, {"force" : true})
{
"ok" : 1,
"operationTime" : Timestamp(1533886914, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1533886914, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
test:SECONDARY>
test:SECONDARY>
test:SECONDARY>
test:SECONDARY>
test:SECONDARY> rs.status()
{
"set" : "test",
"date" : ISODate("2018-08-10T07:46:28.258Z"),
"myState" : 2,
"term" : NumberLong(1),
"heartbeatIntervalMillis" : NumberLong(2000),
"optimes" : {
"lastCommittedOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"appliedOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"durableOpTime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
}
},
"members" : [
{
"_id" : 0,
"name" : "172.17.0.4:27017",
"health" : 0,
"state" : 8,
"stateStr" : "(not reachable/healthy)",
"uptime" : 0,
"optime" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDurable" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDate" : ISODate("1970-01-01T00:00:00Z"),
"optimeDurableDate" : ISODate("1970-01-01T00:00:00Z"),
"lastHeartbeat" : ISODate("2018-08-10T07:46:27.827Z"),
"lastHeartbeatRecv" : ISODate("2018-08-10T07:42:02.603Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "Connection refused",
"configVersion" : -1
},
{
"_id" : 1,
"name" : "172.17.0.4:27018",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 2043,
"optime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2018-08-10T07:41:54Z"),
"infoMessage" : "could not find member to sync from",
"configVersion" : 195180,
"self" : true
},
{
"_id" : 2,
"name" : "172.17.0.4:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 1363,
"optime" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"optimeDurable" : {
"ts" : Timestamp(1533886914, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2018-08-10T07:41:54Z"),
"optimeDurableDate" : ISODate("2018-08-10T07:41:54Z"),
"lastHeartbeat" : ISODate("2018-08-10T07:46:27.811Z"),
"lastHeartbeatRecv" : ISODate("2018-08-10T07:46:27.817Z"),
"pingMs" : NumberLong(0),
"configVersion" : 195180
}
],
"ok" : 1,
"operationTime" : Timestamp(1533886914, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1533886914, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
test:SECONDARY> rs.status()
{
"set" : "test",
"date" : ISODate("2018-08-10T07:46:36.524Z"),
"myState" : 1,
"term" : NumberLong(2),
"heartbeatIntervalMillis" : NumberLong(2000),
"optimes" : {
"lastCommittedOpTime" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
},
"readConcernMajorityOpTime" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
},
"appliedOpTime" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
},
"durableOpTime" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
}
},
"members" : [
{
"_id" : 0,
"name" : "172.17.0.4:27017",
"health" : 0,
"state" : 8,
"stateStr" : "(not reachable/healthy)",
"uptime" : 0,
"optime" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDurable" : {
"ts" : Timestamp(0, 0),
"t" : NumberLong(-1)
},
"optimeDate" : ISODate("1970-01-01T00:00:00Z"),
"optimeDurableDate" : ISODate("1970-01-01T00:00:00Z"),
"lastHeartbeat" : ISODate("2018-08-10T07:46:34.526Z"),
"lastHeartbeatRecv" : ISODate("2018-08-10T07:42:02.603Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "Connection refused",
"configVersion" : -1
},
{
"_id" : 1,
"name" : "172.17.0.4:27018",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 2051,
"optime" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
},
"optimeDate" : ISODate("2018-08-10T07:46:29Z"),
"infoMessage" : "could not find member to sync from",
"electionTime" : Timestamp(1533887188, 1),
"electionDate" : ISODate("2018-08-10T07:46:28Z"),
"configVersion" : 195180,
"self" : true
},
{
"_id" : 2,
"name" : "172.17.0.4:27019",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 1372,
"optime" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
},
"optimeDurable" : {
"ts" : Timestamp(1533887189, 1),
"t" : NumberLong(2)
},
"optimeDate" : ISODate("2018-08-10T07:46:29Z"),
"optimeDurableDate" : ISODate("2018-08-10T07:46:29Z"),
"lastHeartbeat" : ISODate("2018-08-10T07:46:36.519Z"),
"lastHeartbeatRecv" : ISODate("2018-08-10T07:46:32.819Z"),
"pingMs" : NumberLong(0),
"syncingTo" : "172.17.0.4:27018",
"configVersion" : 195180
}
],
"ok" : 1,
"operationTime" : Timestamp(1533887189, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1533887189, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
test:PRIMARY> exit
bye
[root@ba3b27d855f6 bin]#
- mongodb3.6集群搭建:分片+副本集
mongodb是最常用的noSql数据库,在数据库排名中已经上升到了前五.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...
- MongoDB 3.6.9 集群搭建 - 切片+副本集
1. 环境准备 在Mongo的官网下载Linux版本安装包,然后解压到对应的目录下:由于资源有限,我们采用Replica Sets + Sharding方式来配置高可用.结构图如下所示: 这里我说明下 ...
- mongodb 搭建集群(分片+副本集)
mongodb 搭建集群(分片+副本集) 一.搭建结构图: 二.搭建步骤:
- mongodb 3.4 集群搭建升级版 五台集群
最新版mongodb推荐使用yaml语法来做配置,另外一些旧的配置在最新版本中已经不在生效,所以我们在生产实际搭建mongodb集群的时候做了一些改进.如果大家不熟悉什么是分片.副本集.仲裁者的话请先 ...
- 分布式实时日志系统(一)环境搭建之 Jstorm 集群搭建过程/Jstorm集群一键安装部署
最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式 ...
- Mysql集群搭建(多实例、主从)
1 MySQL多实例 一 .MySQL多实例介绍 1.什么是MySQL多实例 MySQL多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307,3308),运行多个MySQL服务进程,通 ...
- Kubernetes集群搭建之Etcd集群配置篇
介绍 etcd 是一个分布式一致性k-v存储系统,可用于服务注册发现与共享配置,具有以下优点. 简单 : 相比于晦涩难懂的paxos算法,etcd基于相对简单且易实现的raft算法实现一致性,并通过g ...
- mongodb分片集群(无副本集)搭建
数据分片节点#192.168.114.26#mongo.cnfport=2001dbpath=/data/mongodb/datalogpath=/data/mongodb/log/mongodb.l ...
- mongodb的分布式集群(2、副本集)
概述 副本集是主从复制的一种,是一种自带故障转移功能的主从复制.攻克了上述主从复制的缺点.实现主server发生问题后.不需人为介入.系统自己主动从新选举一个新的主server的功能. ...
随机推荐
- luarocks 自定义包发布试用
luarocks 是一个方便的lua 包管理工具,可以帮助我们实现代码的复用以及分享 注册账户 我使用了gihtub 的账户,直接点击&&授权即可 创建一个简单的luarocks 包项 ...
- egg-init 知识点
Create a simple type application $ egg-init --type simple [dest]
- django报错解决:view must be a callable or a list/tuple in the case of include().
django版本:1.11.15 django应用,修改urls.py后,访问报错:TypeError at /view must be a callable or a list/tuple in t ...
- java 对象的创建
jvm在创建对象时,首先判断该对象所对应的类是否已经被加载.链接和初始化,如果没有则先执行类的加载过程.类的加载过程见 java类加载. 类加载检查通过后,虚拟机在堆中为新生对象分配内存. 内存分配完 ...
- cpu怎么实现运算的
这么好玩的问题,没人回答说不过去.不懂电子元件的码农我要强答一发了.太学术的我不会,你们也听不懂.所以臭不要脸非常不严谨地科普一记.说错不许打我.另外关于这个问题,推荐<编码 (豆瓣)> ...
- 需要序列化的类中没有写serialVersionUID的解决办法
由于没赋值serialVersionUID 只是警告,不是错误,造成先前没留意设定serialVersionUID,网络两端上线运行一段时间也感觉正常.如果再增减修改field,没赋值好serialV ...
- wifi实现串口透传
环境: 串口服务器Ip:172.16.1.11 串口客户机ip:172.16.1.12 一.网络连接示意图 二.串口服务器的配置 参考:ser2net的编译及测试 三.串口客户端的配置 实际上这是一个 ...
- ML: 聚类算法R包-对比
测试验证环境 数据: 7w+ 条,数据结构如下图: > head(car.train) DV DC RV RC SOC HV LV HT LT Type TypeName 1 379 85.09 ...
- Pandas的使用(1)
Pandas的使用(1) 1.绘图 import pandas as pd import numpy as np import matplotlib.pyplot as plt ts = pd.Ser ...
- KMP(字符串匹配)算法
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...