富贵同学linux环境为CentOS7.8 版本。这次说一下ElasticSearch的安装
https://www.elastic.co/cn/downloads/past-releases/elasticsearch-5-5-3
tar -zxvf elasticsearch-5.5.3.tar.gz
vim elasticsearch.yml
将这行注释打开
cluster.name集群名称,随便填写,或者使用默认的“my-application”,注意,后面Java链接elasticsearch时,需要该配置。
将这段改成0.0.0.0
network.host如果此不配置此项,其他机器无法链接当前elasticsearch。配置为:(0.0.0.0代表任何IP都可访问)
bin/elasticsearch
这个时候发现有错误
os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
这个时候我们去编辑config下的jvm.options文件
修改
为
-Xms512m
-Xmx512m
重新启动,发现又报错了
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
这个的意思是elasticsearch不能以root用户启动,所以我们新增一个用户组
groupadd elsearch
useradd elsearch -g elsearch
passwd elsearch
更改elasticsearch文件夹及内部文件的所属用户及组为elsearch:elsearch
chown -R elsearch:elsearch elasticsearch-5.5.3
su elsearch
好家伙,还报错!
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
编辑 /etc/security/limits.conf,追加以下内容;
root soft nofile 65536
root hard nofile 65536
* soft nofile 65536
* hard nofile 65536
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
编辑 /etc/sysctl.conf,追加以下内容:
vm.max_map_count=655360
保存后,执行:
sysctl -p
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
在elasticsearch的config目录下,修改elasticsearch.yml配置文件,将下面的配置加入到该配置文件中:
启动成功!!
有些用户是通过外网访问的,所以我们需要打开防火墙
查看端口命令:
netstat -ntlp
这个时候我们发现没有9200这个端口,所以需要给他加上
firewall-cmd --zone=public --add-port=9200/tcp --permanent
https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v5.5.3
如果你看到这里了,记得点个赞哦,关注一波!!(づ ̄3 ̄)づ╭❤~