查看原文
其他

ELK 实时日志分析平台环境搭建

zhisheng zhisheng 2021-05-26

简单介绍

ELK(ElasticSearch, Logstash, Kibana),三者组合在一起搭建实时的日志分析平台,目前好多公司都是这套!

  • Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful 风格接口,多数据源,自动搜索负载等。

  • Logstash 是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)。

  • Kibana 也是一个开源和免费的工具,它 Kibana 可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。

安装 ES

。。。这个省略,不 bb 了,以前写过。。。传送门:http://www.54tianzhisheng.cn/2017/09/09/Elasticsearch-install/

安装 Logstash

ELK 整套环境搭建版本很关键,最好全统一一个版本,否则出啥问题就不太好找了。这是我见过版本统一最严格的了。而已 ES 版本升了后,其他的都要都要升级,包括其插件。升级代价挺大的,最好一开始就定位好要安装哪个版本!

在官网下好安装包后传到 Linux 上,这是速度最快的。

  1. 在 /usr/local 目录下解压:

  2. tar -zxvf  logstash-5.5.2.tar.gz

  3. 进入解压后的目录:

  4. cd /usr/local/logstash-5.5.2/bin

  5. 新增配置文件:

  6. vim logstash.conf

  7. 增加:

  8. input{

  9.    file{

  10.      path => ["/var/log/*.log"]

  11.    }

  12. }

  13. output{

  14.   elasticsearch{

  15.       hosts => ["192.168.153.135:9200"]

  16.       index => "logstash__log"

  17.  }

  18. }

Logstash 的启动方式是:

  1. 在 /usr/local/logstash-5.5.2/bin 目录下运行:

  2. ./logstash -f logstash.conf

安装 Kibana

同样,官网下好安装包,上传到 Linux。

  1. 解压:

  2. tar -zxvf kibana-5.5.2-linux-x86_64.tar.gz

  3. 修改配置文件 kibana-5.5.2/config/kibana.yml 如下:

  4. Server.host  //配置机器ip/hostname

  5. Server.name  //此kibana服务的名称

  6. elasticsearch.url  //es master节点url

Kibana 启动方式:

  1. 在 /usr/local/kibana-5.5.2/bin 目录下运行:

  2. ./kibana

Web界面访问: http://ip:5601 此时需要输入用户名和密码登录,默认分别是 elastic 和 changeme

X-Pack

X-Pack 是一个 Elastic Stack 的扩展,将安全,警报,监控,报告和图形功能包含在一个易于安装的软件包中。

ES 和 Kibana 都可安装。

插件 x-pack-5.5.2.zip 依旧官网下。

ES 安装 X-Pack

  1. cd /usr/local/elasticsearch/bin

  2. ./elasticsearch-plugin install file:///opt/es/x-pack-5.5.2.zip

如果成功:显示如下

  1. [root@node1 bin]# ./elasticsearch-plugin install file:///opt/es/x-pack-5.5.2.zip

  2. -> Downloading file:///opt/es/x-pack-5.5.2.zip

  3. [=================================================] 100%

  4. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

  5. @     WARNING: plugin requires additional permissions     @

  6. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

  7. * java.io.FilePermission \\.\pipe\* read,write

  8. * java.lang.RuntimePermission accessClassInPackage.com.sun.activation.registries

  9. * java.lang.RuntimePermission getClassLoader

  10. * java.lang.RuntimePermission setContextClassLoader

  11. * java.lang.RuntimePermission setFactory

  12. * java.security.SecurityPermission createPolicy.JavaPolicy

  13. * java.security.SecurityPermission getPolicy

  14. * java.security.SecurityPermission putProviderProperty.BC

  15. * java.security.SecurityPermission setPolicy

  16. * java.util.PropertyPermission * read,write

  17. * java.util.PropertyPermission sun.nio.ch.bugLevel write

  18. * javax.net.ssl.SSLPermission setHostnameVerifier

  19. See http://docs.oracle.com/javase/8/docs/technotes/guides/security/permissions.html

  20. for descriptions of what these permissions allow and the associated risks.

  21. Continue with installation? [y/N]y

  22. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

  23. @        WARNING: plugin forks a native controller        @

  24. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

  25. This plugin launches a native controller that is not subject to the Java

  26. security manager nor to system call filters.

  27. Continue with installation? [y/N]y

  28. -> Installed x-pack

Kibana 安装 X-Pack

  1. cd /usr/local/kibana-5.5.2/bin

  2. ./kibana-plugin install file:///opt/es/x-pack-5.5.2.zip

安装成功如下:

  1. [root@node1 bin]# ./kibana-plugin install file:///opt/es/x-pack-5.5.2.zip

  2. Attempting to transfer from file:///opt/es/x-pack-5.5.2.zip

  3. Transferring 159867054 bytes....................

  4. Transfer complete

  5. Retrieving metadata from plugin archive

  6. Extracting plugin archive

  7. Extraction complete

  8. Optimizing and caching browser bundles...

  9. Plugin installation complete

启用 x-pack 安全机制

分别在 kibana.yml 和 elasticsearch.yml 中加入下行

  1. xpack.security.enabled: true

这样后,你再打开 ES 的 head 界面和 Kibana 管理界面就需要输入账号密码了。

上图右边是安装 X-Pack 后的,功能多了几个。

最后

环境搭建很简单,后面如果有时间的话可以再讲讲在 Kibana 的 Dev Tools 上构建 ES 的 JSON 串来对 ES 进行操作。

我还写过 ES 相关的文章:

1、Elasticsearch 默认分词器和中分分词器之间的比较及使用方法

2、全文搜索引擎 Elasticsearch 集群搭建入门教程

3、ElasticSearch 集群监控

4、ElasticSearch 单个节点监控

结尾

本文首发于:zhisheng 的博客

转载请注明地址:http://www.54tianzhisheng.cn/2017/12/25/ELK/

关注我

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存