我想在Kubernetes上設置一個三節點的Mongo副本集。我的想法是啓動三個豆莢,每個豆莢都有Mongo,當豆莢開始時,它會自動設置副本集,所以我需要修改Mongo鏡像Dockerfile以在Mongo shell中執行一些命令。
但我堅持執行命令rs.initiate()
。如果我只是使用命令rs.initiate()
不帶參數它的工作原理,但添加參數時,則出現錯誤,如如何在Kubernetes上設置Mongo副本集?
rs.initiate({ "_id": "rs0", "members" : [ { "_id" : 0, "host" : "172.18.248.87:27017" } ]})
但執行莢,並使用與參數相同的命令時,它的工作原理。與命令rs.add()
相同的情況。如何解決這個問題?
Plus:在我的Dockerfile中,我使用mongo admin --port 27017 --eval "rs.initiate()"
來執行該命令。
謝謝。它工作,我終於解決了這個問題。 – henry