10x系列之Clay.io是如何處理日志的
【編者的話】Clay.io基于Docker來管理服務器日志,架構組合是Docker+Logstash+ElasticSearch,文章對各個工具進行了簡單介紹。Clay.io還開源了Docker容器,以幫助開發者快速構建一個分布式的日志系統。
對于一個小團隊來說,管理20多臺服務器并不是一件簡單的事情,當發生故障時,我們需要迅速定位問題。當然我們不能挨個去ssh,這非常耗時間,在Clay.io我們選擇使用 Logstash來聚合日志。

這是我的“10x”系列的第二篇文章,如果你錯過了上一篇,可以 點此閱讀。
Logstash概覽
Logstash的部署可以分為兩部分,聚合服務器(集群)和客戶端服務器,聚合服務器可以通過logstash
包運行,客戶端服務器可以通過 logstash-forwarder
運行,它負責將日志傳輸到 logstash
實例。這是我們的配置圖: 
注意
logstash-forwarder
不會rotate(分割)日志,日志ratation是一個將老的日志按照大小或者日期存儲到buckets的過程,做這項工作的工具是 [logrotate](http://linuxcommand.org/man_pages/logrotate8.html)
。 日志分析

Logstash進程會運行 ElasticSearch和 Kibana來分析日志,ElasticSearch支持多條件查詢和過濾日志數據。
注意你不能對外暴露ElasticSearch的端口,以免服務器遭受攻擊。我們就曾經被攻擊過,解決方案是將我們的基礎架構遷移到 Amazon VPC,這樣所有的服務都在內網環境中。
Journalist + Scribe
我們已經開源了我們的Docker容器,這樣所有人都可以在幾秒鐘內構建一個分布式的日志系統。Logstash Server: clay/journalist-public原文地址: http://zolmeister.com/2014/10/ ... .html
Logstash-forwarder Server: clay/scribe-public
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!