安装并配置 Graylog Server 以在 Linux 上管理日志安装并配置 Graylog Server 以在 Linux 上管理日志安装并配置 Graylog Server 以在 Linux 上管理日志安装并配置 Graylog Server 以在 Linux 上管理日志
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

安装并配置 Graylog Server 以在 Linux 上管理日志

开源 Graylog 服务器允许您从不同来源收集日志并在 Web 界面中可视化日志。了解如何配置 Graylog 服务器。

您是否想过如何管理大量日志?我相信,每个系统管理员都有过这样的经历。解决方案非常简单:“配置 Graylog 服务器。”

在上一篇教程中,我展示了如何开始使用 Buildah 来管理 Linux 容器。在本教程中,我将向您展示如何配置 Graylog 服务器来管理大量日志(大数据)。

什么是格雷日志?

Graylog 是一个用于日志管理的开源平台。它允许您收集和聚合来自不同目的地的日志。然后,它还使您能够在 Web 界面中可视化日志。

安装和配置Graylog服务器有一些先决条件,如下:

  1. 安装openJDK

  2. 安装 MongoDB

  3. 安装Elasticsearch

Graylog服务器的基本组件是:

MongoDB:数据库,存储配置和元信息。

Elasticsearch:一个引擎,可以提高搜索效率。它还存储日志消息。它为搜索提供了便利。所有输入/输出操作都发生在该引擎中。

GrayLog Server:解析器,从不同的目的地收集日志。

Graylog Web 界面:使用 GUI 管理日志相关配置的仪表板。 Web 界面提供了更简单、更简洁的方法来处理配置。

让我们从 Graylog 服务器安装开始。我们将逐步完成该程序。

Graylog 服务器的先决条件

让我们首先安装 Graylog 服务器所需的组件。

请注意,我在本教程中使用的是 Red Hat Linux,因此安装步骤显示了 Yum 软件包管理器。如果您使用其他发行版,则应该使用您的发行版的包管理器。

安装openJDK

首先我们将安装 openJDK。为什么需要 OpenJDK?因为,Elasticsearch是基于Java的。您也可以使用 OracleJDK,但我更喜欢开源版本 OpenJDK。

# yum install java-1.8.0-openjdk-headless.x86_64 -y

# yum install epel-release -y

# yum install pwgen -y

安装Elasticsearch

安装好openJDK后,让我们转向Elasticsearch。该引擎在 Graylog 服务器中发挥着良好的作用。 Elasticsearch引擎可以存储和搜索大量数据。这就是为什么它在处理大数据时是首选的。

Elasticsearch满足了需要复杂搜索的应用程序的需求。每当用户请求查询时,Elasticsearch 都会帮助在 Graylog Web 界面中显示消息。

我们将使用以下命令导入 GPG 密钥:

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

由于默认的 Elasticsearch 存储库在 Centos 7/Rhel 7 中不可用,因此我们需要手动创建存储库文件,包括 Elasticsearch 存储库文件中的以下条目。

# vi /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

现在您已准备好安装 Elasticsearch 包。

# yum install elasticsearch -y 

安装Elasticsearch包后,将生成elasticsearch.yml 配置文件,将集群名称设置为graylog如下。

# vi /etc/elasticsearch/elasticsearch.yml

cluster.name: graylog

我们已准备好启动并启用elasticsearch.service

# chkconfig --add elasticsearch
# systemctl daemon-reload
# systemctl enable elasticsearch.service
# systemctl start elasticsearch.service

启动并启用elasticsearch.service后;下面的curl命令应该给你如图所示的输出。

curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'

{ "cluster_name" : "graylog", "status" : "green", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "active_primary_shards" : 1, "active_shards" : 1, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 } 

安装 MongoDB

我们需要在 MongoDB 存储库文件中添加包含以下条目的 MongoDB 存储库,因为默认情况下它在 Centos 7/ Rhel 7 上尚不可用。

 # vi /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

安装 MongoDB 包。

# yum install mongodb-org -y

启动并启用mongod.service。

# chkconfig --add mongod
# systemctl daemon-reload
# systemctl enable mongod.service
# systemctl start mongod.service

安装和配置 Grylog 服务器

完成并检查所有先决条件后。现在是配置和安装graylog服务器的时候了。您可以从其网站下载graylog服务器的最新开源版本。

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

安装 Graylog 服务器:

# yum install graylog-server -y 

使用以下命令生成密钥。

# pwgen -N 1 -s 96
D4bqf7doK2zVjFOie043Gk3NgVV1548R7imGV74MHUJa08xvwlNxWvroGjBlQd1mtAYThbym3UNUVFhMY9Wu3CFyKmd35WW

为 root 用户设置哈希密码。请注意,您在 Graylog Web 界面注册时将使用此密码。

# echo -n YourPassword | sha256sum
e7cf3ef4f17c3999a94f2c6f612e8a888e5b1026878e4e19398b23bd38ec221a

现在,在文件 server.conf 中输入 root 密码和生成的密钥。还要添加其他所需的参数。

# vi /etc/graylog/server/server.conf

password_secret = D4bqf7doK2zVjFOie043Gk3NgVV1548R7imGV74MHUJa08xvwlNxWvroGjBlQd1mtAYThbym3UNUVFhMY9Wu3CFyKmd35WWZ
root_password_sha2 = e7cf3ef4f17c3999a94f2c6f612e8a888e5b1026878e4e19398b23bd38ec221a
root_email = [email 
root_timezone=UTC
elasticsearch_discovery_zen_ping_unicast_hosts = <your-server-ip-address>:9300
elasticsearch_shards=1
script.inline: false
script.indexed: false
script.file: false

在同一文件中输入这两个参数并指定值,以便访问 Graylog Web 界面。 Graylog Web 界面将在 Web 浏览器上监听 TCP 端口 12900 和 9000。

rest_listen_uri = http://192.168.1.200:12900/
web_listen_uri = http://192.168.1.200:9000/
# chkconfig --add graylog-server
# systemctl daemon-reload
# systemctl enable graylog-server.service
# systemctl start graylog-server.service

配置防火墙端口

我们之前已经看到,我们在配置文件中提到了一些用于 Web 界面的端口。我们在防火墙的帮助下管理这些端口。以下是在防火墙设置中永久添加这些 TCP 端口的步骤。请执行以下命令来管理端口:

# firewall-cmd --permanent --zone=public --add-port=9000/tcp
# firewall-cmd --permanent --zone=public --add-port=12900/tcp
# firewall-cmd --permanent --zone=public --add-port=1514/tcp

在防火墙中添加端口后,不要忘记运行以下命令,以反映您刚刚所做的更改。

# firewall-cmd --reload

为了管理selinux策略,我们将安装policycoreutils-python packag

# yum install policycoreutils-python -y

以下命令确保您的 Web 界面有网络可供访问

# setsebool -P httpd_can_network_connect 1

使用 semanage 命令,我们将允许 Graylog REST API 和 Elasticsearch HTTP API 连接到 Web 界面。如果你想了解semanage命令语法,可以参考semanage manpage。

# semanage port -a -t http_port_t -p tcp 9000
# semanage port -a -t http_port_t -p tcp 9200

允许 MongoDB 默认端口。

# semanage port -a -t mongod_port_t -p tcp 27017

访问 Graylog Web 界面

打开 Web 浏览器并输入 URL http://your_ip_address:9000。您将被重定向到以下页面。

要登录 Graylog Web 界面,请输入用户名 admin 和密码 – YourPassword(我们已按照上述命令进行设置)。 Graylog Web 界面的默认用户名和密码是“admin”、“admin”。

就是这样。现在,借助出色的开源 Graylog 服务器,您可以以可视化方式管理应用程序/服务器日志。

我希望本教程对您有所帮助。请在评论部分留下您的建议。

塞维沙·杜德冈卡 编剧

©2015-2025 艾丽卡 support@alaica.com