ELK + Filebeat 分布式日志管理平台部署
以下是一个简化的例子,展示如何部署ELK(Elasticsearch, Logstash, Kibana)和Filebeat以收集分布式系统的日志:
- 安装Elasticsearch
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
sudo apt-get update && sudo apt-get install elasticsearch
- 配置Elasticsearch(可能需要修改配置文件
/etc/elasticsearch/elasticsearch.yml
)
cluster.name: my-cluster
node.name: node-1
network.host: 192.168.1.10
http.port: 9200
- 启动并使Elasticsearch服务可用
sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch
- 安装Kibana
sudo apt-get install kibana
- 配置Kibana(可能需要修改配置文件
/etc/kibana/kibana.yml
)
server.port: 5601
server.host: "192.168.1.10"
elasticsearch.hosts: ["http://192.168.1.10:9200"]
- 启动并使Kibana服务可用
sudo systemctl start kibana
sudo systemctl enable kibana
- 安装Logstash(如果需要特定配置,可以在此步骤进行)
sudo apt-get install logstash
- 安装Filebeat
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.x-amd64.deb
sudo dpkg -i filebeat-7.x-amd64.deb
- 配置Filebeat以发送日志到Logstash或直接到Elasticsearch(修改
/etc/filebeat/filebeat.yml
)
filebeat.inputs:
- type: log
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["192.168.1.10:9200"]
- 启动并使Filebeat服务可用
sudo systemctl start filebeat
sudo systemctl enable filebeat
- 验证Elasticsearch, Kibana和Filebeat是否正常运行
- 在浏览器中打开Kibana的URL(例如 http://192.168.1.10:5601)
- 检查Elasticsearch集群健康状态
- 查看Filebeat是否正在收集日志并发送到Elasticsearch
注意:这个例子假设所有组件都运行在同一台机器上,但在生产环境中,你可能需要多台机器以保证高可用性和性能。
评论已关闭