レプリカ セットのシャードを使用して MongoDB クラスターを構築しており、最初のレプリカ セットのセットアップと 3 つの構成サーバーを (すべて Linux サーバー上で) 実行し、3 つの構成サーバーを指す mongos インスタンスを実行していますが、mongos インスタンスに接続するときにmongo シェル経由でアプリケーション サーバー (Windows Server 2012 Standard x64 上) に接続し、ドキュメントに従って sh.addShard() コマンドを発行すると、次の応答が返されます。
> sh.addShard("rs1/xxx:xxx")
{
"note" : "not authorized for command: addShard on database admin",
"ok" : 0,
"errmsg" : "unauthorized"
}
私が間違っていることを誰かが知っていますか?セキュリティのためにキーファイルを使用して、すべての Mongo インスタンスを実行しています。キーファイルは、これらのドキュメントに従って Windows と互換性のあるものです。