在CentOS上部署Filebeat代理的步驟如下:
首先,你需要從Elastic官方網站下載最新版本的Filebeat。你可以使用以下命令來下載:
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-<version>-linux-x86_64.tar.gz
將<version>
替換為你想要安裝的Filebeat版本。
然后,解壓下載的文件:
tar -xzf filebeat-<version>-linux-x86_64.tar.gz
進入解壓后的目錄:
cd filebeat-<version>-linux-x86_64
編輯Filebeat配置文件filebeat.yml
。你可以使用任何文本編輯器,例如vi
或nano
:
vi filebeat.yml
根據你的需求配置Filebeat。以下是一個基本的配置示例:
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["localhost:9200"]
index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"
這個配置示例表示Filebeat將從/var/log/*.log
目錄中的日志文件中讀取數據,并將數據發送到本地的Elasticsearch實例(假設Elasticsearch運行在localhost:9200
)。
使用以下命令啟動Filebeat:
./filebeat modules enable system
./filebeat setup
systemctl start filebeat
如果你希望Filebeat在系統啟動時自動運行,可以使用以下命令:
systemctl enable filebeat
你可以使用以下命令檢查Filebeat的狀態:
systemctl status filebeat
或者查看Filebeat的日志文件以確保沒有錯誤:
journalctl -u filebeat -f
如果你的Elasticsearch實例不在本地,或者你希望通過防火墻限制訪問,你需要配置防火墻以允許Filebeat與Elasticsearch之間的通信。例如,使用firewalld
:
firewall-cmd --permanent --zone=public --add-port=5601/tcp
firewall-cmd --reload
這將允許Filebeat通過端口5601與Kibana通信。
如果你的Elasticsearch啟用了安全特性(如X-Pack),你需要在Filebeat配置文件中添加相應的認證信息:
setup.template.settings:
index.number_of_shards: 1
xpack.monitoring.collection.enabled: true
xpack.monitoring.elasticsearch.hosts: ["https://localhost:9200"]
xpack.monitoring.collection.enabled: true
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
setup.kibana.host: "localhost"
setup.kibana.index: ".kibana"
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["https://localhost:9200"]
index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"
確保你已經生成了相應的SSL證書和密鑰文件,并將其路徑配置在xpack.security.transport.ssl.keystore.path
和xpack.security.transport.ssl.truststore.path
中。
通過以上步驟,你應該能夠在CentOS上成功部署Filebeat代理。