5.4. MongoDB 3.6 への移行

Red Hat Software Collections 3.2 は、rh-mongodb36 Software Collection から提供される MongoDB 3.6 でリリースされ、Red Hat Enterprise Linux 7 でのみ利用できます。
rh-mongodb36 Software Collection には、バイナリー、スクリプト、man ページなどのシステム全体のラッパーを提供するパッケージをインストールする rh-mongodb36-syspaths パッケージが含まれます。rh-mongodb36*-syspaths パッケージのインストール後に、rh-mongodb36* パッケージによって提供されるバイナリーおよびスクリプトが正しく動作するかを scl enable コマンドを使用して確認する必要はありません。syspaths の詳細は、Red Hat Software Collections Packaging Guide を参照してください。

5.4.1. MongoDB 3.4 と MongoDB 3.6 の主な相違点

一般的な変更点

rh-mongodb36 Software Collection では、以下のような重要な変更点が加えられています。
  • NUMA (Non-Uniform Access Memory) ハードウェアでは、numactl コマンドを使用して起動するように systemd サービスを設定することができます。アップストリームの推奨事項 を参照してください。numactl コマンドで MongoDB を使用するには、numactl RPM パッケージをインストールし、/etc/opt/rh/rh-mongodb36/sysconfig/mongod および /etc/opt/rh/rh-mongodb36/sysconfig/mongos 設定ファイルを変更する必要があります。

互換性の変更点

MongoDB 3.6 には、さまざまなマイナーな変更が含まれており、MongoDB の以前のバージョンとの互換性に影響を与える可能性があります。
  • MongoDB バイナリーはデフォルトで localhost にバインドされるため、異なる IP アドレスでリッスンするように明示的に有効にする必要があります。これは、MongoDB Software Collections で配布される systemd サービスのデフォルト動作であることに注意してください。
  • MONGODB-CR 認証メカニズムが非推奨になりました。3.0 よりも前のバージョンの MongoDB で作成したユーザーの場合は、認証スキーマを SCRAM にアップグレードします。
  • HTTP インターフェイスおよび REST API が削除される
  • レプリカセットの Arbiter の優先順位は 0 に設定します。
  • master-slave レプリケーションが非推奨に
MongoDB 3.6 での詳細な互換性の変更点は、アップストリームのリリースノート を参照してください。

後方互換性のない機能

以下の MongoDB 3.6 機能は後方互換性がなく、featureCompatibilityVersion コマンドを使用してバージョンを 3.6 に設定する必要があります。
  • コレクションの UUID
  • $jsonSchema ドキュメント検証
  • ストリームの変更
  • チャンク対応のセカンダリー
  • バージョン 3.6 のクエリー機能を使用する定義、ドキュメントバリデーター、部分インデックスフィルターを表示する
  • セッションおよび再試行可能な書き込み
  • authenticationRestrictions のあるユーザーおよびロール
MongoDB 3.6 での後方互換性のない変更の詳細は、アップストリームのリリースノート を参照してください。