mongodb 的許可權系統
mongodb 開啟許可權認證需要注意的幾個點:
ReplSet 下面, 叢集的連結,需要 keyfile 看明白了。 是 keyFile 才對 。
1.
keyfile 的內容不能包含 等號 "="
openssl rand 128 最後一個字元是 “=”
大於 128 後面就增加 等號了。
取 90 或者 100 左右或者手工取其中的一部分都行。
openssl rand 90 > keyFile 。
然後複製到各個節點。
許可權 0600 .
2.
還有一個問題
systemctl 啟動的指令碼里面 有關於 幾句授權的。 ExecStartPre 那幾句確保不要修改 keyFile 的許可權。
否則啟動錯誤。
3. 啟動叢集后, 需要授權給管理員的幾個許可權問題。
db.createUser (
{
user:'root',
pwd:"passwd",
roles:[ {
role:"userAdminAnyDatabase",db:"admin"
},
{role:"readWriteAnyDatabase",db:"admin"
},
{role:"userAdmin",db:'admin'
},
{role:"dbAdmin",db:'admin'
},
{role:"clusterManager",db:'admin'
}
]
}
)
這是管理員許可權 。
如果業務業務使用者。
到各自的 業務資料裡去授權。
use app
db.createUser { ...
role:[ role:"dbadmin" , db:'app' }
需要 一個 dbadmin de 許可權, 否則可能會有點問題。
4. Secodary 庫。 連結後,第一句 是 rs.slaveOk()
否則一直爆粗。 別搞忘了。
5. 如果透過阿里雲DTS 複製 mongodb 做業務資料同步,
已經要調整 DTS 目標端的寫 併發數 , medium 規格的DTS 預設應該是 32個 併發。
讓後每個併發 , 批次寫 128個 記錄。 才提交。 這個是很大的併發量。
如果你的mongodb 資源不太足, 幾分鐘就壓死了。 而且 會持續 幾個很久的 cpu 跑滿,
rs 的 slave 離線。 無法接入叢集等等一系列的古怪問題。
切記。
6. arbitery 節點, 只參與 叢集投票,仲裁, 並不參與資料複製
就不需要設定keyfile 跟 安全驗證了。 給他安裝 exporter 監控的時候, 會導致登入錯誤。 無法監控。
這個是很重要。
7. 關於 主從切換的問題。 在主從 之間oplog delay =0 或者接近 0 的情況下。
因為我們設定了主庫的 priority =2 secondary 庫 =1 。
主動停止主庫, 會迅速接管到 secondary 變為 primary 。
再次啟動 主庫的時候, 角色會 在再次換回來。
整個ha 的過程還是相當自在的。
8.
下面是配置檔案示例:
# mongod.conf
# for documentation of all options, see:
#
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /app/mongodb/logs/mongod.log
# Where and how to store data.
storage:
dbPath: /app/mongodb/data/db
directoryPerDB: true
journal:
enabled: true
# engine:
# wiredTiger:
# how the process runs
processManagement:
fork: true # fork and run in background
pidFilePath: /app/mongodb/data/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 3717
bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
security:
keyFile: /app/mongodb/data/keyfile/keyfile
authorization: enabled
#operationProfiling:
replication:
replSetName: "Mmp_wuid"
#sharding:
## Enterprise-Only Options
#auditLog:
#snmp:
setParameter:
replWriterThreadCount: 16
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/133735/viewspace-2912382/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 許可權系統:一文搞懂功能許可權、資料許可權
- 許可權系統:許可權應用服務設計
- 有贊許可權系統
- SpringSecurity許可權管理系統實戰—九、資料許可權的配置SpringGse
- 打造自己的系統許可權控制
- 許可權系統:許可權應用服務設計Tu
- 許可權系統:6個許可權概念模型設計模型
- mongoDB 3.0 安全許可權訪問MongoDB
- 許可權維持專題:作業系統許可權維持作業系統
- 企業許可權管理系統
- Winner許可權管理系統3.0
- 基於RBAC的許可權管理系統
- MongoDB 使用者與許可權管理MongoDB
- MongoDB入門系列(四):許可權管理MongoDB
- 前端許可權控制系統的實現思路前端
- 基於tp3.2.3開發的許可權管理系統,路由,微信,cdn,許可權路由
- mongoDB安裝時提示沒有許可權MongoDB
- Confluence6對比系統管理員許可權和Confluence管理員許可權
- mongodb關於使用者許可權的總結MongoDB
- MongoDB4.0建立自定義許可權(只有查詢,插入和更新的許可權)的角色步驟MongoDB
- 擴充套件.Django-許可權系統套件Django
- OA管理系統,有哪些許可權管理?
- Linux 檔案許可權、系統優化Linux優化
- 關於許可權系統的一些思考
- 關於系統許可權的設計-位操作
- 許可權系統的基本概念和架構架構
- Vue2.0 + ElementUI 手寫許可權管理系統後臺模板(二)——許可權管理VueUI
- 許可權之選單許可權
- linux 檔案許可權 s 許可權和 t 許可權解析Linux
- HplusAdmin ASP.NET基本許可權管理系統ASP.NET
- 一文讀懂mysql許可權系統MySql
- Mac系統如何修復Mac硬碟許可權Mac硬碟
- 許可權系統reademe.md文件---待整理
- 基於SSM框架的JavaWeb通用許可權管理系統SSM框架JavaWeb
- 系統開發中許可權控制的重要性
- 基於tp3.2.3 的許可權管理系統更新
- 管理系統之許可權的設計和實現
- 如何用 Vue 實現前端許可權控制(路由許可權 + 檢視許可權 + 請求許可權)Vue前端路由