Linux系统下ELK的安装配置

一、ES安装前的准备(elk安装包版本要求一致)

下载:
elasticsearch-6.2.2.tar.gz
elasticsearch-head-master.zip
kibana-6.2.2-linux-x86_64.tar.gz
logstash-6.2.2.tar.gz
node-v8.9.1-linux-x64.tar.gz
jdk-8u221-linux-x64.tar.gz

二、ELK的安装

1.把下载好的安装包,拖拽到/software目录中

Elkeid 完整部署 elk配置_Elkeid 完整部署


2.输入:yum install -y unzip 下载解压缩工具

3.输入:cd /software 进入安装包目录,输入ll可以查看目录中的文件

4.输入:tar -zxf jdk-8u221-linux-x64.tar.gz -C /opt

5.输入:tar -zxvf elasticsearch-6.2.2.tar.gz -C /opt

6.输入:tar -zxvf kibana-6.2.2-linux-x86_64.tar.gz -C/opt

7.输入:tar -zxvf logstash-6.2.2.tar.gz -C /opt

8.输入:tar -zxvf node-v8.9.1-linux-x64.tar.gz -C/opt

9.输入:unzip elasticsearch-head-master.zip

Elkeid 完整部署 elk配置_elasticsearch_02


10.输入 mv elasticsearch-head-master /opt/eshead 把解压的文件夹移动并改名

11.输入:cd /opt

12.输入:mv kibana-6.2.2-linux-x86_64/ kibana622

13.输入:mv logstash-6.2.2/ logstash622

14.输入:mv node-v8.9.1-linux-x64/ node891

15. 输入:mv jdk1.8.0_221/ java8

Elkeid 完整部署 elk配置_elasticsearch_03


16. 创建用户es:useadd es

三、配置jdk环境

1.输入:vi /etc/profile 配置jdk信息
2.写入配置信息

export JAVA_HOME=/opt/java8
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

Elkeid 完整部署 elk配置_Elkeid 完整部署_04


3.输入:source /etc/profile 读取写入的配置信息

4.输入:java -version查看jdk版本

三、ES的配置

1.输入:vi /etc/hostname 修改主机名:把第一行删除输入bigdata01

Elkeid 完整部署 elk配置_centos_05


2.输入:vi /etc/hosts 修改主机列表:配置集群 主机地址:主机地址

Elkeid 完整部署 elk配置_centos_06


3.配置es的参数

(1)输入:vi /opt/es622/config/elasticsearch.yml,按shift+g,快速定位到尾行,按o在下一行插入以下内容:【注】冒号前后有空格

cluster.name : bigdata --集群名

node.name : master --节点名

node.master : true --是否是主节点

network.host : 192.168.56.110 --本机地址

discovery.zen.ping.unicast.hosts : [“192.168.56.110”] --同上

http.cors.enabled : true

http.cors.allow-origin : “*”

Elkeid 完整部署 elk配置_elasticsearch_07


4.配置系统参数

(1)输入:vi /etc/sysctl.conf 插入内容:vm.max_map_count=655360

最好首次也要使用以下命令刷新 sysctl -w vm.max_map_count=655360

(2)输入:vi /etc/security/limits.conf 插入内容:

* soft nofile 65536

* hard nofile 65536

* soft nproc 4096

* hard nproc 4096

Elkeid 完整部署 elk配置_Elkeid 完整部署_08


5.修改es622目录的属组(es不能使用root启动) chown -R es:es es622

6.输入:su es 切换到普通用户**【注】切换用户需要重新加载一遍/etc/profile**

7.在/opt目录下输入:./es622/bin/elasticsearch

Elkeid 完整部署 elk配置_elasticsearch_09


底部出现 started即是启动成功

在windows界面打开网页,输入http://192.168.56.110:9200/,可以正常出页面,切有节点的信息,即是启动成功

Elkeid 完整部署 elk配置_elasticsearch_10

四、Head-master及node的配置

1.输入:vi /etc/profile 按shift+g定位到底部,然后按o在下一行插入以下内容:

export NODE_HOME=/opt/node891
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
export PATH=$PATH:$NODE_HOME/bin

(如之前在java配置过PATH变量则在原先的尾部增加: :$NODE_HOME/bin)

Elkeid 完整部署 elk配置_JAVA_11


2.输入:source /etc/profile 激活配置文件,输入node -v 可以查看是否配置成功

Elkeid 完整部署 elk配置_linux_12


3.输入:cd /opt/eshead

【注】可以用npm config set registry https://registry.npm.taobao.org镜像下载4.输入:npm install -g grunt-cli --等待的时间比较长,要有点耐心

Elkeid 完整部署 elk配置_linux_13


5.输入:npm install 出错时需要输入:

npm install phantomjs-prebuilt@2.1.14 --ignore-scripts

Elkeid 完整部署 elk配置_linux_14


6.输入:vi Gruntfile.js,在以下位置高亮位置增加一行代码:hostname: ‘*’,

Elkeid 完整部署 elk配置_linux_15


7.输入:vi _site/app.js,找到如下代码,并进行修改成本地址:在第4360行

Elkeid 完整部署 elk配置_JAVA_16


8.输入:npm run start 启动head-master

9.在windows界面,打开网页,输入:http://192.168.56.110:9100/

五、使用Head-master对ES进行测试

1.点击索引页签,点击新建索引

2.点击总览页签,即可查看索引的情况

Elkeid 完整部署 elk配置_centos_17

六、kibana安装,配置和实例

1.输入:cd /opt/kibana622

2.输入:vi config/kibana.yml 按shift+g跳转到行末,按o增加以下内容:

server.host: “192.168.56.110”

elasticsearch.url: “http://192.168.56.110:9200”

Elkeid 完整部署 elk配置_elasticsearch_18


3.输入:./bin/kibana 运行kibana

Elkeid 完整部署 elk配置_JAVA_19


4.在windows界面打开网页,输入http://192.168.56.110:5601/

Elkeid 完整部署 elk配置_elasticsearch_20

七、logstash实例

1.输入:cd /opt/logstash622 进入logstash的安装目录

2.输入:./bin/logstash -e ‘input { stdin{} } output { stdout{} }’ 来测试logstash是否正常工作

Elkeid 完整部署 elk配置_JAVA_21


3.输入:./bin/logstash -e ‘input { stdin{} } output { stdout{ codec => json } }’ 把控制台输入的数据转换成json格式的数据,也可以替换成rubydebug类型的

Elkeid 完整部署 elk配置_Elkeid 完整部署_22


Elkeid 完整部署 elk配置_linux_23


4../bin/logstash -e ‘input { stdin{} } output { stdout{ codec => json } elasticsearch { hosts => [“192.168.56.110:9200”] } }’ 把控制台输入的数据转换成rubydebug类型的数据,同时上传到es服务器,可以在对应192.168.56.110:9100的页面进行查看

5.使用logstash读取文件

(1)、创建一个目录mkdir tmp

(2)、在tmp目录下创建一个txt文件,写入信息

(3)、在tmp目录下再创建一个读取和输出的配置文件,把读取的文件输入到elasticsearch中vi tmp/logstash.conf

Elkeid 完整部署 elk配置_linux_24


(4)、./bin/logstash -f tmp/logssash.conf执行配置文件