准备好一台虚拟机
一、系统配置
- 首先关闭防火墙
chkconfig iptables off
– 永久关闭防火墙service iptables stop
– 暂时关闭防火墙,重启虚拟机后防火墙重新启动 - 配置系统环境,打开
vim /etc/security/limits.conf
添加如下*soft nofile 65536 *hard nofile 131072 *soft nproc 2048 *hard nproc 4096
二、配置 JDK
- ES要求JDK版本至少1.8,因为Linux中有自带的jdk环境,需要手动去除
yum remove java* -y
- 解压jdk安装包
tar -xvf jdk-8u131-linux-x64.tar.gz
- 解压后的jdk包改名
mv jdk1.8.0_131/ jdk1.8
- 进入 /etc/profile 文件中
vim /etc/profile
• 在最后一行添加
• 保存退出export JAVA_HOME=/home/software/jdk1.8 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
:wq
- 重新生效:
source /etc/profile
- 测试环境是否成功
java -version
三、搭建ElasticSearch
- 解压安装包:
tar -xf elasticsearch-5.5.2.tar.gz
- 改名:
mv elasticsearch-5.5.2.tar.gz elasticsearch
- elasticsearch.yml,在es根目录config文件夹
vim elasticsearch.yml
节点所在的集群名称默认elasticsearch,添加配置文件cluster.name: elasticsearch node.name :es01 bootstrap.memory_lock:false bootstrap.system_call_filter:false network.host:自己的ip http.port:9200 http.cors.enabled:true http.cors.allow-origin: "*"
- es禁止使用root用户,需要另行添加一个用户单独操作elasticsearch.
• 添加一个具有操作es权限的用esgroupadd es
useradd es -g es -p es
• 添加es用户的权限可以操作/home/software/elasticsearch文件夹chown -R es:es /home/software/elasticsearch
- elasticsearch出于安全考虑,不允许root用户来操作启动,所以需要添加一个具有操作权限的es用户,centOS 6.5对于除了root以外的线程上限1024,es要求至少4096
打开vim /etc/security/limits.d/90-nproc.conf
* soft nproc 4096 root soft nproc unlimited
- es要求vm.max_map_count的key对应的内存占用值是200M,默认65M
vim /etc/sysctl.conf
最后一行添加vm.max_map_count = 655360
sysctl -p
查看是否配置成功- 以上都配置完成后切换到es 账户
su es
• 启动elasticsearch/home/software/elasticsearch/bin/elasticsearch
• 进入网页输入 ip:端口号
四、搭建node
- 安装node因为head插件是用node.js开发的,所以需要此环境
- 解压 node 安装包
tar -xvf node-v8.12.0-linux-x64.tar.xz
- 改名:
mv node-v8.12.0-linux-x64/ node
- 配置环境变量,进入 /etc/profile 文件中
vim /etc/profile
在最后一行添加export NODE_HOME=/home/software/node export PATH=$NODE_HOME/bin:$PATH export NODE_PATH=$NODE_HOME/lib/node_modules:$PATH
- 测试是否安装成功
node -v
如果出现版本号则安装成功 - 进入根目录下的bin目录,执行npm命令
npm install -g grunt-cli
检查是否成功npm -v
grunt -version
如果 没有出现 grunt版本号,则运行npm install -g grunt
再次运行grunt -version
五、搭建elastic-search-head可视化界面
- 解压
unzip elasticsearch-head-master.zip
- 打开Gruntfile.js
vim /home/software/elasticsearch-head/Gruntfile.js
一要注意不要少了逗号 - 运行
grunt server
原因是因为当前工程(head工程中没有grunt的本地文件)
则运行npm install grunt
(将grunt安装到当前目录) - 再次运行
grunt server
出现下图,就是缺少grunt支持部件
在elastic-search-head根目录挨个执行npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install -g grunt-cli
(安装全局grunt-cli)cnpm install grunt-contrib-clean
cnpm install grunt-contrib-watch
cnpm install grunt-contrib-connect
cnpm install grunt-contrib-copy
cnpm install grunt-contrib-jasmine
cnpm install grunt-contrib-concat
如果其中某个报红,报红的在执行一遍 - 启动
grunt server
- 去网页输入 ip:端口
六、搭建Kibana
- 解压
tar -xvf kibana-6.4.3-linux-x86_64.tar.gz
- 改名
mv kibana-6.4.3-linux-x86_64 kibana
- 打开kibana.Yml
vim kibana/config/kibana.yml
server.port: 5601 #监听端口
server.host: "0.0.0.0" #监听IP
elasticsearch.hosts:"http://192.168.30.133:9200" #集群es地址
kibana.index: ".kibana" #默认索引
- 启动kibana
/home/software/kibana/bin/kibana
- 进入页面输入 ip:端口
七、logstash安装使用
- 解压
tar -xvf logstash-6.4.3.tar.gz
- 改名
mv logstash-6.4.3/ logstash
- 打开conf目录下的logstash.config
vim logstash.conf
这个配置文件是根据自己需求来定的
input 指定输入源
filter 可以对input输入的内容进行过滤或处理
output 指定处理过的日志输出到哪里,可以是ES或者是HDFS等等,可以同时配置多个,webhdfs主要配置解释
一般情况下都会结合ElasticSearch使用 - 启动命令
./logstash -f ../config/logstash.conf --config.reload.automatic
来源:CSDN
作者:一个很笨的程序员
链接:https://blog.csdn.net/qq_40853089/article/details/103686206