關於一些日志聚合由來及原理科普見我的另外一篇 《編程入門之日志聚合系統》
https://www.cnblogs.com/uncleguo/p/15948763.html
Loki日志聚合系統是由Loki + Promtail+Grafana三部分組成的,這三個依次分別為日志存儲引擎,日志收集器,GUI界面,下面我們來簡單實踐部署下。
1.安裝運行Loki及promtail
- Loki 負責日志測存儲,搜索
- Promtail 負責收集日志,通過網絡發送給Loki
首先去發布頁面下載對應的Loki及Promtail版本。https://github.com/grafana/loki/releases/
Centos下載如下鏈接,下載完成后,解壓到相同目錄。
Loki:https://github.com/grafana/loki/releases/download/v2.4.2/loki-linux-amd64.zip
Promtail:https://github.com/grafana/loki/releases/download/v2.4.2/promtail-linux-amd64.zip
cd到解壓目錄中, wget下載默認配置文件模板,可以按需修改,也可以先用模板簡單跑起來,增加信心:-)
wget https://raw.githubusercontent.com/grafana/loki/master/cmd/loki/loki-local-config.yaml wget https://raw.githubusercontent.com/grafana/loki/main/clients/cmd/promtail/promtail-local-config.yaml
默認配置內容可以簡單看下,比較容易理解。Promtail的默認配置是收集/var/log/*log,發送到本機的Loki http://localhost:3100/loki/api/v1/push 。可以根據需要調整。
以下命令運行Loki 及 Promtail,日志收集和存儲就已經工作了。
./promtail-linux-amd64 -config.file=promtail-local-config.yaml ./loki-linux-amd64 -config.file=loki-local-config.yaml
2.安裝運行Grafana
Grafana可以提供一個圖形界面,以便查詢日志,以下位置下載centos tar.gz版本。
wget https://dl.grafana.com/oss/release/grafana-8.4.3.linux-amd64.tar.gz tar -zxvf grafana-8.4.3.linux-amd64.tar.gz
cd進解壓目錄運行
cd grafana-8.4.3 ./bin/grafana-server web
成功運行后,默認在3000端口提供服務, 默認的用戶名密碼為 admin/admin (注意替換實際ip) http://192.168.1.1:3000/login
3.配置Grafana數據源
為Grafana配置Loki作為數據源,以便進行日志可視化查看搜索。




可以查詢了。
4.日志滾動配置
日志總是源源不斷,自動刪除太久的,避免占滿存儲。
修改Loki配置文件 loki-local-config.yaml,追加如下內容。
compactor: working_directory: /data/retention shared_store: filesystem compaction_interval: 10m retention_enabled: true retention_delete_delay: 2h retention_delete_worker_count: 150 storage_config: boltdb_shipper: active_index_directory: /data/index cache_location: /data/boltdb-cache shared_store: filesystem limits_config: retention_period: 168h
其中retention_period為保留時間,這里168小時是7天。
至此,收工~!
