Loki vs Elasticsearch 之窮人也能擁有日誌系統
把 ElasticSearch deploy 到客戶雲端機器,才知到資源有多珍貴。
優缺點
ElasticSearch
- 優點
- 部署方便、服務拓展成熟
- 各種現成套件可用
- Documentation 完整
- 每個開發人員,熟到不能再熟的 kibana 介面
- 缺點
- 超吃資源,記憶體限他 2G,就給吃 4G,連自家 kibana 都能吃到 500mb
- 什麼都要錢,沒升到黃金會員($19),連 Alert slack notice 都不給用
- 跟 AWS 對幹中
- 超吃空間,原設計來做搜尋引擎使用,Log 產生的索引過大,優勢變缺點
Loki
- 優點
- 資源需求低
- 可用 S3、DynamicDB、GCS storage
- 免費
- 缺點
- Documentation 精簡、細節不清楚
- 太過年輕,社群資源不多
- elasticsearch vs loki
- 5GiB vs 50MiB => 100倍
- kibana vs grafana
- 450MiB vs 25MiB => 18倍
- fluentbit vs promtail
- 5MiB vs 15MiB
另外,Loki 可搭配 fluentbit 使用,整套低消 80MiB
Storage
config.yaml
儲存價格 USD/GB 每月
- AWS RDS
- mariaDB $0.138 => 6倍
- RDS instance $18.72
- AWS EBS (EC2 volume)
- SSD $0.096 => 4倍
- HHD $0.054
- AWS S3
- standard $0.025
- request - ListBucket $5/month (2022/4/24 update!)
- AWS CloudWatch
- 存放 $0.033 (不含 收集 $0.76, 分析 $0.0076)
- Google GCS
- standard $0.02
- Local
- SSD $0.086 => (3年)月攤 $0.0023
- HDD $0.023 => (3年)月攤 $0.00063
電費 => 每月 $19.2 (約 t3.small 等級)
如果資金有限,將 logger 存放在Local,是最佳的方案。
Local 電費等同於 ec2 instance,每個方案都必須付出,而 RDS 需再多支付 RDS 的機器費用。
GCS、S3 為雲端最佳解法,只要是同個 region 的 instance 讀取,不需支付流量費用。
而放在 RDS 最浪費,且造成備份、移轉的麻煩。
經過一段時間測試,放在 S3 似乎會造成一筆額外的費用,反而成為成本最高的選擇,可能要搭配 DynamoDB 使用,又或者直接存放在 EBS,再定期 docker volume backup to s3 (2022/4/24 update!)
Loki 執行情況
使用 boltdb-shipper 後,volume 幾乎不消耗空間
Container 裡面也算乾淨,elasticSearch 飆到 300MB
串 S3 成功後,會出現 1~2 個資料夾,照 Chunk_ 設定,可能 15m~1h 才會看到資料
# 最遠查詢期限,必須小於等於 retention_period
chunk_store_config:
max_look_back_period: 1440h
#日誌保留期限
table_manager:
retention_deletes_enabled: true
retention_period: 1440h #2個月
畫面參考
將呼叫第三方 api 的時間、次數搜集起來,做成儀表板
Loki vs Elasticsearch 之窮人也能擁有日誌系統
Reviewed by Wild
on
9/27/2021 08:31:00 上午
Rating:
沒有留言:
沒有Google帳號也可發表意見唷!