Docs Menu
Docs Home
/ /
MongoDB CLI
/

クラスター構成ファイル

項目一覧

  • Overview
  • 構成プロパティ
  • サンプル構成ファイル

mongocliコマンドには、 MongoDB Cloud ManagerまたはMongoDB Ops Managerクラスターを作成または更新するためのクラスター構成設定が必要です。 構成プロパティは、 .yamlまたは.jsonファイルを介して提供できます。 以下のセクションでは、クラスターの作成または更新に必要な構成プロパティと、コピーして変更できるサンプル構成ファイルについて説明します。

次のセクションには、次のものが含まれます。

  • クラスター全体の構成プロパティ

  • レプリカセット ノード構成プロパティ

  • シャーディングされたクラスター構成プロパティ

MongoDB Cloud ManagerまたはMongoDB Ops Managerクラスターを作成または更新するための構成ファイルには、次のクラスター全体の設定が含まれている必要があります。

フィールド
タイプ
説明
name
string
クラスターの名前。
version
string
配置するmongodプロセスのバージョン。
featureCompatibilityVersion
string
processes
オブジェクトの配列
レプリカ セットに必須です。 各mongodプロセスの 設定 を含むオブジェクトの配列。 各mongodにはレプリカセット メンバー設定があります。
shards
オブジェクトの配列
シャーディングされたクラスターに必要です。 各シャードの 設定を含むオブジェクトの配列。
config
オブジェクト
シャーディングされたクラスターに必要です。 コンフィギュレーションサーバーのレプリカセットを含むオブジェクト。
mongos
オブジェクトの配列
シャーディングされたクラスターに必要です。 各mongosインスタンスの 設定を含むオブジェクトの配列。

MongoDB Cloud ManagerまたはMongoDB Ops Managerクラスターを作成または更新するための構成ファイルには、各レプリカセット ノードに対して次の設定を含めることができます。

フィールド
タイプ
説明
必須
auditLogDestination
string

を設定すると監査が有効になり、すべての監査イベントが送信される場所を指定します。 MongoDB CLI は、次の値を受け入れます。

  • syslog

    監査イベントを JSON 形式で syslog に出力します。

  • console

    監査イベントを JSON 形式で stdout に出力します。

  • file

    監査イベントを、 auditLogFormat設定で指定された形式で、 auditLogPath設定で指定されたファイルに出力します。

この設定は、 auditLog.d destination構成ファイル オプションに対応します。

no
auditLogFilter
string

どのイベントが監査されるかをフィルター処理する設定。 フィルターは、指定したクエリに一致するように結果を制限します。

フィルターの作成の詳細については、「監査フィルターの構成 」を参照してください。

この設定は、 auditLog.filter構成ファイル オプションに対応します。

no
auditLogFormat
string

auditLogDestinationfileに設定されている場合の監査用出力ファイルの形式です。

MongoDB CLI は、次の値を受け入れます。

  • JSON

    監査イベントを JSON 形式で、 auditLogPath設定で指定されたファイルに出力します。

  • BSON

    監査イベントを BSON バイナリ形式で、 auditLogPath設定で指定されたファイルに出力します。

この設定は、 auditLog.format構成ファイル オプションに対応します。

no
auditLogPath
string

auditLogDestinationの値がfileの場合の監査用の出力ファイル。 auditLogPathオプションには、絶対パス名または相対パス名のいずれかを指定できます。

この設定は、 auditLog.path構成ファイル オプションに対応します。

no
bindIp
string

mongosまたはmongodがクライアント接続をリッスンするホスト名、IP アドレス、Unix ドメイン ソケットの完全なパスのすべてまたはいずれか。 mongosまたはmongodは任意のインターフェースにバインドできます。 複数のアドレスにバインドするには、値をコンマで区切ったリストを入力します。

この設定は、 net.bindIp構成ファイル オプションに対応します。

no
bindIpAll
ブール値

mongos } インスタンスまたはmongodインスタンスがすべての IPv 4アドレス(たとえば、 0.0.0.0 )にバインドされているかどうかを示すフラグ。 ipv6trueに設定されている場合、 bindIpAllは IPv 6アドレス(たとえば、 :: )にもバインドされます。 MongoDB CLI は、 trueまたはfalseの次の値を受け入れます。

この設定は、 net.bindIpAll構成ファイル オプションに対応します。

no
buildIndexes
ブール値

インデックスをビルドするようmongodに指示するかどうかを示すフラグ。 MongoDB CLI は、 trueまたはfalseの次の値を受け入れます。

この設定は、 buildIndexesレプリカセット 構成オプションに対応します。

no
dbPath
string
mongodインスタンスがデータを保存するディレクトリ。 これは配置後に変更することはできません。
はい
delay
整数

このノードがプライマリ ノードより遅れる秒数。

この設定は、 slaveDelayレプリカセット 構成オプションに対応します。

no
directoryPerDB
ブール値

MongoDB が各データベースのデータを保存するために個別のディレクトリを使用するかどうかを示すフラグ。 ディレクトリはstorage.dbPathディレクトリの下にあり、各サブディレクトリ名はデータベース名に対応しています。

デフォルトでは、 directoryPerDBfalse です。

この設定は、 storage.directoryPerDB mongodレプリカセット構成オプションに対応します。

no
enableMajorityReadConcern
ブール値

読み取り保証 (read concern "majority"を有効にするかどうかを示すフラグ。 有効にすると、読み取り保証"majority"は、読み取られたデータが、マルチドキュメントトランザクションに関連付けられていない読み取り操作について、レプリカセットのノードの大多数によって確認済みであることを保証します。

デフォルトでは、 enableMajorityReadConcerntrue です。

この設定は、 replication.enableMajorityReadConcern レプリカセット構成オプションの値に応じてエラーを発生させるか、nil を返します。

no
hostname
string
レプリカセットに追加するホストの名前。 これは、 Ops Managermongodプロセスを配置するホストです。
はい
inMemory.engineConfig. inMemorySizeGB
float

インメモリ ストレージエンジンデータ(インデックス、 mongodがレプリカセットの一部である場合の oplog、レプリカセット、シャーディングされたクラスターのメタデータなど)に割り当てるメモリの最大量。

値の範囲は256 MB から10 TB です。 デフォルトで、インメモリ ストレージエンジンは物理RAMの 50% からGBを引いた量を使用します。

MongoDB Enterprise でのみ使用できます。

この設定は、 inMemorySizeGB mongodレプリカセット構成オプションに対応します。

no
ipv6
ブール値

配置が IPv6をサポートしているかどうかを示すフラグ。 MongoDB CLI は、 trueまたはfalseの次の値を受け入れます。

この設定は、 net.IPv 6構成ファイル オプションに対応します。

no
logDestination
string

MongoDB がすべてのログ出力を送信する宛先。 MongoDB CLI は、 fileまたはsyslogの次の値を受け入れます。 fileを指定する場合は、 logPathも指定する必要があります。

logDestinationを指定しない場合、MongoDB はすべてのログ出力を標準出力に送信します。

この設定は、 systemLog.d destination構成ファイル オプションに対応します。

no
logPath
string
ホスト上のmongodプロセスのログファイルの場所と名前。
はい
oplogSizeMB
integer

レプリケーションoplogの最大サイズ(メガバイト単位)。

この設定は、 replication.oplogSizeMBレプリカセット 構成オプションに対応します。

no
port
integer
レプリカセット ノードのポート。 mongodプロセスは、指定されたポートへの排他的アクセス権を持つ必要があります。
はい
priority
integer

選挙中のレプリカセット ノードの優先順位。 値は次のとおりです。

  • 0

  • 1

投票権のないノードの優先順位は0である必要があります。 優先順位が 0 のレプリカセット ノードはプライマリになることができず、選挙をtriggerできません。

はい
tls.CAFile
string

.pem 証明機関からのルート証明書チェーンを含む ファイル。 相対パスまたは絶対パスを使用して、 .pemファイルのファイル名を指定します。

この設定は、 net.tls.CAFile mongodレプリカセット 構成オプションに対応します。

no
tls. certificateKeyFile
string

.pem TLS 証明書とキーの両方を含む ファイル。

tls.certificateKeyFiletls.certificateSelector は相互に排他的です。指定できるのは 1 つだけです。

この設定は、 net.tls.CertificateKeyFile mongodレプリカセット構成オプション

no
tls. certificateKeyFilePassword
string

証明書キー ファイルの復号化パスワード。

証明書鍵ファイルが暗号化されている場合にのみ、 tls.certificateKeyFilePasswordオプションを使用します。 いずれの場合も、 mongosまたはmongodは、すべてのログとレポート出力からパスワードを削除します。

この設定は、 net.tls.CertificateKeyFilePassword mongodレプリカセット構成オプション

no
tls.certificateSelector
string

MongoDB Agent がオペレーティング システムの証明書ストアから、TLS/SSL に使用するのに合わせて証明書を選択するために使用する証明書のプロパティ。

MongoDB CLI は、次のキーと値のマッピングのいずれかをtls.certificateSelectorの引数として受け入れます。

キー
値の型
説明
subject
ASCII 文字列
証明書のサブジェクト名またはコモンネーム。
thumbprint
hex 文字列

SHA-1 ダイジェストによって公開キーを識別するために使用される、16進数で表現されるバイト シーケンス。

thumbprint は、fingerprint と呼ばれることもあります。

tls.certificateKeyFiletls.certificateSelector は相互に排他的です。指定できるのは 1 つだけです。

この設定は、 net.tls.CertificateSelector mongodレプリカセット構成オプション

no
tls. clusterCertificateSelector
string

MongoDB Agent がオペレーティング システムの証明書ストアから内部 x に使用するのに一致する証明書を選択するために使用する証明書プロパティ。 509メンバーシップ認証。

MongoDB CLI は、次のキーと値のマッピングのいずれかをtls.clusterCertificateSelectorの引数として受け入れます。

キー
値の型
説明
subject
ASCII 文字列
証明書のサブジェクト名またはコモンネーム。
thumbprint
hex 文字列

SHA-1 ダイジェストによって公開キーを識別するために使用される、16進数で表現されるバイト シーケンス。

thumbprint は、fingerprint と呼ばれることもあります。

tls.clusterCertificateSelectortls.clusterFile は相互に排他的です。指定できるのは 1 つだけです。

この設定は、 net.tls.clusterCertificateSelectorに対応します。 mongodレプリカセット構成オプション

no
tls.clusterFile
string

.pem x を含む ファイル。クラスターまたはレプリカセットのメンバーシップ認証用の509証明書キー ファイル。

tls.clusterCertificateSelectortls.clusterFile は相互に排他的です。指定できるのは 1 つだけです。

この設定は、 net.tls.clusterFile mongodレプリカセット 構成オプションに対応します。

no
tls.clusterPassword
string

tls.clusterFileで指定された x.509 証明書キー ファイルの復号化パスワード。

証明書鍵ファイルが暗号化されている場合にのみ、 tls.clusterPasswordオプションを使用します。 いずれの場合も、 mongosまたはmongodは、すべてのログとレポート出力からパスワードを削除します。

この設定は、 net.tls.clusterPassword mongodレプリカセット構成オプション

no
tls.CRLFile
string

証明書失効リストを含む .pem ファイル。相対パスまたは絶対パスを使用して .pem ファイルのファイル名を指定します。

この設定は、 net.tls.CRLFile mongodレプリカセット構成オプションに対応します。

no
tls.disabledProtocols
string

TLS で実行されている MongoDB サーバーが着信接続を拒否するプロトコルまたはバージョン。

この設定は、 net.tls.disabledProtocols mongodレプリカセット構成オプション

no
tls.FIPSMode
string

mongosまたはmongodの TLS ライブラリの FIPS モードの使用を有効または無効にします。 このオプションを使用するには、システムに FIPS 準拠のライブラリが必要です。

この設定は、 net.tls.FIPSMode mongodレプリカセット 構成オプションに対応します。

no
tls.mode
string

すべてのネットワーク接続に対して TLS を有効にします。 MongoDB CLI は、この設定に対して次の引数を受け入れます。

説明
disabled
サーバーは TLS を使用しません。
allowTLS
サーバー間の接続では TLS は使用されません。着信接続の場合、サーバーでは TLS と非 TLS のいずれも受け付けます。
preferTLS
サーバー間の接続では TLS が使用されます。着信接続の場合、サーバーでは TLS と非 TLS のいずれも受け付けます。
requireTLS
サーバーは TLS 暗号化接続のみを使用し、受け入れます。

この設定は、 net.tls.mode mongodレプリカセット構成オプションに対応します。

no
tls.PEMKeyFile
string

.pem TLS 証明書とキーの両方を含む ファイル。

重要:この設定は非推奨です。 代わりにtls.certificateKeyFileを使用してください。

この設定は、 net.ssl.PEMKeyFile mongodレプリカセット 構成オプションに対応します。

no
votes
integer

レプリカセットが選挙で投票するかどうかを示す数値。 MongoDB CLI は、次の値を受け入れます。

  • 0 レプリカセット ノードが投票できない場合

  • 1 レプリカセット ノードが投票できる場合

votesについて詳しくは、「投票 」を参照してください。

はい
wiredTiger.engineConfig. cacheSizeGB
float

WiredTiger がすべてのデータに使用する内部キャッシュの最大サイズ。

値の範囲は0.25 GB から10000 GB です。 デフォルトでは、WiredTiger の内部キャッシュ サイズは次のいずれか大きい方です。

  • (RAM-1 GB)の50%、または

  • 256 MB.

WiredTiger 内部キャッシュ サイズがデフォルト値より大きくならないようにしてください。

この設定は、 journalCompressor mongodレプリカセット構成オプションに対応します。

no
wiredTiger.engineConfig. journalCompressor
string

WiredTiger ジャーナリング データを圧縮するのに使用する圧縮タイプ。

利用可能なコンプレッサーは次のとおりです。

  • none

  • Snappy

  • zlib

  • zstd (MongoDB 4.2以降を実行しているクラスターで利用可能)

デフォルトでは、WiredTiger は snappy を使用します。

この設定は、 journalCompressor mongodレプリカセット構成オプションに対応します。

no
wiredTiger.engineConfig. directoryForIndexes
ブール値

mongodがインデックスとコレクションをデータの下の個別のサブディレクトリに保存するかどうかを示すフラグ(つまり storage.dbPath )ディレクトリ。 具体的には、 mongodはインデックスをindexという名前のサブディレクトリに保存し、コレクション データをcollectionという名前のサブディレクトリに保存します。

シンボリック リンクを使用すると、インデックスに別の場所を指定できます。 具体的には、 mongodインスタンスが実行されていない場合は、 indexサブディレクトリを新しい宛先に移動し、新しい宛先へのデータディレクトリの下にindexという名前のシンボリック リンクを作成します。

デフォルトでは、 wiredTiger.engineConfig. directoryForIndexesfalseです。

この設定は、 directoryForIndexes mongodレプリカセット構成オプションに対応します。

no
wiredTiger.engineConfig. maxCacheOverflowFileSizeGB
float

この設定は、MongoDB バージョン を実行しているクラスターでのみサポートされています。

  • 4.0.12 から 4.0.x

  • 4.2.1 から 4.2.x

WiredTigerLAS.wtという名前の「ロケールサイド(またはキャッシュ オーバーフロー)テーブル」の最大サイズ(GB 単位)。 MongoDB バージョン 4.4 以降、 ファイルは存在しなくなりました。

設定では、次の値を受け入れることができます。

説明
0
デフォルト値。 0に設定されている場合、ファイルサイズは制限されません。
数値 >= 0.1
最大サイズ(GB 単位)。 WiredTigerLAS.wtファイルがこのサイズを超えると、 mongodは致命的なアサーションで終了します。 WiredTigerLAS.wtファイルをクリアし、 mongodを再起動できます。

実行時に最大サイズを変更するには、 wiredTigerMaxCacheOverflowSizeGBパラメーターを使用します。

この設定は、 maxCacheOverflowSizeGB mongodレプリカセット構成オプションに対応します。

no
wiredTiger.collectionConfig. blockCompressor
string

コレクション データのデフォルトの圧縮。 これは、コレクションを作成する際、コレクションごとに上書きできます。

利用可能なコンプレッサーは次のとおりです。

  • none

  • Snappy

  • zlib

  • zstd (MongoDB 4.2以降を実行しているクラスターで利用可能)

デフォルトでは、コンプレッサーはsnappy です。

この設定は、新しく作成されたすべてのコレクションに影響します。 既存の MongoDB デプロイでこの設定の値を変更すると、新しいコレクションのすべてで指定されたコンプレッサーが使用されます。 既存のコレクションは、作成時に指定されたコンプレッサー、またはその時点でのデフォルトのコンプレッサーを引き続き使用します。

この設定は、 blockCompressor mongodレプリカセット構成オプションに対応します。

no
wiredTiger.indexConfig. prefixCompression
ブール値

インデックスデータの接頭辞圧縮を有効にするか無効にするかを示すフラグ。

trueの場合、インデックス データの接頭辞圧縮が有効になります。 falseの場合、接頭辞圧縮は無効になります。

デフォルトでは、 wiredTiger.indexConfig.prefixCompressiontrueです。

この設定は作成されたすべてのインデックスに影響します。 既存の MongoDB の配置でこの設定の値を変更すると、すべての新しいインデックスで接頭辞圧縮が使用されます。 既存のインデックスは影響を受けません。

この設定は、 prefixCompression mongodレプリカセット構成オプションに対応します。

no

MongoDB Cloud ManagerまたはMongoDB Ops Managerクラスターを作成または更新するための構成ファイルには、各シャードに対して次の設定を含めることができます。

フィールド
タイプ
説明
必須
name
string
シャードの の名前。
はい
processes
オブジェクトの配列
mongodプロセスの 設定 を含むオブジェクトの配列。 各mongodにはレプリカセット メンバー設定があります。
はい
name: "myCluster"
version: 4.2.2
featureCompatibilityVersion: 4.2
processes:
- hostname: host0
dbPath: /data/cluster_2/rs1
logPath: /data/cluster_2/rs1/mongodb.log
priority: 1
votes: 1
port: 29010
- hostname: host1
dbPath: /data/cluster_2/rs2
logPath: /data/cluster_2/rs2/mongodb.log
priority: 1
votes: 1
port: 29020
- hostname: host2
dbPath: /data/cluster_2/rs3
logPath: /data/cluster_2/rs3/mongodb.log
priority: 1
votes: 1
port: 29030
{
"name": "myCluster",
"version": "4.2.2",
"featureCompatibilityVersion": "4.2",
"processes": [
{
"hostname": "host0",
"dbPath": "/data/cluster_3/rs1",
"logPath": "/data/cluster_3/rs1/mongodb.log",
"priority": 1,
"votes": 1,
"port": 30010
},
{
"hostname": "host1",
"dbPath": "/data/cluster_3/rs2",
"logPath": "/data/cluster_3/rs2/mongodb.log",
"priority": 1,
"votes": 1,
"port": 30020
},
{
"hostname": "host2",
"dbPath": "/data/cluster_3/rs3",
"logPath": "/data/cluster_3/rs3/mongodb.log",
"priority": 1,
"votes": 1,
"port": 30030
}
]
}
{
"name": "myShardedCluster",
"version": "4.2.2",
"featureCompatibilityVersion": "4.2",
"shards": [
{
"name": "myShard_0",
"processes": [
{
"dbPath": "/data/myCluster/myShard_0/27000",
"hostname": "host0.example",
"logPath": "/data/myCluster/myShard_0/27000/mongodb.log",
"port": 27000,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_0/27001",
"hostname": "host1.example",
"logPath": "/data/myCluster/myShard_0/27001/mongodb.log",
"port": 27001,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_0/27002",
"hostname": "host2.example",
"logPath": "/data/myCluster/myShard_0/27002/mongodb.log",
"port": 27002,
"version": "4.2.8-ent",
"votes": 1
}
]
},
{
"name": "myShard_1",
"processes": [
{
"dbPath": "/data/myCluster/myShard_1/28000",
"hostname": "host3.example",
"logPath": "/data/myCluster/myShard_1/28000/mongodb.log",
"port": 28000,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_1/28001",
"hostname": "host4.example",
"logPath": "/data/myCluster/myShard_1/28001/mongodb.log",
"port": 28001,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_1/28002",
"hostname": "host5.example",
"logPath": "/data/myCluster/myShard_1/28002/mongodb.log",
"port": 28002,
"votes": 1
}
]
}
],
"config": {
"name": "configRS",
"processes": [
{
"dbPath": "/data/myCluster/configRS/29000",
"hostname": "host6.example",
"logPath": "/data/myCluster/configRS/29000/mongodb.log",
"port": 29000,
"votes": 1
},
{
"dbPath": "/data/myCluster/configRS/29001",
"hostname": "host7.example",
"logPath": "/data/myCluster/configRS/29001/mongodb.log",
"port": 29001,
"votes": 1
},
{
"dbPath": "/data/myCluster/configRS/29002",
"hostname": "host8.example",
"logPath": "/data/myCluster/configRS/29002/mongodb.log",
"port": 29002,
"votes": 1
}
]
},
"mongos": [
{
"hostname": "host9.example",
"logPath": "/data/myCluster/mongoses/27015/mongodb.log",
"port": 27015
}
]
}

戻る

参照