成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

十分鐘在K8s中部署輕量級日志系統(tǒng)Loki

云計算 云原生
由于Loki 對k8s友好支持,默認就可以采集到pod、namespace 等標簽數據,不需要額外配置,但是要達到生產級可用,還需要對 Loki的數據進行持久化配置、同時要根據采集日志數據的大小做好采集速率調整、以及日志過期策略設置?

Loki 是什么?

Loki是由Grafana Labs開源的一個水平可擴展、高可用性,多租戶的日志聚合系統(tǒng)的日志聚合系統(tǒng)。它的設計初衷是為了解決在大規(guī)模分布式系統(tǒng)中,處理海量日志的問題。Loki采用了分布式的架構,并且與Prometheus、Grafana密切集成,可以快速地處理大規(guī)模的日志數據。該項目受 Prometheus 啟發(fā)

圖片圖片

  • Promtail是代理,負責收集日志并將其發(fā)送給 Loki 。
  • Loki 是主服務器,負責存儲日志和處理查詢。
  • Grafana則 用于 UI 展示。

與ELK相比優(yōu)勢在哪里?

ELK是大規(guī)模日志解決方案中的佼佼者說到Loki,免不了要拿來跟ELK做個對比

  1. 架構簡單:Loki 則采用分布式架構、可以將日志存儲在多個節(jié)點上,也可以存儲在一個節(jié)點上,其中Promtail進行日志收集、Loki 負責存儲查詢、Grafana用于展現
  2. 存儲更小:Loki使用了緊湊的索引和壓縮算法,相比ES 可以減少不少存儲空間
  3. 沒有采集日志格式要求:提供了更大的靈活性以及在查詢時格式化的選項
  4. 與 Prometheus、Grafana 和 K8s 原生集成:可以在單個用戶界面中無縫切換查詢指標、日志等數據
  5. 輕量級:相比ELK,Loki更加輕量級,因為它不需要一個單獨的Elasticsearch集群來存儲和索引日志數據

如何采集數據?

k8s 集群不提供日志收集的解決方案,一般來說有3 種方案來做日志收集:

  1. 在Node節(jié)點上運行一個 agent 來收集日志(DaemonSet 采集方式)
  2. 在 Pod 中包含一個 sidecar 容器來收集應用日志(sidecar 采集方式)
  3. 由應用程序將日志信息推送到采集后端(主動采集方式)

節(jié)點采集方式

圖片圖片

日志系統(tǒng)會以DaemonSet 方式是在每個node 節(jié)點上部署一個agent,來采集這個節(jié)點上所有的日志,默認會收集k8s 下/var/log/pod 、/var/lib/docker/containers下的日志,對應用程序的要求就是開啟控制臺打印,否則會收集不到日志,比較適用于功能單一或業(yè)務不是很多的集群;

Sidecar采集方式

圖片圖片

Sidecar 方式會在每一個Pod中部署一個 sidecar 容器,來進行當前容器的日志采集,有多少個 pod,就會有多少個Sidecar容器,因此Sidecar相對資源占用較多,但靈活性以及多租戶隔離性較強,適合大型的 K8s 集群使用,因為除了占用資源多點,采集性能不會有影響

Loki的Pormtail同時支持以上兩種方式,默認為節(jié)點采集方式,下面我們演示如何在k8s 中快速部署一個Loki日志分析系統(tǒng)

Loki 部署

添加倉庫

helm repo add grafana https://grafana.github.io/helm-charts

下載倉庫

helm pull grafana/loki-stack

解壓包

解壓完成以后,可以查看相關參數的使用

tar -xvf loki-stack-2.10.0.tgz

配置概覽

圖片圖片

此Chart不止包含了Loki 、promtail、grafana,還包括其他組件,但是默認未開啟,只開啟了Loki 、promtail,這里為了演示,也開啟grafana配置,通過grafana.enabled=true指定,同時如果要指定相關子 chart 參數,根據子 chart 名稱.參數進行指定,比如要指定的grafana 的admin 密碼,可以用grafana.adminPassword=admin指定

圖片圖片

啟動

注意:啟動示例沒有對日志數據進行持久化處理,正式部署要進行持久化配置

loki-stack中Grafana 的密碼獲取比較復雜,所以直接通過參數指定

helm install loki ./loki-stack -n loki-stack \
--set grafana.enabled=true \
--set grafana.adminPassword=admin \
--create-namespace

圖片圖片

以上啟動完成以后,會收集/var/log/pod 、/var/lib/docker/containers日志信息

查看啟動pod,由于本人k8s 集群有 6 個node節(jié)點,所以部署了6 個promtail

圖片圖片

Grafana訪問

修改 Grafana 為 nodeport 訪問方式

kubectl edit svc loki-grafana -n loki-stack

圖片圖片

登錄成功以后,訪問Explore 功能,并點擊Log browser按鈕,會看到已經采集相關數據,并自動創(chuàng)建namepsace、pod等多個維度的 labels

圖片圖片

比如要查看 ingress 的日志,選擇命名空間為ingress-nginx并點擊 show logs

圖片圖片

圖片圖片

同時查詢結果可以支持換行、日期排序等功能

圖片圖片

以上默認的查詢界面,使用起來可能沒那么順手,那么可以根據需求去定制不同的查詢界面,在https://grafana.com/grafana/dashboards中輸入 loki,可以下載感興趣的Dashboard

圖片圖片

loki卸載

helm uninstall loki -n loki-stack

總結

以上我們快速演示了如何在 k8s 中部署一個Loki,可以看到非常簡單,由于Loki 對k8s友好支持,默認就可以采集到pod、namespace 等標簽數據,不需要額外配置,但是要達到生產級可用,還需要對 Loki的數據進行持久化配置、同時要根據采集日志數據的大小做好采集速率調整、以及日志過期策略設置

責任編輯:武曉燕 來源: 架構成長指南
相關推薦

2024-01-12 08:03:29

k8s配置持久化

2016-10-13 13:01:51

2023-09-24 22:47:42

Kubernetes親和性

2023-09-27 22:33:40

KubernetesK8S

2023-12-25 08:05:35

2025-02-10 12:05:15

2019-04-01 14:59:56

負載均衡服務器網絡

2020-12-17 06:48:21

SQLkafkaMySQL

2022-04-13 22:01:44

錯誤監(jiān)控系統(tǒng)

2021-03-03 11:36:57

Java 8Java 15Java

2015-09-06 09:22:24

框架搭建快速高效app

2024-05-13 09:28:43

Flink SQL大數據

2012-07-10 01:22:32

PythonPython教程

2023-11-30 10:21:48

虛擬列表虛擬列表工具庫

2022-06-16 07:31:41

Web組件封裝HTML 標簽

2024-06-19 09:58:29

2021-09-07 09:40:20

Spark大數據引擎

2023-04-12 11:18:51

甘特圖前端

2009-04-29 17:35:47

LinuxWebMail系統(tǒng)

2023-11-09 14:44:27

Docker鏡像容器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品入口久久 | 欧美国产日韩在线观看 | 国产片侵犯亲女视频播放 | 中文字幕视频在线 | 成人免费视屏 | 国产在线中文字幕 | 爱高潮www亚洲精品 中文字幕免费视频 | 欧美成人猛片aaaaaaa | 中文一区二区视频 | 久一久| 黄页网址在线观看 | 成人午夜视频在线观看 | av黄色在线观看 | 国产精品一区一区 | 精品久久久久香蕉网 | 在线一区视频 | 青青草精品视频 | 久久精品国产免费看久久精品 | 国产xxx在线观看 | 精品在线播放 | 亚洲国产精品一区在线观看 | 一级毛片在线播放 | 亚洲日韩中文字幕一区 | 亚洲日韩中文字幕一区 | 国产精品久久久久久久久久免费 | 亚洲欧美在线一区 | 国产精品久久久久一区二区三区 | 亚洲国产成人精品久久久国产成人一区 | 天天搞天天操 | 国产99久久久久 | 一区二区精品 | 夜夜骑首页 | 黄网免费看| 亚洲精品视频免费观看 | 久热精品在线播放 | 亚洲久在线 | 成人毛片视频免费 | 一起操网站 | 欧美日韩免费视频 | 亚洲视频一区在线播放 | 91精品国模一区二区三区 |