mongodb 3.2 yaml 配置详解及范例

Posted wangyh702

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb 3.2 yaml 配置详解及范例相关的知识,希望对你有一定的参考价值。

mongodb3.x版本后就是要yaml语法格式的配置文件,下面是yaml配置文件格式如下:
官方yaml配置文件选项参考:https://docs.mongodb.org/manual/ ...

#configuration-file
只能使用空格,不支持tab键,切记

shard  的配置文件范例

storage:
   dbPath: /data/mongodb/shard1/data
   journal:
      enabled: true
   directoryPerDB: true
   #syncPeriodSecs: 60
   engine: wiredTiger

processManagement:
   fork: true
   pidFilePath: /data/mongodb/shard1/mongod.pid

net:
   port: 27017
   ipv6: true
   http:
      enabled: false

systemLog:
  destination: file
  path: /data/logs/mongodb/27017/log.txt
  logAppend: true

#security:
#keyFile: /data/mongodb/keyfile
# authorization: enabled

operationProfiling:
  slowOpThresholdMs: 100
  mode: slowOp

replication:
  oplogSizeMB: 20000
  replSetName: shard1

启动服务:

/data/app/mongodb/bin/mongod --shardsvr -f /data/app/conf/shard1.conf 

 

<ignore_js_op> 

1
2
3
4
5
6
systemLog:
  destination: file//指定是一个文件
  path: /data/logs/mongod.log//日志存放位置
  logAppend: true//产生日志内容追加到文件
#  quiet: true//在quite模式下会限制输出信息
#  timeStampFormat: iso8601-utc //默认是iso8601-local,日志信息中还有其他时间戳格式:ctime,iso8601-utc,iso8601-local



1
2
3
4
5
6
7
8
9
10
processManagement:
  fork: true//以守护进程的方式运行MongoDB,创建服务器进程
  pidFilePath: "/data/mongo-data/mongod.pid"//pid文件路径
net:
# bindIp: 192.168.33.131//绑定ip地址访问mongodb,多个ip逗号分隔
  port: 27017//端口
  maxIncomingConnections:10000//默认65535,mongodb实例接受的最多连接数,如果高于操作系统接受的最大线程数,设置无效。
#  http:
#    enabled: true//http端口最好关闭
#RESTInterfaceEnabled: false//即使http接口选项关闭,如果这个选项打开后会有更多的不安全因素



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
storage:
  dbPath: "/data/mongo-data"//数据文件存放路径
  engine: wiredTiger//数据引擎
  wiredTiger:
    engineConfig://wt引擎配置
      cacheSizeGB: 1//看服务器情况来进行设置
      directoryForIndexes: true//索引是否按数据库名进行单独存储
    collectionConfig:
      blockCompressor: zlib//压缩配置
    indexConfig:
      prefixCompression: true//索引配置
  journal:
    enabled: true//记录操作日志,防止数据丢失。
  directoryPerDB: true//指定存储每个数据库文件到单独的数据目录。如果在一个已存在的系统使用该选项,需要事先把存在的数据文件移动到目录。
operationProfiling:
  slowOpThresholdMs: 100 //指定慢查询时间,单位毫秒,如果打开功能,则向system.profile集合写入数据
  mode: "slowOp"//off、slowOp、all,分别对应关闭,仅打开慢查询,记录所有操作。
security:
  keyFile: "/data/mongodb-keyfile"//指定分片集或副本集成员之间身份验证的key文件存储位置
  clusterAuthMode: "keyFile"//集群认证模式,默认是keyFile
  authorization: "disabled"//访问数据库和进行操作的用户角色认证




复制集相关配置,根据以上配置文件进行如下配置。

1
2
3
4
replication:
  oplogSizeMB: 50//默认为磁盘的5%,指定oplog的最大尺寸。对于已经建立过oplog.rs的数据库,指定无效
  replSetName: "rs_zxl"//指定副本集的名称
  secondaryIndexPrefetch: "all"//指定副本集成员在接受oplog之前是否加载索引到内存。默认会加载所有的索引到内存。none不加载;all加载所有;_id_only仅加载_id




分片集群配置,分片复制集配置(单实例节点的基础上)

1
2
3
4
5
replication: 
  oplogSizeMB:50
  replSetName: "rs_zxl"
sharding:
  clusterRole: shardsvr




config server配置(单实例节点的基础上)

1
2
sharding:
  clusterRole: configsvr




mongos配置,(与单实例不同)

 

1
2
3
4
5
6
7
8
systemLog:
  destination: file
  path: /data/logs/mongos.log
  logAppend: true
net:
  port: 27019
sharding:
  configDB: 192.168.33.131:30000

以上是关于mongodb 3.2 yaml 配置详解及范例的主要内容,如果未能解决你的问题,请参考以下文章

如何安装,配置MongoDB?

ansible自动运维工具之ansible-playbook详解

K8S------YAML文件详解及示例

K8S------YAML文件详解及示例

K8S------YAML文件详解及示例

K8S------YAML文件详解及示例