基於阿里雲Elasticsearch的日誌採集分析展示

因業務需求,需要將阿里雲入口nginx訪問日誌進行收集統計,最原始的辦法當然是將各個nginx服務器每個都統計一遍然後進行累加,這樣做很麻煩不可取,鑑於我們之前已經購買過阿里雲Elasticsearch服務,就想着把nginx日誌採集到阿里雲elasticsearch中,最開始我們想到的是通過阿里雲beats來收集,查閱阿里雲官方文檔介紹如下

本文以Filebeat爲例,介紹安裝和管理採集器(Beats)的方法。通過採集器,您可以收集雲服務器ECS(Elastic Compute Service)中的日誌文件、網絡數據、服務器指標等數據,發送到阿里雲Elasticsearch(簡稱ES)或阿里雲Logstash中,進行監控、分析等操作。

前提條件
您已完成以下操作:
創建阿里雲ES實例或Logstash實例。
詳情請參見創建阿里雲Elasticsearch實例和創建阿里雲Logstash實例。

開啓阿里雲ES實例的自動創建索引功能。
處於安全考慮,阿里雲ES默認不允許自動創建索引。但是Beats目前依賴該功能,因此如果採集器Output選擇爲Elasticsearch,需要開啓自動創建索引功能,詳情請參見開啓自動創建索引。

創建阿里雲ECS實例,且該ECS實例與阿里雲ES實例或Logstash實例處於同一專有網絡VPC(Virtual Private Cloud)下。
詳情請參見使用嚮導創建實例。

注意
Beats默認安裝目錄爲/opt/aliyunbeats/。安裝後,ECS上會生成conf、logs和data這3個目錄,分別映射了配置文件、Beats日誌文件和Beats數據文件。建議不要刪除或修改這3個文件中的內容,否則可能出現異常或者導致數據不正確。當出現問題時,您可以在logs目錄下查看Beats日誌,來定位問題。
Beats目前僅支持Aliyun Linux ,RedHat和CentOS這三種操作系統。
在目標ECS實例上安裝雲助手和Docker服務。

可以看到還需要在每個主機上面部署docker服務,爲了收集日誌還得部署docker,感覺有點得不償失,於是我們就開始自己部署filebeat來採集,下面記錄下實際的流程

1、開啓es自動創建索引功能
出於安全考慮,阿里雲默認是關閉改功能,但想要通過beats寫入es,必須開啓該功能,注意該功能開啓請在夜間無業務流量期間執行,因爲開啓該功能會重啓es實例

基於阿里雲Elasticsearch的日誌採集分析展示

2、各個組件部署filebeat並配置
部署過程略過,下面簡單貼出部分配置

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /home/logs/*.access.log
  tags: ["access"]

  json.keys_under_root: true
  json.overwrite_keys: true
  tail_files: true

- type: log
  enabled: true
  paths:
    - /home/logs/error.*.log

  tags: ["error"]
  tail_files: true

setup.kibana:
  host: "xxxxx.elasticsearch.aliyuncs.com:5601"   ##請填寫你實際的地址

output.elasticsearch:
  hosts: ["yyy.elasticsearch.aliyuncs.com:9200"]   ##請填寫你實際的地址
  username: "aaa"    ##用戶名及密碼請填寫實際的
  password: "bbb"

  indices:
    - index: "nginx-access-%{[beat.version]}-%{+yyyy.MM}"
      when.contains:
        tags: "access"
    - index: "nginx-error-%{[beat.version]}-%{+yyyy.MM}"
      when.contains:
        tags: "error"
setup.template.name: "nginx"
setup.template.pattern: "nginx-*"
setup.template.enabled: false
setup.template.overwrite: true

3.啓動並通過kibana觀察es索引
systemcat start filebeat
基於阿里雲Elasticsearch的日誌採集分析展示

可以看到日誌已經被採集到es裏面,接下來添加該索引進行展示即可
基於阿里雲Elasticsearch的日誌採集分析展示

個人現已錄製了一套按照企業生產標準的jumpserver堡壘機(2020年1.5.8最新版本)落地到企業應用視頻,如有興趣請前往
https://edu.51cto.com/sd/84158

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章