设为首页 收藏本站
查看: 3715|回复: 6

[经验分享] CentOS7使用Elasticsearch+ Logstash+kibana快速搭建日志分析平台

[复制链接]

尚未签到

发表于 2017-11-7 09:49:40 | 显示全部楼层 |阅读模式
CentOS7使用Elasticsearch+ Logstash+kibana快速搭建日志分析平台介绍:
安装logstash,elasticsearch,kibana三件套,搜索程序一般由索引链及搜索组件组成。
索引链功能的实现需要按照几个独立的步骤依次完成:检索原始内容、根据原始内容来创建对应的文档、对创建的文档进行索引。
搜索组件用于接收用户的查询请求并返回相应结果,一般由用户接口、构建可编程查询语句的方法、查询语句执行引擎及结果展示组件组成。
Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制, restful 风格接口,多数据源,自动搜索负载等。
Logstash 是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索)。
kibana也是一个开源和免费的工具,他Kibana 可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志
一、安装elastic:1、安装java:
1
[iyunv@cml3 elasticsearch-5.6.3]# yum install -y *jdk*




2、配置访问最大文件数:
1
2
3
4
5
6
[iyunv@node2 src]# cat/etc/security/limits.conf

* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096




2、在解压目录下创建,log,data文件目录:
1
2
3
[root@cml3elasticsearch-5.6.3]# mkdir data
[root@cml3elasticsearch-5.6.3]# mkdir log
[root@cml3elasticsearch-5.6.3]# mkdir logs      ##有时候没有这个目录就自己手动创建





3、修改elastic.yaml:监听主机
1
2
3
4
[iyunv@cml3 elasticsearch-5.6.3]# vimconfig/elasticsearch.yml
node.name: cml3
network.host: 192.168.5.104
discovery.zen.minimum_master_nodes: 1



   ##因为我这里演示的是在一台机器上安装(所以节点改为1)


4、创建elastic用户用来开启elasticsearch
1
2
3
[iyunv@cml3 elasticsearch-5.6.3]# useradd elastic
[iyunv@cml3 elasticsearch-5.6.3]# ls
bin config  data  lib LICENSE.txt  log  logs modules  NOTICE.txt  plugins README.textile



##有时候会小了目录自己手动创建上就可以了:
1
2
3
4
5
[iyunv@cml3 logs]# ll
total 4
-rw-rw-r-- 1 elastic elastic    0 Nov 3 19:52 elasticsearch_deprecation.log
-rw-rw-r-- 1 elastic elastic    0 Nov 3 19:52 elasticsearch_index_indexing_slowlog.log
-rw-rw-r-- 1 elastic elastic    0 Nov 3 19:52 elasticsearch_index_search_slowlog.log



##因为5.0的版本为了安全不能使用root用户启动所以给elasticsearch-5.6.3目录下elastic(可以自定义用户)的用户权限

##开启haed:插件:
1
2
http.cors.enabled:true
http.cors.allow-origin:"*"




##开启的时候会有以下错误:
OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should conf...CThreads=N
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot a ...'(errno=12)

##解决方法:
意思是内存不够,加大内存重启就可以了!

##有时候还会出现以下错误:
[elastic@cml3 bin]$ ./elasticsearch
Exception in thread "main"2017-11-03 20:38:47,194 main ERROR No log4j2 configuration file found. Usingdefault configuration: logging only errors to the console. Set system property'log4j2.debug' to show Log4j2 internal initialization logging.
2017-11-03 20:38:47,646 main ERROR Couldnot register mbeans java.security.AccessControlException: access denied("javax.management.MBeanTrustPermission" "register")

##解决方法:直接安装几个log4j包就ok啦
1
[iyunv@cml3 elasticsearch-5.6.3]# yum install -y log4j*





5、启动elastic:直接用curl访问9200端口成功即可
1
2
3
4
[iyunv@cml3 elasticsearch-5.6.3]# netstat-ntlp
Active Internet connections (only servers)
tcp6      0      0 192.168.5.104:9200      :::*                    LISTEN      3749/java            
tcp6      0      0 192.168.5.104:9300      :::*                    LISTEN      3749/java






二、安装head插件:1、介绍:
在以往的es版本有一个非常好用的插件叫head,可以方便的查看索引,集群等相关状态:
5.0之后head安装支持目前只是支持插件的方式:

2、创建存放这个插件的目录:
1
2
3
4
5
6
7
8
#mkdir head   ##随意目录下创建就行
#cd head
#git clonegit://github.com/mobz/elasticsearch-head.git
#cd elasticsearch-head
yum install -y npm*       ##缺少npm就直接安装就ok了
#npm install     ##这个步骤下载包都是国外地址所以安装起来比较慢
#npm install -g grunt-cli
#grunt server




3、监听端口为localhost,可以修改配置文件:
1
2
3
4
5
6
7
8
9
10
11
12
[iyunv@controller head]# cdelasticsearch-head/
[iyunv@controller elasticsearch-head]#vim Gruntfile.js
做如下修改:
    server: {
            options: {
                 port: 9100,
                 hostname: '0.0.0.0',     #####添加这句。
                 base: '.',
                      keepalive: true
                             }
                    }
              }





修改es配置文件添加如下:
1
2
3
[iyunv@controllerconfig]# vim elasticsearch.yml
http.cors.enabled:true
http.cors.allow-origin:"*"




#####然后重启es服务

4、启动head插件,然后访问web的ip与端口即可:
1
#grunt server





##就可以看到我们相关索引的状态,分片集群等相关操作都可以在上面完成:
                            443c5dffd3657f931b23edf5c8947e2a.png

三、安装配置logstash文件然后启动:1、下载解压logstash:
下载地址: https://artifacts.elastic.co/dow ... gstash-5.6.3.tar.gz
1
[iyunv@cml3 src]# tar -xflogstash-5.6.3.tar.gz



2、创建conf的目录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[iyunv@cml3 ~]# mkdir /logstash/
[iyunv@cml3 logstash]# viminput_flter_output.conf
input {
   file{
       path=> "/usr/local/nginx/logs/cml.log"    ##nginx生成日志的目录
       type=> "cml"          ##索引的类型
       start_position=> "beginning"     ##一开始就输入原来的日志信息
  }
  stdin{}
}
filter{
grok {
       match => {
        "message" =>"(?<remote_IP>\d+.\d+.\d+.\d+)\s-\s-\s\[(?<DATA>\d+/\w+/\d+:\d+:\d+:\d+)[[:space:]](?<time_zone>\+\d+)\]\s\"(?<action>\w+)%{URIPATHPARAM:request} (?<Version>\w+/\d+.\d+)\"\s(?<status>\w+)\s(?<web_size>\w+)\s\"(?<language>\S+)\"\s"
##自定义grok
       }
}

}
output{
       elasticsearch{
       action=> "index"
       hosts=> "192.168.5.104:9200"      ##输出到elasticsearch上面
       index=> "log-%{+yyyy.MM.dd}"     ##生成一个log-时间的索引
       }
  stdout {codec=>rubydebug}    ##在终端上输出方便检测
}



3、启动logstash
1
[iyunv@cml3 logstash]# /usr/local/src/logstash-5.6.3/bin/logstash-f input_flter_output.conf



四、安装kibana,然后修改监听ip直接启动即可1、下载安装kibana:
1
2
3
[iyunv@cml3 logstash]# cd /usr/local/src/
[iyunv@cml3 src]# wget https://artifacts.elastic.co/dow ... na-5.6.3-x86_64.rpm
[iyunv@cml3 src]# rpm -ivhkibana-5.6.3-x86_64.rpm




2、修改kibana配置文件:
1
2
3
4
5
[iyunv@controller config]# vim kibana.yml
server.host: "192.168.63.246"
elasticsearch.url: http://192.168.63.246:9200
elasticsearch.username: "elastic"
elasticsearch.password: "pwd"



##x-pack默认超级用户的登录密码(es和kibana两个的超级管理员账号密码都一样,这里我就为了方便不使用密码用户登录了。)


3、启动kibana
1
[iyunv@cml3 src]# systemctl start kibana




浏览器输入http://IP:5601配置input_flter_output.conf文件定义的索引。(图形化配置kibana)
##点击Discover选择log*索引就可以看到日志的数据出来了。
ece63a4a1245cd3b99fbbddc8f5395be.png

##点击仪表板然后创建一个仪表盘:
84d9bfa62b9575a65c4ea5064afbff2d.png

##接下来就是创建一个图表
06024a19b92f86efd3537cbfbf69c1bd.png

##这里就可以定义自己想要的图表了:
6dc6f9af201aa66aa57d15b82b3e1103.png

##我比较喜欢看柱形图,选择自己的索引:
467c43c5fea71ac3427d056f57d35c28.png

##最终可以出来的结果(我添加了request项是访问的url)也可以是客户端的IP
cb44e94a700f25cd68cd4c36751273f0.png d05f02e5e132fb5663e5790c155ed9c8.png
f1d1f3b694c67547c6bdfbd6b442af6c.png




dce46c14a8945585de6e78df41ad47ee.png

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-406611-1-1.html 上篇帖子: ELK日志分析平台搭建全程 下篇帖子: Elasticsearch+logstash+kibana实现日志分析
累计签到:115 天
连续签到:1 天
发表于 2017-11-11 17:24:12 | 显示全部楼层
1111111111111111111

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

累计签到:28 天
连续签到:1 天
发表于 2018-1-9 21:45:06 | 显示全部楼层
#在这里快速回复#好牛逼啊 学习了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

回复 支持 反对

使用道具 举报

累计签到:16 天
连续签到:1 天
发表于 2018-2-13 10:53:07 | 显示全部楼层
学习了。感谢分享

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
发表于 2018-12-12 01:00:00 | 显示全部楼层
学习了,谢谢分享

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表