部署 Graylog 日誌系統 - 每天5分鐘玩轉 Docker 容器技術(92)

jj1130050965發表於2020-12-01

部署 Graylog 日誌系統 - 每天5分鐘玩轉 Docker 容器技術(92)

原創 CloudMan CloudMan 2017-11-10

第92篇

部署 Graylog 日誌系統

 

Graylog 是與 ELK 可以相提並論的一款集中式日誌管理方案,支援資料收集、檢索、視覺化 Dashboard。本節將實踐用 Graylog 來管理 Docker 日誌。

Graylog 架構

Graylog 架構如下圖所示:

Graylog 負責接收來自各種裝置和應用的日誌,併為使用者提供 Web 訪問介面。

Elasticsearch 用於索引和儲存 Graylog 接收到的日誌。

MongoDB 負責儲存 Graylog 自身的配置資訊。

與 ELK 一樣,Graylog 的部署方案很靈活,快速搭建一個 all-in-one 的環境對於學習很有益處;部署一個高可用高伸縮性的叢集對於生成環境也是必要的。

接下來我們將在容器環境下搭建 Graylog。

部署 Graylog

Graylog 及其相關元件都將以容器的方式部署。

MongoDB
docker run --name graylog-mongo -d mongo:3

Elasticsearch

 

docker run --name graylog-elasticsearch -d elasticsearch:2 elasticsearch -Des.cluster.name="graylog"

 

 

Graylog

 

docker run --link graylog-mongo:mongo \
           --link graylog-elasticsearch:elasticsearch \
           -p 9000:9000 \
           -p 12201:12201/udp \
           -e GRAYLOG_WEB_ENDPOINT_URI="http://192.168.56.101:9000/api" \
           -e GRAYLOG_PASSWORD_SECRET=somepasswordpepper \
           -e GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918 \
           -d graylog2/server

 

 

--link 引數讓 Graylog 容器能夠用主機名 mongo 和 elasticsearch 訪問 MongoDB 和 Elasticsearch 的服務。

-p 9000:9000 對映 Graylog 的 Web 服務埠 9000。

-p 12201:12201/udp 對映 Graylog 接收日誌資料的 UDP 埠 12201。

GRAYLOG_WEB_ENDPOINT_URI 指定 Graylog 的 Web 訪問 URI,請注意這裡需要使用 Docker Host 的外部 IP(在實驗環境中為 192.168.56.101)。

GRAYLOG_ROOT_PASSWORD_SHA2 指定 Graylog 管理員使用者密碼的雜湊值,在這個例子中密碼為 admin。可以通過如下命令生成自己的密碼雜湊,比如:

 

echo -n yourpassword | shasum -a 256

 

 

容器啟動後,在 Web 瀏覽器中訪問 http://[Docker Host IP]:9000

使用者名稱/密碼 = admin/admin

登入後顯示 Getting Started 頁面。

配置 Graylog

目前 Graylog 還沒法接收任何日誌,我們需要配置一個 Input,點選頂部選單 System -> Inputs

Graylog 支援多種 Input 型別,與 Graylog 對接的 Docker logging driver 是 gelf,因此這裡我們需要執行一個 GELF UDP 型別的 Input。

點選 

在 Node 列表中選擇 Graylog 容器。
Title 命名為 docker GELF input
其他保持預設值,其中 port 12201 即為前面啟動容器時對映到 Host 的埠,用於接收日誌資料。

點選,Input 成功執行。

Graylog 已經準備就緒,接下來就可以將容器的日誌傳送給 Graylog 了,下節繼續。

書籍:

1.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html(點選“閱讀原文”直達)

2.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html

相關文章