现在才开始尝试使用 Fluentd 和 MongoDB,那是什么,很好吃吗?第三部分
现在开始尝试使用 Fluentd ,已经有点晚了。
MongoDB 这个东西我之前就挺感兴趣的,所以查了一下。我知道可以通过 EPEL 包来安装,希望你也知道。另外,“这个好吃吗?”这种话我不会直接说,希望你也能注意一下哈(公司同事常说这个,真是急人!)。

MongoDB 是一种数据库管理系统。
这被归类为所谓的NoSQL数据库。特别是MongoDB,它是一个面向文档的数据库,值得一提的是它能够将”JSON对象直接存储到数据库中”,这个功能非常了不起。另外,我第一次知道它的名称来源是”humongous”(巨大的),难怪会和大数据这个词联系在一起。
MongoDB入门指南 – The Little MongoDB Book
MongoDB入门指南 – 构建、配置和工具概述
SlideShare上面向初学者的MongoDB基础知识!
安装MongoDB
创建/etc/yum.repos.d/mongodb.repo文件,并安装MongoDB。
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
$ sudo yum -y install mongo-10gen mongo-10gen-server
启动和自动启动的设置
约定的命令。截至2014年06月21日,MongoDB shell的版本似乎是2.6.3。
而MongoDB的监听端口是27017(可以使用netstat -a | grep mongo来确认)。
$ sudo /etc/init.d/mongod start
$ sudo chkconfig mongod on
MongoDB工具:http://robomongo.org/
fluentd的配置
由于已设置了LTSV和MongoDB,所以只需要配置Fluentd即可。
发送方(代理方)
监视 Apache 日志(LTSV)并将其传输到 fluentd 服务器的配置。需要重新启动 fluentd。
<source>
type tail
path /var/log/httpd/access_log
format ltsv
time_key time
time_format %d/%b/%Y:%H:%M:%S %z
tag td.apache.access
pos_file /var/log/td-agent/apache_access.pos
tag mongo.apache
</source>
<match mongo.**>
type forward
buffer_chunk_limit 256m
buffer_queue_limit 128
flush_interval 5s
<server>
host 192.168.11.106
port 24224
</server>
</match>
收信方(集电极方)
需要将转发的信息添加到MongoDB并写入文件的设置。需要重新启动fluentd。
<match mongo.**>
type copy
<store>
type file
time_slice_format %Y%m%d_%H%M
time_slice_wait 1m
path /var/log/td_log/td_access_test
time_format %Y%m%dT%H%M%S%z
</store>
<store>
type mongo
database apache
collection access
host localhost
port 27017
flush_interval 10s
</store>
</match>
尝试查看MongoDB的内容
如果能够到这一步,肯定很好,全部准备就绪。数据应该已经存储在MongoDB中了。因此,让我们来确认一下。
192.168.11.104(Apach)⇒192.168.11.106(MongoDB) 中已经有数据!!
$ mongo
MongoDB shell version: 2.6.3
connecting to: test
> show dbs
admin (empty)
apache 0.078GB
local 0.078GB
> use apache
switched to db apache
> show collections
access
system.indexes
> db.access.find();
{ "_id" : ObjectId("53a6bdcb297b502c2a000001"), "domain" : "192.168.11.104", "host"
下一个是
我计划学习使用GrowthForecast的方法(第4部分),哈哈。
请参考以下网站
在樱花服务器的VPS环境中安装fluentd和MongoDB
指定要监听的IP