大纲:
一、简介(引用http://467754239.blog.运维网.com)
二、Logstash
三、Elasticsearch
四、Kinaba
五、Redis+logback
一、简介
1、核心组成
ELK由Elasticsearch 、Logstash 和Kibana 三部分组件组成;
Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
Logstash 是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用
kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。
2、四大组件
Logstash : logstash server端用来搜集日志;
Elasticsearch : 存储各类日志;
Kibana : web化接口用作查寻和可视化日志;
Logstash Forwarder : logstash client端用来通过lumberjack 网络协议发送日志到logstash server;
3、ELK工作流程
在需要收集日志的所有服务上部署logstash,作为logstashagent(logstash shipper)用于监控并过滤收集日志,将过滤后的内容发送到Redis,然后logstash
indexer将日志收集在一起交给全文搜索服务ElasticSearch,可以用ElasticSearch进行自定义搜索通过Kibana
来结合自定义搜索进行页面展示。
4、ELK的帮助手册
ELK官网:https://www.elastic.co/
ELK官网文档:https://www.elastic.co/guide/index.html
ELK中文手册:http://kibana.logstash.es/content/elasticsearch/monitor/logging.html
注释
ELK有两种安装方式
(1)集成环境:Logstash有一个集成包,里面包括了其全套的三个组件;也就是安装一个集成包。
(2)独立环境:三个组件分别单独安装、运行、各司其职。(比较常用)
本实验也以第二种方式独立环境来进行演示;单机版主机地址为:192.168.1.104
二、Logstash
1、安装JDK(略)
logstash的运行依赖于JDK
2、安装logstash
wget https://download.elastic.co/logstash/logstash/logstash-2.0.0.tar.gz(请选择正确版本,小心和 Elasticsearch 冲突)
2.1普通方式启动
启动:logstash -e 'input{stdin{}}output{stdout{codec=>rubydebug}}'
my name is zhengyansheng. //手动输入后回车,等待10秒后会有返回结果
Logstash startup completed
2015-10-08T13:55:50.660Z 0.0.0.0 my name is zhengyansheng.
这种输出是直接原封不动的返回...
2.2通过配置文件启动
配置文件信息logstash.conf :
input {
#读取配置文件的方式
file {
path => "/usr/java/apache-tomcat-8.0.39/logs/catalina.2017-04-24.log"
codec => json {
charset => "UTF-8"
}
}
#从Redis读取
redis {
data_type => "pattern_channel"
key => "logstash-*"
host => "192.168.1.134"
port => 6379
threads => 5
}
}
output {
#输出到控制台
stdout { codec => rubydebug }
#输出到elasticsearch
elasticsearch {
hosts => "192.168.1.134:9200"
}
}
启动:./logstash -f ../conf/logstash.conf
PS:配置文件必须是ANSI格式
三、Elasticsearch
3.1安装Elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-2.3.5.tar.gz
tar -xvf elasticsearch-2.3.5.tar.gz
3.2修改elasticsearch.yml配置文件
vi elasticsearch.yml
#把这几个解开
cluster.name: my-application
node.name: node-1
path.data: /path/to/data
network.host: 0.0.0.0
http.port: 9200
如果要外网访问network.host必须改成0.0.0.0
3.3启动Elasticsearch
启动Elasticsearch 不能以root运行,需新建个用户进行运行
创建用户组已经用户
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch 更改权限
chown -R elsearch:elsearch elasticsearch
elasticsearch为你elasticsearch的目录名称切换用户
su elsearch #切换账户
cd elasticsearch/bin #进入你的elasticsearch目录下的bin目录
./elasticsearch 在地址栏输入:http://192.168.1.134/9200 出现以下信息表示启动成功
{
"name" : "node-1",
"cluster_name" : "my-application",
"version" : {
"number" : "2.3.5",
"build_hash" : "90f439ff60a3c0f497f91663701e64ccd01edbb4",
"build_timestamp" : "2016-07-27T10:36:52Z",
"build_snapshot" : false,
"lucene_version" : "5.5.0"
},
"tagline" : "You Know, for Search"
}
3.4安装head插件
bin ./plugin install mobz/elasticsearch-head
访问插件:http://192.168.1.134:9200/_plugin/head/
四、kibana
4.1安装kibana
wget https://download.elastic.co/kibana/kibana/kibana-4.3.3-linux-x64.tar.gz
tar -xvf kibana-4.3.3-linux-x64.tar.gz
config下的kibana.yml可以修改服务端口以及es相关配置,我用的默认配置
elasticsearch.url: "http://192.168.1.134:9200"
4.2启动kibana
./ kibana
访问浏览器:http://192.168.1.134:5601/
如果出现以下页面,表示启动成功
五、Redis+Logback
5.1通过logback输出日志到Redis,logback从Redis中收集日志
logback配置文件:
logstashdemo
dev
120.27.15.7
6379
logstash
dev
true
true
0
新人第一次写博客,请各位大神多多指教,有问题指出来
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com