MongoDB Enterprise Edition を Ubuntu にインストール
項目一覧
Overview
このチュートリアルを使用して MongoDB 8.0をインストールします apt
パッケージ マネージャーを使用して、Ubuntu Linux の LTS(長期サポート)リリース上の Enterprise Edition 。
MongoDB Enterprise エディションは一部のプラットフォームで利用でき、セキュリティとモニタリングに関連するいくつかの機能のサポートが含まれています。
MongoDB バージョン
このチュートリアルでは、MongoDB 8.0 Enterprise Edition をインストールします。MongoDB Enterprise の別のバージョンをインストールするには、このページの左上隅にあるバージョンのドロップダウンメニューから、そのバージョンのドキュメントを選択します。
Considerations
プラットフォーム サポート
MongoDB 8.0 Enterprise Edition は、64 x86 _ アーキテクチャ上の次の ビット64 Ubuntu LTS(長期サポート)リリースをサポートしています。
24.04 LTS ("Noble")
22.04LTS("Jammy")
20.04 LTS(Focal)
MongoDB では、これらのプラットフォームの 64 ビット版のみをサポートしています。ホストが実行している Ubuntu リリースを確認するには、ホストのターミナルで次のコマンドを実行します。
cat /etc/lsb-release
MongoDB 8.0 Ubuntu 上の Enterprise Edition は、一部のプラットフォームでARM 64アーキテクチャもサポートしています。
詳しくは、「プラットフォーム サポート」を参照してください。
Ubuntu 16.04 POWER/PPC64LE をサポートする以前の MongoDB Enterprise バージョンの場合:
POWER 用 Ubuntu 16.04 のglibc
パッケージの古いバージョンに存在するロック解除のバグのため、MongoDB を実行する前に、 glibc
パッケージを少なくともglibc 2.23-0ubuntu5
にアップグレードする必要があります。 古いバージョンのglibc
パッケージを搭載したシステムでは、無作為メモリ破損が原因でデータベース サーバーのクラッシュや動作に問題が発生するため、MongoDB の本番環境への配置には適していません。
プロダクション ノート
MongoDB を本番環境に導入する前に、本番環境の MongoDB導入に関するパフォーマンス上の考慮事項と構成の推奨事項を示す 自己管理型配置のプロダクション ノート を検討してください。
MongoDB の公式パッケージ
Ubuntu システムに MongoDB Enterprise をインストールするには、MongoDB Inc. によって保守およびサポートされている公式のmongodb-enterprise
パッケージを使用します。 公式のmongodb-enterprise
パッケージには常に最新バージョンの MongoDB が含まれており、専用のリポジトリから入手できます。
重要
Ubuntu が提供する mongodb
パッケージは MongoDB Inc. によって管理されていないため、公式の mongodb-enterprise
パッケージと競合します。Ubuntu システムの mongodb
パッケージをすでにインストールしている場合は、これらの手順に入る前に、まず mongodb
パッケージをアンインストールする必要があります。
公式パッケージの完全なリストについては、「 MongoDB Enterprise エディション パッケージ」を参照してください。
MongoDB Enterprise Editionをインストールする
apt
パッケージ マネージャーを使用して MongoDB Enterprise エディションをインストールするには、次の手順に従います。
リストファイルを作成します。
Ubuntu のバージョンに合わせて /etc/apt/sources.list.d/mongodb-enterprise-8.0.list
のリスト ファイルを作成します。
Ubuntu 24.04 (Noble) のリストファイルを作成します。
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.com/apt/ubuntu noble/mongodb-enterprise/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-enterprise-8.0.list
Ubuntu 22.04 (Jammy)のリスト ファイルを作成します。
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.com/apt/ubuntu jammy/mongodb-enterprise/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-enterprise-8.0.list
Ubuntu 20.04 (Focal) のリストファイルを作成します。
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] http://repo.mongodb.com/apt/ubuntu focal/mongodb-enterprise/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-enterprise-8.0.list
MongoDB Enterprise Serverをインストールします。
MongoDB Enterprise Server の最新リリースをインストールするには、次のコマンドを実行します。
sudo apt-get install -y mongodb-enterprise
特定のリリースをインストールするには、次の例のように、各コンポーネント パッケージをバージョン番号とともに個別に指定する必要があります。
sudo apt-get install -y mongodb-enterprise=8.0.0 mongodb-enterprise-database=8.0.0 mongodb-enterprise-server=8.0.0 mongodb-mongosh mongodb-enterprise-mongos=8.0.0 mongodb-enterprise-tools=8.0.0
mongodb-enterprise=8.0.0
のみをインストールし、コンポーネント パッケージを含めない場合は、指定したバージョンに関係なく、各 MongoDB パッケージの最新バージョンがインストールされます。
使用可能な MongoDB のバージョンを任意に指定できますが、新しいバージョンが使用可能になると、 apt-get
はパッケージをアップグレードします。 意図しないアップグレードを防ぐには、パッケージを固定します。 MongoDB のバージョンを現在インストールされているバージョンに固定するには、次のコマンド シーケンスを実行します。
echo "mongodb-enterprise hold" | sudo dpkg --set-selections echo "mongodb-enterprise-server hold" | sudo dpkg --set-selections echo "mongodb-enterprise-database hold" | sudo dpkg --set-selections echo "mongodb-mongosh hold" | sudo dpkg --set-selections echo "mongodb-enterprise-mongos hold" | sudo dpkg --set-selections echo "mongodb-enterprise-tools hold" | sudo dpkg --set-selections
注意
システムの OpenSSL を使用する MongoDB Shell をインストールすることもできます。このバージョンの MongoDB Shell をインストールする前に、システムに OpenSSL がインストールされている必要があります。
最初に MongoDB Shell を削除しなくても、すべての MongoDB Enterprise パッケージと、システムの OpenSSL を使用する MongoDB Shell をインストールできます。以下に例を挙げます。
sudo apt-get install -y mongodb-enterprise mongodb-mongosh-shared-openssl11
次の例では、MongoDB Shell を削除し、システムの OpenSSL 1.1 を使用する MongoDB Shell をインストールしています。
sudo apt-get remove -y mongodb-mongosh && sudo apt-get install -y mongodb-mongosh-shared-openssl11
次の例では、MongoDB Shell を削除し、システムの OpenSSL 3 を使用する MongoDB Shell をインストールしています。
sudo apt-get remove -y mongodb-mongosh && sudo apt-get install -y mongodb-mongosh-shared-openssl3
インストールする MongoDB パッケージを選択することもできます。
次の例では、MongoDB Enterprise とツール、およびシステムの OpenSSL 1.1 を使用する MongoDB Shell をインストールします。
sudo apt-get install -y mongodb-enterprise-database mongodb-enterprise-tools mongodb-mongosh-shared-openssl11
次の例では、MongoDB Enterprise とツール、およびシステムの OpenSSL 3 を使用する MongoDB Shell をインストールしています。
sudo apt-get install -y mongodb-enterprise-database mongodb-enterprise-tools mongodb-mongosh-shared-openssl3
Ubuntu に MongoDB をインストール中に発生したエラーのトラブルシューティングについては、トラブルシューティング ガイドを参照してください。
MongoDB Enterprise Edition を実行する
デフォルトでは、MongoDB インスタンスは次のように保存されます。
データファイルの保存先:
/var/lib/mongodb
ログファイルの保存先:
/var/log/mongodb
パッケージ マネージャーを使用してインストールした場合、これらのデフォルト ディレクトリはインストール中に作成されます。
Tarball をダウンロードして手動でインストールした場合は、MongoDB を実行するユーザーに応じて mkdir -p <directory>
または sudo mkdir -p
<directory>
を使用してディレクトリを作成できます。(mkdir
と sudo
の詳細については、Linux のマニュアル ページを参照してください。)
デフォルトでは、MongoDB は mongodb
ユーザー アカウントを使用して実行されます。MongoDB プロセスを実行するユーザーを変更する場合は、/var/lib/mongodb
ディレクトリと /var/log/mongodb
ディレクトリへの権限も変更して、このユーザーにこれらのディレクトリへのアクセス権を付与する必要があります。
別のログファイル ディレクトリとデータファイル ディレクトリを指定するには、/etc/mongod.conf
の systemLog.path
と storage.dbPath
の設定を編集します。MongoDB を実行するユーザーがこれらのディレクトリにアクセスできるようにします。
ほとんどの Unix 系オペレーティング システムでは、プロセスが使用できるシステム リソースが制限されています。 これらの制限は MongoDB の操作に悪影響を及ぼす可能性があるため、調整する必要があります。 プラットフォームに推奨される設定については、 「 自己管理型配置の UNIX ulimit
設定」を参照してください。
注意
オープンしているファイル数のulimit
値が64000
未満の場合、MongoDB は起動警告を生成します。
手順
システム上で MongoDB Enterprise Edition を実行するには、次の手順に従ってください。これらの手順では、Ubuntu が提供する非公式の mongodb
パッケージではなく、公式の mongodb-enterprise
パッケージを使用し、デフォルト設定を使用していることを前提としています。
init システム
mongod
プロセスを実行、管理するには、オペレーティング システムに組み込まれている init システムを使用します。最近のバージョンの Linux では systemd(systemctl
コマンドを使用)が使用される傾向があり、古いバージョンの Linux では System V init(service
コマンドを使用)が使用される傾向があります。
プラットフォームで使用されている init システムがわからない場合は、次のコマンドを実行します。
ps --no-headers -o comm 1
次に、結果に基づいて以下の適切なタブを選択します。
systemd
- 以下の [systemd(systemctl)] タブを選択します。init
- 以下の [System V Init(サービス)] タブを選択します。
MongoDB を停止します。
必要に応じて、次のコマンドを発行して、mongod
プロセスを停止できます。
sudo systemctl stop mongod
MongoDB を再起動します。
次のコマンドを発行して、mongod
プロセスを再開できます。
sudo systemctl restart mongod
プロセスの状態をエラーや重要なメッセージで確認するには、/var/log/mongodb/mongod.log
ファイルの出力を監視してください。
MongoDB の使用を開始します。
mongosh
と同じホストマシン上でmongod
セッションを開始します。コマンドライン オプションなしでmongosh
を実行すると、デフォルト ポート27017を使用してローカルホストで実行されているmongod
に接続できます。
mongosh
mongosh
を使った接続(別のホストやポートで実行されている mongod
インスタンスへの接続など)の詳細については、「mongosh ドキュメント」を参照してください。
MongoDB をスムーズに使い始められるように、MongoDB ではさまざまなドライバー エディションでスタートガイドを提供しています。ドライバーのドキュメントについては、「MongoDB での開発スタートガイド」を参照してください。
MongoDB を起動します。
mongod
を起動するには、次のコマンドを実行します:
sudo service mongod start
MongoDB を停止します。
必要に応じて、次のコマンドを発行して、mongod
プロセスを停止できます。
sudo service mongod stop
MongoDB を再起動します。
mongod
を再起動するには、次のコマンドを実行します:
sudo service mongod restart
MongoDB の使用を開始します。
mongosh
と同じホストマシン上でmongod
セッションを開始します。コマンドライン オプションなしでmongosh
を実行すると、デフォルト ポート27017を使用してローカルホストで実行されているmongod
に接続できます。
mongosh
mongosh
を使った接続(別のホストやポートで実行されている mongod
インスタンスへの接続など)の詳細については、「mongosh ドキュメント」を参照してください。
MongoDB をスムーズに使い始められるように、MongoDB ではさまざまなドライバー エディションでスタートガイドを提供しています。ドライバーのドキュメントについては、「MongoDB での開発スタートガイド」を参照してください。
MongoDB をアンインストールする
システムから MongoDB を完全に削除するには、MongoDB アプリケーション自体、構成ファイル、データとログを含むすべてのディレクトリを削除する必要があります。次のセクションで必要な手順をご案内します。
警告
このプロセスにより、MongoDB、その構成、およびすべてのデータベースが 完全に 削除されます。このプロセスは元に戻すことができないため、続行する前にすべての構成とデータがバックアップされていることを確認してください。
MongoDB を停止します。
次のコマンドを発行して、mongod
プロセスを停止します。
sudo service mongod stop
詳細情報
MongoDB Enterprise Edition へのアップグレード
MongoDB Enterprise Edition をアップグレードするときは、必ず公式の パッケージを使用していることを確認してください。 この例と同じバージョンを各コンポーネントに指定します。
VERSION=6.0.7 sudo apt-get install -y \ mongodb-enterprise=${VERSION} \ mongodb-enterprise-server=${VERSION} \ mongodb-enterprise-mongos=${VERSION} \ mongodb-enterprise-tools=${VERSION}
デフォルトの Localhost バインディング
デフォルトでは、MongoDB は bindIp
を 127.0.0.1
に設定して起動します。これは、ローカルホスト ネットワーク インターフェースにバインドされます。つまり、mongod
は同じマシン上で実行中のクライアントからの接続のみを受け入れることができます。この値が有効なネットワークインターフェースに設定されていない限り、リモートクライアントは mongod
に接続できず、mongod
はレプリカセットを初期化できません。
この値は、次のいずれかに設定できます。
警告
インスタンスをパブリックにアクセス可能な IP アドレスにバインドする前に、クラスターを不正アクセスから保護する必要があります。 セキュリティ推奨事項の完全なリストについては、「自己管理型配置のセキュリティ チェックリスト」を参照してください。 最低限、認証を有効化し、ネットワーク インフラストラクチャの強化 を検討してください。
bindIp
の構成の詳細については、「自己管理型配置の IP バインディング 」を参照してください。
MongoDB Enterprise エディション パッケージ
MongoDB Enterprise エディションは専用のリポジトリから入手でき、次の公式にサポートされているパッケージが含まれています。
パッケージ名 | 説明 | ||||||||
---|---|---|---|---|---|---|---|---|---|
mongodb-enterprise | 以下に掲げるコンポーネント パッケージを自動的にインストールする metapackage です。 | ||||||||
mongodb-enterprise-database | 以下に掲げるコンポーネント パッケージを自動的にインストールする
| ||||||||
mongodb-mongosh | MongoDB Shell( mongosh )を含みます。 | ||||||||
mongodb-shared-openssl* | コンピューターにすでにインストールされている OpenSSL バージョン ( mongosh ) を使用する MongoDB Shell が含まれています。 | ||||||||
mongodb-enterprise-tools | 以下に掲げるコンポーネント パッケージを自動的にインストールする
|