mongod.conf,版本3.2,個人英語能力有限,結合翻譯軟體,大緻翻譯如下:
## 日志選項
systemLog:
verbosity: <int>
# 預設是0 ,1到5的增長代表了,錯誤資訊的描述程度,數越大,描述越詳細
quiet: <boolean>
#這個後面要寫1,不建議在生産模式開啟這個參數。這個後跟布爾值,進入mongo時是否會系那是相應的登陸資訊,最好是讓他可以提供你登入的時候會顯示的資訊,這樣有利于規避錯誤
traceAllExceptions: <boolean>
#這個建議在後面寫1,可以在錯誤調試資訊裡面顯示的内容更加詳細,有利于幫助解決服務問題
syslogFacility: <string>
#這個後面預設跟字元串,官網上說後面跟user,我不知道這個事user,還是具體那個使用者;這個值的設定關乎日志級别,并且這個值的設定必須是你的系統裡面支援的日志系統,最重要的一點就是如果使用這個參數,一定要在mongod執行的時候加上--syslog選項
path: <string>
#後面跟日志檔案的絕對路徑,最好預設不變。linux初始化腳本不希望去改變它的位置;如果改了,需要用你自己的初始化腳本,然後關閉内置的腳本
logAppend: <boolean>
#預設後面跟false,關閉狀态。如果是1開啟的狀态,mongod執行個體重新開機的時候,新的日志資訊會寫到日志檔案的後面;如果是0的狀态,那麼當你重新開機執行個體的時候,他會備份就得日志檔案,建立一個從新寫入
logRotate: <string>
#它的後面可以跟兩個值中的一個,rename或者是reopen。rename重命名日志檔案;reopen,重新開機日志檔案,使用linux上的輪訓日志,用來防止日志的丢失。重點在這,如果你要是使用了reopen,那麼你還要設定logappend:true
destination: <string>
#預設後面為file,這個參數的意思是說mongodb把自己的日志資訊是傳輸到哪裡,如果不選file的話,你還可以選擇syslog,這個的意思是把mongo的日志資訊和系統資訊交融在一塊兒,沒事兒别給自己添麻煩
timeStampFormat: <string>
#時間戳格式,預設為iso8601-local(這個意思是說從1969,12,31到現在過了多少秒)後面跟三個參數中的一個ctime(會顯示出Wed Dec 31 18:17:54.811);iso8601-utc,
component:
#這個在這就是個格式,跟下面的是相連接配接的
accessControl:
verbosity: <int>
#預設後面是0,這個也是0-5選一個數字,顯示的是元件控制資訊日志的詳細程度
command:
verbosity: <int>
#預設也是0,關于指令的資訊日志的詳細級别
control:
verbosity: <int>
#控制操作
geo
verbosity: <int>
#地理空間日志相關操作
index
verbosity:<int>
#索引操作
network
verbosity:<int>
#網絡操作
query
verbosity:<int>
#查詢記錄檔級别
replication
#複制集相關的
sharding
#分片
storage
#存儲相關日志 如果systemLog.component.storage.journal.verbosity沒有設值(也就是下面的那個沒有設定)那麼這個參數也适用于下面的參數值,也就是說沒有特殊要求,定義到這一步就可以了
journal
verbosity:<int>
#元件日志
write
verbosity:<int>
#寫記錄檔
#程序選項
processManagement:
fork
#布爾值,預設是0關閉, 在背景打開一個預設的守護程序,預設情況下是不啟動的,但是再生産使用環境下,還是打開
pidFilePath
#後跟mongod.pid的絕對路徑,用于存放程序id, 這個可以跟蹤程序結合--fork選項,當然你要首先開啟fork背景才行
#網絡選項
net:
port: <int>
#預設為27017
bindIp: <string>
#預設是127.0.0.1 如果有多個ip的話用都好隔開,不可以有空格,如果允許外網登陸可以設定成0.0.0.0
maxIncomingConnections: <int>
#預設值是65536,服務能夠達到的最大并發量,可以調高這個值,及時它超過了你的系統實際能夠達到的值;但是如果你在叢集的過程裡,可以通過設定一個較低的值,
#但是在有很多mongo叢集響應(用戶端響應逾時而不關閉請求)的這種情況下,設定maxIncomingConnections值略高于用戶端建立的最大連接配接數,或連接配接池的最大大小,可以不用因為某一用戶端請求逾時而關閉它
#這個值的設定,可以避免連接配接峰值造成的個人碎片,這些碎片存在的話會影響分片叢集過程中的系統性能和記憶體配置設定
wireObjectCheck: <boolean>
#預設後面跟true,執行個體驗證用戶端所有的請求,以防止用戶端不正當的插入畸形和無效的BSON語句到資料庫
ipv6: <boolean>
#預設跟false,不開啟ipv6
unixDomainSocket:
enabled: <boolean>
# 預設為true , 啟用監聽套接字,當開通了這個值之後,mongos和mongod監聽在套接字
#這個值設值為true,是套結字的,但是如果出現以下情況将會失效:
#net.unixDomainSocket.enabled is false
#--nounixsocket 這個是指令行裡的參數,這個指令行裡的參數是比配置檔案裡的參數更有效
#net.bindIp沒有被設定,或者這個沒有被指定127.0.0.1,rpm包安裝現在已經預設設定net.bindIp參數為127.0.0.1
pathPrefix: <string>
#預設是/tmp 套接字的存放路徑,如果這個參數沒有設定,那麼服務将自動在/tmp目錄下建立套接字存放檔案
filePermissions: <int>
#預設為0700 套接字檔案的權限
http:
#首先說一下設定這個http相應狀态(設定了rest API 或者JSON API)是不能阻止在生産環境下的潛在的資料暴露和外來攻擊,這樣設定并不安全
enabled: <boolean>
#預設為false,關閉狀态。開啟需謹慎,增加網絡攻擊點。雖然MongoDB企業确實支援Kerberos身份驗證,在HTTP狀态接口不支援Kerberos MongoDB的任何版本。
JSONPEnabled: <boolean>
#預設為false,啟用或禁用JSONP通過HTTP通路接口。隻針對mongod設定。使界面可以增加網絡曝光。net.http.JSONPEnabled選項允許HTTP接口,即使HTTP接口選項是禁用的
RESTInterfaceEnabled: <boolean>
#預設為false.啟用或禁用簡單的REST API。隻針對mongod設定。支援REST API允許HTTP接口,即使HTTP接口選項被禁用,是以可以增加網絡曝光。
ssl:
sslOnNormalPorts: <boolean>
# deprecated since 2.6 預設情況下是0禁用的 2.6版本錢不要用,是否開啟ssl
mode: <string>
#後可以跟以下幾個模式:
#disabled 服務不用tls/ssl
#allowSSL 服務之間的連結不适用tls/ssl.在進入的連結單重服務接受所有的ssl/tls 和非ssl/tls連結
#preferSSL 使用TLS / SSL伺服器之間的連接配接。傳入的連接配接,伺服器接受非TLS/SSL和 TLS/SSL 的連結
#requireSSL 伺服器使用和隻接受TLS/SSL加密連接配接
PEMKeyFile: <string>
#.pem檔案,包函tls/ssl證書和秘鑰。 .pem檔案可以使相對路徑也可以是絕度路徑,建議是絕對的,容易檢視
PEMKeyPassword: <string>
#密碼de-crypt證書密鑰檔案(例如PEMKeyFile)。使用net.ssl。PEMKeyPassword選項隻有在證書密鑰檔案是加密的。在所有情況下,蒙戈或mongod将從所有的日志編輯密碼和報告輸出
#如果私鑰在PEM檔案是加密的,你不指定net.ssl。PEMKeyPassword選項,蒙戈或mongod會提示輸入密碼
clusterFile: <string>
#.pem檔案包含x.509證書密鑰檔案為會員身份驗證叢集或副本集
#如果net.ssl.clusterFile不指定.pem檔案為叢集内部身份驗證、叢集使用.pem檔案中指定PEMKeyFile設定
clusterPassword: <string>
# de-crypt密碼指定.x509證書密鑰檔案;隻有證書密鑰檔案是加密的才使用這個參數,總而言之,服務會将所有記錄和輸出加密
#如果.x509檔案是加密的,而你沒有指定這個參數的話,mongod和mongos服務會提示輸入密碼
CAFile: <string>
#.pem 證書檔案,指定證書檔案,使用絕對和相對路徑。如果這個路徑沒有被指定,那麼這個.x509使用者身份認證将會失效
# mongod和mongos服務是分片系統,無法驗證連結構成是否是有信任的證書辦法機構
#如果沒有指定CA憑證,.x509省份驗證将不會有效
CRLFile: <string>
# .pem檔案包函證書撤銷清單
allowConnectionsWithoutCertificates: <boolean>
# 啟用或禁用TLS / SSL證書的要求驗證CAFile支援,當沒有證書檔案的時候,服務也會建立連接配接
#即使用戶端提供證書,服務也會先檢查根證書是否有效,之後不管有沒有效,都說是無效的證書檔案
#當使用一個混合排程的時候,用戶端不能提供,或者沒有這個ca證書,将會使用這個參數
allowInvalidCertificates: <boolean>
# 啟用或禁用TLS / SSL證書的驗證檢查叢集中的其他伺服器,并允許使用無效的證書
allowInvalidHostnames: <boolean>
# 預設為false。 當開啟的時候,MongoDB禁用驗證主機名的TLS / SSL證書,允許mongod連接配接MongoDB執行個體如果主機名證書指定的主機名不比對。
disabledProtocols: <string>
# 阻止mongodb服務使用SSL接受傳入的連接配接,而是使用特定的協定或協定,後面的值可以使
# TLS1_0
# TLS1_1
# TLS1_2 後面跟誰,誰将不會被使用
FIPSMode: <boolean>
#預設為1,當為mongodb服務安裝OpenSSL庫的時候是否啟用FIPS模式 ,這個是一定要開啟的,FIPS相容OpenSSL庫使用.
## 安全選項
security:
keyFile: <string>
#存儲服務分片的秘要驗證檔案的路徑,MongoDB執行個體用于驗證彼此在分片叢集或者副本集密鑰檔案是否安全
clusterAuthMode: <string>
# 叢集使用的身份驗證模式驗證。如果你使用内部x.509認證,指定這裡。這個選項可以有以下值之一:
#keyFile 使用一個密鑰檔案進行身份驗證。隻接受密鑰檔案。
#sendKeyFile 滾動更新日志。發送一個密鑰檔案進行身份驗證,但可同時接受密鑰檔案和x.509證書
##sendX509 滾動更新日志,發送.x509驗證證書,可以同時接受keyfilees和.x509檔案
#x509 推薦使用,發送.x509檔案來驗證證書,隻接受.x509證書檔案
authorization: <string>
#預設後disabled 啟用或禁用基于角色的通路控制(RBAC)來管理每個使用者的通路資料庫資源和操作。
#enabled 啟用或禁用基于角色的通路控制(RBAC)來管理每個使用者的通路資料庫資源和操作。
#disabled 使用者可以通路任何資料庫和執行任何操作。
javascriptEnabled: <boolean>
#預設後面跟true,啟用或禁用伺服器端JavaScript執行。當禁用,你不能使用操作,執行伺服器端執行的JavaScript代碼,如查詢操作符的美元,mapReduce指令和db.collection.mapReduce()方法,組織指揮和db.collection.group()方法。
sasl:
hostName: <string>
serviceName: <string>
saslauthdSocketPath: <string>
#####從下一行還是往後為密鑰管理控制選項
enableEncryption: <boolean>
#預設為false 開啟加密的WiredTiger存儲引擎。你必須設定為 1 傳遞加密密鑰和配置。
encryptionCipherMode: <string>
#預設值:AES256-CBC 256位進階加密标準密碼塊連結模式
#AES256-GCM 256位進階加密标準在伽羅瓦/計數器模式
encryptionKeyFile: <string>
#當地的密鑰檔案的路徑密鑰管理通過KMIP以外的過程。隻有當管理鍵集通過KMIP以外的過程。如果資料已經加密使用KMIP,MongoDB将抛出一個錯誤。
#開啟這個需要security.enableEncryption 開啟為1
kmip:
keyIdentifier: <string>
#明确一個現有已經存在的不在KMIP服務之内的KMP辨別符包括使用與辨別符相關的關鍵系統的關鍵
#隻能在第一次初始化執行個體的加密時候使用這個設定
#如果不設定,MongoDB将請求KMIP伺服器建立一個新的利用系統key的key。
#如果KMIP伺服器不能用指定的辨別符或找到一個key的資料已經加密密鑰,MongoDB将抛出一個錯誤。
rotateMasterKey: <boolean>
#預設為false 如果為開啟,那麼不斷有主鍵從新編譯存儲密鑰
serverName: <string>
#MIP服務運作一個密鑰管理方案KMIP服務的主機名或者是ip
port: <string>
#預設為5696 kMIP伺服器的服務監聽端口号 ,需要serverName先提供了
clientCertificateFile: <string>
#包含用戶端證書的路徑字元串用于MongoDB KMIP伺服器進行身份驗證。
clientCertificatePassword: <string>
#密碼解密客戶機證書(即security.kmip.clientCertificateFile),用于對MongoDB KMIP伺服器進行身份驗證。隻有證書加密使用的選項
serverCAFile: <string>
#CA憑證檔案路徑,用于用戶端連結KMIP伺服器的驗證
## 存儲選項
storage:
dbPath: <string>
#預設是/data/db mongod執行個體存儲資料的目錄
indexBuildRetry: <boolean>
#預設為1 指定是否在下一個啟動mongod重建完整的索引。
#這适用于情況mongod重新開機後關閉或停止在中間的一個索引建構。在這種情況下,mongod總是删除任何不完整的索引,然後,在預設情況下,試圖重建它們。
#阻止mongod重建索引,這個選項設定為false。
repairPath: <string>
#後跟一個以_tmp結尾的路徑檔案名,當mongod使用了--repair選項,完成之後,資料檔案實在DBPATH定義的存儲檔案裡面,而這個定義的檔案是為空的
journal:
enabled: <boolean>
#在64位系統,為true, 在32位系統上面為false
#是否啟用持久日志確定資料檔案有效恢複
這個選項隻适用于制定了--dbpath選項才有效
commitIntervalMs: <num>
#預設後面為100或者是30,機關為毫秒 mongod記錄檔的最大持續時間
#降低數值,可以增加的日志的持久性,但是這是以損失磁盤性能為代價,預設的日志時間間隔為100毫秒
#在MMAPV1環境下,如果日志檔案是在不同的裝置塊上如lvm,raid,這個值最好是設定成30毫秒,這種情況一般是上一中情況的三分之一
#在WiredTiger環境下,預設日志間隔為100毫秒,如果使用一個J:true将會造成日志立刻同步
directoryPerDB: <boolean>
# 預設是false, 如果開啟的話,資料庫為每個資料庫建立一個單獨的資料庫檔案來存貯資料
#注:這個必須用新的目錄路徑才能管用,也就是說在你定義的DBPATH的目錄下,會生成很多以資料庫名字來命名的資料目錄
#子目錄對應的是相應的資料庫
#如果使用,必須重新啟動mongod執行個體與新存儲,而且要找一個行的目錄來存貯資料
#在獨立的mongodb服務中,使用mongodump來備份資料,停止執行個體,重新開機有心的資料目錄的資料庫,之後用mongorestore來恢複資料到新的目錄
#在複制集的mongodb叢集中,可以通過更新滾動的方式來更新二級成員,重新開機存有新的資料目錄的資料庫,通過初始同步,來使這個資料保持一緻,更新所有二級成員之後,啟動他們先,随後主的停掉,更新最後的主伺服器
syncPeriodSecs: <int>
#預設後面跟60 資料從記憶體中到磁盤檔案中用的時
#注:再生産環境中不要設定這個值
#如果這個值設定為0,記憶體不會向磁盤檔案寫資料
#mongodb寫資料到日志檔案是非常快的,但是寫的磁盤中确實很慢,這個值的設定對日志檔案沒有影響
engine: <string>
# 預設為wiredTiger 這是3.2版本新的預設設定,存儲引擎還可以選擇:
#mmapv1
#inMemory 記憶體存儲引擎,測試階段,不要用在生産環境
#如果你試圖啟動一個資料檔案裡用的不是配置檔案裡使用的引擎的話,mongod是拒絕啟動的
mmapv1:
preallocDataFiles: <boolean>
#預設為true,用或禁用的預先配置資料檔案
nsSize: <int>
#預設為16 命名空間檔案的大小,每一個檔案都是以.ns結尾的,每個集合和索引算得上是命名空間
#使用這個設定可以使控制新建立的命名空間檔案大小,但是它不會對已經存在的命名空間大小造成影響
#最大可以設定為2047個位元組,提供了大概有24000個命名空間
quota:
enforced: <boolean>
#預設為false, 啟用或禁用實施最大限度的每個資料庫資料檔案數量
#當設定為1開啟的時候,每個mongodb可以建立最多8個資料庫
maxFilesPerDB: <int>
#預設為8,這個數值直接關系到上一個選項的最大可以建立的資料庫數量,當然前提是上一個選項在開啟的狀态下
smallFiles: <boolean>
#預設為false ,當設定為1的時候,将以預設的小檔案,這個選項會降低了資料檔案的初始大小和限制的最大大小為512 mb
#同時這個開啟的話,也會境地日志檔案的大小,可以從1G到128M
#使用這個選項的環境一般都是你有很多資料庫,而每個資料庫的資料檔案都比較小
#這個選項的不足是他會使資料執行個體生成大量的檔案,這樣會影響到大資料庫的性能
journal:
debugFlags: <int>
#提供功能測試,這個不是平時使用的,而是測試在系統異常關閉的情況下會不會影響資料的完整性
commitIntervalMs: <num>
# MongoDB 3.2不允許storage.mmapv1.journal.commitIntervalMs設定。
# 使用storage.journal.commitIntervalMs代替。
# 設定和适用于MMAPv1或WiredTiger存儲引擎。
wiredTiger:
#這個是mogod預設的資料庫存儲引擎的下面的參數,和上一部分取一個就可以了
engineConfig:
cacheSizeGB: <number>
#緩存的最大大小,WiredTiger将用于所有資料
#預設情況下,啟動MongoDB 3.2,mongodb緩存存儲引擎會使用記憶體為【(系統引擎-1G)/6 】的60% 或者是接近1G的記憶體
#當熱一般系統記憶體超過了10G,那麼monggo的緩存會使用3G,也可設定超過3G
#這個值最好是保持預設值
#當然這并不是mongod使用的總記憶體的大小,這隻是緩存的值,它還要使用檔案系統緩存等機制還是要消耗記憶體的
#此外,作業系統将使用任何空閑RAM緩沖檔案系統塊
#如果你在設定多個mongod節點的時候,因為記憶體大小可能不一,是以要以小記憶體為基準
#還有一個需要設定小點的情況是在使用了容器的情況下,如lxc,cgroups,docker等情況下,實際上是看不到所有記憶體的,是以要設定在容器環境下調整記憶體
statisticsLogDelaySecs: <number>
#預設數值為0(這個不是布爾值)
#時間間隔,以秒為機關,WiredTiger日志統計檔案中指定dbPath
#當設定為0的時候,WiredTiger沒有日志統計
journalCompressor: <string>
#預設為snappy 他預設壓縮使用壓縮收集資料的類型。你可以覆寫這個集合的基礎上在建立集合。
# none
# zlib
#這個值的設定之後後續的壓縮使用這個新的設定,以前存在的集合使用了以前的已經設定的壓縮
directoryForIndexes: <boolean>
#預設後跟false 當為true時,mongod索引和集合存儲在單獨的子目錄下的資料
#具體來說,mongod索引存儲在子目錄命名指數和收集資料集合命名的子目錄中。
#通過使用一個符号連結,您可以指定一個不同的位置的索引。特别是mongod執行個體是不運作的時候,索引目錄移動到目的地,命名索引資料目錄下建立一個符号連結到新的目标。
collectionConfig:
#blockCompressor: <string>
#預設snappy 預設類型的壓縮使用壓縮收集資料。你可以覆寫這個集合的基礎上在建立集合。
indexConfig:
# prefixCompression: <boolean>
# 預設是true 啟用或禁用字首索引資料的壓縮
## 資料庫性能分析選項
operationProfiling:
slowOpThresholdMs: <int>
#預設為100 門檻值以毫秒為機關的資料庫查詢分析器認為緩慢。MongoDB記錄所有慢速查詢日志,即使資料庫分析器關閉。當分析器啟動,它寫入到系統。配置檔案收集
mode: <string>
#預設為off 資料庫分析的水準,它将操作性能資訊插入到系統。配置檔案收集。指定一個以下的級别:
#slowOp 隻包括緩慢操作
#all 所有操作
#資料庫性能分析的開啟會影響到資料庫的性能,建議不要開啟
## 資料庫複制選項
replication:
oplogSizeMB: <int>
#複制排程日志的最大值,機關是M,在最大可用的空間上mongod程式建立一個oplog
#對于64位的系統來說,oplog一般是使用空閑磁盤的5%
#一旦mongod建立了oplog,那麼及時修改了這個選項的東西,也是不會對現有的oplog的大小造成影響的
replSetName: <string>
#複制集的名字也是mongod服務的一部分,副本集合中的所有主機必須有相同的名字。
#如果您的應用程式連接配接到多個副本集,每組應該有一個獨特的名字。有些驅動組副本集連接配接副本集名稱。
secondaryIndexPrefetch: <string>
#預設後跟 all 這個隻有是MMAPV1存儲引擎才會使用這個選項
#從複制集的索引加載進記憶體先于應用系統在oplog讀取
#預設情況下從複制集加載所有的索引到系統記憶體中先于系統從oplog中響應
#這些值可以設定成
#none 從複制集不加載到索引到記憶體當中
#all 從複制集加載所有與系統有關的所有索引
#_id_only 除了現有的已經存在的_id索引加載斤記憶體,其他的都不加入
enableMajorityReadConcern: <boolean>
#預設後面跟False 如果是Enable 則是開啟讀水準的多數majority
## 分片選項
sharding:
clusterRole: <string>
#分片的角色,mongod執行個體叢集。這個設定設定為下列之一:
#configsvr 開始這個執行個體作為一個配置伺服器。預設執行個體在端口27019上啟動。
#shardsvr 開始這個執行個體作為一個分片。預設執行個體在端口27018上啟動。
archiveMovedChunks: <boolean>
#預設是0 塊遷移期間,分片不儲存文檔分片的遷移
## auditLog選項
auditLog:
destination: <string>
#這個選項是控制mongo和mongod發送所有的審計事務的。它下面的值可以跟:
#syslog 以JSON格式審計事件輸出到syslog中。審計資訊裡面有日志的安全登記和使用者裝置的水準資訊
#syslog 消息限制可能導緻審計消息的截斷,審計系統既不會檢測截斷,也不會報告截斷發生的錯誤資訊
#console 以JSON格式輸出審計事件發送到stdout。
#file 在有--autitPath中指定格式,在規定了--auditPath 會将審計事件輸出到檔案當中
format: <string>
#如果auditLog輸出到檔案中(也就是上面那個為file)這個選項如下 :
# JSON 以JSON格式輸出審計事件到檔案當中,要指定--auditPath
# BSON 以BSON二進制格式輸出審計到檔案中,要指定--auditPath
# JSON比BSON,JSON會比較降低伺服器的新能,建議選則BSON
path: <string>
#如果destination制定了file,那麼這個就是指定事件輸出到的檔案名,可以是絕對路徑也可以是相對路徑
filter: <string>
#這個檔案會限制類型的操作和審計系統的報告,這個選項用一個字元串表示查詢的方式:
#{ <field1>: <expression1>, ... } 下面來解釋一下這個字元串
#<field1> 可以是任何的領域的審計資訊,包括字段傳回的參數檔案
#<expression> 是查詢條件表達式
#指定一個審計過濾器,過濾器檔案包括在單引号将文檔作為一個字元串。
#或者在配置檔案中指定審計過濾器,您必須使用YAML格式的配置檔案
### snmp選項 mongod支援資料庫通過SNMP協定,支援集中手機各集合的資料,這個程式解釋mongod的執行個體安裝和設定作為一個SNMP代理
## 同時mongodb的SNMP也支援初始化和測試
## 隻有mongod執行個體提供支援SNMP,mongo和mongodump等其他的是不支援的
snmp:
subagent: <boolean>
#當設定為1,SNMP作為代理運作
master: <boolean>
#當這是為1,SNMP作為主伺服器運作
## 文本搜尋選項
basisTech:
rootDirectory <string>
#指定根目錄裡面支援的語言集,以使資料庫支援更多的語言種類
## 隻針對用戶端mongo的設定
localPingThresholdMs: <boolean>
#預設是15,ping的時間,以毫秒為機關,這是mongo使用者決定多少時間從系統讀到用戶端
autoSplit: <boolean>
#預設為true,啟用或禁用自動分割塊的分片集合
#由于mongos會在叢集之中建立一個分片,為了完全關閉叢集中的分片,這個值必須在所有的mogos裡面設定為0
#禁用了自動分割,分片叢集中的資料随着時間的推移會變得不平衡,還是小心禁用這個值為好
configDB: <string>
#叢集分片的服務配置,配置分片服務及所謂一個副本集,必須使用WiredTiger存儲引擎
#mongod3.2 版本禁止使用3個鏡像mongod執行個體的配置服務
#指定副本集中的某一成員的hostname和端口,以及它的配置資訊的名字
#分片集的mongo執行個體必須指定相同的配置伺服器副本集名稱,指定主機名和端口不同成員的副本集。
#如果指定棄用的執行個體鏡像,指定mongod執行個體主機名和端口,mognos執行個體必須指定形同的配置字元
chunkSize: <int>
#預設為64
#每個塊的大小以兆位元組為機關的分片叢集。
#64位元組的大小是理想在大多數部署:
#較大的塊大小可能導緻資料分布不均勻;較小塊大小可能導緻低效的運動塊節點之間。
#這個選項之印象當以第一次初始化叢集的時候的塊大小,後面你在修改也是沒有效的。
最後,一般情況下這樣的配置可以作為基礎配置,用于後續累加:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
verbosity: 0
logRotate: reopen
timeStampFormat: iso8601-local
dbPath: /mongodb/data
enabled: true
commitIntervalMs: 100
directoryPerDB: true
syncPeriodSecs: 60
engine: wiredTiger
fork: true # fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
port: 27017
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
maxIncomingConnections: 1000000
wireObjectCheck: true
authorization: disabled