国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于Docker的MongoDB集群搭建

這篇具有很好參考價(jià)值的文章主要介紹了基于Docker的MongoDB集群搭建。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

原文:https://www.yuque.com/wfzx/ninzck/dagu5akm0ztfuobw?singleDoc# 《基于Docker的MongoDB集群搭建》

實(shí)驗(yàn)環(huán)境

虛擬主機(jī)

在Window 10上使用 VMware 開啟四個(gè) Ubuntu 18 的虛擬主機(jī)。
image.png
MongoDB A:192.168.204.156(主節(jié)點(diǎn))
MongoDB B:192.168.204.157
MongoDB C:192.168.204.158
MongoDB D:192.168.204.159

host 配置

host文件位于 C:\Windows\System32\drivers\etc\hosts

192.168.204.156 mongodba
192.168.204.157 mongodbb
192.168.204.158 mongodbc
192.168.204.159 mongodbd

拉取MongDB 的鏡像

實(shí)驗(yàn)的MongoDB版本:MongoDB server version: 5.0.5

# 查詢鏡像
root@ubuntu:/home/liangshijie/mongodb-docker-file# docker search mongodb
NAME                                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
mongo                                                  MongoDB document databases provide high avai…   9439      [OK]
mongo-express                                          Web-based MongoDB admin interface, written w…   1279      [OK]
bitnami/mongodb                                        Bitnami MongoDB Docker Image                    205                  [OK]
percona/percona-server-mongodb                         Percona Server for MongoDB docker images        36
rapidfort/mongodb                                      RapidFort optimized, hardened image for Mong…   15
circleci/mongo                                         CircleCI images for MongoDB                     12                   [OK]
bitnami/mongodb-sharded                                                                                9
...

# 拉取第一個(gè)
docker pull mongo

集群配置

官方文檔:https://www.mongodb.com/compatibility/docker

一、配置主節(jié)點(diǎn)

1.準(zhǔn)備

# 創(chuàng)建基本目錄
cd /home/liangshijie/mongodb-docker-file
# 要注意創(chuàng)建的文件夾docker進(jìn)程是否有權(quán)限操作
mkdir data
mkdir log
mkdir conf

chmod 777 data

# 創(chuàng)建日志文件。 # 提高權(quán)限,不然權(quán)限錯(cuò)誤
touch ./log/mongod.log
chmod 777 ./log/mongod.log

# 生成密鑰文件。
# 后續(xù)要將密鑰文件拷貝到從服務(wù)器,所以在降低key.file密鑰文件權(quán)限前,你可能需要先將其拷貝到其它服務(wù)器。
openssl rand -base64 756 > ./conf/key.file
# 降低權(quán)限,不然權(quán)限錯(cuò)誤
chmod 400 ./conf/key.file

# 創(chuàng)建配置文件。具體內(nèi)容看后面
vim ./conf/mongod.conf.orig


# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# Where and how to store data.
storage:
  dbPath: /var/lib/mongodb  # 數(shù)據(jù)存儲(chǔ)的目錄,默認(rèn)就好
  journal:
    enabled: true
#  engine:
#  wiredTiger:

# where to write logging data.
systemLog:
  destination: file  # 日志寫入到文件
  logAppend: true  # 追加的方式
  path: /var/log/mongodb/mongod.log   # 日志文件位置,默認(rèn)就好

# network interfaces
#net:
 # port: 27017
 # bindIp: 127.0.0.1


# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo

#security:
#security:
#  keyFile: /data/configdb/key.file  # 集群節(jié)點(diǎn)之間使用我們生成的密鑰進(jìn)行權(quán)限驗(yàn)證
#replication:
#  replSetName: mongoCluster  # 指定集群名稱
net:
   bindIp: mongodba  # 要綁定的地址,一般不寫IP
#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options:

#auditLog:

#snmp:

??溫馨提示,后續(xù)要將密鑰文件拷貝到服務(wù)器,所以在降低key.file密鑰文件權(quán)限前,你可能需要先將其拷貝到其它服務(wù)器。

2.啟動(dòng)

docker run -u root --name mongodb -d -p 27017:27017 \
-v /home/liangshijie/mongodb-docker-file/data:/var/lib/mongodb \
-v /home/liangshijie/mongodb-docker-file/conf:/data/configdb \
-v /home/liangshijie/mongodb-docker-file/log:/var/log/mongodb \
--hostname="mongodba" \
mongo --config /data/configdb/mongod.conf.orig 

??由于指定了日志文件的位置,所以使用容器命令 docker logs -f是不會(huì)打印日志的,日志輸出到這個(gè)位置了:./log/mongod.log。
??配置文件mongod.conf.orig的位置指定的是容器內(nèi)的位置。
??如果只是想快速啟動(dòng)一個(gè) MongoDB 容器,可以使用這條命令:
docker run --name mongodb -d -p 27017:27017 -v /home/liangshijie/mongodb-docker-file/data:/data/db -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=123456 mongo

3.創(chuàng)建用戶

# 進(jìn)入容器
docker exec -it <容器ID> bash
cd /usr/bin
mongo --host mongodba

# 創(chuàng)建管理員用戶(用于登錄主節(jié)點(diǎn)初始化集群)
db.createUser( {
  user: "root",
  pwd: "123456",
  roles: [ { role: "root", db: "admin" } ]
});

# 創(chuàng)建讀寫用戶(可以后面再創(chuàng)建,用于主節(jié)點(diǎn)的讀寫操作,在從節(jié)點(diǎn)登錄只能只讀)
db.createUser({ user:'user',pwd:'123456',roles:[ { role:'readWrite', db: 'study'}]});

# 退出
exit

4.配置密鑰

集群通信需要密鑰。

vim ./conf/mongod.conf.orig

# 在上面的配置文件中,我已經(jīng)寫好了配置,只需要把下面的注釋放開即可:
security:
  keyFile: /data/configdb/key.file  # 集群節(jié)點(diǎn)之間使用我們生成的密鑰進(jìn)行權(quán)限驗(yàn)證
replication:
  replSetName: mongoCluster  # 指定集群名稱

# 可選,降低配置文件的權(quán)限
chmod 400 ./conf/mongod.conf.orig

??為什么之前不放開配置?因?yàn)橐辉绶砰_的話沒有權(quán)限創(chuàng)建用戶,等創(chuàng)建好用戶再放開。

5.重啟

docker restart <容器ID>

6.初始化集群

# 進(jìn)入容器
docker exec -it <容器ID> bash

cd /usr/bin
# 登錄
mongo --host mongodba
# 認(rèn)證
db.auth("root","123456")
# 初始化
rs.initiate()
# 結(jié)果如下:
{
        "info2" : "no configuration specified. Using a default configuration for the set",
        "me" : "mongodba:27017",
        "ok" : 1
}

# 查看狀態(tài)
rs.status()

# 在從節(jié)點(diǎn)已經(jīng)就緒的情況下,我們也可以通過下面配置初始化集群。

var cfg ={"_id":"heroMongoCluster",
  "protocolVersion" : 1,
  "members":[
    {"_id":1,"host":"mongodba:27017","priority":10},
    {"_id":2,"host":"mongodbb:27017","priority":1},
    {"_id":2,"host":"mongodbc:27017","priority":1},
    {"_id":2,"host":"mongodbd:27017","priority":1}
  ]
};

rs.initiate(cfg)

二、配置從節(jié)點(diǎn)

1.準(zhǔn)備

從節(jié)點(diǎn)跳過生成密鑰的步驟。

# 創(chuàng)建基本目錄
cd /home/liangshijie/mongodb-docker-file
# 要注意創(chuàng)建的文件夾docker進(jìn)程是否有權(quán)限操作
mkdir data
mkdir log
mkdir conf

chmod 777 data

# 創(chuàng)建日志文件。 # 提高權(quán)限,不然權(quán)限錯(cuò)誤
touch ./log/mongod.log
chmod 777 ./log/mongod.log

# 創(chuàng)建配置文件。具體復(fù)制后面的
vim ./conf/mongod.conf.orig

# 最后降低權(quán)限(可選)
chmod 400 ./conf/mongod.conf.orig

跟主節(jié)點(diǎn)配置不一樣的地方就是,一開始就放開 security 的注釋,在這里,需要注意修改bindIp的值,完整配置如下:

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# Where and how to store data.
storage:
  dbPath: /var/lib/mongodb  # 數(shù)據(jù)存儲(chǔ)的目錄,默認(rèn)就好
  journal:
    enabled: true
#  engine:
#  wiredTiger:

# where to write logging data.
systemLog:
  destination: file  # 日志寫入到文件
  logAppend: true  # 追加的方式
  path: /var/log/mongodb/mongod.log   # 日志文件位置,默認(rèn)就好

# network interfaces
#net:
 # port: 27017
 # bindIp: 127.0.0.1


# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo

#security:
security:
  keyFile: /data/configdb/key.file  # 集群節(jié)點(diǎn)之間使用我們生成的密鑰進(jìn)行權(quán)限驗(yàn)證
replication:
  replSetName: mongoCluster  # 指定集群名稱
net:
  bindIp: mongodbb  # 要綁定的地址,一般不寫IP
#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options:

#auditLog:

#snmp:

2.復(fù)制主節(jié)點(diǎn)的密鑰文件

將主節(jié)點(diǎn)的 key.file 文件復(fù)制到從節(jié)點(diǎn)的 ./conf 目錄下。(不拷貝文件也行,cat輸出文件內(nèi)容,復(fù)制粘貼也是可以的)

??遇到拷貝不進(jìn)conf的情況,請檢查目錄權(quán)限。 chmod 777 ./conf 開放上傳之后,再 chmod 755 ./conf 收回。
注意,conf目錄下的 key.file 權(quán)限是 400。 配置文件是 755

3.啟動(dòng)

docker run --name mongodb -d -p 27017:27017 \
-v /home/liangshijie/mongodb-docker-file/data:/var/lib/mongodb \
-v /home/liangshijie/mongodb-docker-file/conf:/data/configdb \
-v /home/liangshijie/mongodb-docker-file/log:/var/log/mongodb \
--hostname="mongodbb" \
mongo --config /data/configdb/mongod.conf.orig 

同理,其它幾個(gè)從節(jié)點(diǎn)也是這樣配置,注意,要改一下配置文件中 bindIp 屬性,以及啟動(dòng)命令中--hostname的屬性。

三、在主節(jié)點(diǎn)中新增、刪除從節(jié)點(diǎn)

新增從節(jié)點(diǎn)

??你需要確保主、從節(jié)點(diǎn)容器之間能正常通信。如果你想在容器內(nèi)測試能不能ping同其它主機(jī)的mongo服務(wù),可以在容器內(nèi)安裝ping:
apt-get update
apt-get install iputils-ping

# 進(jìn)入主節(jié)點(diǎn)的mongodb容器
docker exec -it <容器ID> bash

cd /usr/bin
# 登錄
mongo --host mongodba
# 認(rèn)證
db.auth("root","123456")

# 增加從節(jié)點(diǎn)
rs.add("mongodbb:27017")
# 執(zhí)行結(jié)果:
{
        "ok" : 1,
        "$clusterTime" : {
                "clusterTime" : Timestamp(1675486280, 1),
                "signature" : {
                        "hash" : BinData(0,"cwO0f4QXhKNfNGKZstysMTqrQ9w="),
                        "keyId" : NumberLong("7196151896959090692")
                }
        },
        "operationTime" : Timestamp(1675486280, 1)
}

rs.add("mongodbc:27017")
rs.add("mongodbd:27017")

刪除從節(jié)點(diǎn)(選看)

# 刪除slave 節(jié)點(diǎn)
rs.remove("172.17.187.80:37019")

查看配置(選看)

rs.conf()
{
        "_id" : "mongoCluster",
        "version" : 9,
        "term" : 1,
        "members" : [
                {
                        "_id" : 0,
                        "host" : "mongodba:27017",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {

                        },
                        "secondaryDelaySecs" : NumberLong(0),
                        "votes" : 1
                },
                {
                        "_id" : 2,
                        "host" : "mongodbb:27017",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {

                        },
                        "secondaryDelaySecs" : NumberLong(0),
                        "votes" : 1
                },
                {
                        "_id" : 3,
                        "host" : "mongodbc:27017",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {

                        },
                        "secondaryDelaySecs" : NumberLong(0),
                        "votes" : 1
                },
                {
                        "_id" : 4,
                        "host" : "mongodbd:27017",
                        "arbiterOnly" : false,
                        "buildIndexes" : true,
                        "hidden" : false,
                        "priority" : 1,
                        "tags" : {

                        },
                        "secondaryDelaySecs" : NumberLong(0),
                        "votes" : 1
                }
        ],
        "protocolVersion" : NumberLong(1),
        "writeConcernMajorityJournalDefault" : true,
        "settings" : {
                "chainingAllowed" : true,
                "heartbeatIntervalMillis" : 2000,
                "heartbeatTimeoutSecs" : 10,
                "electionTimeoutMillis" : 10000,
                "catchUpTimeoutMillis" : -1,
                "catchUpTakeoverDelayMillis" : 30000,
                "getLastErrorModes" : {

                },
                "getLastErrorDefaults" : {
                        "w" : 1,
                        "wtimeout" : 0
                },
                "replicaSetId" : ObjectId("63ddde05097f7140da2e9c0a")
        }
}

查看狀態(tài)(選看)

執(zhí)行 rs.status() 查看狀態(tài),在 members 屬性中可以看到節(jié)點(diǎn)列表信息。

rs.status()
{
  "set" : "mongoCluster",
  "date" : ISODate("2023-02-04T04:52:11.084Z"),
  "myState" : 1,
  "term" : NumberLong(1),
  "syncSourceHost" : "",
  "syncSourceId" : -1,
  "heartbeatIntervalMillis" : NumberLong(2000),
  "majorityVoteCount" : 2,
  "writeMajorityCount" : 2,
  "votingMembersCount" : 2,
  "writableVotingMembersCount" : 2,
  "optimes" : {
    "lastCommittedOpTime" : {
      "ts" : Timestamp(1675486328, 1),
      "t" : NumberLong(1)
    },
    "lastCommittedWallTime" : ISODate("2023-02-04T04:52:08.443Z"),
    "readConcernMajorityOpTime" : {
      "ts" : Timestamp(1675486328, 1),
      "t" : NumberLong(1)
    },
    "appliedOpTime" : {
      "ts" : Timestamp(1675486328, 1),
      "t" : NumberLong(1)
    },
    "durableOpTime" : {
      "ts" : Timestamp(1675486328, 1),
      "t" : NumberLong(1)
    },
    "lastAppliedWallTime" : ISODate("2023-02-04T04:52:08.443Z"),
    "lastDurableWallTime" : ISODate("2023-02-04T04:52:08.443Z")
  },
  "lastStableRecoveryTimestamp" : Timestamp(1675486292, 1),
  "electionCandidateMetrics" : {
    "lastElectionReason" : "electionTimeout",
    "lastElectionDate" : ISODate("2023-02-04T04:24:38.141Z"),
    "electionTerm" : NumberLong(1),
    "lastCommittedOpTimeAtElection" : {
      "ts" : Timestamp(1675484677, 1),
      "t" : NumberLong(-1)
    },
    "lastSeenOpTimeAtElection" : {
      "ts" : Timestamp(1675484677, 1),
      "t" : NumberLong(-1)
    },
    "numVotesNeeded" : 1,
    "priorityAtElection" : 1,
    "electionTimeoutMillis" : NumberLong(10000),
    "newTermStartDate" : ISODate("2023-02-04T04:24:38.243Z"),
    "wMajorityWriteAvailabilityDate" : ISODate("2023-02-04T04:24:38.285Z")
  },
  "members" : [
    {
      "_id" : 0,
      "name" : "mongodba:27017",
      "health" : 1,
      "state" : 1,
      "stateStr" : "PRIMARY",
      "uptime" : 1932,
      "optime" : {
        "ts" : Timestamp(1675486328, 1),
        "t" : NumberLong(1)
      },
      "optimeDate" : ISODate("2023-02-04T04:52:08Z"),
      "lastAppliedWallTime" : ISODate("2023-02-04T04:52:08.443Z"),
      "lastDurableWallTime" : ISODate("2023-02-04T04:52:08.443Z"),
      "syncSourceHost" : "",
      "syncSourceId" : -1,
      "infoMessage" : "",
      "electionTime" : Timestamp(1675484678, 1),
      "electionDate" : ISODate("2023-02-04T04:24:38Z"),
      "configVersion" : 4,
      "configTerm" : 1,
      "self" : true,
      "lastHeartbeatMessage" : ""
    },
    {
      "_id" : 1,
      "name" : "172.17.187.80:37019",
      "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"),
      "lastAppliedWallTime" : ISODate("1970-01-01T00:00:00Z"),
      "lastDurableWallTime" : ISODate("1970-01-01T00:00:00Z"),
      "lastHeartbeat" : ISODate("2023-02-04T04:52:09.266Z"),
      "lastHeartbeatRecv" : ISODate("1970-01-01T00:00:00Z"),
      "pingMs" : NumberLong(0),
      "lastHeartbeatMessage" : "Error connecting to 172.17.187.80:37019 :: caused by :: No route to host",
      "syncSourceHost" : "",
      "syncSourceId" : -1,
      "infoMessage" : "",
      "configVersion" : -1,
      "configTerm" : -1
    },
    {
      "_id" : 2,
      "name" : "mongodbb:27017",
      "health" : 1,
      "state" : 2,
      "stateStr" : "SECONDARY",
      "uptime" : 50,
      "optime" : {
        "ts" : Timestamp(1675486328, 1),
        "t" : NumberLong(1)
      },
      "optimeDurable" : {
        "ts" : Timestamp(1675486328, 1),
        "t" : NumberLong(1)
      },
      "optimeDate" : ISODate("2023-02-04T04:52:08Z"),
      "optimeDurableDate" : ISODate("2023-02-04T04:52:08Z"),
      "lastAppliedWallTime" : ISODate("2023-02-04T04:52:08.443Z"),
      "lastDurableWallTime" : ISODate("2023-02-04T04:52:08.443Z"),
      "lastHeartbeat" : ISODate("2023-02-04T04:52:10.446Z"),
      "lastHeartbeatRecv" : ISODate("2023-02-04T04:52:11.046Z"),
      "pingMs" : NumberLong(0),
      "lastHeartbeatMessage" : "",
      "syncSourceHost" : "mongodba:27017",
      "syncSourceId" : 0,
      "infoMessage" : "",
      "configVersion" : 4,
      "configTerm" : 1
    }
  ],
  "ok" : 1,
  "$clusterTime" : {
    "clusterTime" : Timestamp(1675486328, 1),
    "signature" : {
      "hash" : BinData(0,"qdS8hsuZZ6jdGUDjvFV2bKIFxkE="),
      "keyId" : NumberLong("7196151896959090692")
    }
  },
  "operationTime" : Timestamp(1675486328, 1)
}

四、從節(jié)點(diǎn)跟主節(jié)點(diǎn)進(jìn)行同步

??容器重啟一般要重新進(jìn)行同步

use study
# 登錄從節(jié)點(diǎn), 執(zhí)行同步語句
db.auth("user", "123456")

# 同步。低版本的命令: rs.slaveOk()
rs.secondaryOk()

show dbs

五、測試

# 進(jìn)入主節(jié)點(diǎn)執(zhí)行
docker exec -it <容器ID> bash
cd /usr/bin

mongo --host mongodba

db.auth("user","123456")

use study

db.myt.insertMany([
  {xm:"李四",age:24},
  {xm:"王五",age:25},
  {xm:"趙六",age:26},
  {xm:"李四",age:34},
  {xm:"王五",age:35},
  {xm:"趙六",age:36}
])

db.myt.insertMany([
  {xm:"孫七",age:44},
])


# 登錄從節(jié)點(diǎn)
use study
db.auth("user", "123456")
use study
db.myt.find()

補(bǔ)充:重新加載集群配置,重新生成集群節(jié)點(diǎn)

var cfg ={"_id":"heroMongoCluster",
  "protocolVersion" : 1,
  "members":[
    {"_id":1,"host":"172.17.187.80:37017","priority":10},
    {"_id":2,"host":"172.17.187.80:37018","priority":0},
    {"_id":3,"host":"172.17.187.80:37019","priority":5},
    {"_id":4,"host":"172.17.187.80:37020","arbiterOnly":true}
  ]
};


// 重新裝載配置,并重新生成集群節(jié)點(diǎn)。
rs.reconfig(cfg)

補(bǔ)充:添加仲裁節(jié)點(diǎn)

rs.addArb("172.17.187.80:37020")

附:復(fù)制集成員的配置參數(shù)

image.png
文章來源地址http://www.zghlxwxcb.cn/news/detail-472387.html

附:關(guān)于常見角色

內(nèi)置角色

  • read:允許用戶讀取指定數(shù)據(jù)庫
  • readWrite:允許用戶讀寫指定數(shù)據(jù)庫
  • dbAdmin:允許用戶在指定數(shù)據(jù)庫中執(zhí)行管理函數(shù),如索引創(chuàng)建、刪除,查看統(tǒng)計(jì)或訪問
  • userAdmin:允許用戶向system.users集合寫入,可以找指定數(shù)據(jù)庫里創(chuàng)建、刪除和管理用戶
  • clusterAdmin:只在admin數(shù)據(jù)庫中可用,賦予用戶所有分片和復(fù)制集相關(guān)函數(shù)的管理權(quán)限
  • readAnyDatabase:只在admin數(shù)據(jù)庫中可用,賦予用戶所有數(shù)據(jù)庫的讀權(quán)限
  • readWriteAnyDatabase:只在admin數(shù)據(jù)庫中可用,賦予用戶所有數(shù)據(jù)庫的讀寫權(quán)限
  • userAdminAnyDatabase:只在admin數(shù)據(jù)庫中可用,賦予用戶所有數(shù)據(jù)庫的userAdmin權(quán)限
  • dbAdminAnyDatabase:只在admin數(shù)據(jù)庫中可用,賦予用戶所有數(shù)據(jù)庫的dbAdmin權(quán)限
  • root:只在admin數(shù)據(jù)庫中可用。超級賬號,超級權(quán)限
  • dbOwner:庫擁有者權(quán)限,即readWrite、dbAdmin、userAdmin角色的合體

角色分類

  • 數(shù)據(jù)庫用戶角色:read、readWrite
  • 數(shù)據(jù)庫管理角色:dbAdmin、dbOwner、userAdmin
  • 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
  • 備份恢復(fù)角色:backup、restore;
  • 所有數(shù)據(jù)庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
  • 超級用戶角色:root
  • 這里還有幾個(gè)角色間接或直接提供了系統(tǒng)超級用戶的訪問(dbOwner 、userAdmin、userAdminAnyDatabase)

到了這里,關(guān)于基于Docker的MongoDB集群搭建的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Zookeeper之基于Docker搭建集群

    Zookeeper之基于Docker搭建集群

    搭建ZK分布式模式,由2n+1臺服務(wù)器組成。 搭建集群有兩種方式: 單機(jī)多服務(wù): 不同服務(wù)使用不同的配置文件,配置不同的端口號等。 使用同一個(gè)配置不同的server.id,即IP相同,但是端口不同。 多機(jī)多服務(wù):各自配置zoo.cfg文件,互相加入各自的服務(wù)器列表。 Loader 主節(jié)點(diǎn) :

    2024年02月04日
    瀏覽(20)
  • 【RabbitMQ】RabbitMQ 集群的搭建 —— 基于 Docker 搭建 RabbitMQ 的普通集群,鏡像集群以及仲裁隊(duì)列

    【RabbitMQ】RabbitMQ 集群的搭建 —— 基于 Docker 搭建 RabbitMQ 的普通集群,鏡像集群以及仲裁隊(duì)列

    在RabbitMQ中,有不同的集群模式,包括普通模式、鏡像模式和仲裁隊(duì)列。每種模式具有不同的特點(diǎn)和應(yīng)用場景。 普通集群,也稱為標(biāo)準(zhǔn)集群(classic cluster),具備以下特征: 在集群的各個(gè)節(jié)點(diǎn)之間共享部分?jǐn)?shù)據(jù),包括交換機(jī)和隊(duì)列的元信息,但不包括隊(duì)列中的消息。 當(dāng)訪問

    2024年02月04日
    瀏覽(22)
  • MongoDB分片集群搭建

    MongoDB 有三種集群架構(gòu)模式,分別為主從復(fù)制(Master-Slaver)、副本集(Replica Set)和分片(Sharding)模式。 Master-Slaver 是一種主從復(fù)制的模式,目前已經(jīng)不推薦使用 ReplicaSet模式取代了Master-Slaver模式,是一種互為主從的關(guān)系。Replica Set 將數(shù)據(jù)復(fù)制多份保存,不同服務(wù)器保存同一

    2024年01月19日
    瀏覽(51)
  • mongodb集群搭建

    mongodb集群搭建

    下載mongodb-linux-x86_64-rhel70-5.0.18 vi mongodb.conf 導(dǎo)入環(huán)境變量中 以上操作在每個(gè)機(jī)器都做一遍 之后選擇一個(gè)作為主節(jié)點(diǎn),啟動(dòng)mongodb 啟動(dòng): mongod -f ../conf/mongodb.conf --replSet \\\"grap\\\" 每個(gè)機(jī)器都做一邊,最后連接一臺機(jī)器 Mongo進(jìn)去數(shù)據(jù)庫中,(注意一定不要先執(zhí)行rs.initiate(),否則后

    2024年02月16日
    瀏覽(24)
  • 基于Docker搭建多主多從K8s高可用集群

    基于Docker搭建多主多從K8s高可用集群

    主機(jī)規(guī)劃 master - 最低兩核心,否則集群初始化失敗 主機(jī)名 IP地址 角色 操作系統(tǒng) 硬件配置 ansible 10.62.158.200 同步工具節(jié)點(diǎn) CentOS 7 2 Core/4G Memory master01 10.62.158.201 管理節(jié)點(diǎn)01 CentOS 7 2 Core/4G Memory master02 10.62.158.202 管理節(jié)點(diǎn)02 CentOS 7 2 Core/4G Memory master03 10.62.158.203 管理節(jié)點(diǎn)03 CentOS

    2024年04月22日
    瀏覽(26)
  • MongoDB 7.0 搭建 Sharding 副本集群

    本文是在ubuntu 22.03 系統(tǒng)版本上部署的,最低支持mongodb-6.0.4以上,所以這里安裝mongodb7.0 安裝方式有多種,本人是使用的第一種方式,時(shí)間也就20分鐘吧,能接受。 S1.導(dǎo)入 MongoDB GPG 公鑰,用于驗(yàn)證下載的軟件包的完整性,使用以下命令導(dǎo)入公鑰 具體需要導(dǎo)入的版本號,可以去

    2024年02月19日
    瀏覽(21)
  • Mongodb Replica Sets 副本集群搭建

    Mongodb Replica Sets 副本集群搭建

    Replica Sets 復(fù)制集搭建 MongoDB 有三種集群架構(gòu)模式,分別為主從復(fù)制(Master-Slaver)、副本集(Replica Set)和分片(Sharding)模式。 Master-Slaver 是一種主從復(fù)制的模式,目前已經(jīng)不推薦使用 ReplicaSet模式取代了Master-Slaver模式,是一種互為主從的關(guān)系。Replica Set 將數(shù)據(jù)復(fù)制多份保存

    2024年01月22日
    瀏覽(24)
  • 使用 Docker 部署高可用 MongoDB 分片集群

    使用 Docker 部署高可用 MongoDB 分片集群

    mongodb 集群搭建的方式有三種: 主從備份(Master - Slave)模式,或者叫主從復(fù)制模式。 副本集(Replica Set)模式。 分片(Sharding)模式。 其中,第一種方式基本沒什么意義,官方也不推薦這種方式搭建。另外兩種分別就是副本集和分片的方式。今天介紹副本集的方式搭建 mo

    2024年02月06日
    瀏覽(19)
  • 【MongoDB】集群搭建實(shí)戰(zhàn) | 副本集 Replica-Set | 分片集群 Shard-Cluster | 安全認(rèn)證

    【MongoDB】集群搭建實(shí)戰(zhàn) | 副本集 Replica-Set | 分片集群 Shard-Cluster | 安全認(rèn)證

    副本集 MongoDB副本集(Replica Set)是一組維護(hù)相同數(shù)據(jù)集的 MongoDB 實(shí)例,它可以提供數(shù)據(jù)的冗余和高可用性。 副本集由一個(gè)主節(jié)點(diǎn)(Primary)和多個(gè)從節(jié)點(diǎn)(Secondary)組成。 客戶端所有寫操作都會(huì)發(fā)送到主節(jié)點(diǎn),主節(jié)點(diǎn)會(huì)記錄oplog,然后將寫操作同步到從節(jié)點(diǎn)。 從節(jié)點(diǎn)可以進(jìn)行

    2024年02月05日
    瀏覽(24)
  • 使用docker搭建mongodb

    使用 Docker CLI 搭建 MongoDB 1. 運(yùn)行 MongoDB 容器 首先,我們使用以下命令來啟動(dòng)一個(gè) MongoDB 容器: 參數(shù)解釋: -itd : 這三個(gè)參數(shù)通常一起使用, i 表示交互式模式, t 分配一個(gè)偽終端, d 表示后臺運(yùn)行。 --name mongodb_comm : 為容器指定一個(gè)名字 mongodb_comm ,方便后續(xù)的操作和管理。

    2024年03月18日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包