本文地址 http://www.cnblogs.com/jasonxuli/p/6397244.html
 
https://www.elastic.co 上,elasticsearch,logstash (filebeat),kibana 都有各自的教程,基本照做就可以跑通。
但只是初步跑起来,如果要都作为服务运行,需要使用 rpm 包安装。
 
系统:
# cat /etc/issue
CentOS release 6.5 (Final)
 
ElasticSearch
 
安装后会创建用户 elasticsearch。
 
修改配置文件:
> vim /etc/elasticsearch/elasticsearch.yml

# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
# network.host: 127.0.0.1
network.host: 192.168.20.50
#
# Set a custom port for HTTP:
#
http.port: ... bootstrap.system_call_filter: false

!使用本地 IP(127.0.0.1)时,Elasticsearch 进入 dev mode,只能从本机访问,只显示警告。

!使用局域网IP后,可以从其他机器访问,但启动时进入 production mode,并进行 bootstrap check,有可能对不合适的系统参数报错。
例如:
ERROR: bootstrap checks failed
max file descriptors [] for elasticsearch process likely too low, increase to at least []
memory locking requested for elasticsearch process but memory is not locked
max number of threads [] for user [jason] likely too low, increase to at least []
max virtual memory areas vm.max_map_count [] likely too low, increase to at least []
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk

需要针对这些参数进行设置:

> vim /etc/security/limits.conf
...
elasticsearch hard nofile # 针对 max file descriptors
elasticsearch soft nproc # 针对 max number of threads > vim /etc/sysctl.conf
...
vm.max_map_count= # 针对 max virtual memory areas > vim /etc/elasticsearch/elasticsearch.yml ...
bootstrap.system_call_filter: false # 针对 system call filters failed to install, 参见 https://www.elastic.co/guide/en/elasticsearch/reference/current/system-call-filter-check.html
memory locking 的问题似乎改了上面几个就没有出现了。
 
sudo chkconfig --add elasticsearch   # configure Elasticsearch to start automatically when the system boots up
sudo -i service elasticsearch start
sudo -i service elasticsearch stop

日志: /var/log/elasticsearch/

 
 
LogStash
 

安装: 
rpm -vi logstash-5.2..rpm

这个例子里使用 Filebeat 将测试用的 Apache web log 作为 logstash的输入,解析并写入数据到 ElasticSearch 中。

 
目前还不需要修改 logstash.yml,logstash 会读取 /etc/logstash/conf.d/ 目录下的文件作为 pipeline 配置文件。
 
新建 logstash pipeline 配置文件:
> vim /etc/logstash/conf.d/first-pipeline.conf

input {
beats {
port => ""
}
}
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}"}
}
geoip {
source => "clientip"
}
}
output {
elasticsearch {
hosts => [ "192.168.20.50:9200" ]
index => "testlog-%{+YYYY.MM.dd}"
}
}
 grok 可以解析未结构化的日志数据,Grok filter pattern 测试网站:http://grokdebug.herokuapp.com/
 
上述日志匹配模式为: 
%{COMBINEDAPACHELOG}
相当于:
%{IPORHOST:clientip} %{USER:ident} %{USER:auth}
\[%{HTTPDATE:timestamp}\] "(?:%{WORD:verb} %{NOTSPACE:request}
(?: HTTP/%{NUMBER:httpversion})?|%{DATA:rawrequest})" %{NUMBER:response}
(?:%{NUMBER:bytes}|-) %{QS:referrer} %{QS:agent}

启动:

sudo initctl start logstash  // 作为服务运行,在使用Upstart的系统中
接下来需要安装 Filebeat 来作为 input 获取数据。
解压用 gzip -d logstash-tutorial.log.gz
 
Filebeat
The Beats are open source data shippers that you install as agents on your servers to send different types of operational data to Elasticsearch. Beats can send data directly to Elasticsearch or send it to Elasticsearch via Logstash, which you can use to parse and transform the data.
 
 
安装:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.2.0-x86_64.rpm
sudo rpm -vi filebeat-5.2.-x86_64.rpm
配置:
> vim /etc/filebeat/filebeat.yml

filebeat.prospectors:

- input_type: log
paths:
- /var/log/logstash-tutorial.log # 之前下载的测试文件
#- /var/log/*.log
#- c:\programdata\elasticsearch\logs\* ... #----------------------------- Logstash output --------------------------------
output.logstash:
# The Logstash hosts
#hosts: ["localhost:5044"]
hosts: ["localhost:5043"]
rpm 安装、启动
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.2.0-x86_64.rpm
sudo rpm -vi filebeat-5.2.-x86_64.rpm
sudo /etc/init.d/filebeat start
kibana
 
kibana 5.2.0 要求 Elasticsearch 也为 5.2.0 。
 
修改配置:
> vim /etc/kibana/kibana.yml

server.host: "192.168.20.50"

elasticsearch.url: "http://192.168.20.50:9200"
> sudo chkconfig --add kibana   # 设置自动启动

> sudo -i service kibana start
> sudo -i service kibana stop
 
验证
 
1,检查 Elasticsearch 的索引:
http://192.168.20.50:9200/_cat/indices?v
 
2,根据之前 first-pipeline.conf 中的索引设置,创建出的索引应该是 testlog-2017.02.14,查询API为:
http://192.168.20.50:9200/testlog-2017.02.14/_search?
 
3,filebeat 第一次启动后应该会解析测试日志文件中的所有数据。
     之后可以添加新日志进去,然后刷新 ES 索引的url,看到该索引的 count 增加就说明解析新日志成功了。这个延迟大概几秒钟。
echo '1.1.1.3 - - [04/Jan/2015:05:13:42 +0000] "GET /test.png HTTP/1.1" 200 203023 "http://test.com/" "Mozilla/5.0"' >> /var/log/logstash-tutorial.log
 

ELK+Filebeat 安装配置入门的更多相关文章

  1. ELK 架构之 Logstash 和 Filebeat 安装配置

    上一篇:ELK 架构之 Elasticsearch 和 Kibana 安装配置 阅读目录: 1. 环境准备 2. 安装 Logstash 3. 配置 Logstash 4. Logstash 采集的日 ...

  2. ELK 架构之 Elasticsearch、Kibana、Logstash 和 Filebeat 安装配置汇总(6.2.4 版本)

    相关文章: ELK 架构之 Elasticsearch 和 Kibana 安装配置 ELK 架构之 Logstash 和 Filebeat 安装配置 ELK 架构之 Logstash 和 Filebe ...

  3. ELK 6安装配置 nginx日志收集 kabana汉化

    #ELK 6安装配置 nginx日志收集 kabana汉化 #环境 centos 7.4 ,ELK 6 ,单节点 #服务端 Logstash 收集,过滤 Elasticsearch 存储,索引日志 K ...

  4. FileBeat安装配置

    在ELK中因为logstash是在jvm上跑的,资源消耗比较大,对机器的要求比较高.而Filebeat是一个轻量级的logstash-forwarder,在服务器上安装后,Filebeat可以监控日志 ...

  5. elk集成安装配置

    三台虚拟机 193,194,195 本机 78 流程 pythonserver -> nginx -> logstash_shipper->kafka->logstash_in ...

  6. 转载maven安装,配置,入门

    转载:http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html 本书代码下载 大家可以从我的网站下载本书的代码:http://ww ...

  7. 第二篇:Filebeat 安装配置

    Filebeat 简介:Filebeat 是一款轻量型日志收集工具,可转发汇总日志.文件等内容.                         其主要特点为:1. 断点续传.(如遇日志转发过程中网络 ...

  8. Docker: 安装配置入门[二]

    一.安装配置启动 1.环境 [root@docker1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@d ...

  9. Keepalived安装配置入门

    准备两台虚拟机,IP如下: A:192.168.1.11 B:192.168.1.12 A为Master,B为BackUp 1.安装 yum install keepalived -y 2.配置 A服 ...

随机推荐

  1. 100+torch的基础操作

    官网:  torch 各种操作,做个翻译,以后查阅 Tensors torch.is_tensor  如果 obj 是 pytorch 张量,则返回 True. torch.is_storage    ...

  2. Django实战(16):Django+jquery

    现在我们有了一个使用json格式的RESTful API,可以实现这样的功能了:为了避免在产品列表和购物车之间来回切换,需要在产品列表界面显示购物车,并且通过ajax的方式不刷新界面就更新购物车的显示 ...

  3. Ubuntu16.04下Kylin的安装与配置

    一.系统环境 kylin的安装配置并不像官方文档中描述的那样简单,复杂的原因在于hadoop,hive,hbase,kylin的版本一定要兼容,不然就会出现各种奇怪的错误.以下各软件版本可以成功运行k ...

  4. [python selenium] 操作方法整理

    个人笔记,摘抄自虫师python selenum,仅供个人参考 1.安装: pip install selenium 下载webdriver # webdriver 下载并放置在python主目录 · ...

  5. 2017-2018-1 20179202《Linux内核原理与分析》第十二周作业

    C语言实现Linux网络嗅探器 一.知识准备 1.一般情况下,网络上所有的机器都可以"听"到通过的流量,但对不属于自己的数据包则不予响应.如果某个工作站的网络接口处于混杂模式,那么 ...

  6. Python 中的函数

    学了 Python 中的数据类型,语句,接下来就来说一下 Python 中的函数,函数是结构化编程的核心.我们使用函数可以增加程序的可读性.自定义函数时使用关键字def 函数由多条语句组成.在定义函数 ...

  7. Java反射机制demo(六)—获得并操作一个类的属性

    Java反射机制demo(六)—获得并操作一个类的属性 获得并操作一个类的属性?! 不可思议啊,一个类的属性一般都是私有成员变量啊,private修饰符啊! 但是毫无疑问,这些东西在Java的反射机制 ...

  8. (三)宏 __cplusplus C/C++混合编程

    前面一些篇目的内容作为一个在校生,很少用到,可能工作的人会见得多一点,但是第一次整体性的学习还是不希望有落下的东西,虽然不常用但至少要有个印象 那么就进入第三篇<宏 __cplusplus> ...

  9. 安恒月赛WP

    一月 一叶飘零大佬的WP:安恒月赛一月 二进制部分:zjgcjy大佬的WP reverse1更容易理解的一种解法 pwn1详解 二月 一叶飘零WP 二进制部分: reverse Pwn 三月 ...

  10. 一台电脑如何安装多个版本的JDK

    1 . 准备两个版本的jdk我的两个jdk路径为:  C:\Program Files\Java\jdk1.6.0_43  C:\Program Files\Java\jdk1.8.0_25 2 . ...