千家信息网

Graylog2+Elasticsearch+Nxlog

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,博客地址已转移至:http://cocojoey.lofter.com/post/1eff2f40_10a6d448这里今后不再更新。。。。。。。。。。。。。日志管理工具:收集,解析,可视化Elast
千家信息网最后更新 2025年12月01日Graylog2+Elasticsearch+Nxlog

博客地址已转移至:http://cocojoey.lofter.com/post/1eff2f40_10a6d448

这里今后不再更新。。。。。。。。。。。。。

日志管理工具:收集,解析,可视化

  • Elasticsearch - 一个基于Lucene的文档存储,主要用于日志索引、存储和分析。

  • Logstash -管理事件和日志的工具

  • Kibana - 可视化日志和时间戳数据

  • Graylog2 -具有报警选项的可插入日志和事件分析服务器

  • Nxlog-跨平台,模块化,具备日志缓冲与流量控制、定时作业、内置配置语言的日志采集神器



Graylog与ELK方案的对比

ELK:Elasticsearch+Logstash+Kibana

Graylog:Elasticsearch+Nxlog+Graylog-server(集成graylog-web)


Graylog架构图:


最小化架构图:

Graylog集群架构图:


ELK架构图:



简要说两句:商业日志工具Splunk,号称日志界的Google。还有Nxlog,它们有多牛逼我就不再赘述了。而Graylog简直就是开源版的Splunk。


此次,我们进行最小化安装,集群方案的部署后面会陆陆续续更新:

安装组件:

Mongodb

Elasticsearch

Graylog-server(集成了Graylog-web)

Graylog Collector Sidecar(旧版本是Graylog Collector,已经废弃了 )

安装环境:

Centos7.3+Graylog2.3+elasticsearch3.4.5+Nxlog2.9+Collector-Sidecar-0.1.3

主机IP:192.168.55.33 此次配置服务端和客户端都在一台主机上


第一部分: Server端的部署


MongoDB:

1:安装mongodb的yum源

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

gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc


2:安装mongodb

yum install mongodb-org


3:添加系统服务及启动

chkconfig --add mongod

systemctl daemon-reload

/sbin/chkconfig mongod on

systemctl start mongod.service

注意:这里没有进行mongodb的相关配置包括graylog连接的配置,graylog启动时会自行创建相关数据


Elasticsearch:

1:首先导入Elastic GPG密钥

rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch


2:添加yum源

vim /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-2.x]

name=Elasticsearch repository for 2.x packages

baseurl=https://packages.elastic.co/elasticsearch/2.x/centos

gpgcheck=1

gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch

enabled=1

3:安装elasticsearch

yum install elasticsearch


4:配置elasticsearch,修改以下几个地方,elasticsearch详细配置自行谷歌

vim /etc/elasticsearch/elasticsearch.yml

cluster.name: graylog2 elasticsearch集群名称,若有多个集群,可根据此属性区分。

node.name: node-142 集群节点名称,elasticsearch启动时会自动创建,也可手动配置

network.host: 192.168.55.33 设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0

http.port: 9200 设置对外服务的Http端口,默认是9200

transport.tcp.port: 9300 设置节点间交互的tcp端口,默认是9300

discovery.zen.ping.unicast.hosts: ["192.168.55.33"] 设置集群中master集群初始化列表,这个数组里的机器将被自动发现加入集群,多个用逗号隔开

5:添加至系统服务及启动

chkconfig --add elasticsearch

systemctl daemon-reload

systemctl enable elasticsearch.service

systemctl restart elasticsearch.service


Graylog:

1:安装Graylog的yum源及epel源

rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-2.3-repository_latest.rpm

yum install epel-release

2:安装Graylog-server及相关组件

yum install graylog-server pwgen

3:配置graylog2,修改以下几个地方,其他地方保持默认,也可根据实际情况进行设置,详解自行谷歌

password_secret WxWxFDNy36Wgl3VMQoFVyCdJl5TpiilNPujRBW3xoyYx5cB8aP8N

对密码进行加盐处理(就是密码加盐也就是密码后面加上很长的一串字符串再进行加密),例如

md5(md5(password)+salt)和SHA512(SHA512(password)+salt) 方式

这里使用pwgen生成密码:pwgen -N 1 -s 96

root_password_sha2 72d7c50d4e1e267df628ec2ee9eabee

graylog-web登录的用户密码,使用 sha256sum进行加密。

密码加密命令:echo -n yourpassword | sha256sum

root_email email报警地址,此次博客未涉及到邮件报警相关内容,不用管,此后更新

root_timezone = +08:00 设置时区

rest_listen_uri = http://192.16855.33:9000/api/

用于接受Graylog Collector Sidecar发送的心跳信息,collectors也可以访问次uri

web_listen_uri = http://192.168.0.200:9000/ graylog-web访问地址

elasticsearch_cluster_name = graylog2 必须与elasticsearch设置相同

elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.55.33:9300

添加elasticsearch集群的主机,多个主机用逗号隔开

mongodb_uri = mongodb://localhost/graylog MongoDB服务器身份验证,使用默认即可


4:添加系统服务及启动

chkconfig --add graylog-server

systemctl daemon-reload

systemctl enable graylog-server.service

systemctl start graylog-server.service


至此,Graylog-server安装完毕,可通过浏览器输入192.168.55.33:9000进行访问,登录,以上配置文件设计的

密码加密选项必须设置,并且必须使用指定密码工具生成密码才能正常登录,否则将失败


第二部分: Collector端的部署

1:简述

Graylog Collector Sidecar是一种用于采集日志的轻量级配置管理系统,也称为后端。

作为守护进程运行。

这些配置通过Graylog Web界面以图形方式进行集中管理。对于特定需求,可以将原始

后端配置(称为Snippets)直接存储到Graylog中。

使用REST API,Sidecar守护进程将定期获取目标的所有相关配置。实际获取哪些配置

取决于主机的Sidecar配置文件中定义的"标签"。例如,Web服务器主机可以

包括linux和nginx标签。

在第一次运行或检测到配置更改时,Sidecar将生成(呈现)相关的后端配置文件。

然后它将启动或重新启动那些重新配置的日志收集器。

目前,Sidecar支持Nxlog,Filebeat和Winlogbeat。支持的功能几乎相同,可以在

web界面进行切换,对于所有收集器,可以使用带有SSL加密的GELF输出。

在服务器端,您可以与多个收集器共享输入,例如,所有Filebeat和Winlogbeat

实例都可以将日志发送到单个Graylog-Beats输入。

此次博客我们以Nxlog作为后端来进行配置。


1:安装Nxlog和collector-sidecar

yum源现在没有ollector-sidecar的,去官方下载rpm包进行安装。

yum install collector-sidecar-0.1.3-1.x86_64.rpm nxlog-ce-2.9.1716-1_rhel7.x86_64.rpm


2:添加系统服务及用户授权

gpasswd -a nxlog root

chown -R nxlog.nxlog /var/spool/collector-sidecar/nxlog

graylog-collector-sidecar -service install

systemctl start collector-sidecar


3:配置Nxlog

vim /etc/nxlog.conf

Module xm_gelf

Moduleim_file

File"/var/log/messages"

Moduleom_udp

Host 192.168.55.33

Port 12201

Pathin => out


4:配置colloector

vim /etc/graylog/collector-sidecar/collector_sidecar.yml

server_url: http://192.168.55.33:9000/api/

update_interval: 10

tls_skip_verify: false

send_status: true

list_log_files:

node_id: graylog-collector-sidecar

collector_id: file:/etc/graylog/collector-sidecar/collector-id

cache_path: /var/cache/graylog/collector-sidecar

log_path: /var/log/graylog/collector-sidecar

log_rotation_time: 86400

log_max_age: 604800

tags:

- nginx

backends:

- name: nxlog

enabled: true

binary_path: /usr/bin/nxlog

configuration_path: /etc/graylog/collector-sidecar/generated/nxlog.conf

5:重启服务

systemctl restart collector-sidecar systemctl restart-nxlog

至此,Collector相关的东西配置完成,接下来就是Graylog-Web端相关的配置


Graylog-Web


1: 浏览器输入192.168.55.33进入管理界面,配置input和output相关信息


点击collectors --> manage configurations --> creat configurations



采集器名字

tags标签名字(与采集器客户端配置文件相同)


设置output和input相关信息,与nxlog的配置文件相同


配置完成后,重启客户端的collector-sidecar:systemctl restart collector-sidecar


graylog web查看Collectors 是否运行正常:


graylog web 设置 日志接收

System --> inputs --> 选择哪种方式读取日志 --> 设置相关属性(设置服务器端的ip地址) --> 保存


查看是否正常运行

search:可以进行正则匹配高亮显示结果


至此,全部安装完毕,使用正常,若有不明白或无法正常工作的地方,请留言或者加群讨论:656633543

谢谢各位光临的朋友


该博客会持续优化更新
































配置 日志 服务 密码 集群 主机 地址 文件 服务器 系统 加密 管理 相同 博客 地方 多个 工具 端的 更新 输入 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 华为数据库审计系统 数据库突然不能查询上一年的数据 中国买下根服务器 佛山智能软件开发报价 安徽时代网络技术服务标准 数据库单个用户取消 服务器都要配交换机吗 卖货系统软件开发 服务器做raid5 重庆管理系统软件开发哪家好 铁路网络安全防护可研报告 以下哪些不是网络安全法 梦幻模拟战浮空城服务器找不到了 使用图形化界面创建数据库 百度在线网络技术北京有限公司是 福州恒翔网络技术 高校网络安全等级 软件开发视频完整版 幻塔安卓星岛服务器怎么下载 东西湖网络安全培训中心 svn搭建远程服务器 滨湖区互联网智能科技产品供应 苏州智能服务器优质推荐 曙光的服务器怎么设置启动项 密集网络技术应用 财务软件开发公司是什么意思 承德优创网络技术服务有限公司 网络安全和疫情防控教育 南通智能网络安全 西安网络安全集成商
0