打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
CentOS 7安装配置Graylog
  这篇文章是转载他人,但经过实践修改得到的,蓝色部分是原文(本人实践不可行便用灰色部分代替的)综合http://www.linuxdiyf.com/linux/23852.htmlhttp://www.w2bc.com/article/181431,ES是出自https://www.biaodianfu.com/centos-7-install-elasticsearch.html
--------------------------------------------------------------------------------------------------------------------
这篇文章记录了在CentOS 7上安装Graylog v1.3.x(也被叫做Graylog2)的步骤,并配置它收集其他服务器上的系统日志。
Graylog是强大的日志管理、分析工具。它基于 Elasticsearch, Java和MongoDB。
Graylog可以收集监控多种不同应用的日志。但是为了示范说明,我只收集syslog。并且,我将会把用到的组件全部安装到一个单独的服务器上。对于大型、生产系统你可以把组件分开安装在不同的服务器上,这样可以提高效率。
Graylog的组件
Graylog有4个基本组件:
Graylog Server:这个服务负责接收和处理日志/消息,并且和其他组件沟通。
Elasticsearch:存储所有的日志,它的性能依赖内存和硬盘IO。
MongoDB:存储元数据,负载不高。
Web接口:用户接口。
下面是Graylog组件之间的关系图:
系统要求:
CentOS 7
内存至少2GB
有root权限
下面开始安装。
1、安装MongoDB
方法一:
MongoDB的安装非常简单,执行如下命令导入MongoDB GPG密钥到rpm:
$ sudo rpm --import https://www.mongodb.org/static/pgp/server-3.2.asc(这个一阵一阵的,有时候报错有时候又OK。。。)
创建MongoDB源:
$ sudo vim /etc/yum.repos.d/mongodb-org-3.2.repo
写入如下内容
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
安装MongoDB:
$ sudo yum install -y mongodb-org
启动MongoDB:
$ sudo systemctl restart mongod
现在,MongoDB应该运行起来了。

查看mongodb端口情况

netstat -tlnup | grep mongod

运行mongodb:到/usr/bin目录下,./mongo

方法二:http://www.360doc.com/showweb/0/0/660709696.aspx

2、下一步我们来安装Java。
安装Java
Elasticsearch和Logstash需要需要Java运行环境。Elasticsearch建议安装最新版本的Oracle Java 8,但是使用OpenJDK也可以正常工作。
我这里安装Oracle Java 8 jdk,
去http://www.oracle.com/下载最新的java jdk。我安装时的最新版本为jdk-8u77-linux-x64.rpm。
使用如下命令下载本版本(需要接受协议才能下载):
$ cd
$ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.rpm"
安装下载的rpm包:
$ sudo yum -y localinstall jdk-8u77-linux-x64.rpm
查看java版本:
$ java -version

可到http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载安装包拷贝进去再安装。http://www.360doc.com/showweb/0/0/660434957.aspx

使用yum安装本地jdk的rpm包

#yum  localinstall  /opt/soft/jdk-8u45-Linux-x64.rpm  -y

卸载的时候,先用rpm -qa|grep jdk查询安装包,再用yum remove 安装包,卸载。


总结:当我用rpm包安装的时候,怎么设置环境变量都不行,不能运行java -version。后来改成直接解压.gz文件来安装才可以了。


3、安装Elasticsearch
蓝色部分的安装,我没成功,采用了解压安装成功了,http://www.360doc.com/showweb/0/0/660621695.aspx
Graylog目前为止只能使用Elasticsearch 2.0以前的版本,所以,在这一步中,我将安装Elasticsearch 1.7.x。
添加Elasticsearch GPG密钥:
$ sudo rpm --import http://packages.elastic.co/GPG-KEY-elasticsearch
创建Elasticsearch源:
$ sudo vim /etc/yum.repos.d/elasticsearch.repo
写入如下内容:
[elasticsearch-1.7]
name=Elasticsearch repository for 1.7.x packages
baseurl=http://packages.elastic.co/elasticsearch/1.7/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1
安装Elasticsearch:
$ sudo yum -y install elasticsearch
Elasticsearch安装完成之后,编辑配置文件:
sudo vim /etc/elasticsearch/elasticsearch.yml
找到cluster.name一行,取消这一行的注释,并把值改为graylog-development:
cluster.name: graylog-development
你也许想要限制外部访问Elasticsearch(端口9200),这样可以提高系统的安全性。找到network.host一行,取消注释,并把值改为localhost:
network.host: localhost
保存退出文件。
重启Elasticsearch:
$ sudo systemctl restart elasticsearch
设置开机启动:
$ sudo systemctl enable elasticsearch
执行如下命令测试Elasticsearch是否正常运行:
$ curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'
输出的信息如下表示Elasticsearch安装成功:
4、安装Graylag(综合两种方法)
1)、第一种:下载压缩包解压安装

(1)下载安装包

 wget https://packages.graylog2.org/releases/graylog/graylog-2.1.1.tgz

(2)解压安装包

tar -zxvf graylog-2.1.1.tgz

(3)修改配置文件

修改安装目录下 graylog.conf.example 文件

vim graylog.conf.example

web_listen_uri 值是graylog启动成功后,web服务访问地址

rest_listen_uri 的值,是graylog启动成功后,api访问地址

配置rest_transport_uri参数,设置Graylog web接口和服务器的沟通方式。由于我们把所有组件都安装到了单独的一个服务器上,需要把值设置为127.0.0.1 或 localhost。找到rest_transport_uri一行,取消注释,并把值设置为:

rest_transport_uri = http://127.0.0.1:12900/

其中 password_secret 的值用命令生成,安装pwgen,使用它生产秘钥:

$ sudo yum -y install epel-release

$ sudo yum -y install pwgen


 pwgen -N 1 -s 96

其中root_password_sha2 的值使用命令生成

 echo -n 123456| sha256sum  (这里对密码123456哈希加密)

elasticsearch_cluster_name 值必须是elasticsearch配置文件中的cluster_name

elasticsearch_discovery_zen_ping_unicast_hosts 填写elasticsearch地址,如果是多个,用逗号隔开

elasticsearch_discovery_zen_ping_multicast_enabled = false 多播模式关闭

elasticsearch集群分片数量

elasticsearch绑定的节点IP

mongodb安装服务的ip地址

 设置告警邮件发送者信息

(4)复制配置文件

 因为graylog安装bin目录下,默认启动配置文件

配置文件路径:/etc/graylog/server/server.conf

所以需要将 graylog.conf.example 复制到/etc/graylog/server/目录下,并且改名 server.conf

执行命令:

mkdir -p /etc/graylog/server/ 

cp graylog.conf.example /etc/graylog/server/server.conf

(5)启动graylog

在graylog安装bin目录下执行

./graylogctl start

查看日志,在graylog安装目录下执行

tail -200f /log/graylog-server.log

如果报错:(我直接运行没有报错)

原因:

在mongodb版本2.6之后,是需要日志journaling设置的,而默认情况下是关闭的

解决办法:

在mongodb启动命令加上 --journal

最后启动命令:

./mongod --dbpath=/usr/local/mongodb/data/ --fork --logpath=/usr/local/mongodb/logs --storageEngine=mmapv1 --journal

重启mongodb后,重启graylog服务即可!

graylog启动成功,日志输出

使用./graylogctl status 查看运行状态,如下:

[root@slave2 bin]# ./graylogctl status

graylog-server running with PID 2700

如果需要停止graylog服务,在graylog安装bin目录下执行

 ./graylogctl stop


第二种方法:
现在Graylog的所有依赖软件安装完成,这一步我们来安装graylog-server。
首先,下载Graylog RPM软件包:
$ cd 
$ sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-1.3-repository-el7_latest.rpm
安装graylog-server:
$ sudo yum -y install graylog-server
安装pwgen,我们使用它生成随机密码:
$ sudo yum -y install epel-release
$ sudo yum -y install pwgen
现在我们来设置Graylog管理员的密钥。配置文件位于/etc/graylog/server/server.conf目录,需要修改password_secret参数:
$ SECRET=$(pwgen -s 96 1)
$ sudo -E sed -i -e 's/password_secret =.*/password_secret = '$SECRET'/' /etc/graylog/server/server.conf
执行完上面命令之后,password_secret参数的样子:
这一步,设置管理员密码。由于密码使用sha哈希算法,我们需要把明文密码转换为hash,然后赋值给root_password_sha2参数。例如,我要设置的管理员密码是 test1234,它对应的hash为:
$ echo -n test1234 | sha256sum | awk '{print $1}'
编辑/etc/graylog/server/server.conf,设置root_password_sha2参数:
$ sudo vim /etc/graylog/server/server.conf
现在Graylog管理员密码为test1234。
配置rest_transport_uri参数,设置Graylog web接口和服务器的沟通方式。由于我们把所有组件都安装到了单独的一个服务器上,需要把值设置为127.0.0.1 或 localhost。找到rest_transport_uri一行,取消注释,并把值设置为:
rest_transport_uri = http://127.0.0.1:12900/
由于我们只有一个Elasticsearch shard,需要把elasticsearch_shards参数设置为1:
elasticsearch_shards = 1
更改elasticsearch_cluster_name参数,应该和前面Elasticsearch的cluster.name参数相对应:
elasticsearch_cluster_name = graylog-development
取消下面两行的注释,检测Elasticsearch:
elasticsearch_discovery_zen_ping_multicast_enabled = false
elasticsearch_discovery_zen_ping_unicast_hosts = 127.0.0.1:9300
启动graylog-server:
$ sudo systemctl start graylog-server
下一步安装Graylog web接口。
安装Graylog Web
安装Graylog Web:
$ sudo yum -y install graylog-web
安装完成之后配置Graylog Web的密钥,配置文件位于/etc/graylog/web/web.conf,更改application.secret参数:
$ SECRET=$(pwgen -s 96 1)
$ sudo -E sed -i -e 's/application\.secret=""/application\.secret="'$SECRET'"/' /etc/graylog/web/web.conf
配置graylog2-server.uris参数,它的值应该和Graylog的rest_listen_uri参数相对应:
$ sudo vim /etc/graylog/web/web.conf
graylog2-server.uris="http://127.0.0.1:12900/"
重启graylog-web:
$ sudo systemctl restart graylog-web
配置Graylog服务器接收其他服务器的syslog日志
登录Graylog Web
使用浏览器访问Graylog服务器的域名或IP:http://graylog_public_IP_domain:9000/。
你应该能看到一个登录界面,使用admin做为用户名和前面设置的密码登录。
登录之后:
上面的红数字1是通知(you have a node without any running inputs),下面设置通过UDP接收syslog。
创建syslog UDP输入
添加要接收的其他服务器syslog日志:System->Inputs->Syslog UDP->Launch new input。
在弹出的窗口上输入如下信息:
Title: syslog
Port: 8514
Bind address: 要收集的其他服务器ip地址
点击Launch
如果你需要收集多个服务器的日志,重复上面步骤。
现在,我们的Graylog服务器已经做好了接收其他服务器发来日志的准备。下面我们还需要配置其他服务器,让这些服务器给Graylog服务器发送日志。
配置其他服务器给Graylog服务器发送syslog
SSH登录“其他服务器”,创建rsyslog配置文件90-graylog.conf:
sudo vim /etc/rsyslog.d/90-graylog.conf
添加如下代码,把 graylog_server_IP 替换为Graylog服务器ip地址:
$template GRAYLOGRFC5424,"<%pri%>%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msg%\n"
*.* @graylog_server_IP:8514;GRAYLOGRFC5424
重启rsyslog服务使生效:
$ sudo systemctl restart rsyslog
配置完成之后,回到Graylog Web,点击Sources,查看是否有新添加rsyslog。
搜素Graylog
假如你要搜索ssh活动:
上面安装配置了基本的Graylog服务器。
参考:http://docs.graylog.org/en/1.3/
本文永久更新地址:http://www.linuxdiyf.com/linux/23852.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Graylog2+mongdb+rsyslog中央日志服务器对syslog的web管理
Linux下TFTP服务的安装、配置和操作
linux下tftp使用(转一些命令)_YingRu_bupt
EFK:免费的日志采集与可视化搜索套件
ELK Stack集群部署+Grafana及可视化图形
有多少漏洞都会重来:从ElasticSearch到MongoDB和Redis
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服