elasticsearch不允许以root用户启动需要使用其他用户才行
root用户无法启动官方说明:
https://www.elastic.co/guide/en/elasticsearch/reference/7.9/modules-scripting-security.html#_do_not_run_as_root
配置elasticsearch启动用户
Elasticsearch为了安全考虑不允许使用root用户启动Elasticsearch,所以我们需要新建一个普通用户启动程序。新建的用户名和密码都是elastic。
[root@localhost elasticsearch-7.9.2]# adduser elastic
[root@localhost elasticsearch-7.9.2]# passwd elastic
更改用户 elastic 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
使用passwd elastic 命令给elastic用户设置密码(需要输入两遍密码)时,如果密码过于简单会有提示,用 root 用户操作可忽略提示,继续输入第二遍密码强制设置密码。
将elasticsearch目录权限赋予elastic用户,并用elastic用户启动elasticsearch,启动参数后面-d表示后台启动。
[root@localhost elasticsearch-7.9.2]# chown -R elastic /usr/local/elasticsearch-7.9.2/
[root@localhost elasticsearch-7.9.2]# su elastic
[elastic@localhost elasticsearch-7.9.2]$ ./bin/elasticsearch -d
1、修改limits.conf文件
[root@localhost elasticsearch-7.9.2]# vim /etc/security/limits.conf
2、在limits.conf文件末尾添加
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
修改配置后,断开连接,否则配置无效
1、修改sysctl.conf文件
[root@localhost elasticsearch-7.9.2]# vim /etc/sysctl.conf
2、在sysctl.conf文件后面添加
vm.max_map_count=655360
3、刷新配置文件使之生效
[root@localhost elasticsearch-7.9.2]# sysctl -p
vm.max_map_count = 655360
系统参数官方文档地址:
https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config.html
修改elasticsearch配置文件
[elastic@localhost elasticsearch-7.9.2]$ vi /usr/local/elasticsearch-7.9.2/config/elasticsearch.yml
修改node.name和 cluster.initial_master_nodes
node.name: node-1
cluster.initial_master_nodes: ["node-1"]
修改elasticsearch配置文件
[elastic@localhost elasticsearch-7.9.2]$ vi /usr/local/elasticsearch-7.9.2/config/elasticsearch.yml
将elasticsearch.yml 文件中network.host修改成如下配置
network.host: 0.0.0.0 # 绑定到0.0.0.0,允许任何ip来访问
关闭防火墙
systemctl stop firewalld.service
确保上面第5步已经执行完成
修改elasticsearch配置文件
[elastic@localhost elasticsearch-7.9.2]$ vi /usr/local/elasticsearch-7.9.2/config/elasticsearch.yml
在elasticsearch.yml 文件末尾增加以下内容
http.cors.enabled: true
http.cors.allow-origin: "*"