重要なシステム設定
理想的には、Elasticsearchはサーバー上で単独で実行され、利用可能なすべてのリソースを使用する必要があります。そのためには、Elasticsearchを実行しているユーザーがデフォルトで許可されている以上のリソースにアクセスできるように、オペレーティングシステムを設定する必要があります。
本番環境に移行する前に、以下の設定を考慮する必要があります:
- システム設定の構成
- スワッピングの無効化
- ファイルディスクリプタの増加
- 十分な仮想メモリの確保
- 十分なスレッドの確保
- JVM DNSキャッシュ設定
- 一時ディレクトリが
noexec
でマウントされていないこと - TCP再送信タイムアウト
開発モードと本番モード
デフォルトでは、Elasticsearchは開発モードで作業していると仮定します。上記の設定のいずれかが正しく構成されていない場合、警告がログファイルに書き込まれますが、Elasticsearchノードを起動して実行することができます。
network.host
のようなネットワーク設定を構成すると、Elasticsearchは本番環境に移行していると仮定し、上記の警告を例外にアップグレードします。これらの例外は、Elasticsearchノードの起動を妨げます。これは、誤って構成されたサーバーによってデータが失われないようにするための重要な安全対策です。