MongoDB散布式部署是用来将MongoDB数据库进行水平分片,以实现高可用和扩大性能的运行机制。MongoDB部署遵守一些最好实践,以确保散布式环境的最好性能和稳定性。本文介绍了MongoDB散布式部署的最好实践,介绍了怎样使用MongoDB分片,和如何部署和管理MongoDB分片的步骤。
MongoDB散布式部署的最好实践首先包括设置分片,分片是MongoDB集群的基础。分片由一个具有一个以上节点的组件组成,每一个分片都包括一个数据副本、一段管理成员(可以是有效状态的副本、看门人成员或投票成员)和一个服务器实例。分片可以手动或用MongoDB客户端命令创建。让我们来看:
“`sh
mongos> sh.addShard(“mycluster/mdb1.cluster.com:27017”)
{
“shardAdded” : “mycluster”,
“ok” : 1.0
}
mongos> sh.addShard(“mycluster/mdb2.cluster.com:27017”)
{
“shardAdded” : “mycluster_1”,
“ok” : 1.0
}
以后,可以通过MongoDB客户端中的sh.enableSharding()命令将集合进行散列。
```sh
mongos> use testswitched to db test
mongos> sh.enableSharding("test"){
"ok": 1.0}
让我们再看一下sh.shardCollection()命令的用法。sh.shardCollection()可以将集合上的特定字段数据进行散列,从而使MongoDB可以根据这些字段值将数据更有效地散布在区别分片中。
“`sh
mongos> sh.shardCollection( “test.student”, { “class”: “hashed” } )
{
“collectionsharded”: “test.student”,
“ok”: 1.0
}
部署MongoDB完成后,最好将子网分区,以避免不可信的网络访问MongoDB实例,同时可以减少网络流量的泄漏到可能接收它的实体。MongoDB还提供了多种认证机制,如LDAP,Kerberos和X.509,可以用来更好地保护MongoDB散布式部署的网络。
最后,MongoDB散布式部署也需要监控、管理和内容改进计划,以确保MongoDB集群能够有效地运行。有一个类似Nagios的监控解决方案可以利用于MongoDB,可以用来发现并解决性能消退,和捕获MongoDB集群中的异常或谢绝服务(DoS)攻击。
总的来讲,MongoDB散布式部署能够提高数据库的可用性和性能,而最好实践也能帮助我们更好地部署和管理MongoDB集群。本文扼要介绍了MongoDB散布式部署的最好实践,帮助大家找到更好的去建立和管理MongoDB散布式部署环境。
本文来源:https://www.yuntue.com/post/230256.html | 云服务器网,转载请注明出处!

微信扫一扫打赏
支付宝扫一扫打赏