一:elk介绍
日志收集查看服务。基于三个组件,Elasticsearch , Logstash, Kibana。我现在用的elk是6.2.3 下载的三个组件都是6.2.3
二:elk下载
官方地址:http://www.elastic.co/cn/downloads 下载Elasticsearch Kibana Logstash
下载地址分别是:
- Elasticsearch https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz
- Kibana https://artifacts.elastic.co/downloads/kibana/kibana-6.2.4-linux-x86_64.tar.gz
- Logstash https://artifacts.elastic.co/downloads/logstash/logstash-6.2.4.tar.gz
我早上下载的时候是6.2.3,下午官网就成了6.2.4,不过这个不影响
解压三个包到同一个文件夹下,但是是非必须,三个项目之间没有文件夹依赖关系
三:elk安装
3.1 Elasticsearch 安装
3.1.1 解压Elasticsearch后进入根目录,进入config文件夹目录,打开elasticsearch.yml 在最下面增加一行
network.host: 0.0.0.0 ##表示允许其他机子访问,否则只能本机访问
到此就好了。然后运行。
3.1.2 进入根目录下下bin目录
>>./elasticsearch ## 直接运行
>>./elasticsearch -d ## 后台运行
3.1.3 测试
打开浏览器输入: http://127.0.0.1:9200 (或者你的主机ip) 便能看到es的一些基本信息。再进行测试。
在linxu上
curl -XPUT -H 'Content-type':'application/json' -d '{"name": "John Doe"}' 'localhost:9200/customer/external/1?pretty'
然后浏览器上 http://127.0.0.1:9200/customer/external/1?pretty 就能看到信息了。
到此结束。
3.2 Kibana 安装
3.2.1 :
解压Kibana 进入根目录,进入config目录,打开kibana.yml 增加
server.port: 5601 ### ip访问端口
server.host: "0.0.0.0"
elasticsearch.url: "http://127.0.0.1:9200" ## es的地址
kibana.index: ".kibana"
3.2.2 进入bin目录 ,运行打开kibana
>> nohup ./kibana &
>> tail -f nuhup.out
3.2.3 ,打开浏览器进入 http://127.0.0.1:5601 就是kibana的浏览器页面了。点击Discover,如果es配置好,就能看到customer相关信息。customer是上面再es中加的索引。
3.3 Logstash 安装
3.3.1 进入logstash目录,创建etc文件夹,新创建的文件夹在
/main/app/elk/logstash-6.2.3/etc 该文件。
进入etc目录创建文件test.conf 添加内容
input {
file {
type => "nginx-access"
path => ["/main/logs/*.log"]
start_position => "beginning"
}
}
output {
elasticsearch {
hosts => ["127.0.0.1:9200"]
index => "logstash-%{type}-%{+YYYY.MM.dd}"
document_type => "%{type}"
}
}
然后创建随意文件:
/main/logs/a.log 文件内容是:
IPORHOST:client_ip ,aaa,aaaaaaaaaaad,USER:auth:
as
IPORHOST:client_ip,as
caa
sd
asd
3.3.2 最后启动logstash,进入logstash主目录的bin目录。运行:
>> nohup bin/logstash -f etc/ &
3.3.3 然后进入kibana的浏览器目录,就能看到相应的索引。