最近、同社は、
運用やメンテナンスを待たずにチームが迅速に連携できるように、ES のバージョンを 2.2 から 6.2.4 にアップグレードしたいと考えています。es6 を
単独で導入する過程で、いくつかの問題も発生しました。参考までに記録です。
元の設定ファイル
cluster.name: ehl_elasticsearch
path.data: /data1/elasticsearch/indexdata
path.work: /data1/elasticsearch/work
path.logs: /data1/elasticsearch/logs
bootstrap.mlockall: true
ES_MIN_MEM: 16g
ES_MAX_MEM: 16g
index.mapper.dynamic: false
node.name: ${HOSTNAME}
network.host: _eth0_
discovery.zen.ping.unicast.hosts: ["host0:8200", "host1:8200"]
以下のパラメータを削除します
// es6的配置里面已经没有这一项了,如果加上的话,启动会报错
path.work: /data1/elasticsearch6/work
// 这一项在6里面已经换名字了
bootstrap.mlockall: true
// es6有了一个jvm的配置文件,内存在哪儿修改,这两个参数没啥必要了
ES_MIN_MEM: 16g
ES_MAX_MEM: 16g
// es6的配置里面没有这个参数的说明了,删掉
index.mapper.dynamic: false
パラメータの変更
network.host: _eth0_
改为
network.host: 0.0.0.0
これで終わりかと思い、
esを起動した結果、
スタートアップでエラーが報告されrootで起動できませんでした。
アカウントを追加し、権限を設定します (これは、構成で設定されているデータおよびログ ディレクトリを含めて必須です。そうでない場合はエラーが報告されます)。 ユーザーを切り替えます。
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
chown -R elsearch:elsearch elasticsearch
su elsearch
起動時に依然としてエラーが報告され、一度に 5 件も報告されます
ERROR: [5] bootstrap checks failed
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
[2]: memory locking requested for elasticsearch process but memory is not locked
[3]: max number of threads [1024] for user [elsearch] is too low, increase to at least [4096]
[4]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[5]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
質問5
設定ファイルの増加
bootstrap.system_call_filter: false
質問4
root ユーザーに切り替えて
、次のコマンドを実行します。
sysctl -w vm.max_map_count=262144
結果の表示:
sysctl -a|grep vm.max_map_count
見せる:
vm.max_map_count = 262144
上記の方法を変更した後、仮想マシンを再起動すると失敗します。
解決策:
/etc/sysctl.conf ファイルの末尾に行を追加します。
vm.max_map_count=262144
永久に編集する
質問3
/etc/security/limits.d/90-nproc.conf 構成ファイルを変更します
vim /etc/security/limits.d/90-nproc.conf
soft nproc 1024
修改为
soft nproc 4096
質問2
bootstrap.memory_lock: false
質問1
vi /etc/profile
には ulimit 制限はありません
vi /etc/security/limits.conf
elsearch soft nproc 65535
elsearch hard nproc 65535
elsearch soft nofile 65536
elsearch hard nofile 131072
再起動、成功
公式アカウントに注目し、コミュニケーションをとり、一緒に進歩していきましょう