5个最常见的问题:
[1]: initial heap size [2147483648] not equal to maximum heap size [4294967296]; this can cause resize pauses [2]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535] [3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] [4]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts,discovery.seed_providers, cluster.initial_master_nodes] must be configured
以及以root身份允许es会报:
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
我的虚拟机地址为192.168.100.83
官网下载最新版本:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.1-linux-x86_64.tar.gz
解压到目录 /usr/local/
修改配置文件:/usr/local/elasticsearch-7.9.1/config/jvm.options 这里修改jvm占用内存
-Xms4g -Xmx4g
注意这两个参数要相同才行(对应:initial heap size [2147483648] not equal to maximum heap size [4294967296]; this can cause resize pauses)
修改配置文件: /usr/local/elasticsearch-7.9.1/config/elasticsearch.yml 修改es相关配置
cluster.name: my-es # 集群名 随意指定 同个集群的不同节点需要使用相同集群名 不同节点名
node.name: node-83 # 节点名
#path.data: /data/tip/es/data #es数据存放路径 #path.logs: /data/tip/es/logs #es日志存放路径
network.host: 192.168.100.83 #es使用的IP地址 默认本机
#http.port: 9200 #es使用的端口号 默认9200
cluster.initial_master_nodes: ["node-83"] #值为上面配置的node.name 配置文件中的discover项里的几个配置需要至少配置一个 如果多个节点 则以数组形式将各个节点名写入即可
对应问题4: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts,discovery.seed_providers, cluster.initial_master_nodes] must be configured
# 设置是否可以通过正则或者_all删除或者关闭索引库,默认true表示必须需要显式指定索引库名称 # 生产环境建议设置为true,删除索引库的时候必须显式指定,否则可能会误删索引库中的索引库。
#action.destructive_requires_name: true
es不允许以root用户启动 需要使用其他用户才行
adduser es
passwd es #为新用户设置密码
es需要增大系统默认的文件打开数和用户可支配内存数
vim /etc/security/limits.conf
文件末尾追加 (es为启动elasticsearch的用户名)
对应问题2 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
es soft nofile 65535 es hard nofile 65537
vim /etc/sysctl.conf
文件末尾追加
vm.max_map_count=655360
对应问题3 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
su es #切换至新用户
在elasticsearch目录下执行:
./bin/elasticsearch -d
查看日志:
tailf ./logs/{cluster.name}.log 看到started字样 说明启动成功
访问 192.168.100.83:9200
安装成功