原文地址:http://blog.sina.com.cn/s/blog_49be4d570100yvv1.html

1、下载mongodb,可以通过下面2中方法安装。

(1)官网下载yum源后直接安装或下载tar包进行安装。http://www.mongodb.org/ 。

(2)通过EPEL(企业linux额外软件包)安装。http://fedoraproject.org/wiki/EPEL 。

方便起见,这里选择用yum源直接安装。

<1>在*.repo中加入

-------------------------------------------------------------------------------------

[10gen]

name=10gen Repository

baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686

gpgcheck=0

-------------------------------------------------------------------------------------

<2>yum install mongo-10gen-server

2、启动、配置mongodb

<1>vi /etc/mongod.conf

-------------------------------------------------------------------------------------

port = 27017 #运行端口27017

auth = true  #开启认证

nohttpinterface = false

-------------------------------------------------------------------------------------

<2>/etc/init.d/mongod start

<3>mongo

>use graylog2

>db.addUser("login","passwd") #graylog2库的user,graylog2这个user和mongo相连

>db.auth("login","passwd") #打开认证

>db.system.users.find() #查看存在的用户

>exit

<4>/etc/init.d/mongod restart #mongodb默认是开机自启动的

用ps aux | grep mongo查看是否存在进程;

用tail -f /var/log/mongo/mongod.log跟踪mongodb信息。

3、下载graylog2-server(需要JAVA环境)

为方便起见,我们使用系统自带的openjdk

<1>yum, install java-1.6.0-openjdk

<2>tar zxvf graylog2-server-0.9.5p1.tar.gz -C /opt

<3>cd /opt; ln -s graylog2-server-0.9.5p1 graylog2

<4>cd graylog2; cp graylog2.conf.example /etc/graylog2.conf

4、配置、启动graylog2-server,连接mongodb。

<1>vi /etc/graylog2.conf

-------------------------------------------------------------------------------------------

# On which port (UDP) should we listen for Syslog messages? (Standard: 514)

syslog_listen_port = 514

syslog_protocol = udp

# MongoDB Configuration

mongodb_useauth = true

mongodb_user = login

mongodb_password = passwd

mongodb_host = localhost

#mongodb_replica_set = localhost:27017,localhost:27018,localhost:27019

mongodb_database = graylog2

mongodb_port = 27017

-------------------------------------------------------------------------------------------

<2>cd /opt/graylog2/bin

<3>./graylog2ctl start

(注:其log日志就存在当前目录下的nohup.out中。后面会修改并放入/var/log/下,这样便于日志管理,排错)

<4>./graylog2ctl stop

<5>vi /etc/init.d/graylog2-server(仿照graylog2ctl写此脚本)

-------------------------------------------------------------------------------------------

#!/bin/sh

#

# graylog2-server:   graylog2 message collector

# chkconfig: - 98 02

# description:  This daemon listens for syslog and GELF messages and stores them in mongodb

#

CMD=$1

NOHUP=`which nohup`

#JAVA_HOME=/usr/java/latest

#JAVA_CMD=$JAVA_HOME/bin/java

GRAYLOG2_SERVER_HOME=/opt/graylog2

start() {

echo "Starting graylog2-server ..."

$NOHUP java -jar $GRAYLOG2_SERVER_HOME/graylog2-server.jar > /var/log/graylog2.log 2>&1 &

}

stop() {

PID=`cat /tmp/graylog2.pid`

echo "Stopping graylog2-server ($PID) ..."

kill $PID

}

restart() {

echo "Restarting graylog2-server ..."

stop

start

}

case "$CMD" in

start)

start

;;

stop)

stop

;;

restart)

restart

;;

*)

echo "Usage $0 {start|stop|restart}"

RETVAL=1

esac

-------------------------------------------------------------------------------------------

<6>chmod +x /etc/init.d/graylog2-server

<7>chkconfig --add graylog2-server

<8>chkconfig graylog2-server on

<9>/etc/init.d/graylog2-server start

此时,日志就存在了/var/log/graylog2.log。

用“ps aux | grep graylog2”查看是否存在java -jar ../graylog2-server.jar这个进程。

用cat /var/log/graylog2.log查看是否有错误信息。(这里首先要注意主机的域名解析问题,再然后是可能会报错,说514端口没有权限,可以先暂时不管它,后面会处理这个问题)

当然在mongodb中用db.messages.find()命令查看graylog2库的messages表,这时应该已经插入了这个关于514端口没有权限的错误日志信息。

5、下载、配置graylog2-web-interface需要的RUBY环境

<1>先卸载旧版本的ruby(它不支持graylog2)

yum erase/remove ruby ruby-libs ruby-mode ruby-rdoc ruby-irb ruby-ri ruby-docs

<2>yum install gcc gcc-c++ openssl-devel zlib-devel autoconf readline-devel curl-devel expat-devel gettext-devel

<3>下载新的ruby。http://www.ruby-lang.org/en/downloads/ 。

tar jxvf ruby-1.9.2-p0.tar.bz2

<4>cd ruby-1.9.2-p0

<5>./configure -enable-shared -enable-pthread -prefix=/usr

<6>make

<7>make install

注:Ruby1.9.2以上包含了rubygems

<8>ruby -v 查看到rybu版本号1.9.2p0

<9>gem -v 查看到1.3.7

由<8><9>两步的测试结果,说明ruby安装成功。

<10>gem update

<11>gem install rake

6、下载、配置graylog2-web-interface

<1>tar zxvf graylog2-web-interface-0.9.5p2.tar.gz -C /opt

<2>cd /opt; ln -s graylog2-web-interface-0.9.5p2 graylog2-web-interface;

useradd -m graylog;chown -R graylog /opt/graylog2-web-interface-0.9.5p2

<3>cd graylog2-web-interface

<4>gem install bundler

<5>bundle install

<6>Edit all ./config/*.yml。这里可以先只编辑mongoid.yml

vi /opt/graylog2-web-interface/config/mongoid.yml

--------------------------------------------------------------------------------------------

production:

host: localhost #注意从此行起,前面不能顶格,有2个空格

port: 27017

database: graylog2

username: login

password: passwd

--------------------------------------------------------------------------------------------

<7>RAILS_ENV=production script/rails server

访问http://127.0.0.1:3000测试,若出现页面让你创建第一个用户,则成功。

<8>按Ctrl C,结束它。

<9>gem install passenger        #下载后,用passenger管理控制graylog2-web

<10>gem install file-tail

<11>chmod -R 777 tmp log

<12>passenger start

Passenger自动下载、配置、组建好一切所需要的东西后,按Ctrl C,结束它。

<13> vi /etc/init.d/graylog2-web-interface (原本是没有这个文件的)

-------------------------------------------------------------------------------------------

#!/bin/bash

#

# graylog2-web-interface:   graylog2 web interface

#

# chkconfig: - 98 02

# description:  Starts graylog2-web-interface using passenger-standalone.

#

USER=graylog

APP_DIR=/opt/graylog2-web-interface

ADDR=127.0.0.1

PORT=3000

ENVIRONMENT=production

#LOG_FILE=/var/log/graylog2-web-interface.log

CMD_START="cd $APP_DIR; passenger start -d \

-a $ADDR \

-p $PORT \

-e $ENVIRONMENT \

--user $USER"

CMD_STOP="cd $APP_DIR; passenger stop -p $PORT"

CMD_STATUS="cd $APP_DIR; passenger status -p $PORT"

. /lib/lsb/init-functions

case "$1" in

start)

echo "Starting graylog2-web-interface"

su - $USER -c "$CMD_START"

;;

stop)

echo "Stopping graylog2-web-interface"

su - $USER -c "$CMD_STOP"

;;

status)

su - $USER -c "$CMD_STATUS"

;;

*)

echo "Usage: $0 start|stop|status" >&2

exit 3

;;

esac

-------------------------------------------------------------------------------------------

<14>chmod +x /etc/init.d/graylog2-web-interface

<15>chkconfig --add graylog2-web-interface

<16>chkconfig graylog2-web-interface on

<17>/etc/init.d/graylog2-web-interface start

访问http://127.0.0.1:3000,看!出现页面让你创建第一个用户!搞定!

在这里你先创建你的first user(我的是admin、adminpasswd,记得填个Email),然后就可以用刚创建的user进入web界面了。

7、用ryslog代替本机syslog,使graylog2正常开启、运行

此时,你的graylog2服务器还没有真正搭建好,日志并不能被收集进mongodb中存储,并通过graylog2-web页面显示出来。你会发现web上会一直报告错误说你的graylog2 server好像没有运行,通过个log信息可以知道是原因是graylog2(server)对514端口没有权限。这个也就是我们之前遗留下来的问题。

解决办法如下:

<1>yum install rsyslog

<2>vi /etc/sysconfig/rsyslog

----------------------------------------------------------------------------------------

SYSLOGD_OPTIONS="-m 0 -r10514"

----------------------------------------------------------------------------------------

<3> vi /etc/rsyslog.conf

----------------------------------------------------------------------------------------

*.*                 @127.0.0.1:514

----------------------------------------------------------------------------------------

<4>/etc/init.d/syslog stop

<5>chkconfig  syslog off

<6>/etc/init.d/rsyslog start

<7>chkconfig  rsyslog on

<8>netstat -anltpue | grep 514

可以看见

udp   0   0 0.0.0.0:10514    0.0.0.0:*    0    124239    4766/rsyslogd

<9>/etc/init.d/graylog2-server restart

<10>netstat -anltpue | grep 514

可以看见有

udp   0   0 0.0.0.0:10514    0.0.0.0:*    0    124239    4766/rsyslogd

udp   0   0 :::514           :::*        0    111125    957/java

然后,你就可以测试你的graylog2是否正常运行了。Web界面有了messages数据,查看mongodb中的graylog2库也有了messages表的数据。Graylog2正常运行。

8、增加远程客户机

我们来为这台graylog2中央日志服务器增加客户机:

<1>vi /etc/syslog.conf

----------------------------------------------------------------------------------------------

*.*                          @graylog2's IP

----------------------------------------------------------------------------------------------

<2>/etc/init.d/syslog restart

好了,大功告成!可以用logger命令进行测试,并在graylog2 web界面中查看、管理远程log日志了。

9、下载、配置graylog2虚拟主机、启动apache

<1>yum install httpd -y

<2>vi /etc/httpd/conf/httpd.conf

-------------------------------------------------------------------------------------------

NameVirtualHost *:80

<VirtualHost *:80>

ServerName log.example.com

ServerAlias graylog2.example.com

ProxyPreserveHost On

ProxyPass        / http://127.0.0.1:3000/

ProxyPassReverse / http://127.0.0.1:3000/

CustomLog /var/log/httpd/graylog2.example.com-access_log common

</VirtualHost>

-------------------------------------------------------------------------------------------

<3> service httpd configtest

显示“Syntax OK”证明配置正确。

<4>/etc/init.d/httpd start

Finally,通过web页面访问log.example.com或者graylog2.example.com进入graylog2日志管理系统。

10、web界面

<1>通过选项中的设置(这里设置为1,即1min),可调整、查看最近N(这里为1)min里graylog2(mongodb)接收到的日志信息(即messages)数量为多少,提示信息

<2>通过选项创建一个组【这里创建的组名为(r)syslog】后,你还可以将主机加入组,便于分类、管理。

当然,还有更多的功能等待你去发现,最后,再送上2张截图,祝你好运:)

参考文档:

http://joemiller.me/2011/04/13/howto-install-graylog2-on-centos-5-with-rvm-passenger/

http://www.moneyq.org/blog/wnoznpwb/index.php?showentry=42766

http://eromang.zataz.com/2011/06/22/howto-install-graylog2-log-management-solution-under-centos/

http://community.zenoss.org/docs/DOC-4553

Graylog2+mongdb+rsyslog中央日志服务器对syslog的web管理--转载的更多相关文章

  1. 004-linux下配置rsyslog日志收集服务器案例 rsyslog+loganalyzer日志服务器,无法添加报表模板解决

    centos6系统 client1:192.168.1.33 centos7系统 client2:192.168.1.44 centos7系统 master:192.168.1.55 配置服务端mas ...

  2. CentOS7.3下部署Rsyslog+LogAnalyzer+MySQL中央日志服务器

    一.简介 1.LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中 ...

  3. Linux下使用rsyslog部署日志服务器 && 记录history并发送到rsyslog服务器

    一.syslog服务简介 rsyslog 是一个 syslogd 的多线程增强版.rsyslog负责写入日志, logrotate负责备份和删除旧日志, 以及更新日志文件 logger命令 将自定义的 ...

  4. rsyslog+loganalyzer日志服务器,无法添加报表模板解决

    loganalyzer搭建成功后,各方面功能都算正常但是发现不能创建报表模板,提示报错 mysql错误:'字段列表'中的未知列'Source1' mysql错误号:1054 解决方案:

  5. CentOS 6.7下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

    一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取 ...

  6. CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

    一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取 ...

  7. rsyslog+mariadb+loganalyzer实现日志服务器搭建

    rsyslog+mariadb+loganalyzer实现日志服务器搭建 一.概述 Linux的日志记录了用户在系统上一切操作,包括系统自身运作产生的日志,这些日志是应使用者了解服务器的情况最好的资料 ...

  8. linux日志守护进程 syslog

    几乎所有的网络设备都可以通过syslog协议,将日志信息以UDP的形式传送给远端服务器,远端接收日志服务器必须通过syslogd监听UDP端口514,并根据 syslog.conf 配置文件张的配置处 ...

  9. Linux服务器上创建日志服务器和FTP服务器

    参考地址: http://www.111cn.net/sys/CentOS/81133.htm https://www.cnblogs.com/laoxiajiadeyun/p/9943742.htm ...

随机推荐

  1. Hadoop学习笔记3---安装并运行Hadoop

    本文环境是在Ubuntu10.04环境下运行的. 在Linux上安装Hadoop之前,首先安装两个程序: 1.JDK1.6(或更高版本).Hadoop是用Java编写的程序,Hadoop编译及MapR ...

  2. centos 7搭建vpn(pptpd)服务器 (只限centos 7)

    第一步:首先检查ppp是否开启  若使用XEN构架的VPS,此步骤不用执行 终端输入命令:cat /dev/ppp 开启成功的标志:No such file or directory 或者 No su ...

  3. Kali Linux 安装教程-转

    rootoorotor昨天折腾了 Kali Linux 1.0,把大概的配置过程记录下来,希望对想接触或使用Kali Linux的同学有所帮助.   请注意: 1.本文为面向新手的教程,没技术含量,没 ...

  4. Docker进入主流,PaaS大有可为(转)

    add by zhj: 文章简单的说了PaaS所使用的传统容器的缺点,而docker这个容器在一定程度上解决了这些问题,越来越多的PaaS平台使用docker作容器,实现应用的隔离.不过,由于dock ...

  5. 做 fzu oj 1106 题目学到的

    题目如下 这道题的意识就是给一个数问是否可以又阶乘之和构成,而难点主要是在于如果是7的话就是1!+3!,并不是单纯的从1的阶乘开始加,而是没顺序的,所以这题就得用到递归. (大概就是函数自己调用函数自 ...

  6. 第二次作业----自学c++的选择与计划

    1.选择慕课网进行学习的原因 由于本来寒假是打算学习java的(如上篇随笔所言),所以向之前已经自学的同学问如何找教学视频,他就向我推荐了慕课网,在看了几集java的教学视频之后觉得慕课网挺好用的,所 ...

  7. HDU 2256 Problem of Precision (矩阵快速幂)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2256 最重要的是构建递推式,下面的图是盗来的.貌似这种叫共轭数. #include <iostr ...

  8. HDU 5074 Luck Competition (暴力,概率)

    题意:有 n 个人参加比赛,给出n-1个人的成绩,然后要选出一个幸运的人,先把所有的分数求平均数,然后再*2/3,那个不大于这个数,且最接近的数,就是最幸运的, 让你设置最后一个人的分,使他是最幸运的 ...

  9. 结合windows消息系统理解C#中WndProc函数和DefWndProc函数

    Windows消息系统由3部分组成:     1.消息队列.Windows应用程序的消息是由Windows统一在一个消息队列中管理的.     2.消息循环.应用程序从Windows消息队列中获得自己 ...

  10. 记一次PHP项目部署过程

    首先介绍一下项目的基本情况:使用PHP语言开发,数据库用的是MySQL 5.5,HTTP服务器用的是Apache 2.2.早上十点到机房看了看服务器的基本情况:Windows 2000操作系统,没有安 ...