fluent最新版 fluent下载教程( 四 )


Kibana

所有httpd的日志将通过Fluentd进入Elasticsearch + Kibana 。
下载并安装Docker/Docker-Compose

  • Docker Installation
Docker Installation
首先 , 请为Docker Compose准备docker-compose.yml 。Docker-Compose是定义和运行多容器Docker应用程序的工具 。
使用下面的YAML文件 , 您可以通过一个命令创建并启动所有服务(在本例中为Apache , Fluentd , Elasticsearch , Kibana) 。
version: \'2\'services: web: image: httpd ports: - "80:80" links: - fluentd logging: driver: "fluentd" options: fluentd-address: localhost:24224 tag: httpd.access fluentd: build: ./fluentd volumes: - ./fluentd/conf:/fluentd/etc links: - "elasticsearch" ports: - "24224:24224" - "24224:24224/udp" elasticsearch: image: elasticsearch expose: - 9200 ports: - "9200:9200" kibana: image: kibana links: - "elasticsearch" ports: - "5601:5601"Web容器的记录部分(检查Docker Compose文档)将Docker Fluentd Logging驱动程序指定为默认容器日志记录驱动程序 。来自Web容器的所有日志将被自动转发到由fluentd-address指定的主机:端口 。
然后 , 请准备具有以下内容的fluentd / Dockerfile , 以使用Fluentd的官方Docker映像 , 并另外安装Elasticsearch插件 。
# fluentd/DockerfileFROM fluent/fluentd:v0.12-debianRUN ["gem", "install", "fluent-plugin-elasticsearch", "--no-rdoc", "--no-ri", "--version", "1.9.2"]然后 , 请准备Fluentd的配置文件fluentd/conf/fluent.conf 。in_forward插件用于从Docker日志驱动程序接收日志 , out_elasticsearch用于将日志转发到Elasticsearch 。
# fluentd/conf/fluent.conf @type forward port 24224 bind 0.0.0.0 @type copy@type elasticsearch host elasticsearch port 9200 logstash_format true logstash_prefix fluentd logstash_dateformat %Y%m%d include_tag_key true type_name access_log tag_key @log_name flush_interval 1s@type stdout 让我们启动所有的容器 , 只有一个命令 。
$ docker-compose up您可以检查4个容器是否由docker ps命令运行 。
$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2d28323d77a3 httpd "httpd-foreground" About an hour ago Up 43 seconds 0.0.0.0:80->80/tcp dockercomposeefk_web_1a1b15a7210f6 dockercomposeefk_fluentd "/bin/sh -c \'exec ..." About an hour ago Up 45 seconds 5140/tcp, 0.0.0.0:24224->24224/tcp, 0.0.0.0:24224->24224/udp dockercomposeefk_fluentd_101e43b191cc1 kibana "/docker-entrypoin..." About an hour ago Up 45 seconds 0.0.0.0:5601->5601/tcp dockercomposeefk_kibana_1b7b439415898 elasticsearch "/docker-entrypoin..." About an hour ago Up 50 seconds 0.0.0.0:9200->9200/tcp, 9300/tcp dockercomposeefk_elasticsearch_1让我们访问httpd来生成一些访问日志 。curl命令始终是您的朋友 。
$ repeat 10 curl http://localhost:80/It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!请访问http://localhost:5601 /使用您的浏览器 。然后 , 您需要为Kibana建立索引名称模式 。请将fluentd - *指定为索引名称或模式 , 并按下Create按钮 。
然后 , 前往Discover选项卡寻找日志 。正如您所看到的 , 日志被正确地收集到Elasticsearch+ Kibana , 通过Fluentd 。

fluent最新版 fluent下载教程

文章插图

fluent最新版 fluent下载教程

文章插图
本文解释了如何从Apache收集日志到EFK(Elasticsearch+ Fluentd + Kibana) 。示例代码可在该存储库中使用 。

https://github.com/kzk/docker-compose-efk
Kubernetes为应用程序和集群日志提供两个日志记录端点:Stackdriver Logging用于Google Cloud Platform和Elasticsearch 。幕后有一个日志记录代理 , 关心日志收集 , 解析和分发:Fluentd 。


特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。