设为首页 收藏本站
查看: 3993|回复: 0

[经验分享] ELK日志管理

[复制链接]

尚未签到

发表于 2019-1-28 08:27:02 | 显示全部楼层 |阅读模式
ELK日志管理
·        1.简介
·        2.依赖组件
·        3.下载
·        4.安装步骤
o   4.1 安装redis
o   4.2 ElasticSearch安装
o   4.3 LogStash安装
o   4.4 Kibana安装
·         5.使用说明
o   5.1 ElasticSearch
o   5.2 Kibana
1.简介
     ELK日志管理系统主要功能:应用系统日志的分析和监控
     ELK组成:ElasticSearch,LogStash,Kibana,Redis
     ELK各组件数据流向:App(应用系统将日志写入Redis)→Redis(缓存)→LogStash(从Redis中收集日志,分析完存入ElasticSearch→ElasticSearch(日志存储)→Kibana(从ElasticSearch获取日志进行分析,展现)
2.依赖组件
序号

组件名称

版本

备注

  1
  jdk
  1.7+
  必选
3.下载
  注:以下组件均为linux版本的
  elasticSearch 1.5.0(最低支持1.4.4
      下载地址:http://tech.iflytek.com:8900/SPP/ELK/elasticsearch-1.4.4.zip
   logstash  1.4.2
      下载地址:http://tech.iflytek.com:8900/SPP/ELK/logstash-1.4.2.tar.gz
   redis 2.8.19),
      下载地址:http://tech.iflytek.com:8900/SPP/ELK/redis-2.8.19.tar.gz
   kibana (最新版本)
     下载地址:http://tech.iflytek.com:8900/SPP/ELK/kibana-4.0.1-linux-x64.tar.gz
4.安装步骤
4.1 安装redis
#tar   -zxvf   redis-2.8.19.tar.gz#cd  redis#make#make install  make install命令执行完成后,会在/usr/local/bin目录下生成本个可执行文件,分别是redis-serverredis-cliredis-benchmarkredis-check-aofredis-check-dump,它们的作用如下:
可执行文件

说明

  redis-server
  Redis服务器的daemon启动程序
  redis-cli
  Redis命令行操作工具。也可以用telnet根据其纯文本协议来操作
  redis-benchmark
  Redis性能测试工具,测试Redis在当前系统下的读写性能
  redis-check-aof
  数据修复
  redis-check-dump
  检查导出工具
  修改配置文件:
cd /etcvi redis.conf修改daemonize yes 目的使进程在后台运行  启动Redis
#cd /usr/loacl/bin#nohup ./redis-server  /etc/redis.conf &  
  启动后输入以下命令:ps-ef | grep redis,如果能看到以下进程则表示Redis启动成功

4.2 ElasticSearch安装
   1.解压安装包:unzipelasticSearch-1.4.4.zip
   2.修改集群名称和节点名称:vi /ELK/elasticsearch-1.4.4/config/elasticsearch.yml
      文件打开后,找到: cluster.name,去掉前面的#,修改为cluster.name:youname(名字随意).
      :集群名字必须修改,因为如果不修改集群名字的话,elasticSearch会自动添加同个网段内所有的没有改名字的节点
      找到node.name,修改该名称
   3.修改ES跨越支持:在elasticsearch.yml末尾添加如下内容
  ES跨域支持
http.json.enable:truehttp.cors.allow-origin:“/.*/”http.cors.enabled:true  4.设置ES缓存类型(防止数据量大时出现问题),在elasticsearch.yml末尾添加如下内容
index.cache.field.type: soft   说明:默认类型为resident字面意思是常驻(居民),一直增加,直到内存耗尽。改为soft就是当内存不足的时候,先clear占用的,然后再往内存中放。设置为soft后,相当于设置成了相对的内存大小。   resident的话,除非内存够大。
  5.设置ES内存:vimelasticsearch-1.4.4/bin/elasticsearch,添加下面的配置,内存大小根据机器来定,尽量设大一点,kibana查询缓存很大,如果内存太小会出异常
ES_HEAP_SIZE=15g  6.启动ES
#./bin  nohup ./elasticsearch &  访问http://127.0.0.1:9200/_plugin/head,如果出现下列界面,则表示启动成功

  7.设置ES不分词(此步骤不能忘记,否则kibana查询时会出问题
   启动ES后,在shell命令行输入以下命令(IP和端口号需与第6步启动的ESIP和端口号一致,template为日志的索引名称),以单引号(“  ’  ” )结束,回车执行不分词设置。
  设置ES不分词命令  Expand source
curl -XPUT "http://192.168.84.175:9200/_template/not_analyzed_template" -d'{    "template": "skynet-ant-log",    "mappings": {        "_default_": {            "dynamic_templates": [                {                    "template_1": {                        "mapping": {                            "index": "not_analyzed",                            "type": "string"                        },                        "match_mapping_type": "string",                        "match": "*"                    }                }            ]        }    }}  
4.3 LogStash安装
  (此处一大坑:必须安装在/usr/local/下,如果安装在home目录下启动时会出错)
  # tar  -xzvf logstash-1.4.2.tar.gz
  #vim logstash-1.4.2/bin index.conf   //创建启动配置文件,添加以下内容,此配置文件刚开始没有,需自己创建,名字随意,启动时指定到该配置文件即可
  LogStash配置文件  Expand source
input {        redis{                data_type => "pattern_channel"                key => "skynet-ant-logstash-*"                host => "127.0.0.1"                port => 6379        }}filter {        json {                source => "message"        }        mutate {                convert => ["start" , "integer"]                convert => ["end" , "integer"]                convert => ["duration" , "integer"]                convert => ["originalDuration" , "integer"]                convert => ["timefrugal" , "integer"]                convert => ["wavePoint" , "integer"]                convert => ["silenceDuration" , "integer"]        }}output{        elasticsearch {                host => "127.0.0.1"                port => 9450                protocol => http                index => "skynet-ant-log"        }}  参数说明
参数名称

说明

  Input
  redis的相关配置
  data_type
  数据类型,主要有三种类型(pattern_channellistchannel),此类型根据redis来定
  key
  关键词
  host
  存放的地址
  port
  端口号
  filter
  数据过滤的条件
  mutate
  数据格式转换,主要将字符类型转换成数值类型
  output
  输出的elasticSearch的相关配置,如果是集群的话需将hostport改为cluster=>"name"集群的名称即可
  
  启动 logstash
# nohup ./logstash   -f  index.conf &  如果使用jps命令看到如下进程则表示logstash启动成功

4.4 Kibana安装
  # tar  -xzvf   kibana-4.0.1-linux-x64.tar.gz
  #vim ./kibana-4.0.1-linux-x64/config/kibana.yml
  修改elasticsearch_url: "http://192.168.84.167:9200"
  运行kibana
#./ kibana-4.0.1-linux-x64  nohup ./kibana &  
  在浏览器器访问:http://127.0.0.1:5601,如果出现以下界面则表示部署成功

  至此,ELK管理系统全部部署完毕。只需将应用系统的日志导入该系统中,然后学习kibana的使用即可对应用系统的日志进行分析和监控
  注意:启动各个组件时有一定的顺序要求,RedisElasticSearch必须在LogstashKibana启动之前启动,一般的启动顺序为:RedisElasticSearchLogStashKibana。具体原因可参考简介中的数据流向。
5.使用说明
5.1 ElasticSearch
  
   配置好skynet引擎服务,启动引擎服务:访问:http://ip:9200/_plugin/head,如果ES中有数据进入则表示部署成功,而且日志数据已接入到ES中。如下图所示:
    
5.2 Kibana
  接着访问kibana地址:http://ip:5601,如下图所示,kibana中已有日志数据了(注意右上角时间范围的选择)
    
  使用已定义好的报表:如下图所示,点击DashBoard,打开已定义好的面板
    
  例如选择skynet-log-vspp:会出现下图所示的报表
    
  此时就可以根据这些报表进行分析了。
  
  
  





运维网声明 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-668477-1-1.html 上篇帖子: ELK实战之java日志收集 下篇帖子: ELK 根据业务配置及优化
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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