Linux中ELK的安装与配置【详细过程】

一、ELK介绍(ElasticSearch、Logstash、kibana)

1. ElasticSearch介绍

在整个ELK中,ElasticSearch居于核心地位。Elasticsearch是一个基于Lucene构建
的开源、分布式、RESTful接口的全文搜索引擎。Elasticsearch还是一个分布式文档
数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,ES能够横向扩
展至数以百计的服务器存储以及处理PB级的数据。可以在极短的时间内存储、搜索和
分析大量的数据。

2. Logstash介绍

Logstash主要用于数据的导入,也有一部分功能可以用脚本语言来对数据做一些处理工作,然后把处理过的数据log到ElasticSearch上面或是用其他的输出方式,它支持很多的输入输出方式。

3. kibana介绍

kibana是提供数据可视化界面的一个工具,进行数据可视化操作。他是一个基于浏览器的界面,从这个界面里面可以build各种图表。

采集分析log的目的

  • Trouble Shooting
  • Security lssue Identification
  • Performance Optimization
  • Usage Analysis

二、ES简介

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

三、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

注释:下载好将这些安装包拖入Linux指定目录中。

下载链接:
链接:https://pan.baidu.com/s/12jD1AWPIpgIR_KrvDfYmCQ
提取码:ll5h

四、ELK安装

  1. 把下载好的安装包,拖拽到/software目录中
[root@promote ~]# mkdir software/
[root@promote ~]# cd software/

在这里插入图片描述
注释:图里面有JDK安装包,
在博客:https://blog.csdn.net/lyq7269/article/details/105850579 中有介绍linux系统安装与配置,和JDK安装。

  1. 输入:yum install -y unzip 下载解压缩工具
    在这里插入图片描述
    注释:最后出现Complete!就成功下载了

  2. 输入:cd /software 进入安装包目录,输入ll可以查看目录中的文件
    在这里插入图片描述

  3. 输入:tar -zxvf elasticsearch-6.2.2.tar.gz -C /opt
    在这里插入图片描述
    注释:这个解压完安装在opt文件夹下可以去opt文件夹下找,最后没有complete提醒安装完成。

  4. 输入:tar -zxvf kibana-6.2.2-linux-x86_64.tar.gz -C /opt
    在这里插入图片描述
    注释:这个解压比较长,不要慌。

  5. 输入:tar -zxvf logstash-6.2.2.tar.gz -C /opt
    在这里插入图片描述

  6. 输入:tar -zxvf node-v8.9.1-linux-x64.tar.gz -C /opt
    在这里插入图片描述

  7. 输入:unzip elasticsearch-head-master.zip
    在这里插入图片描述
    注释:这里unzip就用到了前面yum install -y unzip 安装的工具。

  8. 输入 mv elasticsearch-head-master /opt/eshm 把解压的文件夹移动并改名
    在这里插入图片描述
    注释:这样就已经操作成功了。

  9. 输入:cd /opt(进入opt文件夹)
    在这里插入图片描述
    注释:这里可以查看到刚才elasticsearch-head-master已经移到了opt文件夹中。

  10. 输入:mv kibana-6.2.2-linux-x86_64/ kibana622
    在这里插入图片描述
    注释:结果是这样一般就是正确了

  11. 输入:mv logstash-6.2.2/ logstash622
    在这里插入图片描述

  12. 输入:mv node-v8.9.1-linux-x64/ node8
    在这里插入图片描述

五、ES的配置

  1. 输入:vi /etc/hostname 修改主机名
    在这里插入图片描述
    注释:此步可以没有,改了名字一定要记住,我这里改成了test01.

  2. 输入:vi /etc/hosts 修改主机列表
    在这里插入图片描述
    注释:名字可以随便起,地址要是对的,最好是三个连续的地址。

  3. 配置es的参数

    • 输入:vi /opt/es622/config/elasticsearch.yml,按shift+g,快速定位到尾行,按o在下一行插入以下内容:
      cluster.name: bigdata
      node.name: master
      node.master: true
      network.host: 192.168.56.108
      discovery.zen.ping.unicast.hosts: [“192.168.56.108”]
      http.cors.enabled: true
      http.cors.allow-origin: “*”
  4. 配置系统参数

    • 输入:vi /etc/sysctl.conf
      插入内容:vm.max_map_count=655360
      在这里插入图片描述
      注释:最好首次也要使用以下命令刷新
      sysctl -w vm.max_map_count=655360

    • 输入:vi /etc/security/limits.conf(配置完成之后可能需要重启虚拟机) 插入内容:
      在这里插入图片描述

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

    • 创建普通用户,并进入普通用户
      在这里插入图片描述

    • 在/opt目录下输入:./es622/bin/elasticsearch
      在这里插入图片描述
      注释:最后出现started即是启动成功

    • 在windows界面打开网页,输入http://192.168.56.110:9200/,可以正常出页面,切有节点的信息,即是启动成功 。
      在这里插入图片描述

六、Head-master及node的配置

  1. 输入:vi /etc/profile 按shift+g定位到底部,然后按o在下一行插入以下内容:
    export NODE_HOME=/opt/node8
    export PATH= P A T H : PATH: PATH:NODE_HOME/bin (如之前在java配置过PATH变量则在原先的尾部增加: :$NODE_HOME/bin)
    在这里插入图片描述

  2. 输入:source /etc/profile 激活配置文件,输入node -v 可以查看是否配置成功
    在这里插入图片描述
    注释:node-v 查看版本号的意思,如果能查到,则配置成功。

  3. 输入:cd /opt/eshead
    在这里插入图片描述

  4. 输入:npm install -g grunt-cli --等待的时间比较长,要有点耐心
    在这里插入图片描述

  5. 输入:npm install 出错时需要输入:
    npm install phantomjs-prebuilt@2.1.14 --ignore-scripts
    注释1:如果还不行可以
    npm config set registry https://registry.npm.taobao.org
    再进行npm install
    注释2:4、5两步需要在eshead目录下进行

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

connect: {
    server: {
        options: {
            port: 9100,
            hostname: '*',
            base: '.',
            keepalive: true        }
    }
  1. 输入:vi _site/app.js,找到如下代码,并进行修改:
this.base_uri =this.config.base_uri ||this.prefs.get("app-base_uri") || "http://localhost:9200";

修改成为:
this.base_uri =this.config.base_uri ||this.prefs.get("app-base_uri") || "http://192.168.56.108:9200";
  1. 输入:npm run start 启动head-master
  2. 在windows界面,打开网页,输入:http://192.168.56.108:9100/
  3. 如果启动不了出现如下图所示错误,说明第5步没有下载好,要进行重新下载。
    在这里插入图片描述

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

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

八、kibana安装,配置和实例

  1. 输入:cd /opt/kibana622

  2. 输入:vi config/kibana.yml

    • 改变url值,在配置文件中找到图中相应位置,进行修改
      在这里插入图片描述
    • 按shift+g跳转到行末,按o增加以下内容:
      server.host: “192.168.56.108”
      elasticsearch.url: “http://192.168.56.108:9200”
    • 输入:./bin/kibana ---->运行kibana
    • 在windows界面打开网页,输入http://192.168.56.108:5601/
    • 实例:
PUT demo       --增加
GET demo       --查询
#删除 index
DELETE demo
#提交数据  
PUT /demo/user/1
{
  "firstName":"luo","lastName":"xin","age":36,"hobby":"I like gongfu","interests":["games"]
}
#查询数据 
GET demo/user/1
GET demo/user/_search
GET demo/user/1?_source=age,lastName,hobby
#删除指定数据 
DELETE /demo/user/A_KKx3ABEZ3jJD3MqVuu
#修改 
POST /demo/user/1/_update{ "doc":{ "age":30 }  }
POST /demo/user/
{ "firstName":"wang","lastName":"feng","age":51,"hobby":"I like changge","interests":["toutiao"] }
GET /_mget
GET /demo/user/_mget
GET /demo/user/_mget{ "ids":[1,"BPKUx3ABEZ3jJD3MSlvF"] }
POST _analyze{
"analyzer": "standard",
"text": ["我是回家"]
 }
POST _analyze{
"analyzer": "whitespace",
"text": ["我 要 回家"]
 }
POST  demo2/books/_bulk
{"index":{"_id":1}}{"title":"JAVA","price":35}
{"index":{"_id":2}}{"title":"HTML","price":45}
{"index":{"_id":3}}{"title":"MYSQL","price":55}
GET demo2/books/_mget
POST demo2/books/_bulk
{"delete":{"_index":"demo2","_type":"books","_id":3}}
{"update":{"_index":"demo2","_type":"books","_id":2}}
{"doc":{"price":59}}
DELETE demo2/books/3
GET demo2/books/_search?q=title:JAVA
GET demo2/books/_search?q=title:JAVA&q=price:35
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值