Graylog之最小化部署安装(Ubuntu 22.04)

发布于:2022-11-03 ⋅ 阅读:(586) ⋅ 点赞:(0)

Graylog - 日志监控系统

Graylog 是一个开源的日志聚合、分析、审计、展现和预警工具。在功能上来说,和 ELK 类似,但又比 ELK 要简单很多。依靠着更加简洁,高效,部署使用简单的优势很快受到许多人的青睐。当然,在扩展性上面确实没有ELK好,但是其有商业版本可以选择。

Graylog - 工作流程介绍

部署 graylog 最简单的架构就是单机部署,复杂的也是部署集群模式,架构图如下所示。我们可以看到其中包含了三个组件,分别是 Elasticsearch、MongoDb 和 Graylog。其中,Elasticsearch 用来持久化存储和检索日志文件数据(IO 密集),MongoDb 用来存储关于 Graylog 的相关配置。 而Graylog 来提供 Web 界面和对外接口的(CPU 密集)。

![在这里插入图片描述](https://img-blog.csdnimg.cn/b022d345a3a542538fa9f065fcfc36b1.png

言归正传,开始安装:

  1. 安装依赖包
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install apt-transport-https openjdk-18-jre-headless uuid-runtime pwgen
  1. 安装MongoDB

导入包管理系统使用的公钥

wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -

创建列表文件并更新资源库

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
sudo apt update

安装libssl

sudo apt install curl
curl -LO http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1-1ubuntu2.1~18.04.20_amd64.deb
sudo dpkg -i ./libssl1.1_1.1.1-1ubuntu2.1~18.04.20_amd64.deb

安装mongodb

sudo apt install -y mongodb-org

安装完成后启动mongodb并添加到随机开启中

sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod

状态

● mongod.service - MongoDB Database Server
     Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-11-03 17:40:36 CST; 7s ago
       Docs: https://docs.mongodb.org/manual
   Main PID: 68061 (mongod)
     Memory: 62.9M
        CPU: 173ms
     CGroup: /system.slice/mongod.service
             └─68061 /usr/bin/mongod --config /etc/mongod.conf

11月 03 17:40:36 Virtual-Machine systemd[1]: Started MongoDB Database Server.
  1. 安装Elasticsearch

首先安装Elastic GPG密钥,然后添加包含以下内容的存储库文件中,Garylog可以与elasticsearch 7.x版本一起使用,按照以下安装Elasticsearch的开源版本。

wget -q https://artifacts.elastic.co/GPG-KEY-elasticsearch -O myKey
sudo apt-key add myKey
echo "deb https://artifacts.elastic.co/packages/oss-7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
sudo apt-get update && sudo apt-get install elasticsearch-oss

修改配置文件:

sudo tee -a /etc/elasticsearch/elasticsearch.yml > /dev/null <<EOT
cluster.name: graylog
action.auto_create_index: false
EOT

安装配置完成后启动Elasticsearch并添加到随机开启中

sudo systemctl enable elasticsearch.service
sudo systemctl restart elasticsearch.service
sudo systemctl status elasticsearch.service

状态

● elasticsearch.service - Elasticsearch
     Loaded: loaded (/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-11-03 17:45:47 CST; 1s ago
       Docs: https://www.elastic.co
   Main PID: 70838 (java)
      Tasks: 61 (limit: 9454)
     Memory: 1.2G
        CPU: 12.043s
     CGroup: /system.slice/elasticsearch.service
             └─70838 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -XX:-OmitStackTraceInFastThrow -XX:+ShowCodeDetailsInExceptionMessages -Dio.netty.noUnsafe=true -Dio.netty.noKe>

11月 03 17:45:39 Virtual-Machine systemd[1]: Starting Elasticsearch...
11月 03 17:45:47 Virtual-Machine systemd[1]: Started Elasticsearch.
  1. 安装Graylog

现在使用以下命令安装Graylog存储库配置和Graylog本身:

wget https://packages.graylog2.org/repo/packages/graylog-4.3-repository_latest.deb
sudo dpkg -i graylog-4.3-repository_latest.deb
sudo apt-get update && sudo apt-get install graylog-server graylog-enterprise-plugins graylog-integrations-plugins graylog-enterprise-integrations-plugins

安装完成后,首先生成password_secret密码

pwgen -N 1 -s 96

生成root_password_sha2密码 (后续Web登录时所需要使用的密码)

echo -n"Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1

到配置文件*/etc/graylog/server/server.conf* 中,将生成的password_secret密码和root_password_sha2密码字符串,
然后修改web登陆接口,默认端口9000,可以修改。

完成修改后保存,然后启动Graylog

systemctl daemon-reload
systemctl enable graylog-server.service
systemctl start graylog-server.service

状态:

● graylog-server.service - Graylog server
     Loaded: loaded (/lib/systemd/system/graylog-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-11-03 17:51:17 CST; 7s ago
       Docs: http://docs.graylog.org/
   Main PID: 74133 (graylog-server)
      Tasks: 117 (limit: 9454)
     Memory: 918.9M
        CPU: 23.502s
     CGroup: /system.slice/graylog-server.service
             ├─74133 /bin/sh /usr/share/graylog-server/bin/graylog-server
             └─74174 /usr/bin/java -Xms1g -Xmx1g -XX:NewRatio=1 -server -XX:+ResizeTLAB -XX:-OmitStackTraceInFastThrow -Djdk.tls.acknowledgeCloseNotify=true -Dlog4j2.formatMsgNoLookups=true -jar -Dlog4j.configurationFile=file:///etc/graylog/server/log4j2.xml -Djava.library.path=/usr/share/graylog-server/lib/sigar -Dgraylog2.installation_source=deb>

11月 03 17:51:17 Virtual-Machine systemd[1]: Started Graylog server.
11月 03 17:51:17Virtual-Machine graylog-server[74174]: WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.

最后可以使用浏览器登陆 http://ip:9000

默认管理员用户名:admin

密码:root_password_sha2配置设定的密码

在这里插入图片描述