您当前的位置:首页 > 电脑百科 > 电脑知识

Graylog4.2集群部署完整教程

时间:2022-01-04 11:42:27  来源:  作者:walkingcloud

GrayLog多节点集群架构如下

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

下面介绍Graylog4.2集群部署过程

基础环境准备

三台服务器:centos7.9的虚拟机

/data分区(LVM) 用于Elasticsearch日志数据存储

内存大小为6GB

IP地址和主机名如下:

  • 192.168.31.211 graylog01 graylog01.walkingcloud.cn
  • 192.168.31.212 graylog02 graylog02.walkingcloud.cn
  • 192.168.31.213 graylog03 graylog03.walkingcloud.cn

均已关闭SElinux

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

一、配置MongoDB集群

1、三台均安装mongodb

cat > /etc/yum.repos.d/mongodb-org.repo << EOF
[mongodb-org]
name=MongoDB Repository
baseurl=https://mirrors.aliyun.com/mongodb/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF

yum install -y mongodb-org
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

2、三台均先启动mongodb

systemctl daemon-reload
systemctl enable mongod.service
systemctl start mongod.service
systemctl --type=service --state=active | grep mongod
firewall-cmd --add-port=27017/tcp --permanent --zone=public 
firewall-cmd --reload 
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

3、主节点生成授权认证keyfile文件并拷贝到其它节点

openssl rand -base64 756 > /var/lib/mongo/access.keyfile
chown mongod:mongod /var/lib/mongo/access.keyfile
chmod 600 /var/lib/mongo/access.keyfile 
scp -rp /var/lib/mongo/access.keyfile root@graylog02:/var/lib/mongo/
scp -rp /var/lib/mongo/access.keyfile root@graylog03:/var/lib/mongo/
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

4、vi修改/etc/mongod.conf

以主节点为例,修改配置文件

vi /etc/mongod.conf
net:
  port: 27017
  bindIp: 192.168.31.211 

security:
  keyFile: /var/lib/mongo/access.keyfile

replication:
  replSetName: graylog-rs
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

graylog02修改成如下

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

graylog03修改成如下

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

5、初始化集群

这里为了本地能登录mongo

先将bindIp: 192.168.31.211修改为bindIp: 0.0.0.0
并重启服务
systemctl restart mongod.service
Graylog4.2集群部署完整教程

 

输入mongo进数据库

use admin

rs.initiate( {
   _id : "graylog-rs",
   members: [
      { _id: 0, host: "192.168.31.211:27017" },
      { _id: 1, host: "192.168.31.212:27017" },
      { _id: 2, host: "192.168.31.213:27017" }
   ]
})

rs.status()查看集群状态
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

6、创建graylog数据库并设置密码

#修改admin用户密码
use admin
db.createUser({user: "admin", pwd: "Admin@2021", roles: ["root"]})
db.auth("admin","Admin@2021")
#创建graylog数据库并设置密码
use graylog
db.createUser({
   user: "graylog", 
   pwd: "Graylog2021",
  "roles" : [{
      "role" : "dbOwner",
      "db" : "graylog"
    }, {
      "role" : "readWrite",
      "db" : "graylog"
    }]
})
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

7、将主节点bindIp配置恢复并重启mongod服务

将graylog01的bindIp修改成192.168.31.211并重启服务

这时使用账号和密码登录mongo

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

在graylog02 重启mongod服务,使graylog01重新变为Primary角色

二、搭建Elasticsearch集群

1、三台节点均以rpm包方式安装Elasticsearch

cd  /opt
wget https://mirrors.cloud.tencent.com/elasticstack/yum/elastic-7.x/7.16.2/elasticsearch-7.16.2-x86_64.rpm

rpm -ivh elasticsearch-7.16.2-x86_64.rpm

systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl start elasticsearch.service
firewall-cmd --add-port=9200/tcp --permanent --zone=public 
firewall-cmd --reload 
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

2、创建存储和日志文件夹

mkdir -p /data/elasticsearch/data
mkdir -p /data/elasticsearch/logs
chown -R elasticsearch:elasticsearch /data/elasticsearch

cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml_default
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

3、修改elasticsearch.yml配置文件

vi/etc/elasticsearch/elasticsearch.yml

1)graylog01节点

#添加并修改成如下行

cluster.name: graylog-cluster
action.auto_create_index: false
node.name: graylog01
node.master: true
node.data: true
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
network.host: 192.168.31.211
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["192.168.31.211:9300", "192.168.31.212:9300", "192.168.31.213:9300"]
cluster.initial_master_nodes: ["graylog01"]
Graylog4.2集群部署完整教程

 


Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

2)graylog02节点

cat  /etc/elasticsearch/elasticsearch.yml | grep -v "^#" | grep -v "^$"

cluster.name: graylog-cluster
action.auto_create_index: false
node.name: graylog02
node.master: false
node.data: true
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
network.host: 192.168.31.212
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["192.168.31.211:9300", "192.168.31.212:9300", "192.168.31.213:9300"]

3)graylog03节点

cat  /etc/elasticsearch/elasticsearch.yml | grep -v "^#" | grep -v "^$"
cluster.name: graylog-cluster
action.auto_create_index: false
node.name: graylog03
node.master: false
node.data: true
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
network.host: 192.168.31.213
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["192.168.31.211:9300", "192.168.31.212:9300", "192.168.31.213:9300"]

4、三个节点均修改jvm.options配置文件上内存大小

firewall-cmd --add-port=9300/tcp --permanent --zone=public 
firewall-cmd --reload
vim /etc/elasticsearch/jvm.options
设置jvm内存大小为物理内存的一半
并重启elasticsearch.service
systemctl restart elasticsearch.service
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

5、查看elasticsearch集群状态

curl -s -XGET 'http://192.168.31.211:9200/_cluster/health?pretty=true'
curl -s -XGET 'http://192.168.31.211:9200/_cat/nodes?v'
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

三、安装GraylogServer并配置GraylogServer集群

1、安装jdk,pwgen和graylog-server

yum install -y JAVA-1.8.0-openjdk-headless.x86_64
yum install -y pwgen
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

rpm -ivh https://packages.graylog2.org/repo/packages/graylog-4.2-repository_latest.rpm
yum install graylog-server -y
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

systemctl enable graylog-server
systemctl start graylog-server

cp /etc/graylog/server/server.conf /etc/graylog/server/server.conf_default

pwgen -N 1 -s 96
XC0Epiv5SnWFdm82nsUWAJN3t2MHaFEaSFHd6RLPf1nzxwnmubT0n7NQdrK8jCDEOS05DtrkGHDDE61490OUJKBOOXIAT4LI

echo -n "Enter Password: " && head -1 </dev/stdin | tr -d 'n' | sha256sum | cut -d" " -f1
Enter Password: Graylog@2021
10dfabb9595634675701865aa1c6e774d89d59f4a104ab128fbffcdaa3cf8f7b
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

2、修改graylog的主配置文件server.conf

主节点graylog01的配置如下

/etc/graylog/server/server.conf 
cat /etc/graylog/server/server.conf | grep -v "^#" | grep -v "^$"
is_master = true
node_id_file = /etc/graylog/server/node-id
password_secret = XC0Epiv5SnWFdm82nsUWAJN3t2MHaFEaSFHd6RLPf1nzxwnmubT0n7NQdrK8jCDEOS05DtrkGHDDE61490OUJKBOOXIAT4LI
root_password_sha2 = 10dfabb9595634675701865aa1c6e774d89d59f4a104ab128fbffcdaa3cf8f7b
root_timezone = Asia/Shanghai
bin_dir = /usr/share/graylog-server/bin
data_dir = /var/lib/graylog-server
plugin_dir = /usr/share/graylog-server/plugin
http_bind_address = 192.168.31.211:9000
http_publish_uri = http://192.168.31.211:9000/
elasticsearch_hosts = http://graylog01:9200,http://graylog02:9200,http://graylog03:9200
rotation_strategy = count
elasticsearch_max_docs_per_index = 20000000
elasticsearch_max_number_of_indices = 20
retention_strategy = delete
elasticsearch_shards = 4
elasticsearch_replicas = 0
elasticsearch_index_prefix = graylog
allow_leading_wildcard_searches = false
allow_highlighting = true
elasticsearch_analyzer = standard
output_batch_size = 500
output_flush_interval = 1
output_fault_count_threshold = 5
output_fault_penalty_seconds = 30
processbuffer_processors = 8
outputbuffer_processors = 16
processor_wait_strategy = blocking
ring_size = 65536
inputbuffer_ring_size = 65536
inputbuffer_processors = 2
inputbuffer_wait_strategy = blocking
message_journal_enabled = true
message_journal_dir = /var/lib/graylog-server/journal
lb_recognition_period_seconds = 3
mongodb_uri = mongodb://graylog:Graylog2021@graylog01:27017,graylog02:27017,graylog03:27017/graylog?replicaSet=graylog-rs
mongodb_max_connections = 1000
mongodb_threads_allowed_to_block_multiplier = 5
proxied_requests_thread_pool_size = 32
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

3、重启graylog-server服务,并开放9000 web端口

建议将配置文件scp到graylog02和graylog03上

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

firewall-cmd --add-port=9000/tcp --permanent --zone=public 
firewall-cmd --reload
systemctl restart graylog-server
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

graylog02,graylog03节点修改如下三处即可

is_master = true
http_bind_address = 192.168.31.213:9000
http_publish_uri = http://192.168.31.213:9000/
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

登录Graylog主界面查看GrayLog集群情况

1、查看Nodes信息

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

2、查看Cluster信息

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

3、添加Input,可以设置成全局的Input

记得三台几点防火墙开放Input设置的端口,例如syslog1514

firewall-cmd --add-port=1514/udp --permanent --zone=public 
firewall-cmd --reload
Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Tips:修改graylog的jvm内存大小

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

Graylog4.2集群部署完整教程

 

(图片可点击放大查看)

本文参考如下链接完成

https://docs.graylog.org/v1/docs/multinode-setup
https://docs.mongodb.com/manual/tutorial/deploy-replica-set/
https://docs.mongodb.com/manual/tutorial/deploy-replica-set-with-keyfile-access-control/#std-label-deploy-repl-set-with-auth
https://cloud.tencent.com/developer/article/1615815
https://zhuanlan.zhihu.com/p/120698020
https://www.cnblogs.com/opsdemo/p/15035379.html


Tags:Graylog   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
GrayLog多节点集群架构如下 (图片可点击放大查看)下面介绍Graylog4.2集群部署过程基础环境准备三台服务器:CentOS7.9的虚拟机/data分区(LVM) 用于Elasticsearch日志数据存储内...【详细内容】
2022-01-04  Tags: Graylog  点击:(0)  评论:(0)  加入收藏
▌简易百科推荐
GrayLog多节点集群架构如下 (图片可点击放大查看)下面介绍Graylog4.2集群部署过程基础环境准备三台服务器:CentOS7.9的虚拟机/data分区(LVM) 用于Elasticsearch日志数据存储内...【详细内容】
2022-01-04  walkingcloud    Tags:Graylog   点击:(0)  评论:(0)  加入收藏
1Linux环境xxd命令如何编辑/修改二进制文件xxd工具虽然不能直接修改二进制文件,但xxd -r参数可把Hexdump文本转成二进制内容。convert (or patch) hexdump into binary.因此,...【详细内容】
2022-01-04  铁锈笔记    Tags:xxd命令   点击:(3)  评论:(0)  加入收藏
物理内存的组织方式前面咱们讲虚拟内存,涉及物理内存的映射的时候,我们总是把内存想象成它是由连续的一页一页地块组成的。我们可以从 0 开始对物理页编号,这样每个物理页都会...【详细内容】
2021-12-31  深度Linux    Tags:物理内存   点击:(4)  评论:(0)  加入收藏
回答这个问题前首先要了解一度电的定义一度电= 1000W&middot;h ,是一个能量单位,一个功率为1000w的设备持续运作一小时就会消耗1度电。所以台式机多少时间一度电完全取决于台...【详细内容】
2021-12-20  数码榜    Tags:台式电脑   点击:(7)  评论:(0)  加入收藏
你是不是很多时候都会紧急冲向电源插座以拯救笔记本电脑的电量?很多时候由于附近没有方便的插座,一是会误事,二是会导致尴尬。幸运的是,现代笔记本电脑比前辈高效得多。如今,即...【详细内容】
2021-12-16  趣玩公社    Tags:电池   点击:(25)  评论:(0)  加入收藏
电脑在我们生活中的重要性不言而喻。如何保证自己的电脑流畅好用,对于很多用户来说都非常重要。作为一个理科男和IT从业者,对于自己的电脑还是非常在意的,会定期的进行整理,保持...【详细内容】
2021-12-09  小伊评科技    Tags:电脑   点击:(14)  评论:(0)  加入收藏
大家好,我是良许。不管我们使用什么操作系统,无论是 Windows、macOS 还是 Linux ,里面都安装了许多软件、驱动程序和固件。但是,这三者概念有区别呢?我在朋友圈做了个小调查,发现...【详细内容】
2021-11-30  良许Linux    Tags:固件   点击:(12)  评论:(0)  加入收藏
澎湃问吧世界著名密码史学家戴维&middot;卡恩曾说:“人类使用密码的历史几乎与使用文字的时间一样长”,这意味着人类密码领域的较量已近五千年。提及“密码”一词,大多数人会想...【详细内容】
2021-11-24    澎湃新闻  Tags:密码   点击:(16)  评论:(0)  加入收藏
由于去中心化域名和账户体系可以承载应用、网站和用户身份,因此有理由相信,这是 Web3 世界中不可或缺的一环。撰文:潘致雄如果回忆一下初次进行的加密货币转账时的体验,特别是在...【详细内容】
2021-11-03  链闻ChainNews    Tags:ENS   点击:(27)  评论:(0)  加入收藏
 文件系统(File System)是计算机系统必不可少的组成部分,可以说除了部分结构简单的单片机系统之外,文件系统是支撑每一个计算机系统运行的最重要的支撑,无论是操作系统、应用程...【详细内容】
2021-11-01  欧工玩转嵌入式  CSDN  Tags:FAT32   点击:(33)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条