Graylog3 布署

前言

因为先前的日志收集系统存在一些功能缺陷,经过一番了解,最后决定布署Graylog3,本文包含Graylog3服务器&客户端的布署

 

服务器组件列表

OS: Centos 7

oracle jdk: jdk-8u251-linux-x64.tar.gz

mongodb: mongodb-linux-x86_64-3.6.13.tgz

elasticsearch : elasticsearch-6.8.3.rpm

graylogserver: graylog-3.1-repository_latest.rpm

 

客户端组件

  • Windows:

graylog-sidecar: graylog_sidecar_installer_1.0.2-1.exe

  • Linux:

graylog-sidecar: graylog-sidecar-1.0.0-1.x86_64.rpm

filebeat: filebeat-7.4.0-x86_64.rpm

 

服务器ip: 172.24.42.11

 

安装 jdk

到官网下载 jdk1.8

下载页面: https://www.oracle.com/java/technologies/javase-downloads.html

# mkdir /home/java
# tar -zxvf jdk-8u251-linux-x64.tar.gz -C /home/java

 

修改环境变量

# vim /etc/profile
添加
export JAVA_CMD=/home/java/jdk1.8.0_251/bin
export JAVA_HOME=/home/java/jdk1.8.0_251
export PATH=$PATH:$JAVA_HOME/bin

 

生效

# source /etc/profile

 

验证

# java -version
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

 

建立软链接

# cd /bin
# ln -s /home/java/jdk1.8.0_251/bin/java

 

 

安装 mongodb

 

下载地址: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.13.tgz

解压安装

# tar -zxvf mongodb-linux-x86_64-3.6.13.tgz  -C /usr/local

 

增加环境变量

# vim /etc/profile
增加一行:
export MONGODB_HOME=/usr/local/mongodb-linux-x86_64-3.6.13
在 PATH 后面增加(含冒号) :$MONGODB_HOME/bin

生效
# source /etc/profile

 

创建数据库文件和 log 目录(事先评估好容量)

# mkdir -p /db/data
# mkdir -p /db/logs

 

新建配置文件

vim /usr/local/mongodb-linux-x86_64-3.6.13/mongo.conf
dbpath=/db/data
logpath=/db/logs/mongo.log
logappend=true
journal=true
quiet=true
port=27017
fork=true
bind_ip=0.0.0.0

 

测试

# cd /usr/local/mongodb-linux-x86_64-3.6.13/
# bin/mongod -f mongo.conf 
about to fork child process, waiting until server is ready for connections.
forked process: 1518
child process started successfully, parent exiting

# lsof -i:27017
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mongod  1518 root   11u  IPv4  21535      0t0  TCP *:27017 (LISTEN)

 

设置服务启动

# vim /lib/system/system/mongodb.service
添加以下内容
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/mongodb-linux-x86_64-3.6.13/bin/mongod --config /usr/local/mongodb-linux-x86_64-3.6.13/mongo.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb-linux-x86_64-3.6.13/bin/mongod --shutdown --config /usr/local/mongodb-linux-x86_64-3.6.13/mongo.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 

修改权限

# chmod 754 /lib/systemd/system/mongodb.service

 

启动服务/设置开机启动

# pkill –f -9 mongod
# systemctl start mongodb
# systemctl enable mongodb

 

安装 elasticsearch

 

选择版本下载 rpm 安装包,

下载页面: https://www.elastic.co/cn/downloads/past-releases

6.8.3的下载地址:

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.3.rpm

 

安装

# rpm -ivh elasticsearch-6.8.3.rpm

安装后会自动建立服务账号 elasticsearch, 可以查看文件 /etc/passwd

 

建立目录

# mkdir –p /data/elasticsearch/data
# mkdir –p /data/elasticsearch/logs

 

设置目录权限

# chown -R elasticsearch:elasticsearch /data/elasticsearch/

 

修改配置

# vim /etc/elasticsearch/elasticsearch.yml
修改以下几个参数,没有的就添加
cluster.name: my-cluster
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
network.host: 0.0.0.0
action.auto_create_index: .watches,.triggered_watches,.watcher-history-*

 

添加 JAVA_HOME

# vim /etc/sysconfig/elasticsearch
修改
JAVA_HOME=/home/java/jdk1.8.0_251

 

启动服务

# systemctl start elasticsearch

 

测试

检查端口 9200 是否开启
# lsof –i:9200
从远程浏览器输入 http://172.24.42.11:9200
显示以下内容表示正常
{
  "name" : "oifThn1",
  "cluster_name" : "my-cluster",
  "cluster_uuid" : "DDmYdQUQTVi-0EBLFk-z1w",
  "version" : {
    "number" : "6.8.3",
    "build_flavor" : "default",
    "build_type" : "rpm",
    "build_hash" : "0c48c0e",
    "build_date" : "2019-08-29T19:05:24.312154Z",
    "build_snapshot" : false,
    "lucene_version" : "7.7.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

 

 

安装 graylog-server

 

下载 graylog-server 的 repo

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

 

先安装 repo 文件

# rpm –ivh graylog-3.1-repository_latest.rpm

 

安装

# yum install graylog-server

 

安装密码生成器 pwgen

下载网址: http://sourceforge.net/projects/pwgen

# yum install gcc
# tar zxvf pwgen-2.08.tar.gz
# cd pwgen-2.08
# ./configure && make && make install

 

密码配置

# pwgen -N 1 -s 96
将生成的密码填入 /etc/graylog/server/server.conf 的 password_secret= 字段

# yum install perl-Digest-SHA
得到登录密码 SHA2 的值

# echo -n mypassword | shasum -a 256  其中 mypassword为想要设置的密码字符串
将生成的字符串填入 /etc/graylog/server/server.conf 的root_password_sha2 = 字段

 

其它配置

# vim /etc/graylog/server/server.conf
修改以下字段
root_timezone=Asia/Shanghai
elasticsearch_bind_address=0.0.0.0:9000
http_publish_uri=http://172.24.42.11:9000

 

启动服务

# systemctl enable graylog-server
# systemctl start graylog-server

服务启动失败的日志在 /var/log/messages 里

服务启动后的日志在 /var/log/graylog-server/server.log 里

 

启动服务后,检查端口 9000

# lsof -i:9000

 

配置 graylog

打开网址 http://172.24.42.11:9000

登录用户名: admin

密码: 前文设置的 (mypassword 出现的地方)

 

  • 创建 sidecar 的 token

点击 System 下拉式菜单的 Sidecars 菜单项

001

 

点击蓝色链接 “Create or reuse a token for the graylog-sidecar user.”

002

 

输入 Token name ,点击 Create Token 按钮

003

 

点击 Copy to clipboard 按钮获取 token, 保存好后面要用到

 

  • 设置输入点

点击 System/Authentications 下拉菜单的 Inputs 菜单菜

005

 

点击 Select input 下拉输入框的 Beats 项后,点击 Launch new input 按钮

006

 

在弹出的页面中

从 Node下拉菜单选取节点(本文只有1个节点)

输入 Title

007

 

钩选底部的 Do not add Beats type as prefix 单选框,点击 Save 按钮

008

 

可以看到新建好的 input-1 的设置

009

 

以同样的方法建立 input-2, 将端口设置为 5046 (后面会用到)

 

  • 建立Sidecar 配置

再点击 System 下拉菜单的 Sidecars 菜单菜

001

 

点吉右上方的 Configuration 按钮进入配置页面

010

 

点击 Create Configuration 按钮建立1项配置(用来收集 windows 日志)

011

 

设置基本信息

输入 Name

点选 Color

选择收集器 winlogbeat on Windows

012

 

配置脚本(服务器ip/port,日志类型等),点击下方 Create 按钮

013

 

再点击 Create Coniguration 按钮建立1项配置(用来收集 linux 日志)

输入 Name

点选 Color

选择收集器 filebeat on linux

027

 

配置脚本(端口不能与其它配置相同), 配置日志的源文档(可以是系统日志或Nginx等),点击 Create 按钮

028

 

  • 安装 graylog-sidecar for windows 客户端

下载地址https://github.com/Graylog2/collector-sidecar/releases

选择下载 graylog_sidecar_installer_1.0.2-1.exe

在 windows 服务器上执行

015

016

 

填入 api url, 输入实例: sidecar-windows, 输入之前建立的 token(Create Token的地方)

017

018

 

安装/启动服务

以管理员身份启动 cmd.exe 进入到 graylog-sidecar 的安装目录,执行以下命令
> graylog-sidecar.exe -service install
> graylog-sidecar.exe -service start

 

检查服务是否已启动

020

 

 

  • 将 windows 客户端与Graylog-Server配置进行关联

回到 graylog 系统的网站,点击右上角的 Administration 按钮

可以看到刚才安装 graylog-sidecar 的 windows 客户端,钩选 winlogbeat,

再点击右侧的 Configure 下拉菜单,点击刚才建立的 sidecar 配置(蓝色)

021

 

点击 Confirm 按钮确认

022

 

点击右侧的 Process 正拉菜单的 Start 项

023

 

点击 Confirm 按钮确认

024

 

点击 Search 菜单项

025

 

查看 Messages 模块,可以看到已经收集到刚才的 windows 服务器的日志

026

 

 

  • 安装 graylog-sidecar for linux 客户端

下载地址: https://github.com/Graylog2/collector-sidecar/releases

下载安装包 graylog-sidecar-1.0.2-1.x86_64.rpm

安装

# rpm -ivh graylog-sidecar-1.0.0-1.x86_64.rpm

 

修改配置

# vim /etc/graylog/sidecar/sidecar.yml
同 windows 客户端一样,修改 
server_url 为 “http://172.24.42.11:9000/api/”
server_api_token 为先前建立的 token
node_name: "node-1"
update_interval: 10
send_status: true

 

安装/启动服务

# graylog-sidecar -service install
# systemctl start graylog-sidecar

 

安装 filebea

下载页面 https://www.elastic.co/downloads/past-releases/filebeat-7-4-0

下载地址 https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.4.0-x86_64.rpm

安装

# rpm -ivh filebeat-7.4.0-x86_64.rpm

 

启动服务

# systemctl enable filebeat
# systemctl start filebeat

 

将 linux 客户端与配置进行关联

回到 graylog 系统的网站,点击右上角的 Administration 按钮

可以看到刚才安装 graylog-sidecar 的 linux 客户端,钩选 filebeat

再点击右侧的 Configure 下拉菜单,点击刚才建立的 sidecar 配置(棕色)

030

 

回到 Search 页面,就可以看到 linux 收集到的日志了

031

 

至此,布署的部分已完成

然而

Graylog 的使用才才开始,包含日志选择收集, 日志预警,多节点,集群等

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值