filebeat的作用就像是一隻看門狗(watch dog),當看門狗監測到任何風吹草動(log產生變化)時,就立即事件告訴主人(logstash)。
上一篇已經將log正常產生了,再來要有一個監聽者,來幫我們注意log有沒有產生變化。
首先要準備filebeatF的設定檔(filebeat.yml),並且將設定檔放到指定的位置,我自已是放到 /home/filebeat/filebeat.yml。
filebeat.yml的內容如下:
filebeat.inputs:
- type: filestream
id: my-filestream-id
enabled: true
paths:
- /logs/access/* #要改成監聽的log位置 filebeat.config.modules: path: ${path.config}/modules.d/*.yml reload.enabled: false output.logstash: hosts: ["10.10.10.10:5000"] #要改成logstash的所在ip及port號 processors: - add_host_metadata: when.not.contains.tags: forwarded - add_cloud_metadata: ~ - add_docker_metadata: ~ - add_kubernetes_metadata: ~
filebeat.yml設定要修改兩個地方:
1、paths: #改成監聽的log位置
2、hosts: #要改成logstash的所在ip及port號
設定檔設定完成之後,為了方便,我是使用docker來啟動filebeat的服務,指令如下:指令要注意的地方就是log位置及filebeat.yml位置是否有寫正確,沒問題的話,就可以按enter了
docker run -d --name filebeat_7 \\
-v /home/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml \\
-v /var/log/nginx/access:/logs/access \\
docker.elastic.co/beats/filebeat:7.17.6
等docker起來之後,我們用指令docker ps,就可以看到 filebeat的container正確被啟動
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4cde932784a5 docker.elastic.co/beats/filebeat:7.17.6 "/usr/bin/tini -- /u…" 2 weeks ago Up 2 weeks filebeat
到目前為止,log設定好了、filebeat也設定好了,filebeat 監聽到log變化時,就要將log主動傳送給logstatsh,下一篇文章要介紹logstatsh的安裝及設定。
每個步驟的文章會陸續上架,如果還沒看到連結,就代表我還在趕文章中。如果喜歡我寫的內容,希望能夠幫我追蹤按讚分享,讓創作者們能夠有繼續創作內容的動力,感謝你們