目录
1.安装JDK
elasticsearch需要JDK环境
2.安装elasticsearch
1)上传elasticsearch安装介质,并解压
elk相关下载地址:下载 Elastic 产品 | Elastic
2)创建存放日志和数据的目录
mkdir -p {edata,elog}
3)修改配置文件
进入解压后的文件夹,进入config,首先备份elasticsearch的配置文件
cp elasticsearch.yml elasticsearch.yml.bak
vim elasticsearch.yml
修改如下几项:
#这里指定的是集群名称,需要修改为对应的,开启了自发现功能后,elasticsearch会按照此集群名称进行集群发现
cluster.name: es_cluster
node.name: es_cluster_uat1
#数据目录,先前创建
path.data: /home/XX/elk6.2.4/edata
# log 目录,先前创建
path.logs: /home/XX/elk6.2.4/elog
# 修改一下ES的监听地址,这样别的机器也可以访问
network.host: 0.0.0.0
# 默认的端口号
http.port: 9200
# elasticsearch集群的IP信息,没有集群,不写也行
discovery.zen.ping.unicast.hosts: ["10.XX.XX.XX", "XX.X.X.X"]
# discovery.zen.minimum_master_nodes: 3
# enable cors,保证_site类的插件可以访问elasticsearch
http.cors.enabled: true
http.cors.allow-origin: "*"
# Centos6不支持SecComp,而ES5.2.0默认 bootstrap.system_call_filter为true进行检测,所以导致检测失败, 失败后直接导致elasticsearch不能启动。
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
保存修改,退出
4)修改系统参数
以下操作需要root用户,或者操作用户拥有管理员权限,即命令前加sudo
①设置内核参数
修改之前备份
sudo cp sysctl.conf sysctl.conf.bak
sudo vim /etc/sysctl.conf
增加以下参数
vm.max_map_count=655360
保存修改,退出,执行命令使配置生效
sudo sysctl -p
②设置资源参数
修改之前备份
sudo cp limits.conf limits.conf.bak
sudo vim /etc/security/limits.conf
添加如下几项:
* soft nofile 65536
* hard nofile 131072
* soft nproc 65536
* hard nproc 131072
③设置用户资源参数
修改前备份
sudo cp 90-nproc.conf 90-nproc.conf.bak
sudo vim 90-nproc.conf
设置elk用户(当前服务器用户)参数
XXuser soft nproc 65536
5)启动elasticsearch
切到当前用户ES的bin目录下,执行命令
./elasticsearch
发现报错
原因是先前修改的系统参数没有生效
退出,重新登录即可
exit
cd /usr/local/elasticsearch-5.3.1/bin/
./elasticsearch
出现start,表示ES启动成功
以上启动方式,命令行关闭会导致elasticsearch服务停止。
推荐ES后台启动,命令如下:
./elasticsearch -d
6)查看elasticsearch进程
ps aux | grep elasticsearch