如何在 Ubuntu 22.04 上安裝 Graylog 開源日志管理平臺

簡介

Graylog 的開源特性、豐富的功能、靈活性和可擴展性使其成為一個流行的日志管理平臺。在本教程中,我將向你展示如何在 Ubuntu 22.04 上安裝 Graylog,包括配置 Graylog 服務器軟件包和訪問 Graylog Web UI。

Graylog 是什么?

Graylog 是世界領先的集中式開源日志管理解決方案之一,用于集中、存儲、可視化和實時監控 TB 級的機器數據,被 DevOps 工程師、安全分析師和應用程序開發人員廣泛使用。

Graylog 用于做什么?

Graylog 是一種在技術、媒體、零售等行業廣泛使用的工具,用于監控大量的網絡活動,并精確定位任何影響性能的問題。它有助于從大規模的日志中獲取見解,以支持更快的問題解決和業務連續性,減少停機時間。

Graylog 服務器包含以下主要組件:

  • Elasticsearch - 一種搜索和分析引擎,用于存儲和索引數據。
  • MongoDB - 一種開源的 NoSQL 文檔數據庫,用于存儲諸如用戶信息之類的元數據。
  • Graylog Server - 用于捕獲、存儲和分析實時機器數據的主要組件。它可視化數據以發現趨勢和異常,并在發生任何事件時觸發警報。此外,你還可以構建報告以符合既定標準和管理需求。

現在,讓我們繼續進行 Graylog Ubuntu 安裝說明,首先定義先決條件。

準備工作

服務器準備

必要前提:

  • 一個充滿求知欲的大腦。
  • 一臺 Linux 服務器(推薦騰訊云、阿里云或雨云等)。

我將以 雨云 為例,帶大家創建一臺自己的云服務器,以便學習本篇文章的內容。

注冊鏈接: https://rainyun.ivwv.site

創建雨云服務器

以下步驟僅供參考,請根據實際需求選擇配置。

  • 點擊 云產品云服務器立即購買
  • 選擇距離你較近的區域,以保證低延遲。

  • 按照自己需求選擇配置,選擇Ubuntu 22.04 版本,按照自己需求是否預裝Docker。
  • 最后按照提示進行購買。
  • 購買后等待機器部署完畢,點擊剛剛創建好的服務器,進入管理面板,找到遠程連接相關信息。

  • 我們使用 PowerShell 進行 SSH 遠程連接到服務器,Win+R 打開運行窗口,輸入 powershell 后點擊確定。

  • 輸入 ssh root@你的服務器IP 例如 ssh root@154.9.227.239 回車后,首次需要輸入 yes,再次回車后即可登錄服務器。

  • 到此為止,我們的云服務器就遠程連接上了。

安裝和配置步驟

為了在 Ubuntu 22.04 上安裝 Graylog,你必須遵循一個相對簡單的過程。它包括安裝 OpenJDK、Elasticsearch 和 MongoDB 等先決條件軟件包。之后,下載并配置 Graylog 服務器軟件包,然后設置 Nginx 作為反向代理以訪問 Graylog Web UI。

讓我們直接開始。按照以下步驟在你的 Ubuntu 22.04 服務器上安裝并運行 Graylog。

第一步:更新本地軟件包索引

首先,登錄到你的服務器并更新本地軟件包索引。

sudo apt update

接下來,安裝 Graylog 服務器安裝期間需要的一組依賴項。

sudo apt install curl wget apt-transport-https

安裝完成后,進入下一步。

第二步:安裝 OpenJDK

在安裝 Graylog 之前,我們需要安裝 Java。我們將安裝 OpenJDK,這是一個由 Oracle 當前維護的免費開源 Java 實現。最新版本的 Graylog - Graylog 5.2 - 至少需要 OpenJDK 17。

要安裝 OpenJDK 17,請運行以下命令:

sudo apt install openjdk-17-jre-headless -y

安裝完成后,你可以確認已安裝的 Java 版本,如下所示。

java -version

在這里插入圖片描述

第三步:安裝 ElasticSearch

Elasticsearch 是 Graylog 安裝中的另一個關鍵組件。它是一個分布式搜索和分析引擎,廣泛用于全文搜索、日志分析、業務分析和分析安全事件。

在 Graylog 中,Elasticsearch 存儲、搜索和分析來自外部來源的日志和消息。

Elasticsearch 不托管在官方 Ubuntu 存儲庫中。因此,我們將從 Elasticsearch 存儲庫安裝它。為此,首先,下載并添加 Elasticsearch GPG 密鑰。

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

接下來,切換到 root 用戶。

sudo su -

并將 Elasticsearch 存儲庫添加到系統中。

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

接下來,更新本地緩存以通知系統新添加的存儲庫。

apt update

本地緩存更新后,使用 APT 軟件包管理器從存儲庫安裝 Elasticsearch。

apt install elasticsearch -y

在這里插入圖片描述

安裝完成后,你需要對主要的 Elasticsearch 配置文件進行一些調整。使用你喜歡的文本編輯器訪問該文件。在這里,我們使用 nano 命令行編輯器。

nano /etc/elasticsearch/elasticsearch.yml

設置你喜歡的集群名稱,并在其下方添加 action.auto_create_index: false 行。

cluster.name: graylog
action.auto_create_index: false

完成后,保存更改并退出。重新加載 systemd 以應用更改并啟動 Elasticsearch。

systemctl daemon-reload
systemctl start elasticsearch

你可以驗證 Elasticsearch 的狀態,如下所示。

sudo systemctl status elasticsearch

在這里插入圖片描述

從輸出中,你可以看到 Elasticsearch 服務正在運行。

此外,請考慮啟用 Elasticsearch 服務以在啟動時啟動。

systemctl enable elasticsearch

你可以使用 curl 命令行工具向你的節點發送 GET 請求,以查看有關 Elasticsearch 的詳細信息。

curl -X GET http://localhost:9200

在這里插入圖片描述

第四步:安裝 MongoDB 服務器

在 Graylog 服務器中,MongoDB 數據庫存儲配置信息和用戶數據。最新版本的 Graylog 需要 MongoDB 5.x 和 6.x 版本。在本指南中,我們將從 MongoDB 存儲庫安裝 MongoDB 6.0。

因此,添加 MongoDB GPG 簽名密鑰。

curl -fsSL https://pgp.mongodb.com/server-6.0.asc | \\
sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/mongodb-server-6.0.gpg

接下來,將 MongoDB 存儲庫添加到你系統上的 sources.list.d 目錄。

echo "deb [ arch=amd64,arm64 signed=/etc/apt/trusted.gpg.d/keyrings/mongodb-server-6.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

將存儲庫添加到你的系統后,更新本地 APT 緩存。

sudo apt update

然后安裝 MongoDB 數據庫服務器。

sudo apt install mongodb-org -y

在這里插入圖片描述

要驗證安裝的版本,請運行以下命令:

mongod --version

在這里插入圖片描述

MongoDB 在安裝后不會自動啟動,因此請按如下所示啟動它。

sudo systemctl start mongod

確認 MongoDB 數據庫服務正在運行:

sudo systemctl status mongod

在這里插入圖片描述

此外,請考慮啟用該服務以在啟動時自動啟動。

sudo systemctl enable mongod

安裝了 MongoDB 數據庫服務器后,下一步是安裝 Graylog 服務器。

第五步:安裝 Graylog 服務器

我們現在準備在 Ubuntu 上安裝 Graylog 服務器。默認情況下,Graylog 服務器軟件包在 Ubuntu 存儲庫上不可用。因此,我們將從官方 Graylog 存儲庫安裝 Graylog。

因此,下載 Graylog Debian 軟件包。

wget https://packages.graylog2.org/repo/packages/graylog-5.2-repository_latest.deb

接下來,運行 dpkg 命令來運行該軟件包。

sudo dpkg -i graylog-5.0-repository_latest.deb

接下來,更新本地 APT 緩存。

sudo apt-get update

最后,按如下方式安裝 Graylog 服務器。

sudo apt install graylog-server -y

在這里插入圖片描述

安裝 Graylog 服務器后,你需要生成一個密鑰來保護用戶密碼,并為管理員用戶生成一個加密密碼。

要生成一個用于保護用戶密碼的密鑰,請運行以下命令:

< /dev/urandom tr -dc A-Z-a-z-0-9 | head -c${1:-96};echo;

加密密碼(由字母數字字符組成)將顯示在終端上。

接下來,為 Graylog 管理員登錄用戶生成一個加密密碼。

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

出現提示時,鍵入密碼并按 ENTER。加密密碼將顯示在屏幕上。

在這里插入圖片描述

將這兩個加密密碼復制并粘貼到某處,然后打開 Graylog 配置文件。

nano /etc/graylog/server/server.conf

使用生成的加密密碼更新 password_secretroot_password_sha2

password_secret = hTRdp0JxNLeuxKXFeTjNYzOMpM-6zdBPalK4eKbsEhxSlxkIFgTcUBzPmhj21Hc89OmyW1NqitmROHXtgqJqwGte4t7PBwi0root_password_sha2 = bfe4814665ab5c23359f7114d289110e7c725a1528fa2cd68c601a0a5d6c05108

接下來,使用 http_bind_address 指定 Graylog HTTP 接口將偵聽的 IP 地址。默認情況下,此項設置為 localhost 或回環地址。確保將其設置為分配給你的網絡接口的 IP,并指定 Graylog 偵聽的端口(端口 9000)。

http_bind_address = 208.117.84.72:9000

保存更改并退出配置文件。接下來,重新加載 systemd 以通知系統所做的更改。

systemctl daemon-reload

接下來,啟動 Graylog 服務。

systemctl start graylog-server

Graylog 守護程序或服務現在應該正在運行。你可以按如下所示確認這一點。

systemctl status graylog-server

在這里插入圖片描述

請考慮啟用該服務以在系統啟動時啟動。

systemctl enable graylog-server

第五步:配置 Nginx 作為反向代理

Graylog 本身可以充當前端,不需要 Web 服務器。但是,你可以將 Web 服務器配置為端口 80 到端口 9000(Graylog 偵聽的端口)的反向代理。這也簡化了為 Graylog 配置 SSL 證書的過程。

在我們的示例中,我們將使用 Nginx 作為我們首選的 Web 服務器。要安裝 Nginx,請運行以下命令:

 apt install nginx

安裝完成后,為 Graylog 創建一個虛擬主機文件。

nano /etc/nginx/sites-available/graylog.conf

添加以下代碼行,并確保為 proxy_pass 屬性指定你服務器的 IP。

server {listen 80;server_name graylog.example.org;location /{proxy_set_header Host $http_host;proxy_set_header X-Forwarded-Host $host;proxy_set_header X-Forwarded-Server $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Graylog-Server-URL http://$server_name/;proxy_pass       http://208.117.84.72:9000;}}

保存更改并退出配置文件。然后,運行以下命令以驗證你的 Web 服務器的配置語法是否正確。

nginx -t

在這里插入圖片描述

如果一切正常,請啟用 Nginx 虛擬主機文件。

ln -s /etc/nginx/sites-available/graylog.conf /etc/nginx/sites-enabled/

請記住刪除默認的虛擬主機文件,因為這將覆蓋新啟用的虛擬主機配置。

rm -rf /etc/nginx/sites-enabled/default

要應用所做的更改,請重新啟動 Nginx Web 服務

systemctl restart nginx

并確保它按預期運行。

systemctl status nginx

在這里插入圖片描述

第六步:訪問 Graylog Web 界面

要訪問 Graylog Web 界面,請在你的 Web 瀏覽器上訪問以下 URL。

http://server-ip

你將看到顯示的網頁。使用用戶名 admin 和你在第 5 步中以純文本指定的 root 用戶密碼登錄。然后單擊“登錄”按鈕。

在這里插入圖片描述

登錄后,你應該會看到 Graylog Web UI。從這里,你可以添加數據源以進行實時數據分析。

在這里插入圖片描述

結論

就是這樣;在本教程中,我演示了如何在 Ubuntu 22.04 服務器上安裝 Graylog,包括配置。有關 Graylog 的更多信息,請查看 官方文檔。

雨云 - 新一代云服務提供商: https://rainyun.ivwv.site
我的博客:https://blog.ivwv.site

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/63872.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/63872.shtml
英文地址,請注明出處:http://en.pswp.cn/web/63872.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

技術發展歷程:從 CORBA 到微服務

CORBA CORBA&#xff08;Common Object Request Broker Architecture&#xff09;誕生于上世紀 90 年代初期&#xff0c;由 OMG 組織提出&#xff0c;它作為一種開創性的分布式對象技術規范&#xff0c;在當時的計算機領域引起了轟動。其核心構成部分——接口定義語言&#xf…

搶單人機交互「新紅利」!哪些細分賽道“多金”?

受終端用戶的智能座艙體驗需求驅動&#xff0c;視覺、聽覺、觸覺等人機交互方式加速煥新。 一方面&#xff0c;人機多模交互引領&#xff0c;車載聲學進入新周期。根據高工智能汽車研究院統計數據&#xff0c;單車的車載揚聲器搭載量正在快速起量。 很顯然&#xff0c;作為智…

記錄vue+elementUI table的組件

可展示圖片&#xff0c; 可使用slot插槽添加邏輯&#xff0c; 循環表cloumn&#xff0c; 循環添加操作配置actionButtons <el-tablev-loading"loading":data"tableData"borderstyle"width: 100%"selection-change"selectChange"…

圖像配準有哪些技術?

目錄 圖像配準技術 1.基于特征的圖像配準 2.基于強度的圖像配準 3.基于模型的圖像配準 4.基于學習的圖像配準 5.混合方法 圖像配準的應用 圖像配準技術入門 常見問題解答 圖像配準是計算機視覺和醫學成像中的一項關鍵技術&#xff0c;用于將多幅圖像對齊到一個共同的坐…

前端學習DAY26(華為平板頁面)

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>平板圖片</title><style> .box{text-al…

算法 雙指針技巧

文章目錄 雙指針[leetcode167 兩數之和](https://leetcode.cn/problems/two-sum-ii-input-array-is-sorted/description/)分析題解 [leetcode88 合并兩個有序數組](https://leetcode.cn/problems/merge-sorted-array/description/)分析題解 [leetcode142 環形鏈表](https://lee…

DevOps工程技術價值流:制品庫Nexus與Harbor的實戰探索

制品庫作為DevOps價值流中的一個關鍵環節&#xff0c;其重要性日益凸顯。制品庫&#xff0c;作為存儲和管理軟件開發過程中產生的各種制品&#xff08;如代碼包、鏡像、配置文件等&#xff09;的倉庫&#xff0c;是連接開發、測試、部署等多個環節的橋梁。它不僅能夠實現制品的…

R9000P鍵盤失靈解決辦法

問題描述 突然&#xff0c;就是很突然&#xff0c;我買的R9000P 2024不到三個月&#xff0c;鍵盤突然都不能用了&#xff0c;是所有鍵盤按鍵都無效的那種。&#xff08;可以使用外接鍵盤&#xff09; 解決辦法 我本科室友說的好哈&#xff0c;全壞全沒壞。 &#xff08;該解…

潛在狄利克雷分配LDA 算法深度解析

引言 潛在狄利克雷分配&#xff08;Latent Dirichlet Allocation, LDA&#xff09;是一種廣泛應用于文本挖掘和信息檢索領域的主題模型。它能夠從文檔集合中自動發現隱藏的主題結構&#xff0c;為理解大規模文本數據提供了強有力的工具。本文將著重講解 LDA 的核心理論&#x…

使用正則表達式提取PDF文件頁數的實現方案

文章目錄 背景介紹實現原理代碼實現1. 基礎函數結構2. 頁數提取邏輯3. 使用示例 正則表達式解析優點與局限性優點局限性 錯誤處理建議性能優化建議最佳實踐建議總結參考資源 背景介紹 在Web應用開發中,我們經常需要獲取上傳PDF文件的頁數信息。雖然可以使用pdf.js等第三方庫,但…

sentinel學習筆記6-限流降級(上)

本文屬于sentinel學習筆記系列。網上看到吳就業老師的專欄&#xff0c;寫的好值得推薦&#xff0c;我整理的有所刪減&#xff0c;推薦看原文。 https://blog.csdn.net/baidu_28523317/category_10400605.html sentinel 實現限流降級、熔斷降級、黑白名單限流降級、系統自適應…

全面解析 Kubernetes 流量負載均衡:iptables 與 IPVS 模式

目錄 Kubernetes 中 Service 的流量負載均衡模式 1. iptables 模式 工作原理 數據路徑 優點 缺點 適用場景 2. IPVS 模式 工作原理 數據路徑 優點 缺點 適用場景 兩種模式的對比 如何切換模式 啟用 IPVS 模式 驗證模式 總結 Kubernetes 中 Service 的流量負載…

每日十題八股-2024年12月19日

1.Bean注入和xml注入最終得到了相同的效果&#xff0c;它們在底層是怎樣做的&#xff1f; 2.Spring給我們提供了很多擴展點&#xff0c;這些有了解嗎&#xff1f; 3.MVC分層介紹一下&#xff1f; 4.了解SpringMVC的處理流程嗎&#xff1f; 5.Handlermapping 和 handleradapter有…

藍橋杯嵌入式備賽教程(1、led,2、lcd,3、key)

一、工程模版創建流程 第一步 創建新項目 第二步 選擇型號和管腳封裝 第三步 RCC使能 外部時鐘&#xff0c;高速外部時鐘 第四步晶振時鐘配置 由數據手冊7.1可知外部晶振頻率為24MHz 最后一項設置為80 按下回車他會自動配置時鐘 第五步&#xff0c;如果不勾選可能程序只會…

詳細解讀sedex驗廠

SEDEX驗廠&#xff0c;即供貨商商業道德信息交流認證&#xff08;Supplier Ethical Data Exchange&#xff09;&#xff0c;是一種表明企業遵守商業道德的認證。以下是對SEDEX驗廠的詳細解讀&#xff1a; 一、SEDEX驗廠概述 SEDEX是一家總部位于英國倫敦的非營利組織&#xf…

2.4 設備管理

文章目錄 設備管理概述設備管理技術磁盤調度 設備管理概述 設備管理是操作系統中最繁雜、與硬件關系緊密的部分。 設備可以按照數據組織、資源分配、數據傳輸率分類。 數據組織&#xff1a;分為塊設備&#xff08;ex. 磁盤&#xff09;、字符設備(ex. 打印機)。資源分配&#…

網絡安全滲透有什么常見的漏洞嗎?

弱口令與密碼安全問題 THINKMO 01 暴力破解登錄&#xff08;Weak Password Attack&#xff09; 在某次滲透測試中&#xff0c;測試人員發現一個網站的后臺管理系統使用了非常簡單的密碼 admin123&#xff0c;而且用戶名也是常見的 admin。那么攻擊者就可以通過暴力破解工具&…

PSDK的編譯與ROS包封裝

本文檔講述在NIVIDIA開發板上使用大疆提供的Payload SDK獲取無人機實時GPS信息的方法&#xff0c;以及基于Payload SDK發布ROS GPS話題信息的方法。 文章目錄 0 實現目標1 Payload SDK1.1 PSDK 源碼的編譯1.2 PSDK 的使用 2 遙測數據的讀取2.1 示例代碼結構2.2 讀取機載GPS信息…

模型 課題分離

系列文章 分享 模型&#xff0c;了解更多&#x1f449; 模型_思維模型目錄。明確自我與他人責任。 1 課題分離的應用 1.1課題分離在心理治療中的應用案例&#xff1a;李曉的故事 李曉&#xff0c;一位28歲的軟件工程師&#xff0c;在北京打拼。他面臨著工作、家庭和感情的多重…

1222面經

1&#xff0c;Kafka 如何保障順序消費? Kafka 保障順序消費主要通過以下幾個關鍵機制和配置來實現&#xff1a; 分區策略 Kafka 將主題劃分為多個分區&#xff0c;每個分區內的消息是天然有序的&#xff0c;其按照消息發送到分區的先后順序進行存儲和追加。生產者在發送消息…