Linux下ELK的安装与配置

ES简介

ES是一个基于RESTful web接口并且构建在Apache Lucene之上的开源分布式搜索引擎。 特点是:高可用,高扩展,是一种NOSQL的数据存储工具

ES安装前的准备

下载:可以自行到官网下载
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
(1)先创建虚拟机 创建ssh链接(可以看上一篇博客) 连接成功后在跟目录下创建一个文件夹 可以是software
Linux下ELK的安装与配置
进入software文件夹 把以上安装包 和jdk安装包(上一篇博客) 拖入software目录下:
Linux下ELK的安装与配置
先解压jdk 因为后面会使用,输入:tar -zxvf jdk-8u221-linux-x64.tar.gz -C /opt/
Linux下ELK的安装与配置
新开一个窗口(方便起见)
在opt目录下对这些解压后的文件重新命名
mv jdk1.8.0_221/ java8
Linux下ELK的安装与配置
vi /etc/profile 配置jdk (详情请看上一篇博客)
export JAVA_HOME=/opt/java8
export CLASSPATH=.:JAVAHOME/lib/rt.jar:JAVA_HOME/lib/rt.jar:JAVA_HOME/lib/tools.jar:JAVAHOME/lib/dt.jarexportJREHOME=JAVA_HOME/lib/dt.jar export JRE_HOME=JAVA_HOME/jre
export PATH=PATH:PATH:JAVA_HOME/bin:$JRE_HOME/bin
完成jdk的解压配置

开始对其他几个文件解压:
解压elasticsearch-head-master.zip
yum install -y unzip
unzip elasticsearch-head-master.zip
Linux下ELK的安装与配置
mv elasticsearch-head-master /opt/
Linux下ELK的安装与配置
解压elasticsearch-6.2.2.tar.gz
tar -zxvf elasticsearch-6.2.2.tar.gz -C /opt

解压kibana-6.2.2-linux-x86_64.tar.gz
tar -zxvf kibana-6.2.2-linux-x86_64.tar.gz -C /opt

解压logstash-6.2.2.tar.gz
tar -zxvf logstash-6.2.2.tar.gz -C /opt

解压node-v8.9.1-linux-x64.tar.gz
tar -zxvf node-v8.9.1-linux-x64.tar.gz -C /opt

ps:-C /opt 把解压后的文件都移动到opt目录下
在opt目录下对这些解压后的文件重新命名(也可以不)
mv elasticsearch-head-master eshm
mv kibana-6.2.2-linux-x86_64/ kibana622
mv logstash-6.2.2/ logstash622
mv node-v8.9.1-linux-x64/ node891
Linux下ELK的安装与配置

ES的配置(都是在opt目录下配置)

在root用户的家目录下 新创建一个用户

新开一个窗口
useradd es (创建普通用户es)
Linux下ELK的安装与配置
接下来修改 es的配置
vi /etc/hostname 修改主机名 随便取 能和下面的主机列表对应就好
Linux下ELK的安装与配置
vi /etc/hosts 修改主机列表
Linux下ELK的安装与配置
第一个是本主机 第二个、三个是集群主机
Linux下ELK的安装与配置

配置es的参数:

vi /opt/es622/config/elasticsearch.yml
按shift+g,快速定位到尾行,按o在下一行插入以下内容:
cluster.name : test --集群名
node.name : test-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 : “*”

配置系统参数

进入系统配置文件:vi /etc/sysctl.conf
插入内容:vm.max_map_count=655360
Linux下ELK的安装与配置
最好首次也要使用以下命令刷新
sysctl -w vm.max_map_count=655360
Linux下ELK的安装与配置
进入系统配置文件:vi /etc/security/limits.conf
Linux下ELK的安装与配置
插入内容:

  • soft nofile 65536
  • hard nofile 65536
  • soft nproc 4096
  • hard nproc 4096
    修改es622目录的属组(es不能使用root启动)
    输入:chown -R es:es es622
    切换到普通用户
    输入:su es
    Linux下ELK的安装与配置
    此时再进行一次source /etc/profile(让配置的资源生效同步)
    在/opt目录下输入:./es622/bin/elasticsearch
    Linux下ELK的安装与配置
    底部出现 started即是启动成功
    Linux下ELK的安装与配置
    8.在windows界面打开网页,输入http://192.168.56.120:9200 可以正常出页面,切有节点的信息,即是启动成功
    Linux下ELK的安装与配置

Head-master及node的配置

重新配置jdk的profile文件
输入: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:PATH:NODE_HOME/bin:$NODE_HOME/bin
Linux下ELK的安装与配置
输入:source /etc/profile **配置文件,
输入node -v 可以查看是否配置成功 显示版本v版本则是配置成功。
Linux下ELK的安装与配置
输入:cd /opt/eshm
输入:npm install -g grunt-cli --等待的时间比较长,
完成后输入npm install
Linux下ELK的安装与配置
npm config set registry https://registry.npm.taobao.org

如果实在太慢可以使用这个加速 在进行 npm install
若以上步骤出错时需要输入:
npm install [email protected] --ignore-scripts

输入:vi Gruntfile.js
在以下位置高亮位置增加一行代码:hostname: ‘*’,
Linux下ELK的安装与配置
输入:vi _site/app.js,找到如下代码,并进行修改:
快速查找修改代码处:查看模式下输入4360gg
箭头所指的地方改为自己主机的地址
Linux下ELK的安装与配置
输入:npm run start 启动head-master
Linux下ELK的安装与配置
在windows界面,打开网页,输入http://192.168.56.120:9100/
Linux下ELK的安装与配置

kibana安装,配置和实例

输入:cd /opt/kibana622
输入:vi config/kibana.yml
按shift+g跳转到行末,按o增加以下内容: 下面的是自己虚拟机的地址
server.host: “192.168.56.120”
elasticsearch.url: “http://192.168.56.120:9200”
Linux下ELK的安装与配置
Linux下ELK的安装与配置
输入:./bin/kibana 运行kibana
Linux下ELK的安装与配置
在windows界面打开网页,输入http://192.168.56.120:5601/
Linux下ELK的安装与配置