Filebeat官方文档翻译-Getting Started With Filebeat
2018年1月10日本文基于Filebeat官方文档-Getting Started With Filebeat部分翻译
原文地址:https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-getting-started.html#filebeat-getting-started
开始使用Filebeat
在开始使用和设置你的Filebeat之前,建议安装并配置以下相关的产品:
- Elasticsearch :用于储存数据和建立索引
- Kibana :图形化界面
- Logstash(可选):向Elasticsearch写入数据
访问Getting Started with Beats and the Elastic Stack获取更多信息。
Elastic堆安装完成以后,阅读以下信息来学习怎样安装,配置和运行Filebeat:
- 第1步:安装Filebeat
- 第2步:配置Filebeat
- 第3步:配置Filebeat用以使用Logstash
- 第4步:在Elasticsearch中读取索引模板(暂不翻译)
- 第5步:设置kibana饼图(暂不翻译)
- 第6步:启动Filebeat
- 第7步:查看Kibana实例(暂不翻译)
- 快速开始日志汇聚(暂不翻译)
- APT和YUM仓库(暂不翻译)
* 译者注:由于此文翻译主要为介绍Filebeat的用法,所以涉及到Elasticsearch和kibana的部分暂不翻译,这对了解Filebeat的使用没有多大影响。读者进行Filebeat的上传测试只需要配置Logstash即可。如果想进一步了解,可以期待后续对Elasticsearch和kibana的翻译文章。
第1步:安装Filebeat
下载和安装Filebeat,请使用你系统对应的操作命令(Debian/Ubuntu:deb, Redhat/Centos/ Fedora:rpm,OS X:mac,Docker平台:docker, Windows:win)
如果使用Apt或者Yum方式安装,可以访问官方仓库安装最新版本。
访问我们的下载页面获取更多的安装包选择,例如32位的安装镜像。
deb:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.1.1-amd64.deb
sudo dpkg -i filebeat-6.1.1-amd64.deb
rpm:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.1.1-x86_64.rpm
sudo rpm -vi filebeat-6.1.1-x86_64.rpm
mac:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.1.1-darwin-x86_64.tar.gz
tar xzvf filebeat-6.1.1-darwin-x86_64.tar.gz
docker:
docker pull docker.elastic.co/beats/filebeat:6.1.1
win:
1.下载Filebeat的Windows zip包文件,下载页面。
2.将zip包解压到C:\Program Files目录。
3.将解压的Filebeat文件夹重命名为filebeat–windows。
4.以管理员权限打开PowerShell命令行程序(右键以管理员方式运行),如果你的系统是Windows XP,则需要下载并安装PowerShell程序。
5.打开PowerShell后,运行下面的命令来安装Filebeat:
PS > cd 'C:\Program Files\Filebeat'
PS C:\Program Files\Filebeat> .\install-service-filebeat.ps1
如果你的系统不能运行此脚本,你需要对相应进程进行允许脚本运行的权限修改,例如:
PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-filebeat.ps1
第2步:配置Filebeat
Filebeat模块提供了快速开始日志上传的体验,点这里查看。如果你想用Filebeat模块启动,可以浏览这部分内容,里面说明了详细的启动步骤。
你可以通过编辑配置文件来更改配置,如果是rpm或deb安装的,配置文件在/usr/share/filebeat /filebeat.yml;如果是docker安装,配置文件在/usr/share/filebeat/filebeat.yml;如果是mac或win系统,则在你的解压文件里面。并且里面还有一个名为filebeat.reference.yml的文件展示了全部的不推荐使用的配置选项。
前往Beats文档的Config File Format章节查看配置的结构构成。
以下是一个简单的filebeat.yml文件的示例,Filebeat会使用很多默认的配置选项。
filebeat.prospectors:
- type: log
enabled: true
paths:
- /var/log/*.log
#- c:\programdata\elasticsearch\logs\*
配置Filebeat:
1.定义日志文件的路径。
这是最基本的配置,你可以定义一个单一的探测器(prospector)对应一个单一的路径,如:
filebeat.prospectors:
- type: log
enabled: true
paths:
- /var/log/*.log
这个例子中,探测器会收集所有的/var/log/*.log文件,意思是会探测/var/log/目录下所有以.log结尾的文件。另外,还支持Golang Glob支持的所有模式。
如果要取得一个目录中子文件夹中的文件,可以这样设置:/var/log/*/*.log。这样会获取/var/ log/目录下的子文件夹下以.log结尾的文件,而不会获取/var/log目录下的文件,目前不会递归地获得所有子目录中的所有文件。
2.如果你想直接将日志输出到Elasticsearch(不经过Logstash),在Filebeat的配置文件中设置Elasticsearch的ip地址和端口以便能连接到:
output.elasticsearch:
hosts: ["192.168.1.42:9200"]
如果你想输出到Logstash,则需要进行output.logstash的配置,具体查看第3步:配置Filebeat用以使用Logstash。
3.如果你打算使用kibana的可视化服务,需要这样配置:
setup.kibana:
host: "localhost:5601"
这里host表示Kibana运行的主机名(hostname),例如localhost:5601。
如果你想在端口号后面指定路径,你需要在后面加上路径名:http://localhost:5601/path.
4.如果你想安全使用Elasticsearch和Kibana,你需要在配置文件里面指定安全凭据,然后再启动Filebeat,例如:
output.elasticsearch:
hosts: ["myEShost:9200"]
username: "elastic"
password: "elastic"
setup.kibana:
host: "mykibanahost:5601"
username: "elastic"
password: "elastic"
Kibana的username和password的设置是可选的,如果不设置Kibana的安全凭据,Filebeat将使用Elasticsearch的username和password进行输出。
可在Set up the Kibana endpoint和 Configure the Elasticsearch output查看更多的安全设置。
在开始filebeat之前,你可以访问Configuring Filebeat查看更多的配置信息。
第3步:配置Filebeat用以使用Logstash
要想输出到Logstash,必须为Logstash设置Beats的input插件。
如果你想使用Logstash对Filebeat收集的日志数据进行进一步的处理,就需要配置Logstash的相关内容。
如果需要配置Logstash,要先在Filebeat配置文件中将Elasticsearch output的部分注释掉,然后将Logstash output部分取消注释:
#----------------------------- Logstash output --------------------------------
output.logstash:
hosts: ["127.0.0.1:5044"]
hosts参数是设置Logstash的服务ip和端口,这里和在Logstash端配置的监听输入端口是一致的。
在这项配置中,你必须手动读取索引模板到Elasticsearch,因为自动读取模板的选项在Elasticsearch output的配置项中才能使用。
第6步:启动Filebeat
通过在命令行输入合适的命令来启动Filebeat。如果你想安全访问一个Elasticsearch集群,请确保你在第2步:配置Filebeat中配置了安全认证。
如果你是使用deb或rpm安装,并使用init.d插件来启动Filebeat,就不能指定命令行参数(参考Filebeat commands),如果需要指定参数运行,需要前台启动Filebeat。
deb:
sudo service filebeat start
rpm:
sudo service filebeat start
docker:
docker run docker.elastic.co/beats/filebeat:6.1.1
mac:
sudo chown root filebeat.yml
sudo ./filebeat -e -c filebeat.yml -d "publish"
因为需要用root用户来运行Filebeat,所以需要更改配置文件的权限,或者也可以启动时指定 –
strict.perms=false参数。更多详情请查看
Config File Ownership and Permissions。
win:
PS C:\Program Files\Filebeat> Start-Service filebeat
默认情况下,Windows的日志文件会储存在C:\ProgramData\filebeat\Logs.
现在Filebeat已经可以开始向你设置好的输出设备发送日志了。
更多推荐
Filebeat官方文档翻译-Getting Started With Filebeat
发布评论